Answers:
我写了块(néelvmify)来完成此转换。它的工作方式是缩小文件系统一点,将文件系统的开始移到分区的末尾,然后在其位置复制LVM超级块(已预先配置了正确的PV / LV / VG)。
我不确定如何实时转换磁盘,但我认为rsync将是一种更好和更安全的方式来复制数据。如果传输停止,它将允许您恢复并保持数据不变。
我确实发现有人通过将外部驱动器作为LVM添加到其本地系统来完成了类似的过程。信息不多,但我认为足以开始您的工作:
“所以今天我发现了LVM的强大功能。安装Debian时,我选择了“ LVM-使用整个磁盘”。但是主驱动器是一个缓慢而小型的5200rpm笔记本电脑驱动器。今天我插入了备用的1.5TB驱动器并启动了。而是将系统安装在更大的更快驱动器上。
LVM方法:将/ dev / sdc添加到卷组,然后运行“ pvmove / dev / sda”。这会将所有数据从sda移到其他驱动器(仅sdc可用)。无需重启,也无需卸载。当我写这篇文章时,数据正在移动。
稍后,执行“ vgreduce megatron / dev / sda”以从卷组和瞧中删除慢速驱动器。数据已移动。(megatron是该卷组和我的计算机的名称)。对于许多人来说,这可能是个老新闻,但我只是觉得这真的很酷:)“
虽然这是在本地完成的,但我认为通过其他研究,您也许可以做到这一点。
不存在“即时”进行这种LVM转换的方法。
LVM实际上驻留在您的文件系统下,以将其扩展到多个物理设备上,或者对其进行条带化或镜像化等。创建逻辑卷的最后一步是在其上放置文件系统。以下是 RHEL6的示例。
您需要做的是备份或存档该设备上的数据,然后销毁现有文件系统,创建逻辑卷并在顶部重新放置文件系统。如果这是Linux操作系统上的根文件系统,请考虑进行重新安装。可能会更快。
对于较快的副本,我很喜欢dd
,但是我并不经常使用。犯错误dd
是很危险的。您可以尝试的一件事是tar czv <source fs> | (cd <destination fs>; tar x)
,它将动态传输压缩的tar文件。
祝好运!
tar cSf - | tar xvpf -
要处理稀疏文件和权限。也可能--selinux
(如果目标卷随后将替换源)。
-p
除非主机共享用户名,否则您可能不想要/ UID(尽管该手册页提醒我这-p
是以root身份运行时GNU tar的默认设置),并且--selinux
充满了更多的危险-最好在正确安装(最终)后对整个对象执行restorecon -Rv
(或-Rp
)操作) 位置。