Shell 一键安装 LNMPT

本文涉及的产品
云数据库 Redis 版,社区版 2GB
推荐场景:
搭建游戏排行榜
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介: 前言为了更加快速的节约时间,我选择用shell脚本一键执行!这个脚本是使用shell编写,为了快速在生产环境上部署lnmp / lamp /lnmpa 。(Linux、Nginx/Tengine MySQL /MariaDB /Percona、PHP),适用于CentOS5~7(包括redhat)Debian 6~8、 Ubuntu 12.04~15.04的 32位 和 64位。


前言


为了更加快速的节约时间,我选择用shell脚本一键执行!


这个脚本是使用shell编写,为了快速在生产环境上部署lnmp / lamp /lnmpa 。


Linux、Nginx/Tengine MySQL /MariaDB /Percona、PHP),适用于CentOS57(包括redhat)Debian 6~8、


 Ubuntu 12.04~15.04的 32位 和 64位。



脚本特性


  • 持续不断更新

  • 源码编译安装,大多数源码是最新stable版,并从官方网址下载

  • 一些安全优化

  • 提供多个数据库版本(MySQL-5.7, MySQL-5.6, MySQL-5.5, MariaDB-10.1, MariaDB-10.0, MariaDB-5.5, Percona-5.6, Percona-5.5)

  • 提供多个PHP版本(php-5.3, php-5.4, php-5.5,php-5.6,php-7)

  • 提供Nginx、Tengine

  • 提供多个Apache版本(Apache-2.4,Apache-2.2)

  • 根据自己需求安装PHP缓存加速器,提供ZendOPcache、xcache、apcu、eAccelerator。及php加解密工具ionCube、ZendGuardLoader

  • 根据自己需求安装Pureftpd、phpMyAdmin

  • 根据自己需求安装memcached、redis

  • 根据自己需求可使用tcmalloc或者jemalloc优化MySQL、Nginx

  • 提供添加、删除虚拟主机脚本

  • 提供Nginx/Tengine、MySQL/MariaDB/Percona、PHP、Redis、phpMyAdmin升级脚本

  • 提供本地备份和远程备份(服务器之间rsync)脚本

  • 提供CentOS6、7下HHVM安装



Github地址:https://github.com/lj2007331/lnmp


Java版本请访问:http://oneinstack.com/


提交问题请访问:  http://oneinstack.com/qa/



安装步骤


  1. yum -y install wget screen python#for CentOS/Redhat

  2. #apt-get -y install wget screen python# for Debian/Ubuntu

  3. wget http://aliyun-oss.linuxeye.com/lnmp-full.tar.gz #阿里云内网下载

  4. wget http://mirrors.linuxeye.com/lnmp-full.tar.gz # 包含源码,国内外均可下载

  5. wget http://mirrors.linuxeye.com/lnmp.tar.gz # 不包含源码,建议仅国外主机下载

  6. tar xzf lnmp-full.tar.gz

  7. #tar xzf lnmp.tar.gz

  8. cd lnmp # 如果需要修改目录(安装、数据存储、Nginx日志),请修改options.conf文件

  9. screen -S lnmp # 如果网路出现中断,可以执行命令`screen -r lnmp`重新连接安装窗口

  10. ./install.sh # 请勿sh install.sh或者bash install.sh这样执行




看看安装结果!


49bb388d36503155635d5f53f2f64701.png-wh_



如何添加虚拟主机?


  1. ./vhost.sh



如何删除虚拟主机?


  1. ./vhost.sh del



如何管理ftp账号?


  1. ./pureftpd_vhost.sh




数据备份


  1. cd /lnmp # 必须进入lnmp目录下执行

  2. ./backup_setup.sh # 备份参数设置

  3. ./backup.sh # 立即执行备份

  4. crontab -e # 可添加到计划任务,如每天凌晨1点自动备份

  5. 0 1 * * * cd ~/lnmp;./backup.sh  > /dev/null 2>&1 &


备份参数设置如下图:




如何管理服务?


Nginx/Tengine:


  1. service nginx {start|stop|status|restart|reload|configtest}


MySQL/MariaDB/Percona:

  1. service mysqld {start|stop|restart|reload|status}


PHP:

  1. service php-fpm {start|stop|restart|reload|status}


Apache:

  1. service httpd {start|restart|stop}


HHVM:

  1. service supervisord {start|stop|status|restart|reload}


注:hhvm进程交给supervisord管理,了解更多请访问《Supervisor管理hhvm进程

Pure-Ftpd:

  1. service pureftpd {start|stop|restart|status}


Redis:

  1. service redis-server {start|stop|status|restart|reload}


