Переместите/tmp в RAM

Можно выполнить это использование xargs команда. xargs по существу выполняет команду однажды для каждой инструкции ее стандартного входа. Так, если необходимо удалить все .jpg файлы в каталоге, например, быстрый путь на командной строке:

$ find ./ -name "*.jpg" | xargs rm 

Можно также использовать обратную галочку (выше кнопки Tab), чтобы сделать это (обратите внимание, что это - символ одинарной левой кавычки, не символ одинарной кавычки):

$ rm `find ./ -name "*.jpg"`

Обратите внимание что из-за пути xargs и оболочки обрабатывают свой вход, xargs метод только работает, если ни одни из имен файлов и включенных имен каталогов не содержат пробел или какой-либо из \"'; метод одинарной левой кавычки только работает, если ни одни из имен файлов и включенных имен каталогов не содержат пробел или какой-либо из \[?*.

16
15.11.2012, 16:48
3 ответа

Вы не должны делать всего этого, можно просто смонтироваться /tmp как tmpfs при помощи строки как следующее в /etc/fstab:

tmpfs /tmp tmpfs mode=1777,nosuid,nodev 0 0

Можно также сделать это живой (но принять во внимание материал, который в настоящее время находится в /tmp в Вашей текущей файловой системе не сможет быть полученным доступ кроме через inode и в настоящее время открытые дескрипторы файлов, таким образом, необходимо действительно сделать это путем изменения /etc/fstab и перезагрузка):

mount -o mode=1777,nosuid,nodev -t tmpfs tmpfs /tmp

Отметьте это a tmpfs может подкачать. Если Вы хотите файловую систему действительно только для RAM, использовать ramfs.

19
27.01.2020, 19:48
  • 1
    Chris, моя точка является "лучшими практиками". Разработчики помещают собственную поддержку для монтирования/tmp более чем.../отметка курса корабля; я читал, лучше снова использовать тот же tmpfs. –  Massimo 15.11.2012, 02:27
  • 2
    @Massimo, который Мое мнение - то, что наиболее успешная практика не состоит в том, чтобы связать, монтируется. Это добавляет ненужную сложность. –  Chris Down 15.11.2012, 02:28
  • 3
    @Massimo, Где Вы находите это 'лучшими практиками'? Единственная причина I видит против монтирования /tmp поскольку tmpfs - то, потому что у Вас теперь есть 2 потенциала tmpfs файловые системы, которые могут заполниться и использовать больше памяти (/tmp и /dev/shm). Но если Вы действительно обеспокоены заполнением 2 tmpfs, монтируется, можно уменьшиться, максимальный размер tmpfs монтируются. –  Patrick 15.11.2012, 03:52
  • 4
    @ChrisDown, что плохо о, связывает, монтируются? Также наличие единственного tmpfs могло бы сделать вещи более простым правом? –  CMCDragonkai 05.06.2014, 09:42
  • 5
    @CMCDragonkai Связывает монтирование, совсем не просты внутренне, они идут с довольно многими неинтуитивными протестами, что Вы, вероятно, не предназначаете (особенно разглашенный, являющийся требованием окружения драмы, повторно монтируются для монтирования только для чтения). Просто используйте два tmpfs монтируется вместо этого. –  Chris Down 05.06.2014, 10:00

Я знаю, что это довольно старое, но в настройках дистрибутива Debian Type Set Set Ramtmp, Ramrun и RamLock в / etc / default / tmpfs (/ etc / default / rcs или до того, как видно) делает то же самое работа.

4
27.01.2020, 19:48

/ etc / default / tmpfs для sysvinit , для systemd (Debian по умолчанию, начиная с jessie) вам нужно только do:

systemctl enable tmp.mount

и в Debian Stretch

cp /usr/share/systemd/tmp.mount /etc/systemd/system/
systemctl enable tmp.mount

см. журнал изменений на https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=787542#74

17
27.01.2020, 19:48

Теги

Похожие вопросы