目标
通过在文件系统层次结构中添加和刚除文件系统,访问文件系统的内容。
手动挂载文件系统
要访问可移动存储设备上的文供系统,您必须挂载该存储设备。通过mount 命令,root 用户可以手动挂载文件系统。mount命令的第一个参数指定要挂载的文件系统。第二个参数指定在文件系统层次结构中用作挂载的目录。
您可以使用 mount 命令,以下列方式之一挂载文件系统:
1.使用/dev目录中的设备文件名。
2.使用 UUID,即设备的通用唯一标识符。
然后,识别要挂载的设备,确保挂载点存在,并将设备挂载到挂载点上。
注意
如果使用mount 命令挂载文件系统,之后又重新了启动系统,该文件系统不会自动重新挂载。
识别块设备
热插拔存储设备 (不管是服务器中的硬盘驱动器(HHD) 或固态设备(SSD),还是 USB 存储设备)每次都可能会插接到系统上的不同的端口。使用Lsblk命令可列出指定块设备或所有可用设备的详细信息。
[root@host ~]# lsblk
当分区名称未知时,分区大小有助于识别设备。
使用分区名称挂载文件系统
以下示例将/dev/vda4分区挂载到/mnt/data挂载点。
[root@host ~7]# mount /dev/vda4 /mnt/data
在挂载文件系统之前,挂载点目录必须已经存在。/mnt 目录存在并用作临时挂载点。
重要
如果用作挂载点的目录不为空,则文件系统挂载到那里后,现有文件将被隐藏且不可访问。卸载挂载的文件系统后,可以再次访问原先的文件。
在系统上添加或删除设备时,设备检测顺序和存储设备命名可能会发生变化。建议一致使用不变的设备标识符来挂载文件系统。
使用分区UUID 挂载文件系统
文件系统关联有一个稳定的标识符,那就是它的通用唯一标识符(UUID)。此UUID 存储在文件系统超级块中,并在重新创建文件系统之前保持不变。
Lsblk -fp命令可列出设备的完整路径、其UUID和挂载点,以及分区的文件系统类型。如果尚未挂载文件系统,挂载点将为空。
[root@host ~]# lsblk -fp
通过文件系统的UUID挂载文件系统。
[root@host -]# mount uuxp="efd314de-b5Ge-45db-bbb3-3f32ae98f652" /mnt/data
自动挂载可移动存储设备
使用图形桌面环境时,系统会在检测到可移动存储介质时自动挂载该介质。
可移动存储设备挂载到 /run/media/USERNAME/LABEL 位置。USERNAME 是登录图形环境的用户的名称。LABEL是标识符,通常是存储介质上的标签。
要安全地分离可移动设备,请先手动卸载设备上的所有文件系统。
卸载文件系统
系统关机和重新启动过程会自动卸载所有文件系统。所有文件系统数据将清空到存储设备,以确保文件系统数据的完整性。
警告
文件系统数据在正常操作期间使用内存缓存。在拔下驱动器之前,您必须先卸载可移动驱动器的文件系统。卸载过程会将数据清空到磁盘,然后释放驱动器。
umount 命令使用挂载点作为参数,以卸载文件系统。
[root@host -]# umount /mnt/data
如果挂载的文件系统在使用之中,则无法卸载。要成功执行 umount 命令,所有进程都必须停止访问挂载点下的数据。
在以下示例中,umount 命令将失败,因为shell将/mnt/data目录用作其当前的工作目录,因而会生成错误消息。
[root@host ~]# cd /mnt/data
[root@host data]# umount /mnt/data umount:/mnt/data: target is busy.
lsof命令可列出所有打开的文件,以及访问该文件系统的进程。此列表可以帮助识别哪些进程正在阻止文件系统被成功卸载。
[root@host data]# lsof /mnt/data
在识别进程后,等待进程完成或发送SIGTERM或 SIGKILL信号来终止它们。在示例中,只需将当前工作目录更改为挂载点之外的目录便可。
[root@host data]# cd
[root@host ~]# umount /mnt/data