Я хочу знать, можно ли получить разницу между оригиналом и текущими конфигурационными файлами установленных пакетов debian.
Если нашел ответы, в которых отображаются измененные файлы конфигурации, но я не нахожу способа сгенерировать файл diff.
Команда
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
Я собрал bash-скрипт, который выполняет сравнение (для этого он загружает все необходимые пакеты и извлекает их во временный каталог).
Наслаждаться:
https://gist.github.com/pallinger/cdb70d73cb922baa43d2
P.s .: Действительно лучше использовать etckeeper или что-то подобное, но если вы уже установили систему, вы опоздали для предыдущих модификаций.
я использую etckeeper для этого. Это не поможет вам вернуться назад, но с этого момента вы сможете увидеть изменения в / etc. Он написан Джоуи Хессом и представляет собой отличный инструмент. Описание Джои:
etckeeper - это набор инструментов, позволяющих хранить / etc в репозиториях git, mercurial, darcs или bzr. Он подключается к apt (и другим менеджерам пакетов, включая yum и pacman-g2), чтобы автоматически фиксировать изменения, внесенные в / etc во время обновления пакетов. Он отслеживает метаданные файлов, которые системы контроля версий обычно не поддерживают, но это важно для / etc, например, разрешения для / etc / shadow. Он довольно модульный и настраиваемый, а также прост в использовании, если вы понимаете основы работы с системой контроля версий.
Поскольку он основан на git, вы можете добавлять пульты дистанционного управления и легко сравнивать файлы конфигурации с разных машин без необходимости использовать ssh на другом компьютере. Легко устанавливается с apt-get
и источник доступен здесь: