服务器 Gind.cn

服务器问题集锦,包括 Linux(Ubuntu, Centos,Debian等)和Windows Server服务器

在/ usr中跟踪Linux上定制软件安装的最佳实践?

我正在Linux上编译和安装软件(Debian Squeeze)。 下载,解包,安装依赖的开发库/头文件,运行configure然后make。 到目前为止,所有东西仍然保留在源代码目录中。 一旦我运行make install ,基本上我开始将非包文件放在/usr/local或/usr (取决于–path开关)。 我也试着把它安装到不同的地方,例如/opt ,但是这经常会在某个地方引起麻烦。 即我一直记得专门添加到标题/链接器path。 或者我在那里安装一个软件包,系统范围的pkg-config不知道它(我再次需要添加额外的标志)。 即使我将安装每个自定义软件/opt ,我不知道在bin/ ,etc lib/等所有这些文件属于彼此。 如果我开始将它们安装到/opt/software1/ ,维护问题只是增加了,我必须跟踪更多的path,我需要添加编译进一步的软件包或需要在LD库path等等。 但是,当我直接在/usr安装软件时,我只是感觉不好,不能正确地告诉我的哪个定制安装文件属于哪里。 很容易确定一个给定的文件是否属于一个包,但是如果不包含这个文件,那么在大的自定义安装中,记住或找出文件所属的位置是很痛苦的。 当我想删除文件时会变得更糟。 它们分散在bin/ , lib/ , man/等中。所以,如果我想彻底删除一个自定义安装的软件包,我必须执行手动工作或最坏的情况,我不能再确定所有的软件包我会留下陈旧的文件。 我知道我也可以开始build立一个自定义的包。 但是这需要我分析我安装的每个软件? 我没有创build.deb文件的真实经验,我也不打算将它们分发给其他安装。 我想要的是跟踪自定义本地安装的一个好方法。 我可能会自己想出一些东西,比如列出所有文件( find / … ),安装软件,然后重新执行,并将diff保存到某个地方。 只是想知道有没有更好的办法。