在CentOS 7.2系统中,“挂载”是一个将存储设备(如硬盘分区、U盘、光盘或网络共享)连接到系统目录树中的核心操作,通过挂载,用户和应用程序才能访问存储设备上的文件和目录,本文将详细介绍在CentOS 7.2中进行磁盘挂载的完整流程,包括临时挂载与开机自动挂载的配置方法。

挂载前的准备工作
在开始挂载操作之前,首先需要明确要挂载的设备,系统通过设备文件名来识别硬件,常见的磁盘设备名如 /dev/sda、/dev/sdb 等,其中的 sda1、sdb1 则代表具体的分区。
查看可用磁盘设备
可以使用 lsblk 或 fdisk -l 命令来列出当前系统识别到的所有块设备。lsblk 命令的输出更为直观,推荐使用。
lsblk
执行后,您可能会看到类似以下的输出:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 20G 0 disk
├─sda1 8:1 0 500M 0 part /boot
└─sda2 8:2 0 19.5G 0 part
├─centos-root
└─centos-swap
sdb 8:16 0 50G 0 disk
└─sdb1 8:17 0 50G 0 part 从上例可以看出,系统有两块磁盘 sda 和 sdb。sda 已经被分区和使用,而 sdb 上有一个新分区 sdb1,其 MOUNTPOINT(挂载点)为空,这正是我们准备要挂载的目标。
创建挂载点
挂载点是文件系统中的一个目录,用作访问存储设备内容的入口,我们会在 /mnt 或 /media 目录下创建挂载点,为 /dev/sdb1 创建一个名为 data_disk 的挂载点:
sudo mkdir /mnt/data_disk
请确保使用 sudo 或以 root 用户身份执行,因为系统目录的创建需要管理员权限。
执行挂载操作
准备工作完成后,便可以使用 mount 命令进行挂载。
临时挂载
临时挂载在系统重启后会失效,适用于临时访问数据,基本命令格式为:mount [设备文件] [挂载点]。
sudo mount /dev/sdb1 /mnt/data_disk
如果系统无法自动识别文件系统类型,可以使用 -t 参数手动指定,如果分区是 xfs 格式(CentOS 7默认格式):

sudo mount -t xfs /dev/sdb1 /mnt/data_disk
验证挂载结果
挂载成功后,可以使用 df -hT 命令来查看已挂载的文件系统及其详细信息。-h 参数表示以人类可读的格式显示容量,-T 参数显示文件系统类型。
df -hT
输出结果中会包含新挂载的分区:
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/centos-root xfs 18G 1.5G 17G 9% /
/dev/sda1 xfs 497M 125M 373M 26% /boot
/dev/sdb1 xfs 50G 33M 50G 1% /mnt/data_disk 可以看到,/dev/sdb1 已经成功挂载到了 /mnt/data_disk 目录,现在可以通过该目录访问其内容了。
实现开机自动挂载
为了确保服务器重启后磁盘依然可用,需要将挂载信息写入 /etc/fstab 文件中。fstab(File System Table)是Linux系统用于定义静态文件系统信息的配置文件。
编辑 /etc/fstab 文件
使用文本编辑器(如 vi 或 nano)打开 /etc/fstab 文件:
sudo vi /etc/fstab
在文件末尾添加一行,格式如下:
[设备文件] [挂载点] [文件系统类型] [挂载选项] [dump备份] [fsck检查]
一个完整的示例条目如下:
/dev/sdb1 /mnt/data_disk xfs defaults 0 0 下表详细解释了每个字段的含义:

| 字段 | 含义 | 示例值 | 说明 |
|---|---|---|---|
| 设备文件 | 要挂载的设备或UUID | /dev/sdb1 | 建议使用UUID,避免设备名变化导致挂载失败 |
| 挂载点 | 挂载到的目录 | /mnt/data_disk | 必须是一个已存在的目录 |
| 文件系统类型 | 分区的格式 | xfs, ext4, ntfs-3g | 必须与分区实际格式匹配 |
| 挂载选项 | 挂载时的参数 | defaults | defaults 包含 rw, suid, dev, exec, auto, nouser, async |
| dump备份 | 是否使用dump备份 | 0 | 0表示不备份,1表示备份,通常设为0 |
| fsck检查 | 开机时是否进行磁盘检查 | 0 | 0表示不检查,1表示根分区优先检查,2表示其他分区检查 |
获取并使用UUID
为了提高稳定性,推荐使用分区的UUID(Universally Unique Identifier)代替设备名,使用 blkid 命令可以查看分区的UUID:
sudo blkid /dev/sdb1
输出示例:
/dev/sdb1: UUID="a1b2c3d4-e5f6-7890-1234-567890abcdef" TYPE="xfs" 将获取到的UUID填入 fstab 文件,条目变为:
UUID="a1b2c3d4-e5f6-7890-1234-567890abcdef" /mnt/data_disk xfs defaults 0 0 测试 fstab 配置
在重启服务器之前,应该先测试 fstab 文件的语法是否正确,执行 mount -a 命令,该命令会挂载 fstab 中所有尚未挂载的条目,如果没有报错,说明配置无误。
sudo mount -a
卸载文件系统
当不再需要使用某个挂载的文件系统时,可以使用 umount 命令将其卸载。
sudo umount /mnt/data_disk # 或者 sudo umount /dev/sdb1
如果提示“device is busy”,说明有进程正在使用该挂载点下的文件,可以使用 lsof 或 fuser 命令查看是哪个进程占用了它,并结束相关进程后再卸载。
相关问答FAQs
Q1: 为什么我重启服务器后,之前手动挂载的磁盘就消失了?
A: 这是因为手动使用 mount 命令进行的挂载是临时性的,其信息仅保存在当前系统内存中,当系统重启时,这些内存中的挂载信息会丢失,系统不会自动重新挂载它们,要实现开机自动挂载,必须将挂载规则(包括设备、挂载点、文件系统类型等)持久化地写入 /etc/fstab 配置文件中,系统在启动过程中会读取此文件,并根据其中的规则自动完成挂载操作。
Q2: 在执行 umount 卸载操作时,系统提示 “target is busy” 或 “device is busy”,该如何处理?
A: 这个错误表示有文件或进程正在被挂载的设备上使用,系统为了保护数据安全不允许卸载,解决方法如下:
- 找出占用进程: 使用
lsof <挂载点>或fuser -m <挂载点>命令查看是哪个进程正在访问该目录。lsof /mnt/data_disk。 - 结束占用进程: 根据上一步查看到的进程ID(PID),使用
kill -9 <PID>命令强制结束该进程。 - 强制卸载(不推荐): 如果确认数据安全或无法结束进程,可以使用
umount -l <挂载点>进行延迟卸载,它会立即解除挂载点,待设备不再繁忙时才真正完成卸载,这是一种应急手段,应谨慎使用。
【版权声明】:本站所有内容均来自网络,若无意侵犯到您的权利,请及时与我们联系将尽快删除相关内容!
发表回复