我想知道是否可以得到比较原始与当前的安装debian软件包的configuration文件。
如果find一个答案,显示修改后的configuration文件,但我觉得没有办法生成差异。
命令是
dpkg-query -W -f='${Conffiles}\n' '*' | awk 'OFS=" "{print $2,$1}' | LANG=C md5sum -c 2>/dev/null | awk -F': ' '$2 !~ /OK/{print $1}' | sort | less
我使用etckeeper来达到这个目的。 它不会帮助你倒退,但从现在开始,你将能够看到/ etc的变化。 它是由乔伊赫斯写的,是一个很棒的工具。 Joey的描述:
etckeeper是一个让/ etc存储在git,mercurial,darcs或者bzr仓库中的工具集合。 它挂接到apt(和其他软件包pipe理器,包括yum和pacman-g2),以便在软件包升级期间自动提交对/ etc所做的更改。 它跟踪revison控制系统通常不支持的文件元数据,但这对/ etc很重要,比如/ etc / shadow的权限。 这是相当模块化和可configuration的,如果您了解使用版本控制的基础知识,使用起来也很简单。
由于它基于git,你可以添加遥控器,并轻松地比较来自不同机器的configuration文件,而不需要ssh到另一台机器。 它很容易安装apt-get ,源代码在这里:
我一起砍了一个bash脚本来做差异(为了做到这一点,它下载了所有需要的软件包并将它们提取到一个临时目录)。
请享用:
https://gist.github.com/pallinger/cdb70d73cb922baa43d2
Ps:使用etckeeper或者类似的东西真的会更好,但是如果你已经安装了系统,那么对于之前的修改来说就太迟了。