Я использую Ubutu 10.04. У меня есть несколько приложений, которые создают несколько временных файлов в /tmp/<file>
процессе своего завершения работы. Я хочу проверить эти файлы, когда приложения закрываются в случае завершения работы системы. Однако, когда система снова запускается, я обнаруживаю, что все временные файлы были удалены. Как мне попросить систему не очищать файлы при /tmp/
завершении работы?
решение1
Вы можете определить, когда файлы из /tmp
могут быть удалены. Вам следует изменить значение TMPTIME
переменной формы /etc/default/rcS
file.
Значение этих переменных по умолчанию 0
- это означает, что файлы будут удаляться при каждом запуске компьютера. Установка TMPTIME
на 3
означает, что будут удаляться файлы старше 3 дней.
Но вы можете установить TMPTIME=infinite
- это значит, что файлы никогда не будут удалены.
решение2
/tmp
часто представляет собой файловую систему в памяти, поэтому после перезагрузки она исчезает.
Вместо того, чтобы пытаться сохранить /tmp
, я бы попытался заставить свои процессы писать в другой каталог. Если они написаны правильно, приложения должны учитывать переменную среды TMPDIR, чтобы решить, куда записывать временные файлы; затем вы можете указать на другой каталог, например, /var/tmp
который должен пережить перезагрузку.
решение3
вы можете изменить время, в течение которого файлы в /tmp должны быть изменены для их удаления. Но если вы настроите свой дистрибутив Linux на вечное и/или длительное хранение файлов в /tmp, то ваш жесткий диск будет заполнен бесполезными (или не) файлами в каталоге /tmp. Взглянитездесь
решение4
Можно ли изменить место, где эти приложения хранят временные файлы?
Лучшим подходом было бы хранить эти файлы в /var/tmp
, чтоспециально разработанный для этого.