Memcached:

  1. service memcached {start|stop|status|restart|reload}



如何更新版本?


  1. ./upgrade.sh


跨大版本升级(如php):http://oneinstack.com/question/oneinstack-downgrade-if-php-version/



如何卸载?


  1. ./uninstall.sh




如何重装?


  1. ./uninstall.sh # 请先备份数据好数据后再卸载,丢失数据概不负责

  2. ./install.sh # 再次安装



更新日志?


  1. 2017-11-20 优化代码;修复《Apache mod_deflate压缩模块bug》;默认php编译--enable-intl --with-xsl参数

  2. 2017-11-10 Apache默认使用worker MPM模式; php-7.0支持gmagick扩展插件;卸载功能重写,可卸载单独模块

  3. 2017-11-07 PHP-7.0.0支持redis、memcached、imagick扩展插件

  4. 2017-11-02 PHP-7.0.0发布;增加MariaDB-10.1;vhost.sh增加https(默认自签名证书,需购买ssl证书替换);v1.0版本发布

  5. 2016-10-25 增加MySQL-5.7;vhost.sh增加thinkphp伪静态;源码更新到最新稳定

  6. 2016-08-31 使用hhvm自建yum仓库,修复一般用户远程备份问题

  7. 2016-08-07 添加虚拟主机删除功能

  8. 2016-08-04 代码重构优化,删除options.conf中web_install_dir db_install_dir db_data_dir参数

  9. 2016-07-16 删除***_centos.sh,添加Shadowsocks服务器端安装脚本;提供数据库升级脚本;更改数据库默认字符集为utf8mb4,旧版本支持数据库升级请参考:《MySQL/MariaDB/Percona数据库升级》

  10. 2016-07-01 升级脚本合并成一个入口;添加数据库root密码重装脚本;源码包更新到最新稳定版;包含JAVA版本请访问OneinStack

  11. 2016-05-18 Pure-FTPd更改为PureDB(不依赖php和MySQL),提供添加FTP虚拟账号管理脚本

  12. 2016-05-12 可 自定义Nginx/Apache/PHP-FPM运行用户(安装前修改options.conf中run_user参数);取消子模块依赖,如需重装、更 新大版本php,如果之前已经安装,先删除已经安装目录(或者重命名,如mv /usr/local/php /usr/local/php_bk),再 执行./install.sh php处选y,其余选择n即可;源码包更新到最新稳定版



总结!好事多磨!!!

相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore     ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
目录
相关文章
|
4月前
|
存储 JSON 分布式计算
MongoDB【部署 01】mongodb最新版本6.0.5安装部署配置使用及mongodb-shell1.8.0安装使用(云盘分享安装文件)
MongoDB【部署 01】mongodb最新版本6.0.5安装部署配置使用及mongodb-shell1.8.0安装使用(云盘分享安装文件)
149 0
|
3月前
|
Linux Shell 开发工具
10分钟让你的Linux Shell终端变得更优雅,更高效——【Linux服务器下OhMyZsh+P10k安装实践】
10分钟让你的Linux Shell终端变得更优雅,更高效——【Linux服务器下OhMyZsh+P10k安装实践】
84 1
|
8月前
|
Ubuntu 安全 Linux
不用安装虚拟机,直接在Windows上面运行Linux Bash Shell,嗯!真香!!!
不用安装虚拟机,直接在Windows上面运行Linux Bash Shell,嗯!真香!!!
152 0
|
9月前
|
Linux Shell
【Shell脚本】Linux安装Nexus的两种方式以及开机自启
【Shell脚本】Linux安装Nexus的两种方式以及开机自启
|
2月前
|
Ubuntu Shell Linux
|
2月前
|
运维 Java 应用服务中间件
Tomcat安装shell脚本
Tomcat安装shell脚本
33 7
|
2月前
|
运维 应用服务中间件 Shell
Nginx安装与虚拟主机配置shell脚本
Nginx安装与虚拟主机配置shell脚本
27 0
|
4月前
|
存储 Shell Linux
ZooKeeper【部署 01】单机版安装+配置+添加到service服务+开机启动配置+验证+chkconfig配置+shell自动部署脚本(一篇入门zookeeper)
ZooKeeper【部署 01】单机版安装+配置+添加到service服务+开机启动配置+验证+chkconfig配置+shell自动部署脚本(一篇入门zookeeper)
103 0
|
4月前
|
Ubuntu Shell Linux
shell配置以及安装
shell配置以及安装
48 2
|
7月前
|
Shell Linux
用shell脚本记录一个安装Linux软件的脚本
用shell脚本记录一个安装Linux软件的脚本
54 1