Предотвращение Linux от добавления файла в кэш-память? - PullRequest
3 голосов
/ 15 февраля 2011

Надеюсь, вы все видели замечательный сайт, Linux Ate My Ram. Обычно это здорово, но для меня это проблема. У меня есть безопасный файл, который я расшифровываю с помощью gpg, а затем считываю в память для обработки. Незашифрованный файл удаляется через некоторое время, но я НЕ хочу, чтобы этот расшифрованный файл был сохранен в кэш-памяти Linux в памяти.

Есть ли способ явно запретить сохранение файла из кэша Linux?

Спасибо!

Ответы [ 3 ]

9 голосов
/ 15 февраля 2011

Используйте gpg -d, что приведет к тому, что GPG выведет файл в STDOUT, и вы сможете хранить все это в памяти.

В зависимости от того, насколько вы параноик, вы можете использовать mlock , а также.

2 голосов
/ 16 февраля 2011

Если вам действительно нужен вывод gpg в виде файла, вы можете поместить этот файл в файловую систему ramfs .Содержимое файла будет существовать только на страницах памяти без возможности замены.

Вы можете присоединить файловую систему ramfs к своему дереву, выполнив (от имени root):

mount none /your/mnt/point -t ramfs

Возможно, вы также слышали tmpfs .Это похоже на то, что его файлы не имеют постоянного хранилища и обычно существуют только в оперативной памяти.Однако для вашего использования вы хотите избежать этой файловой системы, поскольку файлы tmpfs могут быть выгружены на диск.

0 голосов
/ 15 февраля 2011

Конечно.Уничтожьте файл, когда вы его удаляете.

shred -u $FILE

Конечно, он не дает прямого ответа на ваш вопрос, но я все же думаю, что это решение - что бы ни находилось в кэше, теперь это случайно генерируемый мусор.: -)

...