3.7.文件系统的挂载与卸载
文件系统的最佳视觉化
文件系统最好被视为一棵树,就好像它根植在 /
(根目录)一样。/dev
、/usr
和根目录中的其他目录是分支,可能有它们自己的分支,比如 /usr/local
等等。
有很多原因可以将其中一些目录放在不同的文件系统上。例如,/var
包含 log/
、spool/
和各种类型的临时文件,因此可能会被填满。填满根文件系统并不是一个好主意,因此通常会将 /var
与 /
分开。
如果某些目录树要存储在不同的物理磁盘上或是独立的虚拟磁盘(如在“网络文件系统(NFS)”中描述的)上,那么将它们包含在其他文件系统中也是一个常见的原因,或者是 CD-ROM 驱动器。
3.7.1. fstab
文件
fstab
文件在引导过程中(FreeBSD 引导过程),列在 /etc/fstab
中的文件系统会自动挂载,除了那些包含 noauto
的条目。此文件包含以下格式的条目:
device
:现有设备名称,如磁盘设备名称中所述。mount-point
:要挂载文件系统的现有目录。fstype
:要传递给 mount(8) 的文件系统类型。FreeBSD 的默认文件系统是ufs
。options
:对于读写文件系统,使用rw
,对于只读文件系统,使用ro
,然后是可能需要的任何其他选项。一个常见的选项是noauto
,用于在引导序列中通常不挂载的文件系统。其他选项在 mount(8) 中列出。dumpfreq
:由 dump(8) 使用,确定哪些文件系统需要转储。如果该字段缺失,则假定为 0。
有关 /etc/fstab
格式及其选项的更多信息,请参阅 fstab(5)。
3.7.2. 使用 mount(8)
可以使用 mount(8) 挂载文件系统。最基本的语法如下:
也可以只提供 /etc/fstab
中列出的文件系统的挂载点,即:
此命令提供了许多选项,这些选项在 mount(8) 中有描述。最常用的选项包括:
挂载选项
-a
:挂载在/etc/fstab
中列出的所有文件系统,除了标记为 "noauto"、通过-t
标志排除的文件系统,或已经挂载的文件系统。-d
:除了实际的挂载系统调用之外,执行所有操作。此选项与-v
标志结合使用时很有用,以确定 mount(8) 实际上正在尝试做什么。-f
:强制挂载不干净的文件系统(危险的),或在将文件系统的挂载状态从读写降级为只读时撤销写访问权限。-r
:以只读模式挂载文件系统。这等同于使用-o ro
。-t <fstype>
:挂载指定的文件系统类型,或者如果包含-a
,则仅挂载给定类型的文件系统。"ufs" 是默认文件系统类型。-u
:更新文件
系统上的挂载选项。
-v
:显示详细信息。-w
:以读写模式挂载文件系统。
可以将以下选项作为逗号分隔的列表传递给 -o
:
nosuid
:不解释文件系统上的 setuid 或 setgid 标志。这也是一个有用的安全选项。
3.7.3. 使用 umount(8)
要卸载文件系统,请使用 umount(8)。此命令采用一个参数,可以是挂载点、设备名称、-a
或 -A
。
所有形式都使用 -f
强制卸载,并使用 -v
显示详细信息。请注意,通常情况下 -f
不是一个好主意,因为它可能导致计算机崩溃或损坏文件系统上的数据。
要卸载所有已挂载的文件系统,或仅使用 -t
列出的文件系统类型,请使用 -a
或 -A
。请注意,-A
不尝试卸载根文件系统。
最后更新于