升级Debian上的LNMP(Linux, Nginx, MySQL/MariaDB, PHP)版本涉及多个步骤,包括更新系统、升级软件包以及重新配置服务。以下是详细的升级步骤:
在进行任何系统升级之前,务必备份所有重要数据,以防升级过程中出现问题导致数据丢失。
确保你的系统是最新的:
sudo apt update
sudo apt upgrade
sudo apt full-upgrade
sudo apt autoremove
sudo apt clean
如果你打算升级到一个新的Debian版本(例如从Debian 11升级到Debian 12),你需要修改软件源文件:
mkdir /apt
cp /etc/apt/sources.list /apt
cp -r /etc/apt/sources.list.d/ /apt
sed -i 's/bullseye/bookworm/g' /etc/apt/sources.list
sed -i 's/bullseye/bookworm/g' /etc/apt/sources.list.d/*
按照以下步骤升级系统:
sudo apt update
sudo apt upgrade --without-new-pkgs -y
# 如果遇到配置文件变更,先保留(默认就是,回车即可)
# 重启服务是否都可以(默认不重启,回车即可)
sudo apt full-upgrade -y
# 如果网络不好,某些包下载到一半就断了,可以试试延长超时时间
sudo apt -o Acquire::http::Timeout 90 full-upgrade -y
根据需要重新安装或更新Nginx:
sudo apt install nginx
同样地,重新安装或更新MariaDB:
sudo apt install mariadb-server
最后,重新安装或更新PHP及其相关模块:
sudo apt install php-fpm php-opcache php-cli php-gd php-curl php-mysql
确保Nginx配置文件正确处理PHP文件:
sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/example.com.conf
sudo nano /etc/nginx/sites-available/example.com.conf
# 在配置文件中添加以下内容
server {
listen 80;
server_name example.com;
root /var/www/html;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ =404;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
# 根据你的PHP版本调整
}
}
sudo ln -s /etc/nginx/sites-available/example.com.conf /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl restart nginx
确保所有服务都已重启以应用更改:
sudo systemctl restart nginx
sudo systemctl restart mariadb
sudo systemctl restart php7.4-fpm # 根据你的PHP版本调整
验证每个组件是否已成功更新:
nginx -v
mysql --version
或者 mariadb --version
php -v
在进行系统更新之前,务必备份重要数据。建议使用官方或可信的源进行更新,以确保获取到的是稳定且安全的版本。更新过程中,密切关注终端输出的信息,以便及时发现并解决可能出现的问题。更新完成后,可能需要重启相关服务或整个系统以使更新生效。