TranslateProject/published/201810/20180915 Backup Installed Packages And Restore Them On Freshly Installed Ubuntu.md
2018-11-01 21:26:15 +08:00

105 lines
4.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

备份安装的包并在全新安装的 Ubuntu 上恢复它们
======
![](https://www.ostechnix.com/wp-content/uploads/2018/09/apt-clone-720x340.png)
在多个 Ubuntu 系统上安装同一组软件包是一项耗时且无聊的任务。你不会想花时间在多个系统上反复安装相同的软件包。在类似架构的 Ubuntu 系统上安装软件包时,有许多方法可以使这项任务更容易。你可以方便地通过 [Aptik][1] 并点击几次鼠标将以前的 Ubuntu 系统的应用程序、设置和数据迁移到新安装的系统中。或者,你可以使用软件包管理器(例如 APT获取[备份的已安装软件包的完整列表][2],然后在新安装的系统上安装它们。今天,我了解到还有另一个专用工具可以完成这项工作。来看一下 `apt-clone`,这是一个简单的工具,可以让你为 Debian/Ubuntu 系统创建一个已安装的软件包列表,这些软件包可以在新安装的系统或容器上或目录中恢复。
`apt-clone` 会帮助你处理你想要的情况,
* 在运行类似 Ubuntu及衍生版的多个系统上安装一致的应用程序。
* 经常在多个系统上安装相同的软件包。
* 备份已安装的应用程序的完整列表,并在需要时随时随地恢复它们。
在本简要指南中,我们将讨论如何在基于 Debian 的系统上安装和使用 `apt-clone`。我在 Ubuntu 18.04 LTS 上测试了这个程序,但它应该适用于所有基于 Debian 和 Ubuntu 的系统。
### 备份已安装的软件包并在新安装的 Ubuntu 上恢复它们
`apt-clone` 在默认仓库中有。要安装它,只需在终端输入以下命令:
```
$ sudo apt install apt-clone
```
安装后,只需创建已安装软件包的列表,并将其保存在你选择的任何位置。
```
$ mkdir ~/mypackages
$ sudo apt-clone clone ~/mypackages
```
上面的命令将我的 Ubuntu 中所有已安装的软件包保存在 `~/mypackages` 目录下名为 `apt-clone-state-ubuntuserver.tar.gz` 的文件中。
要查看备份文件的详细信息,请运行:
```
$ apt-clone info mypackages/apt-clone-state-ubuntuserver.tar.gz
Hostname: ubuntuserver
Arch: amd64
Distro: bionic
Meta:
Installed: 516 pkgs (33 automatic)
Date: Sat Sep 15 10:23:05 2018
```
如你所见,我的 Ubuntu 服务器总共有 516 个包。
现在,将此文件复制到 USB 或外部驱动器上,并转至要安装同一套软件包的任何其他系统。或者,你也可以将备份文件传输到网络上的系统,并使用以下命令安装软件包:
```
$ sudo apt-clone restore apt-clone-state-ubuntuserver.tar.gz
```
请注意,此命令将覆盖你现有的 `/etc/apt/sources.list` 并将安装/删除软件包。警告过你了!此外,只需确保目标系统是相同的 CPU 架构和操作系统。例如,如果源系统是 18.04 LTS 64 位,那么目标系统必须也是相同的。
如果你不想在系统上恢复软件包,可以使用 `--destination /some/location` 选项将克隆复制到这个文件夹中。
```
$ sudo apt-clone restore apt-clone-state-ubuntuserver.tar.gz --destination ~/oldubuntu
```
在此例中,上面的命令将软件包恢复到 `~/oldubuntu` 中。
有关详细信息,请参阅帮助部分:
```
$ apt-clone -h
```
或者手册页:
```
$ man apt-clone
```
建议阅读:
+ [Systemback - 将 Ubuntu 桌面版和服务器版恢复到以前的状态][3]
+ [Cronopete - Linux 下的苹果时间机器][4]
就是这些了。希望这个有用。还有更多好东西。敬请期待!
干杯!
--------------------------------------------------------------------------------
via: https://www.ostechnix.com/backup-installed-packages-and-restore-them-on-freshly-installed-ubuntu-system/
作者:[SK][a]
选题:[lujun9972](https://github.com/lujun9972)
译者:[geekpi](https://github.com/geekpi)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://www.ostechnix.com/author/sk/
[1]: https://www.ostechnix.com/how-to-migrate-system-settings-and-data-from-an-old-system-to-a-newly-installed-ubuntu-system/
[2]: https://www.ostechnix.com/create-list-installed-packages-install-later-list-centos-ubuntu/#comment-12598
[3]: https://www.ostechnix.com/systemback-restore-ubuntu-desktop-and-server-to-previous-state/
[4]: https://www.ostechnix.com/cronopete-apples-time-machine-clone-linux/