On Thu, Jan 18, 2007 at 04:15:25PM +0200, Doroshok Stanislav wrote: > есть к примеру пакет foobar. > в нём 4 конфигурационных файла. > я изменил один файл. при обновлении > этого пакета 3 файла будут обновлены и один останется > нетронутым, потому как я его изменял (согласно debian-policy). > вопрос: как посмотреть что 3 файла были заменены.
У каждого файла есть 3 timestamp-а: - atime - время, когда к файлу обращались (читали) - mtime - время, когда изменялись данные файла (write,truncate,open с опциями TRUNCATE CREATE и т. д.) - ctime - время, когда менялись атрибуты файла (в широком смысле слова - включает в себя и изменение данных файла). То есть можно тупо смотреть на ctime (я примерно год назад делал табличку из системных вызовов и timestamp-ов которые они помечают для обновления - могу еще раз запостить). В /var/lib/dpkg/info есть файл <имя_пакета>.postinst. По моим предположениям ctime у него должно быть не больше, чем время, когда начнется распаковка файлов пакета из подархива data.tar.gz (и тем более будет запущен postinst скрипт). Соответственно мое предположение, что если ctime у конфига не меньше, чем ctime у этого файла - то он был переписан при обновлении пакета или позже. Если файл был просто распакован из data.tar.gz, то похоже, что файл <имя_пакета>.list будет не старее, чем оный конфиг. Если конфиг редактировался из postinst скрипта, то он может быть заметно новее, чем <имя_пакета>.list (на несколько секунд или минут). Все умозаключения проведены на примере пакета libclamav1 (и вроде фактам не противоречат). Запостить не могу по причине того, что на данный момент у меня не работает copy-paste (пишу в голой консоли, а извращаться с запихиванием результатов команд с соседней машины в текст мне лень). WBR Dmitri Ivanov -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]