


[入门] Mac OS X 的文件系统
[ 整理自《 Mac OS X Help Desk 》中文译版 ]
万维网( World Wide Web )是在运行基于 UNIX 的操作系统的一台 NeXT 计算机上发明出来的,所以 Web 地址看起来非常类似于文件的 UNIX 路径名也就不令人奇怪了。用一条路径来描述一个 Web 页面在 Internet 上的位置所使用的约定,基本上就是 Mac OS X 描述一个文件或文件夹在文件系统中的位置所使用的同一种机制。
首先需要明确的一点:不管用户将磁盘分成了几个区,也不管用户拥有多少个存储设备(比如多个内置硬盘,以及接入的外置硬盘),文件系统的根始终是当前系统所在的宗卷(也叫启动宗卷),用一个正斜杠(/)来访问根。而其他宗卷都挂载在 /Volumes 文件夹下,这个 Volumes 默认是隐藏文件夹,一般用户看不到,在“磁盘工具”或“系统概述”关于宗卷的部分,都可以查看每个宗卷的挂载点。虽然在操作系统的文件系统中,宗卷都以文件夹的方式去访问(比如,一个宗卷名叫“ FireWire HD ”外置火线硬盘的访问地址是 /Volumes/FireWire HD ),但为了不使用户感到困惑,在图形用户界面的 Finder 窗口或桌面上,会用硬盘或其光盘或者他类似图标显示给用户访问。
(题外话:在 UNIX 类操作系统中,所有设备都以文件或文件夹方式访问,比如,要在打印机上打印,那就是给一个叫打印机的文件写入数据,而要在扫描仪上扫描图像,则是通过从一个叫扫描仪的文件上读取数据来实现,至于硬件具体怎么处理这些操作系统读写过来的数据,则由驱动程序来负责解析。这种统一数据接口的好处可以去问问驱动开发者。而且由于接口统一,操作系统不需要为不同的硬件设计不同的功能,减少复杂程度也保证了稳定。在 UNIX/Linux 中,驱动程序不兼容的时候,最多是降低了硬件的性能;而如果是在 Windows 中,一个不兼容的硬件或硬件驱动程序则会让系统摆一个蓝脸给你看。)
一个以正斜杠(/)开头的路径是一个绝对路径,表示从文件系统的根开始来指向一个文件或文件夹;而相对路径则表示该路径是从用户当前所处的位置开始指向一个文件或文件夹。
另外还有一些快捷指向方式:
用户的主目录可以用否定符(~)来引用,比如,用 ~sp4navy/Documents 来指向用户名为 sp4navy 的帐户的“文稿”文件夹,而 ~/Documents 则表示当前当前登录帐户的“文稿”文件夹。
以一个点开头的路径表示从当前的工作文件夹开始指向;以两个点开头的路径表示从当前的工作文件夹的父文件夹(上一级文件夹)开始指向。这个对于网页设计者而言也是非常熟悉的了。
对于一些系统级的文件夹,系统认为普通用户不需要使用,为了安全和美观,便将它们隐藏。还有,根据一个很早就开始使用的约定,所有以点开头的文件和文件夹也不会出现在 Finder 中。如果要访问这些文件夹,可以使用“转到文件夹...”手动填路径来实现。
Mac OS X 对文件管理是非常有序的,比如仅供当前用户使用的资源文件放在 ~/Library 下,而根目录下的 /Library 则对所有用户有效,至于 /System/Library 中的资源文件由系统专属,不允许也不推荐用户去动它们。
那么,诸如字体、框架、参数预置之类的数据在不同的地方都有,系统需要搜索多个位置来寻找资源,这个搜索有个先后顺序, Mac OS X 查找资源的先后顺序如下:
1、Users ( ~/Library )
2、Local ( /Library )
3、Network ( /Network/Library )
4、System ( /System/Library )
如果相同的文件在不同位置都有,那么系统会根据当前用户的属性来判断使用哪一个,对于普通用户,自然是按 1 > 2 > 3 > 4 的方式来选择。