该命令checkinstall
已在本论坛中多次被推荐,作为 的替代品make install
。然而,当一个人去官方网站中“最近新闻”部分显示最近的日期为 2016 年 12 月。
编辑:我读过这篇文章有没有其他 checkinstall 替代方案?,然后我克隆了 的 git 存储库checkinstall
。截至 2019 年 4 月,该git log
命令显示过去 3 年中每年仅提交了大约 1 次。
Q1:这些提交数量足以维护该软件包吗?
Q2:为什么 checkinstall 不在 Github 上?在这样的平台上,您将能够看到最后的提交和最新版本,而无需将整个存储库克隆到您的计算机上。
答案1
为什么 checkinstall 不再被维护?
你确实应该问问创建者,但我可以做出有根据的猜测:它被认为是一种安全隐患。而且不只是一个小隐患。
《Debian 系统》作者 Martin F. Krafft (->亚马逊):
Checkinstall 的功能有限。确切地说,它创建的软件包只能安装文件,而 checkinstall 并不关心将它们安装到哪里。您可以使用
/home
checkinstall 覆盖目录中的文件,等等。生成的软件包不能修改文件。如果安装程序修改了现有文件,则它们将全部成为生成的软件包的一部分。一个可怕的场景发生在安装程序通过修改 来添加用户时
/etc/passwd
,而 随后被包含在软件包中。安装软件包会导致/etc/passwd
被完全替换,而卸载软件包会删除该文件,导致系统崩溃。生成的软件包也无法使用 dpkg 注册其配置文件,因此为覆盖本地配置文件更改的升级铺平了道路。
鉴于这些问题,最好避免这种情况,但仅限于极少数情况。