
WARNING
该项目不再添加新功能,仅进行日常维护,推荐使用 docker-compose 版本。项目链接:https://github.com/linuxeye/bypanel
LNMP 脚本说明
本脚本使用 Shell 编写,用于快速部署生产环境的LEMP/LAMP/LNMP/LNMPA/LTMP(Linux、Nginx/Tengine/OpenResty、MySQL/MariaDB/Percona、PHP、JAVA),适用于以下 64 位系统:
- RHEL 7、8、9(含 CentOS、RedHat、AlmaLinux、Rocky)
- Debian 9、10、11、12
- Ubuntu 16、18、20、22、24
- Fedora 27+
脚本特性
- 持续更新:支持交互式 Shell 安装与全自动安装
- 源码编译:采用官方最新稳定源编译安装
- 安全优化:内置多项安全配置
- 多数据库支持:
MySQL-8.4/8.0/5.7/5.5、MariaDB-11.8/11.4/10.11/5.5、Percona-8.4/8.0/5.7/5.5、PostgreSQL、MongoDB - 多 PHP 版本:
PHP-8.4/8.3/8.2/8.1/8.0/7.4/7.3/7.2/7.1/7.0/5.6/5.5/5.4/5.3 - Web 服务支持:Nginx、Tengine、OpenResty、Apache、ngx_lua_waf
- Tomcat 版本:Tomcat-10/9/8/7
- JDK 版本:OpenJDK-8/11/17
- PHP 加速与扩展:
- 缓存加速:ZendOPcache、xcache、apcu、eAccelerator
- 扩展支持:ZendGuardLoader、ionCube、SourceGuardian、imagick、gmagick、fileinfo、imap、ldap、calendar、phalcon、yaf、yar、redis、memcached、memcache、mongodb、swoole、xdebug
- 可选组件:Nodejs、Pureftpd、phpMyAdmin
- 缓存服务:memcached、redis(可选安装)
- 性能优化:Jemalloc 优化 MySQL、Nginx
- 虚拟主机:支持添加虚拟主机并配置 Let's Encrypt SSL 证书
- 服务升级:支持 Nginx/Tengine/OpenResty/Apache/Tomcat、MySQL/MariaDB/Percona、PHP、Redis、Memcached、phpMyAdmin 升级
- 备份方案:支持本地、远程(服务器间 rsync)、阿里云 OSS、腾讯云 COS、又拍云、青云、亚马逊 S3、谷歌云盘、Dropbox 备份
命令列表 2025-06-27
| 变量名 | 变量值 | 对应版本 | 变量值含义 |
|---|---|---|---|
--nginx_option | 1 2 3 | Nginx Tengine OpenResty | Nginx 版本 |
| --apache | 无 | Apache-2.4 | 安装 Apache |
| --apache_mode_option | 1 2 | php-fpm(默认) mod_php | Apache+php 模式 |
--apache_mpm_option | 1 2 3 | event(默认) prefork worker | Apache 工作模式 |
| --php_option | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 | php-5.3 php-5.4 php-5.5 php-5.6 php-7.0 php-7.1 php-7.2 php-7.3 php-7.4 php-8.0 php-8.1 php-8.2 php-8.3 php-8.4 | PHP 版本 |
--phpcache_option | 1 2 3 4 | OPcache XCache APCU eAccelerator | PHP 缓存 |
| --mphp_ver | 53 54 55 56 70 71 72 73 74 80 81 82 83 | PHP-53 PHP-54 PHP-55 PHP-56 PHP-70 PHP-71 PHP-72 PHP-73 PHP-74 PHP-80 PHP-81 PHP-82 PHP-83 | 安装另一个 PHP |
| --mphp_addons | 无 | 无 | 仅另一个 PHP 安装扩展 |
| --php_extensions | zendguardloader, ioncube, sourceguardian, imagick,gmagick, fileinfo, imap, ldap, phalcon, redis, memcached, memcache, mongodb, swoole, xdebug | 可同时写多个以逗号隔开 | PHP 扩展 |
--tomcat_option | 1 2 3 4 | Tomcat-10 Tomcat-9 Tomcat-8 Tomcat-7 | Tomcat 版本 |
--jdk_option | 1 2 3 4 | JDK-11 JDK-1.8 JDK-1.7 JDK-1.6 | JDK 版本 |
| --db_option | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 | MySQL-8.4 MySQL-8.0 MySQL-5.7 MySQL-5.5 MariaDB-11.8 MariaDB-11.4 MariaDB-10.11 MariaDB-5.5 Percona-8.4 Percona-8.0 Percona-5.7 Percona-5.5 PostgreSQL MongoDB | 数据库版本 |
| --dbinstallmethod | 1 2 | 二进制安装(默认) 源码编译安装 | DB 安装方式 |
| --dbrootpwd | 密码 | 无 | DB 密码 |
| --pureftpd | 无 | 无 | 安装 pureftpd |
| --redis | 无 | 无 | 安装 redis |
| --memcached | 无 | 无 | 安装 memcached |
| --phpmyadmin | 无 | 无 | 安装 phpmyadmin |
| --ssh_port | 端口 | 无 | ssh 端口 |
| --python | 无 | 无 | /usr/local/python 源码安装 python |
| --iptables | 无 | 无 | 启用 iptables |
| --reboot | 无 | 无 | 安装后重启服务器 |
命令自动安装
bash
wget -c https://mirrors.linuxeye.com/lnmp-full.tar.gz && tar xzf lnmp-full.tar.gz && ./lnmp/install.sh --nginx_option 3 --php_option 14 --phpcache_option 1 --php_extensions imagick,redis,memcached --phpmyadmin --db_option 5 --dbinstallmethod 1 --dbrootpwd 'password' --pureftpd --redis --memcached --firewall --reboot安装步骤
先安装依赖,再下载源码并运行安装脚本。
CentOS/Redhat 系统
bash
yum -y install wget screenDebian/Ubuntu 系统
bash
apt-get -y install wget screen下载与安装
bash
wget http://mirrors.linuxeye.com/lnmp-full.tar.gz
# 备用下载:wget https://downloads.sourceforge.net/project/linuxeye/lnmp-full.tar.gz
tar xzf lnmp-full.tar.gz
cd lnmp中断重连
若安装过程中连接中断,可执行以下命令重新连接安装窗口:
bash
# 首次启动安装窗口
screen -S lnmp
# 中断后重连
screen -r lnmp自定义配置
如需修改安装目录、数据存储路径或 Nginx 日志路径,需在运行 install.sh 前修改options.conf文件:
bash
./install.sh安装其他 PHP 版本
bash
~/lnmp/install.sh --mphp_ver 54 # 示例:安装PHP-5.4添加 PHP 扩展
bash
~/lnmp/addons.sh管理虚拟主机
- 添加虚拟主机bash
~/lnmp/vhost.sh - 删除虚拟主机bash
~/lnmp/vhost.sh --del
添加 FTP 虚拟用户
bash
~/lnmp/pureftpd_vhost.sh备份操作
- 配置备份参数bash
~/lnmp/backup_setup.sh - 立即执行备份bash
~/lnmp/backup.sh - 设置定时备份(示例:每天 1 点自动备份)bash
crontab -l # 查看当前计划任务 # 添加以下内容到crontab 0 1 * * * cd ~/lnmp && ./backup.sh > /dev/null 2>&1 &
服务管理命令
- Nginx/Tengine/OpenRestybash
systemctl {start|stop|status|restart|reload} nginx - MySQL/MariaDB/Perconabash
systemctl {start|stop|restart|reload|status} mysqld - PostgreSQLbash
systemctl {start|stop|restart|status} postgresql - MongoDBbash
systemctl {start|stop|status|restart|reload} mongod - PHPbash
systemctl {start|stop|restart|reload|status} php-fpm - Apachebash
systemctl {start|restart|stop} httpd - Tomcatbash
systemctl {start|stop|status|restart} tomcat - Pure-FTPdbash
systemctl {start|stop|restart|status} pureftpd - Redisbash
systemctl {start|stop|status|restart|reload} redis-server - Memcachedbash
systemctl {start|stop|status|restart|reload} memcached
服务升级
bash
~/lnmp/upgrade.sh卸载脚本
bash
~/lnmp/uninstall.sh
