
Я теряю файлы в /tmp
текущей версии Ubuntu (22.04.2), возможно, это связано с виртуализацией. Буду признателен за любые идеи. Это не обычная очистка; файл теряется немедленно.
У меня есть две системы: удаленный VPS и локальная промежуточная система, обе с одним и тем же программным обеспечением. В обеих системах /tmp
это не tmpfs
; это часть группы томов LVM, смонтированная в /
.
Apache запускается program1
и program2
сразу же друг за другом:
program1
создает новый подкаталог в/tmp
, с 2 файлами:file1
(исходный файл Python) иfile2
(выводfile1
). Если отладка включена,file1
сохраняется; в противном случае удаляется после созданияfile2
(с библиотекой Cremove
)program2
возвращаетсяfile2
клиенту
Все это работает так, как и ожидалось, в системе подготовки. Если отладка включена, новый /tmp/xxx
каталог все еще находится в файловой системе и содержит file1
и file2
. Если отладка не включена, он содержит только file2
.
На VPS:
- если отладка естьнетвключено, все работает, но ничего не осталось под
/tmp
- если отладкаявляетсявключен,
program2
не работает, сообщает, чтоfile2
не существует
Я «исправил» код, удалив C lib remove
, так что он file1
всегда сохраняется, но я не понимаю, что происходит — похоже, что удаление файла где-то вызвало удаление всего каталога.