Linux系统新增硬盘挂载全流程指南
作者:ayaya_mana
一、整体流程示意
先给一个整体流程图,方便你在脑子里建立完整链路。

二、确认新硬盘设备
无论磁盘大小,第一步都是确认系统是否已经识别到新硬盘。
常用命令:
lsblk
输出中,系统盘通常为 sda,新增硬盘多为 sdb、sdc 等。如果看到新磁盘显示为 disk 且容量正确,说明硬件识别正常。
在虚拟机环境中,若添加硬盘后未立即识别,可以尝试重新扫描 SCSI 总线(不同系统路径略有差异):
# 常见写法之一,实际 host 编号以环境为准
for host in /sys/class/scsi_host/host*; do
echo "- - -" > "$host/scan"
done
或直接重启虚拟机。
三、场景一:小容量硬盘(≤ 2TB)使用 fdisk 分区
对于不超过 2TB 的硬盘,使用传统的 fdisk 工具即可。
3.1 进入 fdisk 分区界面
fdisk /dev/sdb
3.2 交互式操作步骤
在 fdisk 交互界面中,依次执行:
- 输入
n:新建分区。 - 输入
p:选择主分区。 - 分区号:直接回车(默认为 1)。
- 起始扇区:直接回车(默认起始位置)。
- 结束扇区:直接回车(使用整块磁盘)。
- 输入
w:保存分区表并退出。
完成后,再次执行 lsblk,应能看到 sdb1 分区。
注意:MBR 分区表最大支持约 2TB 容量,超过此限制必须使用 GPT 分区表。
四、场景二:大容量硬盘(> 2TB)使用 parted + GPT
当磁盘容量超过 2TB 时,MBR 分区表已经无法满足需求,需要使用 GPT(GUID Partition Table) 分区表。此时 fdisk 不再适用,需要改用 parted 或 gdisk。下面以 parted 为例。
4.1 进入 parted 工具
parted /dev/sdb
进入 (parted) 交互界面。
4.2 创建 GPT 分区表
在 parted 中执行:
(parted) mklabel gpt
这条命令会将磁盘标签设置为 GPT,相当于“创建 GPT 分区表”。GPT 支持超过 2TB 的磁盘容量,是当前大磁盘的标准方案【turn0search1】【turn0search3】。
4.3 创建整盘分区
在交互界面中执行:
(parted) mkpart primary 0% 100%
0%:表示磁盘起始位置。100%:表示磁盘结束位置。
这样可以保证分区对齐,并使用全部磁盘空间。部分示例中也使用 mkpart primary 0 100%,含义类似【turn4fetch0】。
完成后,输入 print 可查看分区情况:
(parted) print
退出 parted:
(parted) quit
退出后,内核可能需要一点时间同步分区表。必要时可以执行:
partprobe /dev/sdb
或重启系统,确保新分区表生效【turn2fetch0】。
五、格式化文件系统
分区完成后,需要在其上创建文件系统。Linux 下最常用的是 ext4 和 xfs。
- ext4:兼容性好,适合中小规模文件、兼容性要求高的场景。
- xfs:RHEL/CentOS 7/8 默认文件系统,适合大文件、高并发 IO。
5.1 ext4 示例
mkfs.ext4 /dev/sdb1
5.2 xfs 示例
mkfs.xfs /dev/sdb1
格式化过程视磁盘大小和性能而定,大容量磁盘可能需要较长时间【turn4fetch0】。
建议:数据盘尽量选择 ext4 或 xfs,避免使用老旧的 ext3/ ext2。
六、挂载磁盘
6.1 创建挂载点
按照 Linux 使用习惯,额外数据盘通常挂载在 /mnt、/data、/opt/data 等目录。本文以 /data 为例:
mkdir /data
6.2 临时挂载
mount /dev/sdb1 /data
6.3 验证挂载结果
使用 df -h 查看磁盘使用情况:
df -h
若看到 /dev/sdb1 挂载在 /data,且容量、已用、可用等信息正确,说明挂载成功。
七、配置开机自动挂载(关键步骤)
临时挂载在系统重启后会失效,必须通过 /etc/fstab 实现持久化挂载。为避免设备名变化导致挂载错误,强烈推荐使用 UUID 进行挂载。
7.1 获取分区 UUID
blkid /dev/sdb1
输出类似:
/dev/sdb1: UUID="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" TYPE="ext4"
复制其中的 UUID 字符串(不包含引号)。
7.2 编辑 /etc/fstab
使用编辑器打开 /etc/fstab:
vim /etc/fstab
在文件末尾追加一行,例如:
UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx /data ext4 defaults 0 0
各字段含义简要说明:
- 第一列:设备标识,推荐使用 UUID。
- 第二列:挂载点目录。
- 第三列:文件系统类型(ext4 / xfs 等)。
- 第四列:挂载选项,
defaults表示默认参数。 - 第五列:dump 备份标志,一般设为 0。
- 第六列:fsck 检查顺序,非根分区通常设为 0【turn0search13】。
7.3 验证 fstab 配置
执行以下命令测试语法是否正确:
mount -a
若无报错,说明配置无误,系统重启后会自动挂载。
八、补充说明与常见问题
8.1 设备名变化的风险
在服务器有多块磁盘的情况下,设备名 /dev/sdb、/dev/sdc 等可能会因为插拔顺序或 BIOS/RAID 卡识别顺序改变而发生变化。这也是为什么始终推荐使用 UUID 而非设备名进行挂载【turn0search9】。
8.2 GPT 与 MBR 的选择
- MBR(DOS 分区表):最大支持约 2TB,分区数量有限,不适合大磁盘。
- GPT:支持超过 2TB 的磁盘,分区数量更多,是当前大磁盘的标准方案【turn0search1】【turn0search3】。
因此,任何超过 2TB 的磁盘,都应使用 GPT 分区表。
8.3 大磁盘对齐问题
使用 parted 时,通过 0% 起始、100% 结束,可以保证分区对齐,避免性能下降。多数现代系统默认以 1MiB 边界对齐,这样可以获得较好的性能与兼容性【turn3search0】。
8.4 LVM 场景(进阶)
对于需要灵活扩展的场景,可以在新磁盘上创建 LVM 物理卷(PV),再划分卷组(VG)和逻辑卷(LV),之后再在 LV 上创建文件系统。这属于更高级的存储管理方案,但基础流程仍然离不开“分区/整盘 → PV → VG → LV → 文件系统 → 挂载”。
到此这篇关于Linux系统新增硬盘挂载全流程指南的文章就介绍到这了,更多相关Linux硬盘挂载内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
