Linux 合并分区实操指南
一、先判断你的目标与前提
- 合并分区通常指把同一块磁盘上相邻的未分配空间与某个分区扩容,或把多个磁盘的空间聚合为一个可用卷。不同场景工具与步骤不同。
- 关键限制:大多数情况下只能把相邻的未分配空间合并到左侧分区;不相邻需先移动分区,存在数据风险。
- 操作前务必:①完整备份重要数据;②确认设备名(如:/dev/sda、/dev/sdb),避免误操作系统盘;③对要扩容的分区先卸载;④尽量使用LiveCD/救援盘操作系统盘相关分区。
二、同一磁盘相邻分区合并(推荐用 GParted)
- 场景:把分区 A 与右侧相邻的未分配空间合并(或把未分配空间合并进 A)。
- 步骤:
- 安装并启动 GParted(图形界面)或在终端执行
sudo gparted。
- 选择目标磁盘(如 /dev/sdb),确认 A 与未分配空间相邻(若不相邻,先移动分区使其相邻,操作耗时且风险更高)。
- 右键 A → Resize/Move,拖动右端滑块至未分配空间末端,点击 Resize/Move。
- 点击工具栏 Apply 提交变更。
- 如为系统分区,建议在LiveCD中执行;完成后重启。
说明:GParted 会在后台处理移动/扩容,界面化操作直观,适合新手与复杂布局。
三、同一磁盘用命令行合并(fdisk + 文件系统工具)
- 场景:把某磁盘上的多个分区删除后重建为单一分区(会清空数据)。
- 步骤:
- 查看磁盘与分区:
sudo fdisk -l,确认目标磁盘(如 /dev/sdb)。
- 卸载相关分区:
sudo umount /dev/sdb1(若有多个,逐一卸载)。
- 进入分区工具:
sudo fdisk /dev/sdb。
- 在 fdisk 中:
- 输入 d 删除现有分区(若有多个,按需逐个删除);
- 输入 n 新建分区,选择主分区(p),起始扇区默认,结束扇区默认(占满整盘);
- 如需要可设置分区类型(常见 Linux 文件系统 83;若是 LVM 则 8e);
- 输入 w 写入并退出。
- 通知内核重读分区表:
sudo partprobe /dev/sdb(或重启)。
- 创建文件系统(示例):
- ext4:
sudo mkfs.ext4 /dev/sdb1
- FAT32(U 盘常用):
sudo mkfs.vfat -F 32 /dev/sdb1
- 挂载使用:
sudo mount /dev/sdb1 /mnt。
说明:这是“删除后重建”的方式,适合把整盘恢复为一个分区;若只是扩容某个分区,优先用 GParted 的 Resize/Move。
四、跨磁盘“合并”成一块可用空间(LVM 或 mdadm)
- 场景:把多块磁盘的空间合并,使系统将其视为一个整体卷(非传统意义的“合并分区”)。
- 方案 A(LVM,灵活在线扩容):
- 准备磁盘分区(如 /dev/sdb1、/dev/sdc1),类型设为 Linux LVM(8e)。
- 创建物理卷:
sudo pvcreate /dev/sdb1 /dev/sdc1
- 创建卷组:
sudo vgcreate vg_data /dev/sdb1 /dev/sdc1
- 创建逻辑卷:
sudo lvcreate -l 100%VG -n lv_data vg_data
- 格式化:
sudo mkfs.ext4 /dev/vg_data/lv_data
- 挂载:
sudo mount /dev/vg_data/lv_data /data
- 后续扩容:新增磁盘做成 PV →
vgextend vg_data /dev/sdd1 → lvextend -l +100%FREE /dev/vg_data/lv_data → resize2fs /dev/vg_data/lv_data(ext4)
- 方案 B(mdadm RAID0/RAID1,条带或镜像聚合):
- RAID0(合并带宽与容量):
sudo mdadm --create /dev/md0 --level=0 --raid-devices=2 /dev/sdb1 /dev/sdc1
- 格式化并挂载:
sudo mkfs.ext4 /dev/md0 && sudo mount /dev/md0 /data
说明:LVM 更适合“按需扩展/缩减”和在线管理;RAID0 提升性能但不提供冗余,RAID1 提供冗余但容量折半。
五、常见坑与排错要点
- 只能扩容到相邻的未分配空间;不相邻需先移动分区,时间长、风险高。
- 系统盘扩容务必用LiveCD/救援盘;操作前备份。
- 扩容前先卸载分区;变更分区表后可用
partprobe 让内核重读。
- 删除分区会清空数据;若只是想“合并可用空间”,优先用 GParted 的 Resize/Move。
- 云服务器/托管环境可能有厂商工具与快照流程,先在测试环境验证,遵循平台指引。