升级Ubuntu20.04版本至Ubuntu22.04

1、升级前检查与清理

确保Prompt为lts

root@power:~# grep Prompt /etc/update-manager/release-upgrades

检查软件包锁定状态

确保以下命令输出为空

root@power:~# sudo apt-mark showhold

如果不为空,使用以下命令解除对软件的保留,pkg1替换为具体的包名

root@power:~# sudo apt-mark unhold pkg1

根盘至少剩余30G空间

清理无用依赖

清理系统中已失效的旧依赖包,减少升级冲突:

root@power:~# apt autoremove --purge -y

2、系统软件更新

更新系统软件

root@power:~# apt update && apt upgrade -y

重启操作系统

root@power:~# reboot

3、操作系统升级

升级操作系统,建议使用ipmi进行操作

root@power:~# sudo do-release-upgrade

如果通过ssh链接进行升级操作,会有如下提示,意思是会以1022端口新开一个ssh daemon以防不测,选择y继续

如果是ssh方式执行的升级操作,建议iptables或其他防火墙放行1022端口,按回车继续

为保证升级的顺利进行,在升级过程中,sources.list中的第三方源会被disable,在升级完成后,我们需要重新启用它们。按回车继续

告知我们升级过程中需要安装的软件包数量,按d显示软件包细节,按y继续下一步

升级过程中会更新某些库,因此相关的服务会被重启,后续相关服务重启时是否直接重启不再询问,选yes

提示某项服务是否需要修改配置文件,选择第二项,保留当前版本的配置

移除过时的软件,按d查看细节,按y同意,按n拒绝

安装完成,按y重启操作系统,按n拒绝

4 、升级后检查

检查操作系统是否升级成功

root@power:~# cat /etc/os-release

升级后网卡名可能发生变化,需要根据实际情况修改网卡配置文件

root@power:~# dmesg -T |grep -E "rename"

相关推荐
小此方几秒前
Linux网络(七):从 Socket 封装到应用层协议:手写网络版计算器,彻底搞懂 TCP 通信、序列化与反序列化
linux·网络·tcp/ip
captain3764 分钟前
网络初 识
运维·服务器·网络
ZzzZZzzzZZZzzzz…9 分钟前
K8s---网络:从 Pod 网络模型到 Calico 三种模式
运维·网络·云原生·容器·kubernetes·calico·pod网络模型
kyle~13 分钟前
Linux --- epoll (I/O就绪事件通知机制)
linux·运维·服务器
AlfredZhao17 分钟前
进程都杀了,为什么 `netstat` 还能看到端口?
linux
一条泥憨鱼21 分钟前
【从0开始学习计算机网络】| 邮件协议入门:SMTP、POP3、IMAP
linux·运维·计算机网络·github
LJianK11 小时前
服务器、节点 、 集群、分布式
运维
姚不倒1 小时前
etcd 学习系列(四):存储模型 —— WAL 和 Snapshot 是如何配合的
运维·etcd
come112342 小时前
Nginx `location` 配置说明(后端开发版)
运维·nginx
SkyWalking中文站9 小时前
SkyWalking 11 与 BanyanDB 0.11:在存储引擎内部实现 Trace 尾部采样
运维·监控·自动化运维