lvm - 将特定数据从一个逻辑卷移动到另一个逻辑卷

lvm - 将特定数据从一个逻辑卷移动到另一个逻辑卷

系统是CentOS 7。

我有一个逻辑卷安装在/

在设置服务器时我忘记提供/home自己的逻辑卷。

现在我想将所有内容移到/home它自己的逻辑卷中。

最好的做法是什么?是否lvm有内置方法可以做到这一点?

我目前的做事方式是:

离线

  • 使服务器脱机(因此在操作期间无法访问在其上运行的 Web 应用程序)
  • mv /home /old-home(防止操作过程中文件被修改)
  • 重新启动服务器,因此任何在 /home 中具有打开文件句柄的进程都会放弃该句柄,并且直到 /home 再次可用时才能启动

移动数据

  • 创建新的逻辑卷(lv)
  • 在 /mnt/new-lv 挂载新的 lv
  • cp -r从 /home 到 /mnt/new-lv 的所有内容
  • 安装新 LV 于/home

检查结果

  • 将服务器重新切换回在线状态并测试应用程序
  • 如果一切正常,请保留/old-home一段时间作为紧急备份
  • rm -rf /old-home稍后的某个时刻

但也许有更省力的方式?或者有避免停机的方式?

编辑1: 添加新的 lv/etc/fstab以便它随系统自动启动。

编辑2: 有问题的系统是我们托管商数据中心的虚拟系统,因此据我所知,启动到替代操作系统模式(如救援/最小)不是一个选择。

答案1

以下是我会做的事情:

  1. 打造家居 LV
  2. 使用所需的文件系统格式化 LV
  3. 使用 Live 或 System Rescue CD 重新启动
  4. 山 /
  5. 将 /home 重命名为 /home-old
  6. 挂载 /home
  7. 对 /etc/fstab 进行必要的更改
  8. 使用复制数据rsync -av /home-old/* /home/
  9. 去检查:diff -r /home-old /home

如果一切看起来不错,请重新启动服务器到它自己的操作系统,然后就可以开始了。

干杯,OJ

相关内容