求教如何备份还原系统列表!

系统安装、升级讨论
版面规则
我们都知道新人的确很菜,也喜欢抱怨,并且带有浓厚的Windows习惯,但既然在这里询问,我们就应该有责任帮助他们解决问题,而不是直接泼冷水、简单的否定或发表对解决问题没有任何帮助的帖子。乐于分享,以人为本,这正是Ubuntu的精神所在。
回复
zhangjint5
帖子: 304
注册时间: 2011-01-02 12:31

求教如何备份还原系统列表!

#1

帖子 zhangjint5 » 2017-03-03 18:38

新装的 Ubuntu Server 系统非常干净!

我希望此时获得一个已经安装的软件包列表,类似于 dpkg -l 那样,将列表保存到 .txt 中。

然后我系统各种装软件,做试验。

有一天,我想还原到刚刚安装 Ubuntu Server 时的状态,有什么方法可以将上述软件包列表以外的所有软件包全部卸载并删除卸载软件的配置文件(类似于 apt-get purge 那样的效果)?

Home 里面的东西保持不动,不用考虑!


另外再问一个问题,有什么方法重新安装一个已经安装的软件包并强制用软件包里面的默认配置文件来替换系统已经存在的配置文件呢?
头像
TeliuTe
论坛版主
帖子: 7668
注册时间: 2007-11-25 13:29
系统: 16/18/20/w7
来自: 新疆博乐
联系:

Re: 求教如何备份还原系统列表!

#2

帖子 TeliuTe » 2017-03-03 23:47

感觉还是整个替换好些,如果系统所有文件都在一个分区里,用tar打个包,等系统乱了还原回来也可以,备份(备份文件存放在了根目录下):

代码: 全选

root@2-b1:/home/b1# cd /
root@2-b1:/# tar -cvpzf backup.tar.gz --exclude=/backup.tar.gz --exclude=/lost+found --exclude=/proc/* --exclude=/sys/* --exclude=/mnt/* --exclude=/media/* --exclude=/dev/* /
还原:启动到livecd,(假设/分区挂载到了/home/st2-098/t/):

代码: 全选

tar -xvpzf backup.tar.gz -C /home/st2-098/t/
用clonezilla备份/还原系统也可以
poloshiao
论坛版主
帖子: 18279
注册时间: 2009-08-04 16:33

Re: 求教如何备份还原系统列表!

#3

帖子 poloshiao » 2017-03-04 6:46

我希望此时获得一个已经安装的软件包列表
1. Ubuntu 安裝 概分為三類
1-1. ISO 提供的安裝程式 安裝的 套件
1-2. apt 套件管理程式 安裝的 套件
1-3. dpkg 套件管理程式 安裝的 套件
(上述 已包含 synaptic 軟體中心 等等 前端程式安裝的套件)

2. 這裡 針對 1-2. apt-get 套件管理程式 安裝的 套件 說明
2-1. sudo apt-get install 指令 根據
/etc/apt/sources.list
/etc/apt/sources.list.d/*.list
軟體來源表 下載來的 套件 全部解壓放在
/var/cache/apt/archives
目錄內 (*.deb)
2-1-1. 下述指令 可以查看 所有 apt 套件管理程式 安裝的 套件 (*.deb)
sudo ls -al /var/cache/apt/archives | grep deb
2-1-2. sudo apt-get clean 指令將上述目錄內清空 (全部移除 所以要小心使用)

3. 這裡 針對 1-3. dpkg 套件管理程式 安裝的 套件 說明
3-1. 如果你是直接使用 sudo dpkg -i 指令 安裝 *.deb 記錄在
/var/lib/dpkg/available 檔案內
3-2. 下述指令 可以查看 所有 dpkg 套件管理程式 安裝的 套件明細
sudo cat /var/lib/dpkg/available
3-3. sudo dpkg --clear-avail 將上述記錄清空 (所以要小心使用)

4. 備份/還原 已安裝套件
只要備份下述名單或內容
/var/cache/apt/archives/*.deb
/var/lib/dpkg/available
4-1. 但是 不包含已被清空內容

5. 如何备份还原系统列表!
5-1. filezilla
search.php?keywords=filezilla&terms=all ... C%E5%B0%8B
5-2. fsarchiver
search.php?keywords=fsarchiver&terms=al ... C%E5%B0%8B
有一天,我想还原到刚刚安装 Ubuntu Server 时的状态,有什么方法可以将上述软件包列表以外的所有软件包全部卸载并删除卸载软件的配置文件(类似于 apt-get purge 那样的效果)?
6. 刚刚安装 Ubuntu Server 时 使用 filezilla 或 fsarchiver 把整個系統分割區 備存 保存 是最推薦的方法
6-1. 養成習慣 在關鍵時間點 (例如 剛安裝或設定 重要套件) 使用 filezilla 或 fsarchiver 把整個系統分割區 備存 / 保存
Home 里面的东西保持不动,不用考虑!
7. 任何備存/回存 最好同時包含 /home 及其它 系統分割區 比較不會有操作相容性問題
有什么方法重新安装一个已经安装的软件包并强制用软件包里面的默认配置文件来替换系统已经存在的配置文件呢?
8. 問題不夠清晰
8-1. 使用 force / config / default 等等 關鍵字 搜尋
8-1-1. http://manpages.ubuntu.com/manpages/xen ... get.8.html
8-1-2. http://manpages.ubuntu.com/manpages/xen ... pkg.1.html
8-2. 任何操作或指令 直接參閱該指令的 manpage 是最推薦的方法

9. 如果你有強大的 備存 / 回存 / 維護 不同 Linux 系統 的需求
建議 參閱
https://www.system-rescue-cd.org/System ... d_Homepage
SystemRescueCd
zhangjint5
帖子: 304
注册时间: 2011-01-02 12:31

Re: 求教如何备份还原系统列表!

#4

帖子 zhangjint5 » 2017-03-04 10:17

谢谢 非常详细 辛苦!
zhangjint5
帖子: 304
注册时间: 2011-01-02 12:31

Re: 求教如何备份还原系统列表!

#5

帖子 zhangjint5 » 2017-03-05 20:42

看起来超级麻烦!

最终我还是使用 btrfs 文件系统,并用其快照功能备份恢复系统了!
头像
AutoXBC
帖子: 1744
注册时间: 2007-10-23 12:54

Re: 求教如何备份还原系统列表!

#6

帖子 AutoXBC » 2017-03-06 3:26

备份包名列表用处不大,Ubuntu 每版升级都有一些包废弃,一些包被作为必选依赖添加进来,跨版本用包名列表恢复,大概率会报出一堆错误。可以像大多数人一样,结合自己的情况写安装笔记,可能二三十个包就覆盖了需求,而备份出的包列表要有几百行。
回复