我继承了一个基于 LVM 的 centos 设置,其中 root 位于 LVM 分区。我想将我的 /var 移动到新硬盘而不将其添加到 LVM 组。是否可以将新硬盘挂载到 /var 而不将其添加到 LVM,例如直接将其添加到 fstab?
答案1
你想要做的是当然可行离线逻辑卷管理器当然使数据移动变得简单在线的,但根据你的情况可能能做到在线的甚至没有逻辑卷管理器。
不使用 LVM 时,在线和离线过程基本相同。
离线操作
如果你不介意让机器离线一段时间,我建议从实时媒体启动(我建议系统救援光盘),然后为新分区准备磁盘/var
(对其进行分区并为其准备文件系统),挂载基于 LVM/var
和新格式化的磁盘/var
,然后将所有数据从一个磁盘复制到另一个磁盘(rsync
这是我的建议)。
然后您必须更新您的,/etc/fstab
然后您就设置好了。
如果您不想在实时媒体中启动,那么在单用户模式下启动可能会有一点运气。或者,您可以硬着头皮尝试在线启动。
在线操作
移动数据时的流程在线的与离线过程基本相同,但您还必须非常小心使用旧/var
分区的任何进程。如果旧分区上没有重要文件,则无需如此小心,最后重新启动即可处理剩余文件。
步骤
- 对新磁盘进行分区并准备新的文件系统
- 将文件系统挂载到某处(为了简单
/var
起见,我假设)/mnt/newvar
- 将所有文件从
/var
复制到/mnt/newvar
(rsync -avHPSAX /var/ /mnt/newvar/
) - 检查哪些进程持有打开的文件
/var
并停止它们(lsof -n / | awk '$9 ~ /^\/var\//'
会通知您) - 再次同步磁盘(
rsync -avHP --delete /var/ /mnt/newvar/
)。这应该很快,因为几乎不会有任何更新 - 当你确定没有任何内容写入时
/var
,将/mnt/newvar
其卸载并挂载到/var
- 更新
/etc/fstab
- 重启
- 重启后,您可以删除曾经的卷
/var
。如果您的/var
卷不是单独的卷,而只是的一部分/
,那么您可以mount -o bind / /mnt
删除并清理/mnt/var
(记住保留它,/mnt/var
因为它是挂载点)。
如果您需要更多详细信息,则必须简要介绍有关您的设置的更多信息,例如df -hTP /var
、lvm lvs
和fdisk -l
您要使用的新磁盘的输出。