apt-clone:備份已安裝的軟件包并在新的Ubuntu系統(tǒng)上恢復(fù)它們
當(dāng)我們?cè)诨?Ubuntu/Debian 的系統(tǒng)上使用 apt-clone
,包安裝會(huì)變得更加容易。如果你需要在少量系統(tǒng)上安裝相同的軟件包時(shí),apt-clone
會(huì)適合你。
如果你想在每個(gè)系統(tǒng)上手動(dòng)構(gòu)建和安裝必要的軟件包,這是一個(gè)耗時(shí)的過程。它可以通過多種方式實(shí)現(xiàn),Linux 中有許多程序可用。我們過去曾寫過一篇關(guān)于 Aptik 的文章。它是能讓 Ubuntu 用戶備份和恢復(fù)系統(tǒng)設(shè)置和數(shù)據(jù)的程序之一。
什么是 apt-clone?
apt-clone 能讓你為 Debian/Ubuntu 系統(tǒng)創(chuàng)建所有已安裝軟件包的備份,這些軟件包可以在新安裝的系統(tǒng)(或容器)或目錄中恢復(fù)。
該備份可以在相同操作系統(tǒng)版本和架構(gòu)的多個(gè)系統(tǒng)上還原。
如何安裝 apt-clone?
apt-clone
包可以在 Ubuntu/Debian 的官方倉庫中找到,所以,使用 apt 包管理器 或 apt-get 包管理器 來安裝它。
使用 apt
包管理器安裝 apt-clone
。
$ sudo apt install apt-clone
使用 apt-get
包管理器安裝 apt-clone
。
$ sudo apt-get install apt-clone
如何使用 apt-clone 備份已安裝的軟件包?
成功安裝 apt-clone
之后。只需提供一個(gè)保存?zhèn)浞菸募奈恢?。我們將?/backup
目錄下保存已安裝的軟件包備份。
apt-clone
會(huì)將已安裝的軟件包列表保存到 apt-clone-state-Ubuntu18.2daygeek.com.tar.gz
中。
$ sudo apt-clone clone /backup
我們同樣可以通過運(yùn)行 ls
命令來檢查。
$ ls -lh /backup/
total 32K
-rw-r--r-- 1 root root 29K Apr 20 19:06 apt-clone-state-Ubuntu18.2daygeek.com.tar.gz
運(yùn)行以下命令,查看備份文件的詳細(xì)信息。
$ apt-clone info /backup/apt-clone-state-Ubuntu18.2daygeek.com.tar.gz
Hostname: Ubuntu18.2daygeek.com
Arch: amd64
Distro: bionic
Meta: libunity-scopes-json-def-desktop, ubuntu-desktop
Installed: 1792 pkgs (194 automatic)
Date: Sat Apr 20 19:06:43 2019
根據(jù)上面的輸出,備份文件中總共有 1792 個(gè)包。
如何恢復(fù)使用 apt-clone 進(jìn)行備份的軟件包?
你可以使用任何遠(yuǎn)程復(fù)制程序來復(fù)制遠(yuǎn)程服務(wù)器上的文件。
$ scp /backup/apt-clone-state-ubunt-18-04.tar.gz Destination-Server:/opt
復(fù)制完成后,使用 apt-clone
執(zhí)行還原。
使用以下命令進(jìn)行還原。
$ sudo apt-clone restore /opt/apt-clone-state-Ubuntu18.2daygeek.com.tar.gz
請(qǐng)注意,還原將覆蓋現(xiàn)有的 /etc/apt/sources.list
并安裝/刪除包。所以要小心。
如果你要將所有軟件包還原到文件夾而不是實(shí)際還原,可以使用以下命令。
$ sudo apt-clone restore /opt/apt-clone-state-Ubuntu18.2daygeek.com.tar.gz --destination /opt/oldubuntu