服务器部署一键安装包LNMP脚本过程及常用的命令工具脚本

2023年1月9日 08:18:39面板软件7字数 4842阅读16分8秒阅读模式

LNMP 一键安装脚本是我们常用于Linux服务器的Web工具。相比我们可能熟悉的宝塔面板更加老牌,只不过需要通过命令行的方式部署和管理,在操作上没有宝塔面板可视化,但是在功能和稳定性,包括资源的占用节省程度是超过宝塔面板的。尤其是有一定的运维能力的用户会喜欢用LNMP一键安装包。

这篇文章中,我们也准备在一台服务器部署LNMP,所以正好记录一下。

第一、LNMP 环境部署

wget http://soft.vpser.net/lnmp/lnmp1.9.tar.gz -cO lnmp1.9.tar.gz && tar zxf lnmp1.9.tar.gz && cd lnmp1.9 && ./install.sh lnmp

通用支持当前主流的云服务器,CentOS、Ubuntu、Debian 镜像支持。当然,如果有需要安装LAMP的,也是可以的。

wget http://soft.vpser.net/lnmp/lnmp1.9.tar.gz -cO lnmp1.9.tar.gz && tar zxf lnmp1.9.tar.gz && cd lnmp1.9 && ./install.sh lamp

这里我们就安装LNMP。

根据提示,我们可以选择LNMP的组合软件,比如MYSQL数据库版本、PHP版本,包括缓存组件支持。

安装完毕看到上图,说明已经安装成功。这里,我们可以通过命令开始创建站点和运维管理。

第二、LNMP常用命令

我们其实可以理解这些一键包命令行的安装环境,其实就是我们熟悉的编译过程,只是将他整体化和小工具命令行化。

lnmp vhost add

通过这个命令,可以调出添加站点的向导,虽然不比图形化,但是对于我们以前用编译的方式还是简单很多的。我们可以看到有支持配置域名、日志路径、数据库账户,包括SSL证书也是有支持部署的。

lnmp vhost del

同样,也可以通过这个命令删除主机中的站点。调出站点目录,选择删除。

对于LNMP考虑到的安装速度,所以在初始化部署的时候没有安装太多的应用组件,我们可以后续通过快速工具进行安装,包括memcached、xcache、ionCube都是可以有快速工具安装的。

1、ionCube

此脚本是用来安装ionCube loader的,ionCube loader是用来解密ionCube加密的PHP脚本,如whmcs就采用ionCube加密。

./addons.sh install ionCube

2、opcache

此脚本是用来安装opcache的,是 Zend 开发的闭源但可以免费使用的 PHP 优化加速组件。LNMP 1.2下安装的PHP 5.5或更高版本的PHP不需要额外安装OPcache,默认已经安装上。

./addons.sh install opcache

3、Redis

此脚本是用来安装Redis,Redis是一个开源、支持网络、基于内存、键值对存储数据库。

./addons.sh install redis

4、imageMagick

ImageMagick是一个用于查看、编辑位图文件以及进行图像格式转换的开放源代码软件套装。它可以读取、编辑超过100种图象格式。可用来替换GD库。

./addons.sh install imagemagick

5、memcached

Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提供动态、数据库驱动网站的速度。

./addons.sh install memcached

6、eAccelerator

eAccelerator是一个自由开放源码php加速器,优化和动态内容缓存,提高了php脚本的缓存性能,使得PHP脚本在编译的状态下,对服务器的开销几乎完全消除。 它还有对脚本起优化作用,以加快其执行效率。

./addons.sh install eaccelerator

7、xcache

XCache 是一个国人开发的又快又稳定的PHP opcode缓存器。经过良好的测试并在大流量/高负载的生产机器上稳定运行,支持所有现行PHP分支的最新发布版本。

./addons.sh install xcache

具体的我们还可以参考LNMP官方的文档。

第三、LNMP 软件安装目录

不同的软件环境,对于运维人员来说还是有些考验的。比如 LNMP 一键安装环境,和我们安装的宝塔面板LNMP,软件的目录还是有所不同的。这里,如果有用 LNMP 环境的,我们需要检查对应软件的目录,方便运维。

LNMP相关软件安装目录

Nginx 目录: /usr/local/nginx/
MySQL 目录 : /usr/local/mysql/
MySQL数据库所在目录:/usr/local/mysql/var/
MariaDB 目录 : /usr/local/mariadb/
MariaDB数据库所在目录:/usr/local/mariadb/var/
PHP目录 : /usr/local/php/
多PHP版本目录 : /usr/local/php5.5/ 其他版本前面5.5的版本号换成其他即可
PHPMyAdmin目录 : 0.9版本为/home/wwwroot/phpmyadmin/ 1.0及以后版本为 /home/wwwroot/default/phpmyadmin/ 强烈建议将此目录重命名为其不容易猜到的名字。phpmyadmin可自己从官网下载新版替换。
默认网站目录 : 0.9版本为 /home/wwwroot/ 1.0及以后版本为 /home/wwwroot/default/
Nginx日志目录:/home/wwwlogs/
/root/vhost.sh添加的虚拟主机配置文件所在目录:/usr/local/nginx/conf/vhost/
PureFtpd 目录:/usr/local/pureftpd/
PureFtpd web管理目录: 0.9版为/home/wwwroot/default/ftp/ 1.0版为 /home/wwwroot/default/ftp/
Proftpd 目录:/usr/local/proftpd/
Redis 目录:/usr/local/redis/

