Почему /tmp
в /private/tmp
Mac OS X есть символическая ссылка ? Другими словами, почему не /tmp
просто обычный каталог, как в Linux или BSD? Я понимаю, как это работает, и я не против, я просто интересуюсь (историческими?) Причинами этого.
AIUI это удержание от NextStep (на котором основана OS X), и NextStep сделал это для поддержки NetBooting. Идея состояла в том, чтобы вы могли загружаться с сетевого тома (возможно, только для чтения и, конечно, для совместного использования с другими компьютерами), и в начале процесса загрузки монтировать локальный (доступный для записи) том в / private; как уже упоминалось, это позволило модифицировать во время выполнения / var и / tmp, а также настройки для каждого компьютера в / etc.
Это больше не нужно, поскольку текущая система Apple NetBoot использует образ теневого диска для хранения изменений в любом месте загрузочного тома. Но некоторые программы / docs / etc теперь предполагают, что файлы находятся в / private, поэтому было бы слишком сложно переключить их обратно ...
Я всегда удивлялся одному и тому же. Я не могу найти какую-либо документацию для его поддержки, но обычно этот шаблон используется для облегчения хранения файлов на другом томе (например, на жестком диске). Это позволяет монтировать диск (например, подключать) в файловую систему в одном месте. Например , если привод установлен на ,
/private
а затем папки/etc
,/tmp
и/var
затем все они расположены на этом другом диске.Я не могу сказать, почему это было бы полезно. Стоит отметить, однако, что эти три папки содержат «данные» файлы , такие как конфигурация, временный, журнал, преходящего и файлы базы данных , а не исполняемый код , содержащийся в
/bin
,/sbin
и/usr
папки.источник
Не уверен насчет исторической причины, но OS X всегда «реорганизовывала» типичную структуру Unix.
/tmp
это не единственное, что идет/private
, он также имеет/etc
и/var
.Может быть, кто-то с большим опытом OS X может придумать что-то более разумное.
источник
/tmp
является символическим линком для/private/etc
поддержания четко разделенных 2 файловых систем:/
который можно монтировать только для чтения, чтобы защитить его от любых случайных или нежелательных изменений, а также чтобы он всегда заполнялся постоянно увеличивающимися файлами (журналами и временными файлами),/private
который может быть смонтирован как чтение-запись, и который содержит любой каталог, содержащий изменяемые файлы.Если вы посмотрите на
/
вас, вы увидите 3 каталога, которые являются похожими символическими ссылками по этой же причине:Такое разделение доступа между файловыми системами для чтения и записи и только для чтения фактически не используется (в MacOS X), но для достижения этого разделения безопасности все есть.
Некоторые администраторы применяют это разделение безопасности, определяя определенную
/private
файловую систему с соответствующим размером и соответствующими параметрами монтирования (в первую очередьnosuid
).источник