centos7.2如何挂载新硬盘并实现开机自动挂载?

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

centos7.2如何挂载新硬盘并实现开机自动挂载?

挂载前的准备工作

在开始挂载操作之前,首先需要明确要挂载的设备,系统通过设备文件名来识别硬件,常见的磁盘设备名如 /dev/sda/dev/sdb 等,其中的 sda1sdb1 则代表具体的分区。

查看可用磁盘设备

可以使用 lsblkfdisk -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

从上例可以看出,系统有两块磁盘 sdasdbsda 已经被分区和使用,而 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默认格式):

centos7.2如何挂载新硬盘并实现开机自动挂载?

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 文件

使用文本编辑器(如 vinano)打开 /etc/fstab 文件:

sudo vi /etc/fstab

在文件末尾添加一行,格式如下:

[设备文件] [挂载点] [文件系统类型] [挂载选项] [dump备份] [fsck检查]

一个完整的示例条目如下:

/dev/sdb1   /mnt/data_disk   xfs   defaults   0   0

下表详细解释了每个字段的含义:

centos7.2如何挂载新硬盘并实现开机自动挂载?

字段 含义 示例值 说明
设备文件 要挂载的设备或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”,说明有进程正在使用该挂载点下的文件,可以使用 lsoffuser 命令查看是哪个进程占用了它,并结束相关进程后再卸载。


相关问答FAQs

Q1: 为什么我重启服务器后,之前手动挂载的磁盘就消失了?
A: 这是因为手动使用 mount 命令进行的挂载是临时性的,其信息仅保存在当前系统内存中,当系统重启时,这些内存中的挂载信息会丢失,系统不会自动重新挂载它们,要实现开机自动挂载,必须将挂载规则(包括设备、挂载点、文件系统类型等)持久化地写入 /etc/fstab 配置文件中,系统在启动过程中会读取此文件,并根据其中的规则自动完成挂载操作。

Q2: 在执行 umount 卸载操作时,系统提示 “target is busy” 或 “device is busy”,该如何处理?
A: 这个错误表示有文件或进程正在被挂载的设备上使用,系统为了保护数据安全不允许卸载,解决方法如下:

  1. 找出占用进程: 使用 lsof <挂载点>fuser -m <挂载点> 命令查看是哪个进程正在访问该目录。lsof /mnt/data_disk
  2. 结束占用进程: 根据上一步查看到的进程ID(PID),使用 kill -9 <PID> 命令强制结束该进程。
  3. 强制卸载(不推荐): 如果确认数据安全或无法结束进程,可以使用 umount -l <挂载点> 进行延迟卸载,它会立即解除挂载点,待设备不再繁忙时才真正完成卸载,这是一种应急手段,应谨慎使用。

【版权声明】:本站所有内容均来自网络,若无意侵犯到您的权利,请及时与我们联系将尽快删除相关内容!

(0)
热舞的头像热舞
上一篇 2025-10-24 07:53
下一篇 2024-08-20 03:25

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

广告合作

QQ:14239236

在线咨询: QQ交谈

邮件:asy@cxas.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信