Linux初始化磁盘
注意事项
- 分区和格式化会清空目标盘数据,请提前做好快照或备份
- 以下示例默认目标盘为
/dev/vdb,请先确认盘符,避免误操作系统盘
文件系统类型特点
| 文件系统 | 特点 | 适用场景 |
|---|---|---|
ext4 | 稳定性高、兼容性好、工具链完善 | 大多数通用业务场景,维护成本低 |
xfs | 大文件和高并发写入表现较好,在线扩容能力强,不支持直接缩容 | 日志、归档、大吞吐数据场景 |
btrfs | 支持快照、校验、子卷等高级特性 | 需要快照和高级卷管理能力的场景 |
本文操作步骤采用 ext4,优先保证通用性与稳定性
操作步骤
1. 识别目标磁盘
lsblk -f
确认目标磁盘为未使用状态(通常 FSTYPE 为空)
2. 创建 GPT 分区(单分区占满整盘)
sudo parted /dev/vdb
示例会话:
(parted) mklabel gpt
(parted) mkpart primary 1MiB 100%
(parted) print
(parted) quit
sudo partprobe /dev/vdb
lsblk
执行后应看到新分区 /dev/vdb1
3. 创建文件系统
sudo mkfs.ext4 -F /dev/vdb1
查看文件系统结果:
lsblk -f
4. 挂载到目录
sudo mkdir -p /data
sudo mount /dev/vdb1 /data
验证:
lsblk
df -h | grep /data
5. 配置开机自动挂载
先备份 fstab:
sudo cp /etc/fstab /etc/fstab.bak
获取分区 UUID:
sudo blkid /dev/vdb1
编辑 /etc/fstab,追加一行(ext4 示例):
UUID=xxxx-xxxx-xxxx-xxxx /data ext4 defaults,nofail 0 2
6. 校验挂载配置
sudo umount /data
sudo mount -a
lsblk
df -h | grep /data
mount -a 无报错且 /data 已挂载,即表示配置成功
磁盘大于 2TiB 的处理
当磁盘容量大于 2TiB 时,流程与上文基本一致,但必须确认分区表为 GPT
1. 检查分区表类型
sudo parted /dev/vdb
示例会话:
(parted) print
(parted) quit
若看到 Partition Table: msdos,则需改成 gpt(会清空现有分区数据)
2. 手动重建为 GPT 分区
sudo parted /dev/vdb
示例会话:
(parted) mklabel gpt
(parted) mkpart primary 1MiB 100%
(parted) print
(parted) quit
sudo partprobe /dev/vdb
3. 格式化和挂载
sudo mkfs.ext4 -F /dev/vdb1
sudo mkdir -p /data
sudo mount /dev/vdb1 /data
4. 扩容后超过 2TiB 的情况
如果是磁盘扩容后超过 2TiB,通常还需要扩展分区与文件系统:
sudo growpart /dev/vdb 1
sudo resize2fs /dev/vdb1
lsblk
df -h