我通过编译重新安装emacs它的来源进而sudo checkinstall
。我发现checkinstall
创建了一个文件
-rw-r--r-- 1 root root 44628516 Apr 22 19:19 emacs_24.5-1_amd64.deb
-rw-r--r-- 1 root root 56991208 Apr 22 19:19 backup-042220151919-pre-emacs.tgz
无论安装哪个软件都会checkinstall
创建备份文件,还是取决于特定软件(例如emacs)(也许取决于特定的Makefile?)?
备份文件有什么用?
我应该保留它吗?什么时候可以丢弃它?
如果需要的话我该如何使用呢?
答案1
当您使用 来安装软件包时checkinstall
,它会自动为当前安装的软件包创建备份 tarball(如果存在)(这取决于./configure --prefix=/dir
)。名称是:backup-<datetime>-pre-<packagename>-<version>.tgz
在您正在构建包的目录中。如果您的新软件包出现任何问题,您可以使用以下命令回滚到以前的版本:
tar -xzvf backup-<datetime>-pre-<packagename>-<version>.tgz -C /
您将保留此备份多久取决于您。
附加信息:
当您运行时,
checkinstall
它会问您几个问题:该包将根据以下值构建:
... 3 - Version: [ x.y.z ] ...
所以你的备份应该是:backup<datetime>-pre-<packagename>-x.y.z
.注意这个词前。
如果已安装的软件包安装在 中
/usr/bin
,并且您--prefix=/usr/local/
checkinstall
不会备份安装在 中的软件包/usr/bin
。我认为你的备份存档是相对于
/
.和tar -xzvf backup-<datetime>-pre-<packagename>-<version>.tgz -C /
需要,sudo
因为它将文件放置在普通用户无权访问的文件夹中write
。