当扩展虚拟机的 LVM 时,当该虚拟机仍在运行时,有没有办法让该虚拟机看到其 LVM 卷的扩展而无需重新启动它?
假设我有 5 GB 的 LVM 卷,上面运行着系统 X(debian squeeze)。X 已打开。我在虚拟机管理程序上执行 LVextend,除非我重新启动 X,否则 X 不会注意到其磁盘已增大。
有没有什么方法可以更新某些东西,使我可以在它处于活动状态时扩展 X 硬盘,并且在扩展之后不必重新启动它?
答案1
如果您的磁盘被视为 SCSI 磁盘,请发出重新扫描:echo "- - -" >/sys/class/scsi_host/host0/scan
,host0
您的 SCSI 适配器在哪里。然后检查fdisk -l
磁盘大小是否已更改。
然后,如果您已直接在磁盘上创建 LVM 卷而未对其进行分区,lvextend
此时您应该已准备好运行。如果您已在某个分区上创建 LVM 卷,则需要先使用fdisk
或其他工具调整分区大小,然后运行lvextend
。
答案2
我通常采用另一种方法。我将“磁盘”(文件或 LUN 支持)添加到虚拟机,这通常无需重新启动客户机即可被接受。然后,我在客户机中使用 lvm 添加新的物理卷并将其添加到所需的卷组。