Вариант "бэкапа" перед разгребанием файлопомойки:
1. mkdir ~/BACKUP
2. cp -R -l ~/files ~/BACKUP/ # сделает hardlinks на все файлы
3. Разгребаете файлопомойку --- убеждаетесь, что ничего лишнего не удалили
4. rm -rf ~/BACKUP
> У меня на домашнем каталоге лежат гигабайты информации (даташитов на микросхемы, куча всяких стандартов, документов, чертежей). Это просто справочная информация, мною неизменяемая
Установи атрибут ro и сделай дополнительный хард-линк на каждый из файлов, и наступит тебе "щастье" :-)
> похоже никто из присутсвующих не имел дела с NWFS.
См. пост выше - там все вразумительно описано. На самом деле, делается все тривиально - в кронтаб вешается регулярный запуск низкоприоритетного find /opt/data -type f -inum 1, и для каждого из них запускается ln $filename /opt/backup. Этот /opt/backup делается доступным только руту, и раз в сутки выполняется команда find /opt/backup -type f -inum 1 -atype 10 (все файлы из бэкапа, для которых нет оригиналов и к которым не обращались 10 дней).
Вот и все - получается замечательная "корзина" системными средствами. Если так уж хочется "мгновенного" создания линка файла - добро пожаловать в чудесный мир LD_PRELOAD или kernel security hooks, на выбор :-)
> Моя фантазия подсказывает достаточно элегантное (на мой взгляд :-) решение: "Реальное удаление файлов должно быть отсроченным (например на 24 часа).
Шарик, ты балбес. В пятницу, торопишься забухать, в предвкушении и уже слегка приняв, удаляешь файд. После выходных приходишь и оказывается что у тебя очень тяжелый понедельник.
Не фиг нах ссать, ссать не надо нах! Стирать из корзины только старейшие из файлов только когда на разделе место кончается. Вот разве что только в этом месте и потребуется нах поддержка от кернела.
Ну нафлеймили млина... Всётаки согаситесь, самое простое решение - самое лучшее, вместо rm делать "cp $1 /dev/null", а когда место кончится, пользоваться unlink.