Re: куда что сложило?
On Thu, Dec 23, 2004 at 10:59:52AM +0300, Dmitry E. Oboukhov wrote:
> и вот вопрос: есть какие-нидь методы вычислить какие новые файлы создал
> инсталлер кроме дифа на ls -lR ?
Вообще есть простой подход на эту тему:
Как мы можем обратить внимание, при создании (изменении числа hardlinks/
owner/group/permissions) значение ctime для файла устанавливается в
текущее время (модификация mtime насильно со стороны юзера тоже вызывает
такой эффект). Посему у вновь созданных файлов ctime будет свежим.
Вполне можно сказать touch flagfile, после чего запустить сначала
инсталлятор, а затем
find <набор каталогов где искать> -cnewer flagfile > filelist
Недостатки у такого простого подхода есть, но это значительно быстрее,
чем ls -lR два раза.
Дальше можно скопировать данные файлы простым вызовом двух tar через
трубку вот так:
tar -c --no-recursion -T filelist -O| tar -xpf -
Смысл --no-recursion и один из недостатков следующий:
Когда мы создаем в каталоге dir подкаталог dir/newdir в newdir создается элемент .., который является жесткой ссылкой на dir, и dir при таком подходе попадает в filelist.
Информация к размышлению находится в man 2 stat.
WBR
Dmitri Ivanov
Reply to: