如何在不使用apt缓存的情况下备份程序?

有没有办法备份已安装的软件,安装新的Ubuntu系统,并在没有Internet连接的情况下恢复新安装的系统上的软件? 我已经清除了我的apt缓存。

备用

  1. Ctrl + Alt + T(打开终端)

  2. 获取root权限(i)键入“sudo su”,然后按Enter键(ii)输入密码

  3. 安装Require Packages(i)apt-get install fakeroot(ii)apt-get install dpkg-repack

  4. cd到您的备份目录例如,Say U有一个Thumbdrive并创建了一个文件夹备份“cd / media / usb / backup”

  5. 在终端中运行以下

    fakeroot -u dpkg-repack dpkg --get-selections | grep install | cut -f1 dpkg --get-selections | grep install | cut -f1

。恢复

重新安装包的步骤

1. Ctrl + Alt + T (打开终端)

2.cd到“备份”目录

例如:“cd / media / usb / backup”

3.在终端中运行以下

sudo dpkg -i *.deb

资料来源: Facebook doc

编辑

如果它导致依赖关系破坏,请打开终端并输入

 sudo apt-get install -f 

您可以使用dpkg:sudo dpkg –get-selections> backup

然后你复制备份,然后重新安装和使用

 sudo dpkg --set-selections < selections sudo apt-get update && sudo apt-get -u dselect-upgrade 

(不是来自我,发现于http://syslog.tv/2010/07/02/using-dpkg-selections-to-backup-and-install-packages/ )

但是,您需要具有相同的sources.list(特别是如果您使用了ppa),所以我建议制作/ etc / apt /的副本。 如果您计划升级Ubuntu版本,并非所有版本都相同,那么可能并非您想要的版本

这个单线程序将覆盖已安装软件包的所有(官方)文件:

 dpkg -l | grep ^ii | awk '{print $2}' | while read pkgname; do dpkg -L $pkgname; done | while read fname; do test -f "$fname" && echo $fname; done | tar zcf /path/to/backup.tar.gz -T- 

安装并使用’aptoncd’

这将采用/ var / cache / apt / archives中的任何内容,并创建用于通过apt安装软件的媒体(CD-DVD)。 您可以升级并在多台计算机上安装相同的软件集,而无需再次重新下载这些软件包。