从主机访问qemu / kvm raw或qcow2磁盘映像文件有多安全

我读过关于如何安全地修改qemu磁盘映像文件的意见。

有两种不同的情况我感兴趣。

1)让我们把一个未使用的原始或qcow2磁盘映像文件(即虚拟机未运行),使用losetup和kpartx挂载它并修改它的内容(例如,编辑一些文件,删除一些,添加一些… )。 虽然我直到现在都没有问题,但是我没有超出图像的最大尺寸,我不确定这是完全无风险的。 我特别想知道在这种情况下,这些图像格式的节省空间的function是如何运行的 – 也就是说,它们只在虚拟机运行时才被激活,或者是磁盘映像文件本身的function。

2)相同的情况(挂载的磁盘映像),但虚拟机正在运行。 是安全的访问图像文件的内容只读,甚至编辑/添加一些文件提供的肯定我绝对肯定这不会干扰虚拟机中运行的进程?

提前致谢,

phep

对于场景#1,如果guest虚拟机没有运行,则一切都会好起来的。 但是我会使用guestmount而不是losetup 。 原始卷的循环安装可能是确定的,但我不知道它如何处理qcow。 guestmount做额外的工作,以确保事情加载,因为他们将由虚拟机。

对于场景#2,只读将会很好,只要确保将它真正挂载到只读。 --ro会在guestmount做到这guestmount 。 但读写保证会导致腐败。

  1. 只要你做正常的文件系统卸载和分离图像,它是“安全的”。 “原始”没有“节省空间”的function,它只是一个原始的磁盘映像。 qcow2的东西应该照常工作。

  2. 除非文件系统是专门为群集共享存储环境devise的(非常less),否则这会破坏文件系统。