Linux_磁盘挂载
一、磁盘挂载
1、磁盘的分区和格式化,格式化完了后,到了挂载这块磁盘:
- 挂载分区前需要创建挂载点,挂载点以目录形式出现
- 挂载点建议是空目录,不是也不影响挂载分区的使用,但是会隐藏原有的文件
- 挂载点建议是空目录,不是也不影响挂载分区的使用,但是会隐藏原有的文件
2、挂载的概念:
- 将额外文件系统与根文件系统中某现存的目录建立起关联关系,进而使得此目录做为其它文件访问入口(Mount Point)的行为称之为挂载;
- 注意:挂载点下原有文件,在挂载完成后会被临时隐藏
3、卸载的概念:
- 解除此关联关系的过程称之为卸载;
4、挂载方法
- mount DEVICE MOUNT_POINT
- mount:通过查看/etc/mtab文件显示当前系统已挂载的所有设备
- mount [选项] [-t FS.TYPE] [-o options] device dir
- device:指明要挂载的设备:
- 设备文件:例如/dev/sda5
- 卷标:-L 'LABEL', 例如 -L 'MYDATA'
- UUID, -U 'UUID':例如 -U '0c50523c-43f1-45e7-85c0-a126711d406e'
- dir:挂载点
- 事先存在;建议使用空目录
- 进程正在使用中的设备无法被卸载;
- device:指明要挂载的设备:
- 常用命令选项:
- -t vfstype:指定要挂载的设备上的文件系统类型;例如:iso9660、ext3、ext4、xfs
- -r: readonly,只读挂载;
- -w: read and write, 读写挂载;
- -a:自动挂载所有支持自动挂载的设备;(定义在了/etc/fstab文件中,且挂载选项中有“自动挂载”功能)
- -L 'LABEL':以卷标指定挂载设备; LABEL=""
- -U 'UUID':以UUID指定要挂载的设备; UUID="" -B, --bind:绑定目录到另一个目录上;
- 注意:查看内核追踪到的已挂载的所有设备:cat /proc/mounts
5、卸载的方法:
- 卸载时可使用设备,也可以使用挂载点
- umount DEVICE 或 # umount MOUNT_POINT
二、临时挂载磁盘
1、使用mount临时挂载磁盘分区:
//查看分区名称 [root@localhost ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sr0 11:0 1 7.3G 0 rom /mnt nvme0n1 259:0 0 120G 0 disk ├─nvme0n1p1 259:1 0 1G 0 part /boot └─nvme0n1p2 259:2 0 119G 0 part ├─rhel-root 253:0 0 50G 0 lvm / ├─rhel-swap 253:1 0 2G 0 lvm [SWAP] └─rhel-home 253:2 0 67G 0 lvm /home nvme0n2 259:3 0 50G 0 disk └─nvme0n2p1 259:5 0 5G 0 part //创建挂载点 [root@localhost ~]# mkdir /dir //使用mount挂载磁盘分区 [root@localhost ~]# mount /dev/nvme0n2p1 /dir/ //查看已经挂载的磁盘分区 [root@localhost ~]# df -h Filesystem Size Used Avail Use% Mounted on devtmpfs 887M 0 887M 0% /dev tmpfs 904M 0 904M 0% /dev/shm tmpfs 904M 8.7M 895M 1% /run tmpfs 904M 0 904M 0% /sys/fs/cgroup /dev/mapper/rhel-root 50G 1.8G 49G 4% / /dev/sr0 7.4G 7.4G 0 100% /mnt /dev/mapper/rhel-home 67G 511M 67G 1% /home /dev/nvme0n1p1 1014M 173M 842M 17% /boot tmpfs 181M 0 181M 0% /run/user/0 /dev/nvme0n2p1 4.9G 20M 4.6G 1% /dir
三、永久挂载磁盘
1、fstab配置文件介绍:
- 文件挂载的配置文件,每行定义一个要挂载的文件系统
文件格式: 要挂载的设备或伪文件系统 挂载点 文件系统类型 挂载选项 dump备份频率 开机自检次序 示例: //分区标识(UUID或设备名) 挂载点 文件类型 挂载参数 不检查 不备份 UUID=e271b5b2-b1ba-4b18-bde5-66e394fb02d9 /db1 xfs defaults 0 0
要挂载的设备或伪文件系统: 设备文件、LABEL(LABEL="")、UUID(UUID="")、伪文件系统名称(proc, sysfs) 挂载选项: defaults(rw, suid, dev, exec, auto, nouser, async) dump备份频率: 0:不做备份 1:每天备份 2:每隔一天备份 开机自检次序:优先级 0:不自检 1:首先自检;一般只有rootfs才用1; 2:次优先自检
- 挂载参数,可写fstab配置文件, 也可以mount时使用-o参数指定
-o options 参数 参数意义 系统默认值 async 异步模式 sync 同步模式 suid,nosuid 允许/不允许分区有suid属性 suid auto/noauto 开机自动挂载/不自动挂载 auto exec/noexec 允许/不允许可执行文件执行,不要挂载根分区 exec dev/nodev 是否支持在此文件系统上使用设备文件; remount 重新挂载 loop 用来把一个文件当成硬盘分区挂接上系统 iocharset 指定访问文件系统所用字符集 user/nouser 允许/不允许root外的其他用户挂载分区 nouser acl 启用此文件系统上的acl功能 ro,rw 可以指定文件系统是只读( ro)或可写(rw) rw defaults 默认文件系统挂载设置 rw, suid, dev, exec, auto, nouser, and async
2、设置磁盘永久挂载
//查看已经挂载的磁盘分区 [root@localhost ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sr0 11:0 1 7.3G 0 rom /mnt nvme0n1 259:0 0 120G 0 disk ├─nvme0n1p1 259:1 0 1G 0 part /boot └─nvme0n1p2 259:2 0 119G 0 part ├─rhel-root 253:0 0 50G 0 lvm / ├─rhel-swap 253:1 0 2G 0 lvm [SWAP] └─rhel-home 253:2 0 67G 0 lvm /home nvme0n2 259:3 0 50G 0 disk └─nvme0n2p1 259:5 0 5G 0 part /dir //使用blkid获取磁盘分区的UUID [root@localhost ~]# blkid /dev/nvme0n2p1 /dev/nvme0n2p1: UUID="a9622acc-4419-4416-9d16-ed7fa1a2b476" TYPE="ext4" PARTUUID="8f03f9d8-01" //在/etc/fstab下写入永久挂载(开机自动挂载) [root@localhost ~]# vim /etc/fstab .......... UUID="a9622acc-4419-4416-9d16-ed7fa1a2b476" /dir ext4 defaults 0 0 //在fstab文件最后写入上面这行 //加载fstab文件,检测语法是否有错误 [root@localhost ~]# mount -a //回车后,没有报错信息,说明写入成功,可以reboot重启机器,使用df -h查看是否自动挂载
四、卸载挂载的磁盘
1、卸载挂载命令 —— umount
- 使用目录卸载
1、使用目录卸载 //查看已经挂载的磁盘分区 [root@localhost ~]# df -h Filesystem Size Used Avail Use% Mounted on devtmpfs 887M 0 887M 0% /dev tmpfs 904M 0 904M 0% /dev/shm tmpfs 904M 8.7M 895M 1% /run tmpfs 904M 0 904M 0% /sys/fs/cgroup /dev/mapper/rhel-root 50G 1.8G 49G 4% / /dev/sr0 7.4G 7.4G 0 100% /mnt /dev/nvme0n1p1 1014M 173M 842M 18% /boot /dev/mapper/rhel-home 67G 511M 67G 1% /home tmpfs 181M 0 181M 0% /run/user/0 /dev/nvme0n2p1 4.9G 20M 4.6G 1% /dir //使用目录卸载磁盘分区 [root@localhost ~]# umount /dir //查看是否已经卸载 [root@localhost ~]# df -h Filesystem Size Used Avail Use% Mounted on devtmpfs 887M 0 887M 0% /dev tmpfs 904M 0 904M 0% /dev/shm tmpfs 904M 8.7M 895M 1% /run tmpfs 904M 0 904M 0% /sys/fs/cgroup /dev/mapper/rhel-root 50G 1.8G 49G 4% / /dev/sr0 7.4G 7.4G 0 100% /mnt /dev/nvme0n1p1 1014M 173M 842M 18% /boot /dev/mapper/rhel-home 67G 511M 67G 1% /home tmpfs 181M 0 181M 0% /run/user/0
- 使用设备名卸载
2、使用设备名卸载 //查看已经挂载的磁盘分区 [root@localhost ~]# df -h Filesystem Size Used Avail Use% Mounted on devtmpfs 887M 0 887M 0% /dev tmpfs 904M 0 904M 0% /dev/shm tmpfs 904M 8.7M 895M 1% /run tmpfs 904M 0 904M 0% /sys/fs/cgroup /dev/mapper/rhel-root 50G 1.8G 49G 4% / /dev/sr0 7.4G 7.4G 0 100% /mnt /dev/nvme0n1p1 1014M 173M 842M 18% /boot /dev/mapper/rhel-home 67G 511M 67G 1% /home tmpfs 181M 0 181M 0% /run/user/0 /dev/nvme0n2p1 4.9G 20M 4.6G 1% /dir //使用设备名卸载 [root@localhost ~]# umount /dev/nvme0n2p1 //查看是否已经卸载 [root@localhost ~]# df -h Filesystem Size Used Avail Use% Mounted on devtmpfs 887M 0 887M 0% /dev tmpfs 904M 0 904M 0% /dev/shm tmpfs 904M 8.7M 895M 1% /run tmpfs 904M 0 904M 0% /sys/fs/cgroup /dev/mapper/rhel-root 50G 1.8G 49G 4% / /dev/sr0 7.4G 7.4G 0 100% /mnt /dev/nvme0n1p1 1014M 173M 842M 18% /boot /dev/mapper/rhel-home 67G 511M 67G 1% /home tmpfs 181M 0 181M 0% /run/user/0
- 使用umount -lf 强制卸载
//针对已经在工作的磁盘分区,无法卸载 //查看已经挂载的磁盘分区 [root@localhost dir]# df -h Filesystem Size Used Avail Use% Mounted on devtmpfs 887M 0 887M 0% /dev tmpfs 904M 0 904M 0% /dev/shm tmpfs 904M 8.7M 895M 1% /run tmpfs 904M 0 904M 0% /sys/fs/cgroup /dev/mapper/rhel-root 50G 1.8G 49G 4% / /dev/sr0 7.4G 7.4G 0 100% /mnt /dev/nvme0n1p1 1014M 173M 842M 18% /boot /dev/mapper/rhel-home 67G 511M 67G 1% /home tmpfs 181M 0 181M 0% /run/user/0 /dev/nvme0n2p1 4.9G 20M 4.6G 1% /dir //卸载分区 [root@localhost dir]# umount /dir umount: /dir: target is busy. //强制卸载 [root@localhost dir]# umount -lf /dir //查看是否已经卸载 [root@localhost dir]# df -h Filesystem Size Used Avail Use% Mounted on devtmpfs 887M 0 887M 0% /dev tmpfs 904M 0 904M 0% /dev/shm tmpfs 904M 8.7M 895M 1% /run tmpfs 904M 0 904M 0% /sys/fs/cgroup /dev/mapper/rhel-root 50G 1.8G 49G 4% / /dev/sr0 7.4G 7.4G 0 100% /mnt /dev/nvme0n1p1 1014M 173M 842M 18% /boot /dev/mapper/rhel-home 67G 511M 67G 1% /home tmpfs 181M 0 181M 0% /run/user/0