This chapter examines how Mac OS X works with files, both in the lower level of its filesystems, and more generally in the specific directory layouts it uses to organize its most important files and keep track of installed applications.
Like earlier versions of Mac OS, Mac OS X filesystems favor the Mac OS Extended Format , better known as HFS+ (Hierarchical File System), but they also work well with the Universal File System (UFS) that most other Unix-based operating systems use as their primary filesystem.
Most Mac OS X volumes use HFS+ as their format because it allows backward compatibility with legacy Mac files. They also use it because it supports multiple file forks (see the later section Section 9.1.2). Through strong UFS support, a Mac OS X machine can work seamlessly with other Unix volumes, such as network-mounted ones that may be accessible over NFS.
Among the most noticeable differences between the HFS+ and UFS file formats are the following:
UFS is case-sensitive in its file path interpretation, while HFS+ is
not. The paths
point to the same location on an HFS+ system, but to three different
ones on a UFS filesystem.
Some software from the UFS world might assert case-sensitivity despite HFS+’s permissiveness. The Tab-completion feature of the bash or zsh shell command lines, for example, is case-sensitive, even if the filesystem they’re ...