LINUX.ORG.RU

общая мысль - получить список файлов от dpkg и сравнить с реально существующим.

при реализации этой мысли начинаются некоторые трудности:
1. надо как-то отсеивать /proc и /sys, ибо они нам всю картину портят.
2. в системе много файлов, которые нужны и важны, но напрямую пакету не принадлежат (в выводе dpkg -L отсутствуют). особенно их много в /var - те же логи, кеши, спулы...

я попробовал сделать такое сравнение для /usr

$ COLUMNS=500 dpkg -l | grep ^i | awk '{print $2}' | xargs -n 1 dpkg -L | grep ^/usr | sort | uniq > dpkg.list
$ find /usr | sort | uniq > find.list
$ diff -u dpkg.list find.list | less

в принципе, этого уже достаточно, чтобы отловить какие-то "левые" файлы в /usr. но всё равно там достаточно много файлов, не принадлежащих напрямую пакетам, пример тому - скомпилированные питоновские модули, alternatives-симлинки, и подобное.

более навороченные варианты придумывать лень. :)

kes
()

Поздно пить боржоми, когда отвалились почки...

Xellos ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.