I converted qcow2 image to raw and changed I/O bus to VirtIO for a VM. now I can’t boot that VM.
I Installed VirtIO driver with following command:
mkinitrd --with virtio_pci --with virtio_blk -f /boot/initrd-$(uname -r).img $(uname -r)
and these are related kernel modules:
virtio_balloon 11329 0 virtio_blk 11593 3 virtio_pci 11845 0 virtio_ring 8513 1 virtio_pci virtio 9541 3 virtio_balloon,virtio_blk,virtio_pci
and this is what happens during boot-up.
I also changed /boot/grub/device.map from “(hd0) /dev/sda” to “(hd0) /dev/vda”
but problem still exists. any ideas how to fix this ?
This is my default option to boot:
title CentOS (2.6.18-308.13.1.el5) root (hd0,0) kernel /vmlinuz-2.6.18-308.13.1.el5 ro root=/dev/VolGroup00/LogVol00 initrd /initrd-2.6.18-308.13.1.el5.img
The problem here is that the virtual machine can’t seem to see its own hard drive.
No volume groups found
You should do only one change at a time, so that if something breaks, you know what it is. Instead, you tried to change two things at the same time, so you can’t be sure if it was changing the disk format or trying to get the installed system converted to virtio.
Start over from the beginning (with the original qcow2 image) and change only one thing at a time so that you can be sure of what’s going wrong.
Also note that CentOS 5.8 can be installed directly to a virtio disk. You may find it easier to install a new virtual machine and transfer your data from one virtual disk to the other, or better yet use the installation DVD to update your existing virtual machine.
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.