Linux LNMP系统更新指南
LNMP(Linux+Nginx+MySQL+PHP)环境的更新需兼顾系统底层与组件版本,核心目标是修复安全漏洞、提升性能,同时确保网站服务稳定。以下是分步操作流程及注意事项:
更新前务必备份所有重要数据,避免操作失误导致数据丢失。需备份的内容包括:
/var/www/(默认网站根目录,根据实际路径调整);mysqldump导出所有数据库(如mysqldump -u root -p --all-databases > all_databases.sql);/etc/nginx/(Nginx配置)、/etc/mysql/或/etc/mariadb/(数据库配置)、/etc/php/(PHP配置)。系统软件包的更新是基础,能为LNMP组件提供兼容的依赖环境。
sudo apt update # 同步软件包列表(获取最新版本信息)
sudo apt upgrade -y # 升级所有已安装的软件包至最新版本
sudo yum update -y # CentOS 7及以下使用yum;CentOS 8及以上建议使用dnf(用法相同)
执行后,系统会自动下载并安装可用的更新。
sudo apt install nginx -y # 直接升级至仓库最新版本
sudo yum install nginx -y
cd /usr/src # 进入源码目录
sudo wget http://nginx.org/download/nginx-<最新版本>.tar.gz # 下载最新版
sudo tar zxvf nginx-<最新版本>.tar.gz
cd nginx-<最新版本>
sudo ./configure # 使用原编译参数(可通过nginx -V查看)
sudo make
sudo make install # 覆盖旧版本
升级后重启Nginx使变更生效:
sudo systemctl restart nginx
sudo apt install mysql-server -y # MySQL
sudo apt install mariadb-server -y # MariaDB(Ubuntu 22.04+默认)
sudo yum install mariadb-server mariadb -y # MariaDB(CentOS推荐)
sudo systemctl start mariadb
sudo systemctl enable mariadb
sudo mysql_secure_installation # 运行安全脚本(设置root密码、移除匿名用户等)
sudo apt install php libapache2-mod-php php-mysql php-json php-opcache -y # 安装PHP及常用扩展
sudo yum install php php-fpm php-mysqlnd php-mbstring php-xml php-gd php-cli php-opcache -y
--with-mysqli=/usr/lib64/mysql),编译安装后重启PHP-FPM:sudo systemctl restart php-fpm # 根据PHP版本调整(如php7.4-fpm、php8.2-fpm)
更新后验证组件版本:
nginx -v # 查看Nginx版本
php -v # 查看PHP版本
mysql --version # 查看MySQL版本(或mariadb --version)
若LNMP环境通过一键安装包(如LNMP 1.6+)部署,可使用其自带的升级脚本简化操作:
# 进入LNMP安装目录(假设为~/lnmp)
cd ~/lnmp
# 下载最新版安装包(以1.6为例)
wget http://soft.vpser.net/lnmp/lnmp-1.6.tar.gz
tar zxvf lnmp-1.6.tar.gz
cd lnmp-1.6
# 运行升级脚本(以PHP为例,其他组件类似)
./upgrade.sh php
# 根据脚本提示选择目标版本(如PHP 8.2),等待升级完成
一键安装包的升级脚本会自动处理依赖关系,适合新手或批量环境。
sudo systemctl status nginx # Nginx
sudo systemctl status mariadb # 或mysqld
sudo systemctl status php-fpm # PHP-FPM
/usr/src/nginx-*.tar.gz),释放磁盘空间。top、htop等工具监控服务器负载,确保性能稳定。