Se eu estiver criando uma imagem new.qcow2 qcow2 com base em um arquivo de backup (chamado base.qcow2) e o arquivo de backup estiver localizado em um compartilhamento nfs. O que acontece se alguém tentar modificar, substituir ou excluir base.qcow2?
Existe um mecanismo de bloqueio que evita isso? Todos os blocos serão copiados para a imagem new.qcow2 antes de remover ou modificar base.qcow2?
O cenário é o seguinte:
qemu-img create -f qcow2 -b /mnt/nfs/base.qcow2 /localdisk/new.qcow2
No servidor nfs ou outro cliente:
rm nfs/base.qcow2
O que acontece com new.qcow2 criado a partir de base.qcow2?
Responder1
O que acontece se alguém tentar modificar, substituir ou excluir base.qcow2?
As imagens baseadas na imagem base tornam-se irrelevantes/corrompidas/inúteis. Os clones completos continuarão funcionando, é claro.
Existe um mecanismo de bloqueio que impede isso?
Integrado ao qemu - não. Sistemas de gestão como oVirt/RHEV os terão em funcionamento.
Todos os blocos serão copiados para a imagem new.qcow2 antes de remover ou modificar base.qcow2?
Somente se você fizer manualmente um arquivo qemu-img rebase
. Se você simplesmente editar o arquivo base ou usá-lo diretamente com uma VM em vez da última imagem derivada em uma cadeia de snapshots, quebrará toda a árvore de snapshots.
Já no cenário real, a -b
opção criará apenas uma imagem delta, contendo apenas as diferenças entre o novo snapshot e a imagem base. Se você excluir a base, o snapshot se tornará inútil, pois não possui referência. Passar por cima dehttp://docs.fedoraproject.org/en-US/Fedora/13/html/Virtualization_Guide/sect-Virtualization-Tips_and_tricks-Using_qemu_img.htmlpara melhor referência.