当咱们在基于 Ubuntu/Debian 的系统上使用 apt-clone
,包安装会变得更加容易。若是你须要在少许系统上安装相同的软件包时,apt-clone
会适合你。linux
若是你想在每一个系统上手动构建和安装必要的软件包,这是一个耗时的过程。它能够经过多种方式实现,Linux 中有许多程序可用。咱们过去曾写过一篇关于 Aptik 的文章。它是能让 Ubuntu 用户备份和恢复系统设置和数据的程序之一。git
apt-clone 能让你为 Debian/Ubuntu 系统建立全部已安装软件包的备份,这些软件包能够在新安装的系统(或容器)或目录中恢复。github
该备份能够在相同操做系统版本和架构的多个系统上还原。json
apt-clone
包能够在 Ubuntu/Debian 的官方仓库中找到,因此,使用 apt 包管理器 或 apt-get 包管理器 来安装它。ubuntu
使用 apt
包管理器安装 apt-clone
。bash
$ sudo apt install apt-clone
复制代码
使用 apt-get
包管理器安装 apt-clone
。服务器
$ sudo apt-get install apt-clone
复制代码
成功安装 apt-clone
以后。只需提供一个保存备份文件的位置。咱们将在 /backup
目录下保存已安装的软件包备份。架构
apt-clone
会将已安装的软件包列表保存到 apt-clone-state-Ubuntu18.2daygeek.com.tar.gz
中。app
$ sudo apt-clone clone /backup
复制代码
咱们一样能够经过运行 ls
命令来检查。ionic
$ ls -lh /backup/
total 32K
-rw-r--r-- 1 root root 29K Apr 20 19:06 apt-clone-state-Ubuntu18.2daygeek.com.tar.gz
复制代码
运行如下命令,查看备份文件的详细信息。
$ 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
复制代码
根据上面的输出,备份文件中总共有 1792 个包。
你能够使用任何远程复制程序来复制远程服务器上的文件。
$ scp /backup/apt-clone-state-ubunt-18-04.tar.gz Destination-Server:/opt
复制代码
复制完成后,使用 apt-clone
执行还原。
使用如下命令进行还原。
$ sudo apt-clone restore /opt/apt-clone-state-Ubuntu18.2daygeek.com.tar.gz
复制代码
请注意,还原将覆盖现有的 /etc/apt/sources.list
并安装/删除包。因此要当心。
若是你要将全部软件包还原到文件夹而不是实际还原,能够使用如下命令。
$ sudo apt-clone restore /opt/apt-clone-state-Ubuntu18.2daygeek.com.tar.gz --destination /opt/oldubuntu
复制代码
via: www.2daygeek.com/apt-clone-b…
做者:Magesh Maruthamuthu 选题:lujun9972 译者:geekpi 校对:wxy