通过接入 APT 系统来维护一份优质、信息丰富的文档?

通过接入 APT 系统来维护一份优质、信息丰富的文档?

理想情况下我想要的是:

  • 让我写一篇原因用于安装一个包或一组包。
  • 跟踪已安装软件包对我的系统所做的所有更改。我希望查看 /etc 文件修改、用户和组更改以及文件总体更改。以及我忘记的任何重要信息。:-)
  • 让我写一篇原因用于删除一个包或一组包。
  • 允许我稍后修改我给出的理由。我可能一开始就安装了一个软件包,只是因为我想检查一下。然后我可能会发现它真的很有用,并且有充分的理由保留它。由于理由是为了记录而不是日记,我想将原始理由“只是测试一下”改为“安装它,因为它使用最小且快速的实现提供 x、y、z 服务”。
  • 允许我(手动)包含我需要执行的手动步骤。例如更改文件的内容和权限、删除文件和创建文件。基本上记录我执行的命令以及一些文档注释。并将它们与我安装/删除的软件包联系起来,这些软件包导致这些手动步骤是必要的。
  • 我得到的输出基本上是关于如何在新安装的机器上复制系统的描述。这意味着只有与新安装不同的已安装/已删除的软件包及其描述才会显示(仍然按顺序显示,因为软件包可能相互依赖)。

问题

  • 这听起来像是一个好的文档系统吗?为什么?为什么不?有什么可以改进的?
  • 那里已经存在类似的东西了吗?
  • 是否有可能接入 APT 系统以获得必要的控制级别来创建类似的东西?有什么技巧吗?
  • 对于如何实现这样的目标您有什么建议吗?

如果这样的东西还没有出现,我可能会尝试自己创造一些东西。

答案1

你所做的一些事情似乎可以通过使用配置管理系统的组合来实现(例如木偶) 和变更控制系统(如 subversion)。

当您添加、删除、修改包时,您可以通过 puppet 系统进行操作;然后检查配置更改,并记录更改的内容及其原因。

这不仅让您可以重现系统,还让您可以在任何时间点重现系统。您还可以控制不仅仅是软件包文件;您可以控制系统中的所有配置文件。

答案2

虽然我自己是 Puppet 的粉丝(好吧,从技术上讲,我喜欢 Puppet 的理念,但讨厌它的实现,但那是另外一回事),并且建议一般情况下,您可以使用一些脚本来生成或多或少您想要的内容 - apt 功能强大,足以做到这一点。此外,该etckeeper软件包还为您执行“配置更改跟踪”操作,并提供如何连接到 apt 以执行您想要的操作的示例。

我在工作站上使用etckeeper只是为了了解发生了什么变化以及何时发生,但我不会曾经可以将其视为生产系统上实际配置管理系统的替代品。它只是没有(不能!)跟踪足够的系统状态,无法使其成为可行的替代方案。

相关内容