升级Debian版本操作总结

栏目: 服务器 · 发布时间: 5年前

内容简介:关于升级Debian的主版本,官方有非常详细的文档:其中关键操作为升级当前系统中的包至最新版,然后修改当然还有其他一些事情,每次都看很麻烦,而且并不是文档中的每一步都必须,我总结其中核心思路如下。

文章目录

  • 升级Debian操作过程的总结

升级Debian操作过程的总结

关于升级Debian的主版本,官方有非常详细的文档: https://www.debian.org/releases/stable/amd64/release-notes/ch-upgrading.html

其中关键操作为升级当前系统中的包至最新版,然后修改 /etc/apt/sources.list 为新版本的内容,并执行:

apt update
apt upgrade
apt dist-upgrade

当然还有其他一些事情,每次都看很麻烦,而且并不是文档中的每一步都必须,我总结其中核心思路如下。

  1. 清理不必要的软件包。

    目的:减少需要下载的内容从而缩短升级时间,降低出现依赖问题的可能性。

    方法:先手动清除不必要的软件,然后参考我之前关于清理Debian/Ubuntu系统上冗余包的文章,删除掉冗余包、废弃包。简单来说就是执行下面两个命令,如果情况比较复杂(aptitude认为依赖关系复杂,无法稳妥地完全自行完成,提示用户是否要接受它计算出的一个解决方案),可以接受建议方案并再次执行直到没有包能被删除。

sudo aptitude purge "~o"
# dpkg --list |grep "^rc" | cut -d " " -f 3 | xargs sudo dpkg --purge
sudo aptitude purge "~c"
  1. 升级当前系统中的软件包。
sudo apt update
sudo apt upgrade
  1. 检查。

    强烈建议在升级对已经安装的包进行检查,并解决所有hold的包(卸载或上网查询具体方案)。

# 检查安装的包的一致性(正常情况下无输出)
dpkg -C
# 查看无法升级(on hold)的包(正常情况下无输出)
apt-mark showhold

参考: https://linuxconfig.org/how-to-upgrade-debian-8-jessie-to-debian-9-stretch

  1. 更新sources.list。

    修改/etc/apt/sources.list文件(建议提前备份)之中关于当前版本的部分为新版本的部分。通常只需修改版本名称为新的,例如升级Debian 8到Debian 9需要将jessie改为stretch。

    也可以直接使用官网提供的版本进行覆盖: https://wiki.debian.org/SourcesList。

# 修改sources.list
sudo sed -i 's/jessie/stretch/g' /etc/apt/sources.list
  1. 升级。

    先更新包数据库,然后更新外围软件包,最后更新关键包。

    需要有人值守:因为部分软件的配置文件会出现变化,需要手动确认使用哪个版本。

    切记:这个过程中不要中断,否则可能导致包关系异常或包管理系统损坏。

sudo apt update
sudo apt upgrade
sudo apt dist-upgrade
  1. 重启。

    通常新版本会更使用新的内核,重启是为了使用新的内核image,同时方便删除就的版本。

  1. 清理作废的包。

    升级后,很多旧版本的包将不再需要。除了 apt-get autoremove 可以删除的,还有一些需要使用更底层的dpkg工具进行删除。

sudo apt-get autoremove
sudo aptitude purge "~o"
# dpkg --list |grep "^rc" | cut -d " " -f 3 | xargs sudo dpkg --purge
sudo aptitude purge "~c"
  1. 清理下载缓存。
sudo apt-get clean

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

算法设计与分析

算法设计与分析

郑宗汉/郑晓明编 / 清华大学出版社 / 2005-6 / 32.00元

《算法设计与分析》系统地介绍算法设计与分析的概念和方法,共四部分内容,第一部分包括前两章,介绍算法设计与分析的基本概念及必要的数学工具,对算法的时间复杂性的概念及算法的分析方法作了较为详细的叙述。第二部分包括第3~~9章,以算法设计技术为纲,从排序问题和离散集合的操作开始,进而介绍递归技术、分治法、贪婪法、动态规划、回溯法、分支与限界法以及随机算法等算法设计技术及其复杂性。第三部分包括第10章和第......一起来看看 《算法设计与分析》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具