如何找到所有已从默认值更改的 Debian 管理配置文件?
答案1
要查找所有已从默认值更改的 Debian 管理配置文件,您可以使用如下命令。
dpkg-query -W -f='${Conffiles}\n' '*' | awk 'OFS=" "{print $2,$1}' | md5sum -c 2>/dev/null | awk -F': ' '$2 !~ /OK/{print $1}'
编辑(适用于本地化系统):
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
编辑(适用于文件名中带有 OK 的包):
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
编辑(独立于本地化或文件名)
dpkg-query -W -f='${Conffiles}\n' '*' | awk 'OFS=" "{print $2,$1}' | md5sum --quiet -c 2>/dev/null | cut -d : -f 1
答案2
debsums -ce
List changed configuration files.
答案3
这将查找以下位置添加和修改的文件/etc
:
find /etc -type f | grep -vFf <(debsums -e | grep OK$ | sed 's/[[:space:]]*OK$//')
debsums
这将查找 /etc 中的所有文件,然后从报告的列表中删除所有文件valid
(即由软件包提供的文件)。这意味着未跟踪的文件或不“正常”的文件(哈希值不匹配)。
答案4
或者 debsums -e | grep FAILED 也会显示所有缺失的配置文件
(来自 debsums 包)