Linux中的根目录以外的文件要想被访问,需要将其“关联”到根目录下的某个目录来实现,这种关联操作就是“挂载”,这个目录就是“挂载点”,解除次关联关系的过程称之为“卸载”。这就是linux中的mount。
基本的命令格式就是
mount device mount_point
(1)我们可以通过设备名称,卷标和uuid来指定device。
linux之mount(一)
通过mount命令我们也可以看到通过伪文件系统名称也可以进行挂载(例如proc)
linux之mount(一)
(2)挂载点可以是根下的任意一个目录
一般注意,挂载点的目录需要以下几个要求:目录事先存在,可以用mkdir命令新建目录;挂载点目录不可被其他进程使用到;挂载点下原有文件将被隐藏,进程正在使用的设备是无法被卸载的。
(3)命令行选项(常用)
-t vsftype:指定要挂载的设备上的文件系统类型;
-r: readonly,只读挂载;
-w: read and write, 读写挂载;
-n: 不更新/etc/mtab;
-a:自动挂载所有支持自动挂载的设备;(定义在了/etc/fstab文件中,且挂载选项中有“自动挂载”功能)
-L 'LABEL': 以卷标指定挂载设备;
-U 'UUID': 以UUID指定要挂载的设备;
-B, --bind: 绑定目录到另一个目录上;
(4)文件系统独立的选项(常用)
-o options:(挂载文件系统的选项)
async:异步模式;
sync:同步模式;
atime/noatime:包含目录和文件;
diratime/nodiratime:目录的访问时间戳
auto/noauto:是否支持自动挂载
exec/noexec:是否支持将文件系统上应用程序运行为进程
dev/nodev:是否支持在此文件系统上使用设备文件;
suid/nosuid:是否支持在此文件系统上使用特殊权限
remount:重新挂载
ro:只读
rw:读写
user/nouser:是否允许普通用户挂载此设备
acl:启用此文件系统上的acl功能
(5)卸载命令
umount dev
umount mount_point
有时候umount会提示busy,我们可以使用fuser命令。
fuser:查看正在访问指定文件系统的进程:fuser -v MOUNT_POINT
然后根据需求去kill掉相关pid
linux之mount(一)
终止所有在正访问指定的文件系统的进程:fuser -km MOUNT_POINT