文档首页/ 主机迁移服务 SMS/ 常见问题/ 磁盘问题/ Linux系统迁移,如何合并磁盘?
更新时间:2023-12-20 GMT+08:00

Linux系统迁移,如何合并磁盘?

场景描述

源端Linux系统迁移,想要将源端多个磁盘分区迁移到目的端后合并到一个磁盘内。

解决方案

通过在源端修改SMS-Agent的配置文件,即可实现将源端多个磁盘中的分区迁移到目的端同一个磁盘内。

  • 该方案对配置文件所做出的改动,仅涉及迁移后的目的端,不会对源端有影响。
  • 使用该功能可能会出现迁移进度条不准确的现象,请知晓。
  1. 在源端服务器,执行如下命令,进入Agent安装目录下的config目录。

    cd SMS-Agent/agent/config

  2. 执行如下命令,打开并编辑config目录下的disk.cfg配置文件。

    vi disk.cfg

  3. 修改vol_disk_modify参数配置项。

    • vol_name:输入原分区名
    • new_vol_name:输入新分区名
    • disk_name:输入原分区所在磁盘
    • new_disk_name:输入目标磁盘

    例如:将源端vdc盘中的vdc1分区、vdd盘中的vdd1分区,迁移到目的端后,合并至vdb盘vdb4、vdb5分区中。

    [vol_disk_modify]
    vol_name=/dev/vdc1;/dev/vdd1
    new_vol_name=/dev/vdb4;/dev/vdb5
    disk_name=/dev/vdc;/dev/vdd
    new_disk_name=/dev/vdb;/dev/vdb
    • 多个磁盘/分区之间使用英文分号分开,每个参数的值要保证数量一致(即包含同样个数的分号)。
    • 合并之后磁盘的所有分区大小之和应小于目标磁盘的大小,若磁盘无剩余空间,可能会导致迁移失败。如需调整目标磁盘,请参见调整磁盘大小新增磁盘
    • 新分区的名称应该遵循磁盘名+序号(如:vdb4)的命名规则,且不可与已有分区重复。
    • 暂不支持lvm、btrfs的分区合并。

  4. 执行如下命令,保存disk.cfg配置文件并重启迁移Agent,进行后续迁移操作。

    :wq

调整磁盘大小

可通过修改disk.cfg配置文件中的disk_size_modify参数配置项调整磁盘大小。

  • disk_name:输入目标磁盘
  • adjust_size:输入修改后磁盘大小
例如:修改目标磁盘vdb大小为40G。
[disk_size_modify]
disk_name=/dev/vdb
adjust_size=40G
  • 目标磁盘为系统盘时,大小应该限制在40G-1024G。
  • 目标磁盘为数据盘时,大小应该限制在10G-32768G。

新增磁盘

可通过修改disk.cfg配置文件中的disk_add参数配置项新增磁盘。

  • disk_name:输入新增磁盘名称
  • adjust_size:输入新增磁盘大小(G为单位)
例如:在目的端新增磁盘vdd,大小10 G。
[disk_add]
disk_name=/dev/vdd
disk_size=10G
  • 磁盘名称应该符合命名规则,且不可与已有磁盘重复。
  • 磁盘大小应该限制在10G-32768G。