在虚拟化环境中,为CentOS系统追加硬盘是一项常见操作,无论是扩展存储空间还是增加数据盘,都能提升服务器的灵活性和实用性,本文将详细介绍在虚拟机平台(以VMware和VirtualBox为例)中为CentOS系统追加硬盘的完整流程,包括硬件添加、系统识别、分区格式化及挂载等关键步骤,帮助用户顺利完成存储扩容。

虚拟机中添加硬盘的操作步骤
在为CentOS系统追加硬盘前,需先在虚拟机管理平台中完成硬件层面的添加,以VMware Workstation为例,关闭虚拟机电源后,进入“虚拟机设置”界面,选择“硬盘”选项,点击“添加”,向导中选择“创建新虚拟磁盘”,指定磁盘大小(如50GB)、磁盘类型(推荐SCSI,性能优于IDE)和存储位置(建议选择“独立”模式,避免虚拟机文件被意外修改),完成后启动虚拟机,系统即可识别到新硬件。
若使用VirtualBox,操作流程类似:关闭虚拟机后,进入“存储”设置,点击“控制器”下的“添加硬盘图标”,选择“创建新磁盘”,按向导分配容量和存储格式(VDI/VMDK/VHD等),推荐动态分配以节省物理空间,添加后启动虚拟机,新硬盘会被系统识别为新的存储设备。
CentOS系统中的硬盘识别与确认
虚拟机添加硬盘后,需在CentOS系统中确认硬件是否被正确识别,通过以下命令可查看当前系统中的所有磁盘设备:
lsblk
或
fdisk -l
正常情况下,新添加的硬盘会显示在列表中,dev/sdb(若已有sda、sda1等分区)或/dev/vdb(部分虚拟化环境使用vd前缀),若命令中未出现新磁盘,可能是虚拟机未正确刷新硬件,可尝试执行以下命令触发系统重扫PCI设备:
echo "- - -" > /sys/class/scsi_host/host0/scan
(注:host0可能根据实际系统环境调整为host1或host2,可通过ls /sys/class/scsi_host/查看主机号。)
硬盘分区与格式化操作
确认系统识别到新硬盘后,需对其进行分区和格式化,才能被CentOS系统正常使用,以/dev/sdb为例,使用fdisk工具进行分区:

fdisk /dev/sdb
进入fdisk交互界面后,依次执行以下命令:
n:创建新分区p:选择主分区(若需扩展分区可选e)1:指定分区号(默认为1)- 回车:使用默认起始扇区
- 回车:使用默认结束扇区(占用全部空间)
w:保存分区表并退出
分区完成后,可通过fdisk -l查看新分区信息(如/dev/sdb1),接下来使用mkfs命令对分区进行格式化,推荐使用XFS或ext4文件系统:
mkfs.xfs /dev/sdb1
或
mkfs.ext4 /dev/sdb1
创建挂载点并配置自动挂载
为格式化后的分区创建挂载目录(如/data),并将分区挂载至该目录:
mkdir /data mount /dev/sdb1 /data
验证挂载是否成功:
df -h
若显示/dev/sdb1已挂载至/data,则临时挂载完成,为避免重启后挂载失效,需配置/etc/fstab文件实现自动挂载,使用以下命令获取分区的UUID(推荐使用UUID而非设备名,避免设备名变动导致挂载失败):
blkid /dev/sdb1
复制输出中的UUID值,编辑/etc/fstab文件:

vim /etc/fstab
在文件末尾添加以下行(以XFS文件系统为例,UUID需替换为实际值):
UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx /data xfs defaults 0 0
保存后执行mount -a测试配置是否正确,若无报错则表示自动挂载配置成功。
常见问题与注意事项
在追加硬盘过程中,需注意以下几点:
- 磁盘权限问题:挂载目录默认属主为root,若需其他用户访问,可通过
chmod修改权限或设置SELinux上下文(如chcon -R -t public_content_t /data)。 - 多硬盘场景:若添加多块硬盘,需通过
lsblk明确区分设备名(如sdb、sdc等),避免分区错误。 - 文件系统选择:XFS适合大文件和高并发场景,ext4兼容性更好,可根据实际需求选择。
- 备份操作:分区和格式化会清除数据,操作前需确认新硬盘无重要数据,必要时提前备份。
相关问答FAQs
Q1: 添加硬盘后,CentOS系统未识别到新设备,如何排查?
A: 首先确认虚拟机中硬件添加是否成功(关闭虚拟机电源后检查设置),若硬件已添加但系统未识别,可尝试以下方法:1)执行echo "- - -" > /sys/class/scsi_host/host*/scan触发硬件扫描;2)检查虚拟机是否启用了“热插拔”功能,部分老旧系统需重启才能识别新硬盘;3)若使用虚拟化平台(如KVM),可尝试echo "1" > /sys/block/sdb/device/rescan重扫描磁盘。
Q2: 如何扩展已有分区的空间而非创建新分区?
A: 若新硬盘需与原有分区合并(如扩展根分区/),需使用LVM(逻辑卷管理)实现动态扩容,具体步骤为:1)将新硬盘创建为物理卷(pvcreate /dev/sdb);2)将物理卷加入现有卷组(vgextend centos /dev/sdb);3)扩展逻辑卷(lvextend -l +100%FREE /dev/centos/root);4)调整文件系统大小(xfs_growfs /或resize2fs /dev/centos/root),传统分区(如fdisk创建的分区)不支持动态扩容,需通过第三方工具(如gparted)或重新分区实现。