Мусор - долой!
Wednesday, 14 September 2011 11:11Временные каталоги - это костыль. Файловая система должна поддерживать автоматическую сборку мусора.
На каждый файл должен вестись список ссылок на приложения, процессы и юзеров, которым этот файл ещё нужен,и с подробными описаниями, зачем именно. Операция удаления файла убирает только ссылку от текущего пользователя. Файл, который больше никому не нужен, должен через некоторое время удаляться с диска автоматически.
На каждый файл должен вестись список ссылок на приложения, процессы и юзеров, которым этот файл ещё нужен,
no subject
Date: Wednesday, 14 September 2011 08:24 (UTC)Единственная проблема - если у нас единственная ссылка на файл - открытый файловый дескриптор в процессе, очень неудобно передавать эту ссылку в другие процессы.
Поэтому для временных файлов, с которыми должны работать несколько неродственных процессов, приходится все же заводить всякие /tmp.
no subject
Date: Wednesday, 14 September 2011 08:31 (UTC)no subject
Date: Wednesday, 14 September 2011 08:37 (UTC)Про большую часть файлов приложения (кроме персональных юзерских настроек) знает пакетный менеджер, и может об этом рассказать. Может быть когда-нибудь пакетные менеджеры научатся работать и с файлами в домашних директориях пользователя, благо мейнетейнеру пакета обычно известно, какие служебные и конфигурационные per-user файлы использует пакетируемое приложение.
Система владельцев и групп у файла позволяет достаточно хорошо определить, кому он нужен. Особенно в сочетании с идеей home-директорий, за пределы которых юзеры практически не имеют права писать. Единственный недостаток заключается в том, что владелец есть не у хардлинка из каталога на файл, а у самого файла.
Ну и да, автоматически периодически вычщаемая корзина, из которой можно было бы в течение некоторго времени восстановить удаленный файл, не помешала бы. Пока что все известные мне реализации (а я их видел не меньше десятка) кривоватые какие-то.