国内外通用一键跨版本升级教程(封禁国外VPS适用)

引言

在使用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最新版)
  1. 下载升级脚本并处理格式(避免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)
  1. 脚本执行说明:
  • 自动写入AFMAX CDN国内源,替代默认国外源;

  • 执行apt full-upgrade,自动安装所有小版本补丁和软件更新;

  • 过程中需确认升级(输入y回车),等待下载并安装完成(时间取决于网络速度)。

第二步:跨版本升级(22.04 LTS→24.04 LTS)

小版本升级完成后,执行跨版本升级脚本:

  1. 下载并执行跨版本升级脚本:

    下载跨版本升级脚本 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)
  1. 跨版本升级注意事项:
  • 过程中会提示"是否继续升级",输入y回车,耐心等待(可能需要30分钟以上,取决于VPS配置和网络);

  • 若出现"是否保留旧配置文件",建议选择"保留(keep current version)",避免配置丢失;

  • 升级完成后,脚本会提示重启系统,输入reboot重启。

第三步:重启后重新配置DNS

重启后DNS配置可能失效,重新执行第二步中的DNS配置命令(任选一种),确保后续使用稳定。

四、宁波节点Ubuntu 22.04→24.04实测结果

测试环境

  • VPS节点:宁波

  • 初始系统:Ubuntu 22.04 LTS(64位x86_64)

  • 网络状态:封禁国外源,仅国内网络可用

  • 测试结果:✅ 升级成功,无报错!

关键验证步骤

  1. 查看系统版本:

    lsb_release -a

输出如下,说明已成功升级到24.04 LTS:

复制代码
No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 24.04 LTS Release: 24.04 Codename: noble
  1. 验证软件源可用性:

    apt update

无404错误,出现"Hit"(缓存命中)或"Get"(下载)日志,说明CDN源正常。

  1. 功能验证:
  • 系统服务正常启动(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等支持列表中的系统,也可以直接复用本文步骤,轻松完成系统更新!如果遇到问题,欢迎在评论区留言交流~

相关推荐
七夜zippoe1 天前
CANN Runtime任务描述序列化与持久化源码深度解码
大数据·运维·服务器·cann
Fcy6481 天前
Linux下 进程(一)(冯诺依曼体系、操作系统、进程基本概念与基本操作)
linux·运维·服务器·进程
袁袁袁袁满1 天前
Linux怎么查看最新下载的文件
linux·运维·服务器
代码游侠1 天前
学习笔记——设备树基础
linux·运维·开发语言·单片机·算法
Harvey9031 天前
通过 Helm 部署 Nginx 应用的完整标准化步骤
linux·运维·nginx·k8s
珠海西格电力科技1 天前
微电网能量平衡理论的实现条件在不同场景下有哪些差异?
运维·服务器·网络·人工智能·云计算·智慧城市
释怀不想释怀1 天前
Linux环境变量
linux·运维·服务器
zzzsde1 天前
【Linux】进程(4):进程优先级&&调度队列
linux·运维·服务器
聆风吟º1 天前
CANN开源项目实战指南:使用oam-tools构建自动化故障诊断与运维可观测性体系
运维·开源·自动化·cann
NPE~1 天前
自动化工具Drissonpage 保姆级教程(含xpath语法)
运维·后端·爬虫·自动化·网络爬虫·xpath·浏览器自动化