获取我当前的 Linux 配置与整个操作系统的默认配置的“差异”?

获取我当前的 Linux 配置与整个操作系统的默认配置的“差异”?

我想做的是将我当前的 ubuntu 安装与新版本进行比较(可能是所有更改/添加/删除的文件的列表)。我在进行小调整时犯了一个错误,没有很好地记录下来,现在我想更换 VPS 提供商,而不必重新发现使系统运行的所有调整。此外,我想记录这些更改,因此仅复制所有内容并不能真正解决我的问题。

使用任何现有工具可以实现这一点吗?

答案1

对于 Ubuntu/Debian

这是一个老问题,但对于将来通过谷歌搜索到达这里的人来说:

您可以使用以下命令列出已安装软件包中与原始版本不同的配置文件debsums(或参阅如何检查 Debian 系统上修改的配置文件?备选方案):

sudo apt install debsums
sudo debsums -ce

获得已更改文件的列表后,您就可以比较配置文件中的更改,例如(使用debsums):

cd /tmp
for FILE in $(sudo debsums -ce);
    do echo $FILE;
    PKG=$(dpkg -S $FILE | cut -d: -f1);
    diff <(apt-get download $PKG;dpkg-deb --fsys-tarfile $PKG*.deb | tar xOf - .$FILE) $FILE;
    echo "";
done

答案2

etckeeper

有一件事可以有所帮助,那就是将配置文件置于版本控制之下,以跟踪系统的更改。例如,查看etckeeper,讨论于使用 git 管理 /etc

显然,您希望在全新安装后立即开始使用它,然后您可以像管理源代码一样跟踪和记录更改。之后,您可以查看更改历史记录,提取感兴趣的单个更改等... 如果存储库存储在另一台计算机上,它也有一些备份优势。

相关内容