温馨提示×

centos如何迁移分区

小樊
49
2026-09-15 09:34:07
栏目: 智能运维

在 CentOS(以及大多数 Linux 发行版)中,“迁移分区”通常指把某个分区的数据迁移到另一个分区/磁盘,或调整/移动分区位置。下面按常见场景给你讲清楚做法和注意事项。


一、常见迁移场景

  1. 把数据从旧磁盘迁移到新磁盘(最常见)
  2. 调整分区大小 / 移动分区位置(使用分区工具)
  3. 迁移系统根分区(/)到新磁盘

二、准备事项(非常重要)

1. 备份数据

rsync -av /source/ /backup/

或直接使用快照 / 备份工具(如 tar、Clonezilla)。

2. 查看当前分区

lsblk
fdisk -l
df -h

3. 确认文件系统类型

blkid

常见:

  • ext4
  • xfs(CentOS 7+ 默认)

三、场景一:数据分区迁移(如 /data)

示例:把 /dev/sda3 的 /data 迁移到 /dev/sdb1

1. 新磁盘分区并格式化

fdisk /dev/sdb
mkfs.ext4 /dev/sdb1
# 或 xfs
mkfs.xfs /dev/sdb1

2. 挂载新分区

mkdir /mnt/newdata
mount /dev/sdb1 /mnt/newdata

3. 同步数据

rsync -avP /data/ /mnt/newdata/

4. 修改挂载点

umount /data
umount /mnt/newdata

# 修改 /etc/fstab
UUID=xxxx /data ext4 defaults 0 0

5. 重新挂载

mount -a
df -h

✅ 数据迁移完成,原分区可释放或删除。


四、场景二:使用工具移动 / 调整分区

⚠️ 有数据丢失风险,务必备份

使用 parted(推荐)

parted /dev/sda
(parted) print
(parted) resize 2 10GB 50GB
(parted) quit

使用 gparted(图形界面,需桌面)

yum install gparted
gparted

注意:

  • xfs 不支持缩小
  • ext4 可缩小但需先 umount

五、场景三:迁移系统根分区(/)

思路

  1. 新磁盘安装相同或兼容系统
  2. rsync 整个系统
  3. 修改 fstab 和 grub

简要步骤

rsync -avP --exclude=/proc --exclude=/sys / /mnt/newroot/

修改:

  • /mnt/newroot/etc/fstab
  • 重新安装 GRUB:
grub2-install /dev/sdb
grub2-mkconfig -o /boot/grub2/grub.cfg

⚠️ 建议用 Clonezilla 或 裸机恢复方案 更稳妥。


六、推荐工具总结

工具 用途
rsync 数据迁移
fdisk / parted 分区操作
gparted 图形化分区
Clonezilla 整盘克隆
LVM 动态迁移(强烈推荐)

七、最佳实践建议

✅ 新服务器优先使用 LVM

pvcreate /dev/sdb
vgextend centos /dev/sdb
pvmove /dev/sda

✅ 系统盘迁移优先考虑重装 + 数据分离


如果你能告诉我:

  • CentOS 版本(6 / 7 / 8 / Stream)
  • 是数据盘还是系统盘
  • 是否使用 LVM

我可以给你精确命令方案。

0 踩