QEMU - бесплатный эмулятор и виртуализатор с открытым исходным кодом
При использовании в качестве эмулятора компьютера, QEMU может запускать операционные системы и программы, созданные для одной машины (например, ARM) на другой машине (например, на вашем AMD64). С помощью динамической трансляции, он достигает очень хорошую производительность. Установка
Для Ubuntu, Debian и аналогичных:
aptitude install kvm-pxe aptitude install qemu
Содержание
Создание виртуальной машины
Для начала создайте файл, который будет “жёстким диском” вашего будущего виртуального компьютера:
qemu-img create /media/flash/ubuntu 4G
В данном случае был создан файл Ubuntu размером в 4ГБ. Название было использовано так не случайно, старайтесь не давать непонятные имена, сами же запутаетесь.
Запускаем виртуальную машину:
qemu -m 512 -hda /media/flash/ubuntu -net nic -net user -localtime -vnc 10.0.0.1:1 \ -cdrom /media/flash/ubuntu-12.04-server-i386.iso -boot d -usb
Итак, расшифровка:
- -m 512 мы выделили виртуальной машине 512МБ
- -hda /media/flash/ubuntu жесткий диск нашей виртуальной машины
- -net nic -net user машинка выйдет в сеть и получит IP по DHCP с роутера или точки доступа, если он у вас установлен.
- -vnc 10.0.0.1:1 к виртуальной машине можно будет подключится по VNC, у нас же на сервере нет графики. IP здесь указан РЕАЛЬНОЙ машины. :1 означает, что будет использоваться порт 5901. Если вы делаете вторую машину, используйте 10.0.0.1:2 и подключайтесь уже через VNC на 5902 порт.
- -cdrom /media/flash/ubuntu-12.04-server-i386.iso файл-установочный образ.
- -boot d загружаться с CDROM. Если нужно загрузиться с жесткого диска, используйте -boot с.
- -usb подключить USB-устройства.
Чтобы виртуальная машина работала постоянно, запустите её через screen. Это позволит запустить машину и выйти с сервера, она же продолжит свою работу
Проблемы и решения
- open /dev/kvm: No such file or directory
Ваша машина может не поддерживать виртуализацию. Сожалею, но будет работать всё медленно.
open /dev/kvm: No such file or directory Could not initialize KVM, will disable KVM support
Попробуйте запустить тест kvm-ok. Если вы увидите такое:
INFO: Your CPU does not support KVM extensions KVM acceleration can NOT be used
Значит, проблему решить будет сложно. Вариант решения:
apt-get install module-assistant m-a a-i kqemu
- Изменить размер qcow2 диска
qemu-img resize example.qcow2 +5GB
и потом GParted или другие средства изменения размера файловой системы.
Как подмонтировать raw образ
Помните, мы создавали /media/flash/ubuntu ? Получилось так, что кое-что я указал неправильно и система перестала загружаться. Неприятно, но поправимо, нужно лишь кое-что исправить. А для этого можно подмонтировать этот образ. Итак:
sfdisk -l -uS /media/flash/ubuntu
и получаем
2048 12580863 12578816 83 Linux
2048 - вот то, что нам нужно было. Умножаем это на 512 и получаем 1048576. Монтируем:
mount -o loop,offset=1048576 /media/flash/ubuntu /mnt/
Все, доступ получен!
Virsh и CentOS
Список машин
virsh list --all
Остановка машинки
virsh suspend example_vm1
Выключение виртуалки
virsh shutdown example_vm1
Запуск машинки
virsh start example_vm1
Копия машинки
virt-clone -o example_vm1 -n example_vm2 -f /var/lib/libvirt/images/example_vm2.qcow2 --connect=qemu:///system