Захват всех данных, которые изменились во время установки Linux - PullRequest
3 голосов
/ 18 марта 2009

Я пытаюсь выяснить, какие файлы были изменены, когда я запускаю установку приложения через make install. Я могу посмотреть на сценарий, но он вызывает другие сценарии и может касаться или не затрагивать другие файлы и т. Д. Как я могу сделать это программно?

Ответы [ 2 ]

2 голосов
/ 18 марта 2009

Реализация: http://asic -linux.com.mx / ~ izto / checkinstall /

Несколько способов приходят на ум. Во-первых, используйте какой-нибудь LD_PRELOAD для отслеживания всех открытых файлов. Второй подход - сравнить файловую систему до и после.

0 голосов
/ 18 марта 2009

Если ваше ядро ​​поддерживает это, вы можете использовать inotify (удобный интерфейс - inotify tools ) и смотреть ваш домашний каталог, если пакет был настроен с --prefix = / home / myusername

Я заметил, что checkinstall (используя installwatch через LD_PRELOAD) не всегда перехватывает все, в последний раз, когда я использовал его, он не ловил пустые каталоги, созданные для спулинга, что приводило к разрыву последующих сгенерированных .deb.

Обратите внимание, не используйте inotify, если вы устанавливаете в /, в этом случае вам нужно использовать installwatch или просто внимательно прочитать все скрипты makefiles / install.

...