引言
在使用Linux VPS时,系统更新是保障安全性和稳定性的关键操作,但国内部分VPS因网络限制(封禁国外源),常规更新常出现404、下载超时等问题;而跨版本升级(如Ubuntu 22.04 LTS→24.04 LTS)更因依赖稳定的软件源和严格的升级顺序,让很多用户望而却步。
本文分享一款国内外VPS通用的Linux一键更新脚本 ,支持Ubuntu、Debian、CentOS等主流系统,重点实测宁波节点Ubuntu 22.04 LTS跨版本升级到24.04 LTS的完整流程,步骤清晰、避坑指南齐全,新手也能轻松上手!
服务条款/安全告知书:https://files.api.afmax.cn/yong-hu-tiao-kuan/https://files.api.afmax.cn/1761393065014
一、脚本核心优势与支持范围
1. 核心亮点
-
适配性强:自动识别系统版本和架构,国内CDN源加速,封禁国外源的VPS也能高速更新;
-
功能全面:支持小版本补丁升级(如22.04.1→22.04.5)和跨版本LTS升级(如22.04→24.04);
-
操作简单:一键执行,无需手动修改源文件,降低操作门槛;
-
兼容性高:覆盖Debian/Ubuntu/RHEL三大系列主流版本,64位x86_64架构通用。
2. 支持的系统版本(重点标注Ubuntu)
|-----------------------|---------------------------------------------------------------|------|------------------------------------------------------------------------|
| 系统分类 | 具体版本/系列 | 包管理器 | 脚本核心行为 |
| Ubuntu | 18.04/20.04/22.04/24.04 LTS;非LTS版本(bionic/focal/jammy/noble等) | apt | 写入AFMAX CDN源到/etc/apt/sources.list.d/cdn.list → 执行apt full-upgrade |
| Debian | 10(buster)/11(bullseye)/12(bookworm)及其他现存版本 | apt | 复用Ubuntu CDN源 → 执行apt full-upgrade |
| CentOS | 7.x全版本 | yum | 写入CentOS 7专属CDN源 → 执行yum update |
| CentOS Stream | 9.x全版本 | dnf | 写入RHEL 9兼容CDN源 → 执行dnf upgrade |
| Rocky Linux/AlmaLinux | 9.x全版本 | dnf | 复用RHEL 9兼容CDN源 → 执行dnf upgrade |
3. 明确不支持的场景(避坑重点)
-
架构:32位(i386/i686)系统、ARM(树莓派)、PowerPC等非x86_64架构;
-
系统版本:CentOS 8.x(官方终止维护)、RHEL 6.x/10.x、Debian 9及以下EOL版本;
-
发行版:Fedora、Arch Linux、Alpine Linux等非RHEL/Debian系系统。
二、升级前必做准备(关键!避免系统崩溃)
1. 数据备份(重中之重)
系统升级存在崩溃风险,尤其是跨版本升级,务必提前备份关键数据:
-
重要文件:通过
scp或FTP工具下载到本地; -
配置文件:备份
/etc目录下核心配置(如/etc/apt/sources.list、/etc/resolv.conf); -
数据库:若有MySQL、PostgreSQL等数据库,执行导出备份(如
mysqldump -u root -p 数据库名 > 备份文件.sql)。
2. DNS配置(可选但推荐,解决解析失败问题)
DNS解析异常会导致软件源无法访问,建议优先配置稳定DNS,避免升级失败:
方案1:直接修改resolv.conf并锁定(适用于大部分系统)
sudo sh -c 'printf "nameserver 1.1.1.1\nnameserver 114.114.114.114\nnameserver 8.8.8.8\n" >/etc/resolv.conf && chattr +i /etc/resolv.conf'
方案2:通过systemd-resolved配置(适用于Ubuntu 20.04+)
sed -i '/^\[Resolve\]/a DNS=1.1.1.1 114.114.114.114 8.8.8.8' /etc/systemd/resolved.conf && systemctl restart systemd-resolved && ln -sf /run/systemd/resolve/resolv.conf /etc/resolv.conf && cat /etc/resolv.conf | grep nameserver
方案3:DNS冲突时的应急处理(单DNS配置)
若出现DNS冲突导致解析失败,执行以下命令强制配置国内DNS:
# 停止冲突的DNS服务 + 配置114 DNS + 重启网络 systemctl stop systemd-resolved && systemctl disable systemd-resolved echo "nameserver 114.114.114.114" > /etc/resolv.conf echo "nameserver 114.114.115.115" >> /etc/resolv.conf chattr +i /etc/resolv.conf # 锁定配置,防止被自动修改 systemctl restart networking 2>/dev/null || echo "网络服务重启完成" # 验证解析是否正常(关键步骤) nslookup help.api.afmax.cn
若输出正常解析结果,说明DNS配置成功;若失败,更换其他可用DNS重试。
三、Ubuntu 22.04 LTS→24.04 LTS升级完整步骤
核心原则:跨版本升级前,必须先完成小版本升级到最新!
第一步:小版本升级(22.04.x→22.04最新版)
-
下载升级脚本并处理格式(避免Windows回车符导致报错):
下载脚本 curl -O https://help.api.afmax.cn/linux/upgrade/upgrade-afmax.sh # 去掉回车符(关键!否则脚本可能无法执行) sed -i 's/\r$//' upgrade-afmax.sh # 赋予执行权限 chmod +x upgrade-afmax.sh # 运行脚本(小版本升级+安全补丁更新) ./upgrade-afmax.sh
或直接一键执行(无需手动下载):
bash <(curl -s https://help.api.afmax.cn/linux/upgrade/upgrade-afmax.sh)
- 脚本执行说明:
-
自动写入AFMAX CDN国内源,替代默认国外源;
-
执行
apt full-upgrade,自动安装所有小版本补丁和软件更新; -
过程中需确认升级(输入
y回车),等待下载并安装完成(时间取决于网络速度)。
第二步:跨版本升级(22.04 LTS→24.04 LTS)
小版本升级完成后,执行跨版本升级脚本:
-
下载并执行跨版本升级脚本:
下载跨版本升级脚本 curl -O https://help.api.afmax.cn/linux/upgrade/upgrade-afmax-lts.sh # 去掉回车符 sed -i 's/\r$//' upgrade-afmax-lts.sh # 赋予执行权限 chmod +x upgrade-afmax-lts.sh # 运行脚本(开始跨版本升级) ./upgrade-afmax-lts.sh
或一键执行:
bash <(curl -s https://help.api.afmax.cn/linux/upgrade/upgrade-afmax-lts.sh)
- 跨版本升级注意事项:
-
过程中会提示"是否继续升级",输入
y回车,耐心等待(可能需要30分钟以上,取决于VPS配置和网络); -
若出现"是否保留旧配置文件",建议选择"保留(keep current version)",避免配置丢失;
-
升级完成后,脚本会提示重启系统,输入
reboot重启。
第三步:重启后重新配置DNS
重启后DNS配置可能失效,重新执行第二步中的DNS配置命令(任选一种),确保后续使用稳定。
四、宁波节点Ubuntu 22.04→24.04实测结果
测试环境
-
VPS节点:宁波
-
初始系统:Ubuntu 22.04 LTS(64位x86_64)
-
网络状态:封禁国外源,仅国内网络可用
-
测试结果:✅ 升级成功,无报错!
关键验证步骤
-
查看系统版本:
lsb_release -a
输出如下,说明已成功升级到24.04 LTS:
No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 24.04 LTS Release: 24.04 Codename: noble
-
验证软件源可用性:
apt update
无404错误,出现"Hit"(缓存命中)或"Get"(下载)日志,说明CDN源正常。
- 功能验证:
-
系统服务正常启动(Nginx、MySQL等均无异常);
-
网络连接稳定,DNS解析正常;
-
安全补丁已全部安装(
apt list --upgradable无待升级包)。
五、常见问题排查
1. 脚本执行报错"权限不足"
解决方案:在命令前加sudo,或切换到root用户(sudo -i)后执行。
2. 下载超时/404错误
-
检查DNS配置:执行
nslookup help.api.afmax.cn,确保能正常解析; -
更换DNS:使用方案3的单DNS配置,优先选择114DNS;
-
确认系统架构:必须是64位x86_64(
uname -m输出x86_64)。
3. 跨版本升级卡在"配置软件包"
-
耐心等待:部分软件包配置需要时间,避免强制中断;
-
强制退出后重试:若卡住超过30分钟,按
Ctrl+C退出,重新运行跨版本升级脚本。
4. 升级后系统无法启动
-
原因:可能是硬件不兼容或关键配置丢失;
-
解决方案:通过VPS控制台进入救援模式,恢复备份的配置文件,或重新安装系统。
六、总结
这款Linux一键更新脚本完美解决了"封禁国外VPS无法更新"的痛点,国内CDN源加速确保下载速度,自动适配系统版本无需手动改源,尤其适合Ubuntu LTS版本的跨版本升级。
本次宁波节点Ubuntu 22.04→24.04的实测成功,证明了脚本的稳定性和兼容性。升级前务必做好备份、配置好DNS,严格按照"小版本升级→跨版本升级"的顺序操作,就能最大程度避免风险。
如果你的VPS是Debian、CentOS Stream等支持列表中的系统,也可以直接复用本文步骤,轻松完成系统更新!如果遇到问题,欢迎在评论区留言交流~