一、挂载概念
Linux中的根目录以外的文件要想被访问,需要将其“关联”到根目录下的某个目录来实现,这种关联操作就是“挂载”
,这个目录就是“挂载点”,解除次关联关系的过程称之为“卸载”
。
注意:“挂载点”的目录需要以下几个要求:
(1)目录事先存在,可以用mkdir命令新建目录;
(2)挂载点目录不可被其他进程使用到;
(3)挂载点下原有文件将被隐藏。
二、挂载
挂载方法:mount DECE MOUNT_POINT
mount:通过查看/etc/mtab 文件显示当前系统已挂载的所有设备
命令使用格式:mount [-fnrsvw] [-t vfstype] [-o options] device dir
device:指明要挂载的设备;
(1) 设备文件:例如/dev/sda5
(2) 卷标:-L ‘LABEL’, 例如 -L ‘MYDATA’
(3) UUID, -U ‘UUID’:例如 -U ‘0c50523c-43f1-45e7-85c0-a126711d406e’
(4) 伪文件系统名称:proc, sysfs, devtmpfs, configfs
dir:挂载点
事先存在;建议使用空目录;
进程正在使用中的设备无法被卸载;
常用命令选项:
-t vsftype:指定要挂载的设备上的文件系统类型;
-r: readonly,只读挂载;
-w: read and write, 读写挂载;
-n: 不更新/etc/mtab;
-a:自动挂载所有支持自动挂载的设备;(定义在了/etc/fstab文件中,且挂载选项中有“自动挂载”功能)
-L 'LABEL': 以卷标指定挂载设备;
-U 'UUID': 以UUID指定要挂载的设备;
-B, --bind: 绑定目录到另一个目录上;
-o options:(挂载文件系统的选项)
async:异步模式;
sync:同步模式;
atime/noatime:包含目录和文件;
diratime/nodiratime:目录的访问时间戳
auto/noauto:是否支持自动挂载
exec/noexec:是否支持将文件系统上应用程序运行为进程
dev/nodev:是否支持在此文件系统上使用设备文件;
suid/nosuid:是否支持在此文件系统上使用特殊权限
ro:只读
rw:读写
user/nouser:是否允许普通用户挂载此设备
acl:启用此文件系统上的acl功能
注意:上述选项可多个同时使用,彼此使用逗号分隔;
注意:查看内核追踪到的已挂载的所有设备:cat /proc/mounts
默认挂载选项:defaults:rw, suid, dev, exec, auto, nouser, and async
三、卸载
卸载命令:umount
命令使用格式:umount DEVICE
umount MOUNT_POINT
如果卸载的时候设备正忙,无法卸载,可以查看哪个文件系统正在使用该挂载点fuser:查看正在访问指定文件系统的进程:
命令使用格式:
fuser -v MOUNT_POINT
终止所有在正访问指定的文件系统的进程:慎用
fuser -km MOUNT_POINT
另外,也可以在卸载的时候,用umount -l来操作,选项 -l并不是马上umount,而是在该目录空闲后再umount。
umount -f 强制卸载
四、其他相关命令
fdisk -l 查看硬盘分区情况
mount -l 查看文件系统挂载情况
df -h 查看文件系统挂载和占有情况
mount -a 依据配置文件/etc/fstab的内容,自动挂载;