linux的挂载

在 Linux 中,挂载(Mount) 是将存储设备(如硬盘分区、USB 驱动器、ISO 镜像等)连接到文件系统目录树的过程,使得用户可以访问设备中的数据。以下是挂载操作的详细指南,包含基础命令、自动挂载、常见问题和操作实例。


一、挂载的基本操作

1. 查看当前已挂载的设备

1
2
3
mount         # 显示所有已挂载的设备
lsblk # 查看块设备及其挂载点
df -h # 显示磁盘空间使用情况(包含挂载点)

2. 手动挂载设备

语法

1
sudo mount -t <文件系统类型> <设备路径> <挂载点目录>

示例:将 /dev/sdb1 分区(ext4 文件系统)挂载到 /mnt/data

1
2
sudo mkdir /mnt/data            # 创建挂载点目录(必须存在)
sudo mount -t ext4 /dev/sdb1 /mnt/data

3. 卸载设备

1
2
3
4
sudo umount <挂载点或设备路径>
# 示例:
sudo umount /mnt/data # 通过挂载点卸载
sudo umount /dev/sdb1 # 通过设备路径卸载

二、自动挂载(持久化挂载)

通过修改 /etc/fstab 文件,实现开机自动挂载设备。

1. 编辑 /etc/fstab 文件

1
sudo nano /etc/fstab

2. 添加挂载配置

每行格式为:

1
<设备标识> <挂载点> <文件系统类型> <挂载选项> <dump标志> <fsck顺序>

示例:将 /dev/sdb1 挂载到 /mnt/data(ext4 文件系统,默认选项):

1
/dev/sdb1 /mnt/data ext4 defaults 0 0

3. 使用 UUID 代替设备路径(推荐)

设备路径(如 /dev/sdb1)可能因硬件变动而改变,使用 UUID 更稳定。

  • 查看设备的 UUID:
    1
    sudo blkid
  • /etc/fstab 中使用 UUID:
    1
    UUID=1234-5678-90AB /mnt/data ext4 defaults 0 0

4. 验证并应用配置

1
sudo mount -a  # 挂载所有在 /etc/fstab 中定义但未挂载的设备

三、常见挂载场景

1. 挂载 USB 驱动器

1
2
3
sudo mkdir /mnt/usb
sudo mount -t vfat /dev/sdc1 /mnt/usb # FAT32 文件系统
sudo mount -t ntfs /dev/sdc1 /mnt/usb # NTFS 文件系统(需安装 ntfs-3g)

2. 挂载 ISO 镜像文件

1
2
sudo mkdir /mnt/iso
sudo mount -o loop ubuntu.iso /mnt/iso # 使用 loop 设备挂载

3. 挂载网络存储(NFS)

1
2
sudo mkdir /mnt/nfs
sudo mount -t nfs 192.168.1.100:/shared /mnt/nfs

四、挂载选项(常用参数)

通过 -o 指定挂载选项,多个选项用逗号分隔:

选项 作用
rw 读写模式(默认)
ro 只读模式
noexec 禁止执行该分区中的程序
nosuid 禁用 SUID/SGID 权限
defaults 默认选项(rw, suid, dev, exec, auto, …)
nofail 启动时忽略挂载失败(用于避免系统卡住)

示例:以只读模式挂载:

1
sudo mount -o ro /dev/sdb1 /mnt/data

五、卸载时的常见问题

1. 设备忙(Device is busy)

若卸载时提示设备忙,可能是文件被占用。解决步骤:

  1. 查找占用进程:
    1
    sudo lsof /mnt/data   # 查看哪些进程在使用挂载点
  2. 结束相关进程或退出占用目录,再重试卸载。

2. 强制卸载(谨慎使用!)

若无法正常卸载,可强制卸载(可能导致数据丢失):

1
sudo umount -l /mnt/data   # 延迟卸载(lazy unmount)

六、图形化工具

  • GNOME Disks(适用于桌面环境):
    1
    2
    sudo apt install gnome-disk-utility  # Debian/Ubuntu
    gnome-disks # 启动工具
    通过界面选择设备,点击挂载按钮即可。

七、关键命令总结

操作 命令
手动挂载 sudo mount /dev/sdX /mnt/point
卸载设备 sudo umount /mnt/point
查看块设备信息 lsblk
查看 UUID sudo blkid
自动挂载配置 编辑 /etc/fstab
挂载所有 fstab 设备 sudo mount -a

八、注意事项

  1. 挂载点目录必须存在:手动创建目录(如 /mnt/data)。
  2. 权限问题:挂载后文件权限由挂载选项和文件系统本身决定。
  3. NTFS 支持:需安装 ntfs-3g(Linux 默认可能不包含)。
  4. 安全卸载:强制断电或直接拔设备可能导致数据损坏,务必先卸载。

通过以上步骤,你可以灵活管理 Linux 中的存储设备挂载。如果是生产环境,建议先在测试系统中验证操作!