将现有 Linux 移至 LVM

将现有 Linux 移至 LVM

我们有一台服务器,其中已安装 Linux(CentOS 6)+磁盘 1 上的启动分区,以及一个空磁盘 2。我们想要设置的是:

  • 一个磁盘(1 个或 2 个,无所谓):
    • 快照 LVM 中的主系统(约 50%)
    • LVM 中的备份空间(约 50%)
  • 其他磁盘
    • /home2以及快照 LVM 中的 MySQL 数据(约 50%)
    • LVM 中的备份空间(约 50%)
  • 任一磁盘
    • /boot

问题是,我们如何才能将主系统移到 LVM 上,而无需从头开始安装?服务器是托管的,因此我们对操作系统安装过程没有太大影响。我们有:

  • 当然是常规 SSH
  • 救援模式,技术支持人员会为我们启动救援操作系统
  • 远程KVM

我们的想法是:

  • 在运行的系统中,在磁盘 2 上设置 LVM
  • 重新启动到救援模式并将主系统复制到磁盘 2(将 /boot 留在磁盘 1 上)
  • 更新 grub 并/etc/fstab
  • 重新启动进入主系统,现在位于磁盘 2
  • /home2擦除磁盘 1 并在磁盘 1 上为 MySQL + 设置 LVM

但欢迎对该计划提供提示/验证。

注意:服务器上目前还没有重要数据,但丢失我们已经完成的配置会有点不方便。

答案1

以下是过程描述。他们在更改期间使用了一个大型交换分区来托管根文件系统。您不需要这个技巧,因为您有第二个硬盘。

一个棘手的问题:您的服务器是否支持从第二块硬盘启动?您可以将其设置为从第二块硬盘启动吗?我认为您可以简化解决方案,而不更改 /boot 分区。引导加载程序还不喜欢 LVM,因此您仍然需要一个常规分区来托管您的 /boot。保留 /boot 并仅更改根文件系统位置可简化该过程。在迁移过程中,您可以在 grub.conf 中拥有 2 个条目:根在旧位置和 LVM 上。如果出现问题,您可以启动到救援映像,更改默认条目并再次进行迁移。

是的,我完全同意 poige 的观点。在开始使用真实系统之前,请先在虚拟环境中进行测试。

答案2

有些任务比解释如何做更容易完成。:-) 我认为 LVM 支持的 initrd 是主要关键点。在尝试启动之前,您最好验证这一点。如今,使用 VirtualBox 等软件可以轻松完成此类测试。

相关内容