Linux文件系统挂载命令全指南

挂载概念:Linux 所有存储设备(硬盘、分区、U 盘、ISO、NFS 共享)必须挂载到某个目录才能访问;目录叫挂载点。 核心命令:mount(挂载)、umount(卸载);/etc/fstab 开机自动挂载。

一、基础语法

mount [-t 文件系统类型] [-o 选项] 设备源  挂载点
  • -t:指定文件系统类型,新版 mount 大多自动识别,可省略
  • -o:挂载参数,多个参数逗号隔开

查看当前已挂载列表

# 查看全部挂载信息
mount

# 更清晰,查看文件系统+大小(推荐)
df -h

# 查看磁盘分区信息
lsblk

二、常用文件系统类型 -t

表格

类型说明
ext4Linux 主流本地文件系统
xfsCentOS7 默认文件系统
ext3/ext2老版本 ext
ntfsWindows NTFS 分区(需 ntfs-3g)
vfatU 盘 FAT32
iso9660ISO 镜像文件
nfsNFS 网络共享

三、常用挂载示例

1. 挂载本地硬盘分区(如 /dev/sdb1)

# 先创建挂载目录
mkdir -p /data
# 挂载xfs/ext4分区,自动识别文件系统
mount /dev/sdb1 /data

2. 挂载 ISO 镜像文件(不用解压)

# 创建挂载点
mkdir -p /mnt/iso
mount -t iso9660 -o loop mysql.iso /mnt/iso

-o loop:把文件虚拟成块设备

3. 挂载 U 盘(vfat/FAT32)

mount -t vfat /dev/sdc1 /mnt/usb

4. 挂载 NTFS Windows 分区(CentOS 需要先装 ntfs-3g)

yum install ntfs-3g -y
mount -t ntfs-3g /dev/sdc1 /mnt/ntfs

5. 挂载 NFS 网络共享

# 客户端安装nfs工具
yum install nfs-utils -y
mount -t nfs 192.168.1.100:/share /mnt/nfs

四、常用 -o 挂载参数(非常重要)

ro       只读挂载
rw       读写(默认)
noexec   挂载目录禁止执行二进制程序(安全加固,MySQL数据目录推荐)
exec     允许执行
nosuid   禁止SUID权限生效(安全)
suid     允许SUID
nodev    不识别设备文件(安全)
defaults 默认参数 = rw,suid,dev,exec,auto,nouser,async

示例:只读挂载分区

mount -o ro /dev/sdb1 /data

五、卸载 umount

卸载不要写设备名和挂载点同时写,二选一

# 通过挂载点卸载
umount /data

# 或者通过设备卸载
umount /dev/sdb1

卸载提示 target is busy(目录被占用)

# 查看哪个进程占用挂载点
lsof +D /data
# 或者
fuser -m /data

处理:退出 cd 到该目录的 shell,停掉访问该目录的进程;紧急可强制卸载(不推荐生产,可能丢数据)

umount -l /data   # 延迟卸载,等进程释放后自动卸载(推荐)
umount -f /data   # 强制卸载,危险!

六、开机自动挂载 /etc/fstab【重点】

挂载重启失效,写到 /etc/fstab 实现开机自动挂载。

vi /etc/fstab

格式(6 列,空格 / 制表符分隔)

设备名        挂载点    文件系统类型    挂载选项    dump  fsck

示例 1:硬盘分区 /dev/sdb1 挂载到 /data,xfs

/dev/sdb1    /data    xfs    defaults    0 0

示例 2:ISO 镜像 loop 挂载

/root/mysql.iso   /mnt/iso   iso9660   loop,ro  0 0

示例 3:NFS 自动挂载

192.168.1.100:/share   /mnt/nfs   nfs   defaults 0 0

✅ 推荐用 UUID 代替 /dev/sdb1(磁盘顺序变化不会失效)

# 获取分区UUID
blkid /dev/sdb1

fstab 写法:

UUID="abc123-xxxx"    /data    xfs    defaults 0 0

写完 fstab必须测试(防止开机无法启动!)

mount -a

mount -a:读取 /etc/fstab,挂载所有尚未挂载的条目。无报错代表配置没问题,有报错立刻修改,不然重启服务器进不去系统!

七、实操场景:MySQL 数据盘挂载(你当前环境)

新硬盘单独存放 mysql 数据,生产常用

#1.查看磁盘
lsblk
#2.创建挂载目录
mkdir /mysql_data
#3.挂载分区
mount /dev/sdb1 /mysql_data
#4.写入fstab开机自动挂载,获取UUID
blkid /dev/sdb1
#5.写入/etc/fstab,示例
UUID="xxxxxxx" /mysql_data xfs defaults 0 0
#6.测试挂载
mount -a
#7.确认
df -h

八、常见问题

  1. mount: unknown filesystem type ‘ntfs’ → 缺少 ntfs-3g,yum install ntfs-3g
  2. mount: can’t find in /etc/fstab → 写错 fstab,执行 mount -a 检查
  3. target is busy → lsof/fuser 定位占用进程,不要直接 – f 强制卸载
  4. 挂载点目录不能有重要文件!挂载后原目录文件会暂时隐藏,卸载才恢复。

九、常用命令速查表

mount                   #列出所有挂载
df -h                   #查看挂载磁盘容量
lsblk                   #查看磁盘和分区树
blkid                   #查看分区UUID、文件系统
mount -a                #加载fstab配置
umount /data            #卸载挂载点
© 版权声明
THE END
喜欢就支持一下吧
点赞15 分享
评论 抢沙发
头像-次元社
欢迎您留下宝贵的见解!
提交
头像-次元社

昵称

取消
昵称表情代码图片快捷回复

    暂无评论内容