升级 Debian 之前如何备份程序?

升级 Debian 之前如何备份程序?

我目前使用 Debian Jessie,我想升级到 Stretch,但我担心我会丢失在 Jessie 上安装的所有程序。

有没有办法在升级到 Stretch 之前备份我的程序和文件?

答案1

简而言之,你不必这样做。

升级 debian 意味着您更改sources.list 中的发行版名称,然后运行 ​​update/dist-upgrade 就完成了。

对于程序来说,有两种情况:

1.您使用 Debian 安装的程序- 你不需要担心这些。所有程序和依赖项都会自动升级。而且,如果某个软件包没有可用的升级,它会保留在那里,不受升级过程的影响。

2. 单独安装的程序- 这些是您独立于 Debian 软件包系统安装的程序。造成这种情况的原因有多种:您使用的程序在 Debian 上不可用,或者您下载了源代码,编译并安装了它,或者它运行了自己的安装包,而忽略了 Debian。这也很好,因为软件包系统不会触及这些程序,因为它们安装在“本地”目录中:“/usr/local”、“/lib/local”等。这些程序及其库在升级过程后也将保留。您可能必须更新它们,因为它们的某些依赖项可能会被 Debian 升级,但升级前的备份则不然。

如果你真的想要备份你的程序,我想你可以创建一个包含所有的存档/usr/lib并将/etc其保存在其他地方:

# tar cvzf /root/backup.tar.gz /usr /lib /etc

但我必须说,这确实没有必要。

答案2

如果所有程序都在存储库中,您只需备份已安装软件包的列表(以防出现问题并且需要重新安装)。

dpkg -l | egrep "^ii" | cut -d' ' -f3

dpkg -l显示所有已安装的软件包

egrep "^ii"删除那些只有残留配置且未实际安装的东西

cut -d' ' -f3只是删除输出的其他列

当然,如果您正在进行完整备份,这些并不是您应该备份的唯一内容,但没有要求这样做,所以我不会提及这些

相关内容