给服务器加了块数据盘,或者升级了磁盘容量,却发现系统里用不上?新硬盘要经过分区、格式化、挂载才能使用。本文教你完整流程,以及用LVM实现灵活扩容,这是服务器存储管理的基本功。
一、第一步:识别新磁盘
lsblk # 列出所有块设备,看新盘(如/dev/vdb、/dev/sdb)
fdisk -l # 更详细的磁盘信息
新加的盘通常没有挂载点、没有分区。记下它的设备名(下面以 /dev/vdb 为例)。操作前务必确认设备名正确——对错盘操作会毁数据。
二、方式A:传统分区挂载(简单直接)
1. 分区(现代大盘推荐用parted建GPT分区):
parted /dev/vdb mklabel gpt
parted /dev/vdb mkpart primary 0% 100%
2. 格式化(ext4是通用选择):
mkfs.ext4 /dev/vdb1
3. 挂载:
mkdir /data
mount /dev/vdb1 /data
df -h # 确认挂载成功
4. 开机自动挂载(关键,否则重启后就没了):
# 获取分区UUID
blkid /dev/vdb1
# 编辑/etc/fstab,加一行(用UUID更可靠)
UUID=你的UUID /data ext4 defaults 0 2
加完用 mount -a 测试fstab无误,再重启验证。
三、方式B:LVM(灵活可扩容,推荐给需要扩容的场景)
传统分区的痛点:以后想扩容很麻烦。LVM(逻辑卷管理)把磁盘抽象成可灵活调整的逻辑卷,日后加盘扩容不用重新分区、不影响数据。配置:
# 1. 创建物理卷
pvcreate /dev/vdb
# 2. 创建卷组
vgcreate data_vg /dev/vdb
# 3. 创建逻辑卷(用全部空间)
lvcreate -l 100%FREE -n data_lv data_vg
# 4. 格式化并挂载
mkfs.ext4 /dev/data_vg/data_lv
mkdir /data && mount /dev/data_vg/data_lv /data
同样写入fstab开机自动挂载。
四、LVM扩容:日后加盘的丝滑体验
这是LVM的杀手锏。以后再加一块盘 /dev/vdc,想扩大 /data:
pvcreate /dev/vdc # 新盘做成物理卷
vgextend data_vg /dev/vdc # 加入卷组
lvextend -l +100%FREE /dev/data_vg/data_lv # 扩展逻辑卷
resize2fs /dev/data_vg/data_lv # 在线扩展文件系统
整个过程不停机、不丢数据,/data空间瞬间变大。数据持续增长的业务(数据库、网盘、媒体站),用LVM能省去日后无数麻烦。
五、常见坑
- 忘了写fstab:重启后挂载丢失,数据”消失”(其实还在盘里,重新挂载即可);
- fstab写错导致开机失败:用UUID而非设备名(设备名可能变)、写完
mount -a先测试; - 对错盘操作:分区格式化前反复确认设备名和是否是新盘;
- 系统盘和数据盘混淆:业务数据放独立数据盘,与系统盘分开,重装系统不影响数据。
六、什么时候需要这些操作?
服务器加数据盘、磁盘扩容、把数据库/网站数据放到独立大盘时都用得上。机器云支持磁盘升级方案,数据密集型业务(数据库、图床、网盘)建议一开始规划好存储,或用LVM为日后扩容留灵活性。存储需求大的可选可配大容量磁盘的独立服务器。
结论
挂载新硬盘:识别→分区→格式化→挂载→写fstab自动挂载;需要日后灵活扩容就用LVM,加盘扩容不停机不丢数据。用UUID、先测fstab、别对错盘,是三个避坑要点。掌握磁盘管理,服务器扩容存储从此不求人。在你的服务器上练习时,建议先在测试环境操作熟练再上生产。