挂载概念简述
根文件系统之外的其他文件要想能够被访问,都必须通过“关联”至根文件系统上的某个目录来实现,此关联操作即为“挂载”,此目录即为“挂载点”,解除此关联关系的过程称之为“卸载”
1.挂载:根文件系统外通过关联至根文件系统上的某个目录来实现访问;
2.挂载点:mount_point,用于作为另一个文件系统的访问入口:
- 事先存在;
- 应该使用未被或不会被其它进程使用到的目录;
- 挂载点下原有的文件将会被隐藏;
还需要注意:
要进行挂载前,你最好先确定几件事:
- 单一文件系统不应该被重复挂载在不同的挂载点(目录)中;
- 单一目录不应该重复挂载多个文件系统;
- 要作为挂载点的目录,理论上应该都是空目录才是。
挂载:mount
语法:
mount [-fnrsvw] [-t vfstype] [-o options] 设备 挂载点
设备:
- 设备文件:例如/dev/sda5
- 卷标:-L 'LABEL', 例如 -L 'MYDATA'
- UUID, -U 'UUID':例如 -U '0c50523c-43f1-45e7-85c0-a126711d406e'
- 伪文件系统名称:proc, sysfs, devtmpfs, configfs
挂载点:
- 事先存在;建议使用空目录;
- 进程正在使用中的设备无法被卸载;
选项:
-t vsftype:指定要挂载的设备上的文件系统类型;
-r: readonly,只读挂载;
-w: read and write, 读写挂载;
-n:在默认的情况下,系统会将实际挂载的情况实时写入 /etc/mtab 中,以利其他程序的运行。但在某些情况下(例如单人维护模式)为了避免问题,会刻意不写入;此时就得要使用这个 -n 的选项了;
-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:是否支持在此文件系统上使用特殊权限
- remount:重新挂载
- ro:只读
- rw:读写
- user/nouser:是否允许普通用户挂载此设备
- acl:启用此文件系统上的acl功能
注意:
上述选项可多个同时使用,彼此使用逗号分隔;
默认挂载选项:defaults:rw, suid, dev, exec, auto, nouser, and async
查看内核追踪到的已挂载的所有设备:cat /proc/mounts
挂载Ext2/Ext3文件系统:
卸除:umount
语法:
umount [-fn] 装置文件名或挂载点。
选项:
-f :强制卸除!可用在类似网络文件系统 (NFS) 无法读取到的情况下。
-n :不升级 /etc/mtab 情况下卸除。