当我使用rpm或yum从其二进制包安装软件时,以后可以查询元信息(rpm -qi PACKAGE、rpm -ql PACKAGE、.)并可以卸载它(rpm -e PACKAGE)。
但是使用我从源代码构建和安装的软件,我必须永远保持在build目录上,以便以后能够卸载它,因为删除build目录将使我以后无法卸载该软件!即使您可以永远保留构建目录,查询元信息也不容易,除非您知道make文件的复杂性。
问:是否有任何方法可以在rpm/yum数据库中“注册”正在安装的二进制文件(通常在大多数软件包的make install步骤中),以便以后轻松卸载和进行元信息查询?
发布于 2012-05-21 13:25:42
实现目标的一个选择是“滚动”您自己的RPM。这不是一项琐碎的任务,但一旦您了解了这个过程,就可以在几个步骤中轻松地完成它(取决于软件所需的复杂程度)。我必须为我的客户安装大量从源代码构建的软件,我发现,在可能的情况下,花时间创建一个RPM在管理上是有益的。我仍然控制着构建过程,我只是更进一步,将构建的软件封装到一个整洁的RPM包中。
根据我的经验,将软件安装为RPM的好处包括
yum存储库轻松地将包推送到多台机器上。说明创建自定义RPM的过程和步骤的项目wiki有一个很好的教程。这是一个很好的起点,当你定制你自己的RPM时,它给你提供了一个能力的概念。
发布于 2012-05-21 05:10:47
严格来说是的。但是,为了填充规范文件所需的rpmdb,您必须收集任何信息,因此,为了重用或共享目的而生成规范文件通常更有效率。
发布于 2012-05-22 20:45:13
好的二进制包将交付或创建一个规范文件。
非常好的二进制包交付规范文件,可以在没有任何更改的情况下使用来创建SRPM:rpmbuild -bs file.spec。
然后,您可以生成二进制rpm:rpmbuild -rebuild file.SRPM。
https://unix.stackexchange.com/questions/39073
复制相似问题