LNMP相关配置文件位置

Nginx主配置(默认虚拟主机)文件:/usr/local/nginx/conf/nginx.conf
添加的虚拟主机配置文件:/usr/local/nginx/conf/vhost/域名.conf
MySQL配置文件:/etc/my.cnf
PHP配置文件:/usr/local/php/etc/php.ini
php-fpm配置文件:/usr/local/php/etc/php-fpm.conf
PureFtpd配置文件:/usr/local/pureftpd/pure-ftpd.conf 1.3及更高版本:/usr/local/pureftpd/etc/pure-ftpd.conf
PureFtpd MySQL配置文件:/usr/local/pureftpd/pureftpd-mysql.conf
Proftpd配置文件:/usr/local/proftpd/etc/proftpd.conf 1.2及之前版本为/usr/local/proftpd/proftpd.conf
Proftpd 用户配置文件:/usr/local/proftpd/etc/vhost/用户名.conf
Redis 配置文件:/usr/local/redis/etc/redis.conf

LNMPA相关目录文件位置

Apache目录:/usr/local/apache/
Apache配置文件:/usr/local/apache/conf/httpd.conf
Apache虚拟主机配置文件目录:/usr/local/apache/conf/vhost/
Apache默认虚拟主机配置文件:/usr/local/apache/conf/extra/httpd-vhosts.conf
虚拟主机配置文件名称:/usr/local/apache/conf/vhost/域名.conf

第四、LNMP 管理命令脚本

LNMP 环境虽然也是原生态编译安装软件的,但是加上自定义的小工具命令脚本,对于操作Linux服务器WEB环境更加容易一些,所以我们也需要知道LNMP一些常用管理命令。

LNMP状态管理命令

LNMP 1.2+状态管理: lnmp {start|stop|reload|restart|kill|status}
LNMP 1.2+各个程序状态管理: lnmp {nginx|mysql|mariadb|php-fpm|pureftpd} {start|stop|reload|restart|kill|status}
LNMP 1.1状态管理: /root/lnmp {start|stop|reload|restart|kill|status}
Nginx状态管理:/etc/init.d/nginx {start|stop|reload|restart}
MySQL状态管理:/etc/init.d/mysql {start|stop|restart|reload|force-reload|status}
Memcached状态管理:/etc/init.d/memcached {start|stop|restart}
PHP-FPM状态管理:/etc/init.d/php-fpm {start|stop|quit|restart|reload|logrotate}
PureFTPd状态管理: /etc/init.d/pureftpd {start|stop|restart|kill|status}
ProFTPd状态管理: /etc/init.d/proftpd {start|stop|restart|reload}
Redis状态管理: /etc/init.d/redis {start|stop|restart|kill}

多PHP版本状态管理:/etc/init.d/php-fpm5.5 {start|stop|quit|restart|reload|logrotate} 前面5.5为对应的PHP版本,其他版本自行替换。

LNMPA状态管理命令

LNMPA 1.2+状态管理: lnmp {start|stop|reload|restart|kill|status}
LNMPA 1.2+各个程序状态管理: lnmp {httpd|mysql|mariadb|pureftpd} {start|stop|reload|restart|kill|status}
LNMPA1.1状态管理: /root/lnmpa {start|stop|reload|restart|kill|status}
Nginx状态管理:/etc/init.d/nginx {start|stop|reload|restart}
MySQL状态管理:/etc/init.d/mysql {start|stop|restart|reload|force-reload|status}
Memcached状态管理:/etc/init.d/memcached {start|stop|restart}
PureFTPd状态管理: /etc/init.d/pureftpd {start|stop|restart|kill|status}
ProFTPd状态管理: /etc/init.d/proftpd {start|stop|restart|reload}
Apache状态管理:/etc/init.d/httpd {start|stop|restart|graceful|graceful-stop|configtest|status}

具体详细的,也可以参考 LNMP官网(https://lnmp.org/)。

总结,LNMP一键安装包已经有超过十年的历史,每年都在不断的维护更新,如果我们希望有一个稳定的非可视化的Linux Web环境,可以用LNMP脚本。

相关文章
布丁
  • 本文由 发表于 2023年1月9日 08:18:39
  • 转载请务必保留本文链接:https://www.idcxen.com/lnmp.html