第21章 其他文件系统
附录 D. OpenPGP 密钥
3.7.文件系统的挂载与卸载
最好把文件系统看作是一棵树,它的根在//dev/usr和根目录中的其他目录是分支,它们可能有自己的分支,如/usr/local等等。
将这些目录中的一部分放在单独的文件系统中是有各种原因的。/var包含了log/spool/和各种类型的临时文件,因此,可能会被填满。填满根文件系统并不是一个好主意,所以将/var/中分离出来通常是有好处的。
在其他文件系统中包含某些目录树的另一个常见原因是,如果它们要被放置在单独的物理磁盘上,或者是单独的虚拟磁盘,比如“网络文件系统(NFS)”中描述的网络文件系统挂载,或者 CDROM 驱动器。

3.7.1.fstab文件

在启动过程中(FreeBSD的启动过程),除了包含noauto的条目外,/etc/fstab中列出的文件系统会自动挂载。这个文件包含以下格式的条目:
1
device /mount-point fstype options dumpfreq passno
Copied!
device
一个现有的设备名称,如磁盘设备名称中所解释的。
mount-point
一个现有的目录,用来挂载文件系统。
fstype
要传递给 mount(8) 的文件系统类型。FreeBSD 默认的文件系统是 ufs。
options
rw表示读写文件系统,ro表示只读文件系统,后面是可能需要的任何其他选项。一个常见的选项是noauto,用于在启动过程中一般不挂载的文件系统。其他选项在 mount(8)中列出。
dumpfreq
被 dump(8) 用来确定哪些文件系统需要转储。如果该字段缺失,则假定其值为0
passno
决定文件系统应被检查的顺序。应该被跳过的文件系统应该把它们的passno设置为0。根文件系统需要在其他所有文件系统之前被检查,它的passno应该被设置为1。其他文件系统应该被设置为大于1的值。如果多个文件系统有相同的 passno,fsck(8) 将尽可能地尝试并行检查文件系统。
关于/etc/fstab的格式和选项的更多信息,请参考 fstab(5)。

3.7.2.使用 mount(8)

文件系统是用 mount(8)挂载的。最基本的语法如下:
1
# mount device mountpoint
Copied!
该命令提供了许多选项,在 mount(8)中有所描述,最常用的选项包括。
安装选项
-a
挂载/etc/fstab中列出的所有文件系统,除了那些标记为noauto、被 -t标志排除的文件系统,或者已经挂载的文件系统。
-d
除了实际的mount系统调用,做所有的事情。这个选项和-v标志一起使用,可以确定 mount(8)实际上要做什么。
-f
挂载文件系统为只读。这与使用-o ro是一样的。
-t fstype
挂载指定的文件系统类型或只挂载指定类型的文件系统,如果包括-aufs是默认的文件系统类型。
-u
更新文件系统的挂载选项。
-v
详细模式。
-w
对文件系统进行读写挂载。
以下选项可以作为逗号分隔的列表传递给-o
nosuid
不要读取文件系统上的setuidsetgid标志。这也是一个有用的安全选项。

3.7.3.使用 umount(8)

要卸载一个文件系统,使用 umount(8)。这个命令需要一个参数,可以是挂载点、设备名称、-a-A
所有的形式都是用-f来强制卸载,用v来表示详细情况。请注意,-f通常不是一个好主意,因为它可能使计算机崩溃或损坏文件系统上的数据。
要卸载所有挂载的文件系统,或只卸载 -t 后面列出的文件系统类型,请使用 -a-A。注意,-A不会试图卸载根文件系统。