Подскажите, пожалуйста, как создать для rm алиас, чтобы при вызове rm из любого скрипта инфа откуда вызвано и что планировалось удалить заносилась в лог.
Поможет переименование оригинального /bin/rm в скажем /bin/rm.original
и создание скрипта-обертки (или бинарника-обертки) /bin/rm,
которая будет писать в лог и затем вызывать /bin/rm.original.
Ну или удалить оригинальный /bin/rm и поставить свой, с logging'ом,
блекджеком и шлюхами.
> посмотреть make -n |tee make.log && grep rm make.log
> какие команды он собирается выполнить
Тоже хорошо. Но есть одна загвоздка: rm может косвенно запускаться. Например,
make запускает libtool, libtool запускает rm, или что-нибудь еще в таком же
духе.
Стесняюсь спросить ... а откуда такая уверенность, что для удаления используется именно команда rm, а не соответствующая функция perl, libcшный unlink, прямое обращение к API файловой системы или что-нибудь еще более низкоуровневое?
> Стесняюсь спросить ... а откуда такая уверенность, что для удаления
> используется именно команда rm, а не соответствующая функция perl,
> libcшный unlink,
Ниоткуда. Не помогло бы -- тогда strace -f -e unlink