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临时挂载磁盘分区:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | // 查看分区名称 [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配置文件介绍:
- 文件挂载的配置文件,每行定义一个要挂载的文件系统
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | 文件格式: 要挂载的设备或伪文件系统 挂载点 文件系统类型 挂载选项 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参数指定
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | -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、设置磁盘永久挂载
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | // 查看已经挂载的磁盘分区 [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 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | 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 |
- 使用设备名卸载
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | 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 强制卸载
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | // 针对已经在工作的磁盘分区,无法卸载 // 查看已经挂载的磁盘分区 [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 |
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步