Answers:
AIUI是NextStep(基于OS X的基础)的保留,而NextStep做了它来支持NetBooting。这个想法是,您可以从网络托管的卷(可能是只读的,当然也可以与其他计算机共享)启动,并在启动过程的早期将本地(可写)卷挂载在/ private上。如g所述,这允许对/ var和/ tmp进行运行时修改,以及/ etc中的每台计算机设置。
不再需要此操作,因为Apple当前的NetBoot系统使用影子磁盘映像将更改存储在启动卷上的任何位置。但是现在某些程序/ docs / etc假定文件位于/ private下,因此将它们切换回原处会很麻烦...
不确定历史原因,但是OS X总是“重组”典型的Unix结构。/tmp
不是唯一的东西/private
,它也有/etc
和/var
。
也许具有更多OS X背景的人可以提出更合理的建议。
/tmp
是一个象征性的手段,/private/etc
以维护清晰分开的2个文件系统:
/
可以以只读方式挂载,以防止意外或不必要的修改,并防止其被总是增长的文件(日志和临时文件)填充,
/private
可以以读写方式挂载,并包含任何包含可修改文件的目录。
如果您看一下,/
出于相同的原因,您会注意到3个目录是相似的符号链接:
cd /
ls -al | grep '> private'
读写文件系统和只读文件系统之间的访问隔离实际上并没有使用(在MacOS X中),但是为了实现这种安全隔离,已经准备就绪。
一些管理员通过定义/private
具有适当大小和适当挂载选项(最值得注意的是nosuid
)的特定文件系统来加强这种安全性分离。