Почему я должен сделать отдельный раздел для / tmp?

22

Почему я должен сделать отдельные разделы для /tmp, /varи так далее ?

Я вижу больше недостатков, чем преимуществ. Одним из преимуществ является то , что я могу использовать ext4с журнальным для /homeи ext4без журналирования для других разделов.

Основным недостатком является ограничение размера. Когда я был секционирование моего диска я учил выделить по крайней мере 50MB для /tmp, поэтому я 1Гб /tmpраздел. Теперь у меня проблемы, потому что этого явно недостаточно ! Для копирования DVD требуется больше свободного места. Даже для кэширования одного концерта YouTube требуется более 1 ГБ свободного места на /tmpразделе.

Каковы преимущества наличия отдельного /tmpраздела?

patryk.beza
источник
4
если у вас есть отдельные разделы для home, var, tmp, ...то вам не нужно слишком много места для /. Хорошо, если когда-нибудь вам понадобится восстановить систему / настройки из резервной копии. Существует бесчисленное множество причин, по которым полезно хранить разные части системы на разных разделах.
GoFundMonica - codidact.org
4
В настоящее время Debian использует tmpfs для / tmp, он может автоматически изменять размер для размещения файлов и, при необходимости, перемещать содержимое в файл подкачки.
Solarc
Смотрите также вопрос об отдельных разделах в целом и вопросы, специфичные для / boot и / var
sondra.kinsey

Ответы:

23

Одна общая причина сделать его отдельным разделом - это возможность монтировать его как nosuidи noexec. Это предотвращает как повышение привилегий, так и выполнение произвольного сценария из / tmp соответственно. Это особенно полезно в многопользовательских средах (например, хостинге), где непривилегированные пользователи будут иметь доступ для чтения / записи данных в / tmp, но не смогут выполнять ни одно из этих действий.

Другим оправданием может быть ограничение количества хранимых временных данных (так как не все очищается за собой), чтобы предотвратить заполнение других более важных разделов и прерывание обслуживания и / или потерю данных.

Garrett
источник
1
Но все же оценить размер / tmp сложно. 2 года назад я предположил, что 1 ГБ достаточно, и теперь я вижу, что мне нужно больше места для / tmp . Сложно судить о том, что важнее из соображений безопасности или невозможности работать с программами, для которых требуется размер больше фиксированного / tmp ...
patryk.beza
4
Используйте LVM и оставьте немного свободного места в своей группе томов. При необходимости выделите его отдельным логическим томам (например, / tmp). LVM поддерживает онлайн изменение размера, как и ext3 / 4.
Гарретт
8

Это также имеет смысл с точки зрения безопасности. Поскольку многие программы записывают временные данные /tmpи /tmpавтоматически очищаются (используя небезопасное удаление файлов), это означает, что в разделе все еще находится много удаленных, но восстанавливаемых файлов /tmp. Если изолировать этот раздел и сделать его меньше, то это легче безопасно очистить его, например , с использованием sfillот в secure-deleteпакете .

leden
источник
7

Также, когда tmp находится на отдельном разделе:

  • Вы можете разделить tmp между несколькими дистрибутивами linux в мультизагрузочной среде и сэкономить дисковое пространство
  • tmp можно исключить из настройки RAID (дисковое пространство RAID стоит дороже)
  • tmp может находиться на более быстрых носителях, чем root (т. е. RAM-диск, SSD-диск)
  • tmp может находиться на носителе, менее подверженном износу (например, root на флэш-диске, tmp на обычном диске или RAM-диске)
  • TMP может находиться на отдельном диске (для распределения нагрузки)
  • tmp может быть смонтирован на другой раздел / диск, если он должен быть больше, не затрагивая остальную часть системы, просто отредактировав строку в / etc / fstab
реактивный самолет
источник