Не удается настроить KVM (Qemu или Libvirt) в openSUSE Leap 42.1?
Я просто хочу запустить несколько ВМ (не одновременно). Я хочу, чтобы они были сохранены в другом разделе (смонтирован здесь /run/media/shark/VM
) а не в пуле хранения по умолчанию /var/lib/libvirt/images/default
,
Неважно, чтобы я использовал virsh или qemu-kvm, virtlib или qemu, CLI или GUI, я просто хочу, чтобы мои виртуальные машины работали:)
Я установил KVM следующим образом:
- Запустите YaST и выберите "Виртуализация"> "Установка гипервизора и инструментов".
- Выберите KVM и подтвердите, нажав Принять.
- Подтвердите список пакетов, которые должны быть установлены с помощью Install.
- Согласитесь настроить сетевой мост, нажав Да.
KVM пытается
Я пробовал разные способы:
с помощью virtlib (vm-install)
Я старался:
% vm-install --name "mageia5" \
--vcpus 2 --memory 1024 --max-memory 2048 \
--disk /run/media/shark/VM/VirtualMachines/mageia_raw_test,0,disk,w,8000,sparse=1 \
--disk /home/shark/Téléchargements/mageia_boot-nonfree.iso,1,cdrom \
--nic model=virtio \
--graphics cirrus --config-dir "/etc/libvirt/qemu"
Подскажите для ОС:
4: Other operating system
Затем:
PXE Boot
(Y / N) [N] > N
Description >
Virtual Disks:
7.8 GB Hard Disk (file:/run/media/shark/VM/VirtualMachines/mageia_raw_test)
0.1 GB CD-ROM or DVD (file:/home/shark/Téléchargements/mageia_boot-nonfree.iso)
Do you want to add another virtual disk?
(Y / N) [N] > N
Network Adapters
QEMU Virtualized NIC Card; Randomly generated MAC address
Do you want to add another virtual network adapter?
(Y / N) [N] > N
Specify the bootable virtual disk (often labeled as Disk 1) or the network
installation source URL. Each CD, DVD, or ISO image required for installation
must be added as a virtual disk.
1: Virtual Disk (0.1 GB CD-ROM or DVD (file:/home/shark/Téléchargements/mageia_boot-nonfree.iso))
[1] > 1
Preparing to start the installation...
Installing...
Failed to display the VM's console because DISPLAY is not set. Please connect a VNC viewer to localhost:5900.
Но я не знаю, как запустить программу просмотра VNC (с virt-viewer
?)
с кему
С qemu-kvm
кажется, есть проблема сети + проблема разрешений + проблема отображения
% qemu-kvm -name "mageia 5" -M pc-0.12 -m 1024 \ VM/VirtualMachines linux-7o7a
-boot d \
-drive file=/run/media/shark/VM/VirtualMachines/mageia.qcow2,if=virtio,index=0,media=disk,format=qcow2 \
-drive file=/home/shark/Téléchargements/mageia_boot-nonfree.iso,index=1,media=cdrom \
-net nic,model=virtio,macaddr=52:54:00:05:11:11 \
-balloon virtio \
-vga cirrus
Warning: vlan 0 is not connected to host network
Unable to init server: Could not connect: Connection refused
(qemu-system-x86_64:7189): Gtk-WARNING **: cannot open display:
с вирт-менеджером
URI libvirt: qemu:///system
Когда я хочу закончить установку:
Impossible de terminer l'installation : « internal error: process exited while connecting to monitor: 2016-01-16T15:47:09.003883Z qemu-system-x86_64: -chardev pty,id=charserial0: Failed to create chardev
»
Traceback (most recent call last):
File "/usr/share/virt-manager/virtManager/asyncjob.py", line 89, in cb_wrapper
callback(asyncjob, *args, **kwargs)
File "/usr/share/virt-manager/virtManager/create.py", line 1969, in do_install
guest.start_install(meter=meter)
File "/usr/share/virt-manager/virtinst/guest.py", line 442, in start_install
noboot)
File "/usr/share/virt-manager/virtinst/guest.py", line 506, in _create_guest
dom = self.conn.createLinux(start_xml or final_xml, 0)
File "/usr/lib64/python2.7/site-packages/libvirt.py", line 3585, in createLinux
if ret is None:raise libvirtError('virDomainCreateLinux() failed', conn=self)
libvirtError: internal error: process exited while connecting to monitor: 2016-01-16T15:47:09.003883Z qemu-system-x86_64: -chardev pty,id=charserial0: Failed to create chardev
Что такое чардев? Подключение к монитору: проблема с отображением?
Конфигурация KVM
Я хотел бы сказать здесь всю необходимую информацию:
Я использую openSUSE Leap 42.1 64 бит
Мой процесс - Intel i7 3610QM 2.3 ГГц, поэтому он позволяет виртуализацию. Это подтверждается, когда я бегу % egrep '(vmx|svm)' /proc/cpuinfo
, Я получил vmx
,
ТАК я побежал modprobe kvm-intel
(Нужно ли запускать его только один раз или каждый раз, когда я начинаю сеанс?).
Нужно ли делать modprobe vhost-net
?
/etc/libvirt/qemu.conf
по умолчанию: все прокомментировано/etc/libvirt/libvirt.conf
по умолчанию: все прокомментировано/etc/libvirt/libvirtd.conf
:unix_sock_group = "libvirt"
+unix_sock_rw_perms = "0770"
+auth_unix_rw = "none"
Я добавил своего пользователя и пользователя qemu в группу libvirt:
usermod -a -G libvirt qemu
usermod -a -G libvirt shark
Я изменил конфигурацию в /etc/libvirt/libvirtd.conf
как указано выше.
А потом: rclibvirtd restart
И я думаю, что я должен настроить свой доступ к VNC в /etc/libvirt/qemu.conf
но я не знаю как.
Вопрос
Как я могу настроить свою среду и KVM для запуска своих виртуальных машин? Как я сказал:
Неважно, чтобы я использовал virsh или qemu-kvm, virtlib или qemu, CLI или GUI, я просто хочу, чтобы мои виртуальные машины работали
PS: это первый раз, когда я попробовал виртуализацию на Linux, будьте снисходительны. Я новичок в сообществе StackEchange, поэтому, возможно, я ошибся, отредактировав этот вопрос, будьте снисходительны. Я француз, поэтому я не очень хорошо говорю по-английски, будьте снисходительны. Так что будьте снисходительны:)
Обновление (21/01/2016): Я также пытаюсь установить виртуальную машину с графическим интерфейсом vm-install в virt-manager и установить ее в пул хранения по умолчанию /var/lib/libvirt/images/default
Impossible de terminer l'installation : « missing target information for device /var/lib/libvirt/images/default/generic.qcow2 »
Traceback (most recent call last):
File "/usr/share/virt-manager/virtManager/asyncjob.py", line 89, in cb_wrapper
callback(asyncjob, *args, **kwargs)
File "/usr/share/virt-manager/virtManager/create.py", line 1969, in do_install
guest.start_install(meter=meter)
File "/usr/share/virt-manager/virtinst/guest.py", line 442, in start_install
noboot)
File "/usr/share/virt-manager/virtinst/guest.py", line 506, in _create_guest
dom = self.conn.createLinux(start_xml or final_xml, 0)
File "/usr/lib64/python2.7/site-packages/libvirt.py", line 3585, in createLinux
if ret is None:raise libvirtError('virDomainCreateLinux() failed', conn=self)
libvirtError: missing target information for device /var/lib/libvirt/images/default/generic.qcow2
Обновление (10/02/2016): Кажется, я регрессировал, теперь я просто не могу подключиться к QEMU/KVM (qemu:///system) с помощью virt-manager, я получаю сообщение об ошибке:
Impossible de se connecter à libvirt.
internal error: Cannot find suitable emulator for x86_64
И, похоже, мой QEMU слишком новый:
systemctl status libvirtd
libvirtd.service - Virtualization daemon
Loaded: loaded (/usr/lib/systemd/system/libvirtd.service; enabled)
Active: active (running) since mer. 2016-02-10 18:37:24 CET; 52min ago
Docs: man:libvirtd(8)
http://libvirt.org
Main PID: 1940 (libvirtd)
CGroup: /system.slice/libvirtd.service
└─1940 /usr/sbin/libvirtd --listen
févr. 10 19:23:52 linux-7o7a.site libvirtd[1940]: unsupported configuration: QEMU 2.3.1 is too new for help parsing
févr. 10 19:23:52 linux-7o7a.site libvirtd[1940]: Failed to probe capabilities for /usr/bin/qemu-system-i386: unsupported configuration: QEMU 2.3.1 is too new for help parsing
févr. 10 19:23:53 linux-7o7a.site libvirtd[1940]: unsupported configuration: QEMU 2.3.1 is too new for help parsing
févr. 10 19:23:53 linux-7o7a.site libvirtd[1940]: Failed to probe capabilities for /usr/bin/qemu-kvm: unsupported configuration: QEMU 2.3.1 is too new for help parsing
févr. 10 19:23:53 linux-7o7a.site libvirtd[1940]: unsupported configuration: QEMU 2.3.1 is too new for help parsing
févr. 10 19:23:53 linux-7o7a.site libvirtd[1940]: Failed to probe capabilities for /usr/bin/qemu-system-x86_64: unsupported configuration: QEMU 2.3.1 is too new for help parsing
févr. 10 19:23:53 linux-7o7a.site libvirtd[1940]: unsupported configuration: QEMU 2.3.1 is too new for help parsing
févr. 10 19:23:53 linux-7o7a.site libvirtd[1940]: Failed to probe capabilities for /usr/bin/qemu-kvm: unsupported configuration: QEMU 2.3.1 is too new for help parsing
févr. 10 19:23:53 linux-7o7a.site libvirtd[1940]: invalid argument: could not find capabilities for arch=x86_64 domaintype=qemu
févr. 10 19:23:53 linux-7o7a.site libvirtd[1940]: internal error: Cannot find suitable emulator for x86_64
А также:
sudo qemu-system-x86_64
Warning: default mac address being used, creating potential for address conflict
Unable to init server: Impossible de se connecter : Connexion refusée
(qemu-system-x86_64:5610): Gtk-WARNING **: cannot open display:
3 ответа
Некоторые люди могут захотеть включить виртуализацию в параметрах процессора в "BIOS".
Я постараюсь ответить на проблемы QEMU.
1) -net nic
требует что-то вроде -net user
для функциональной сети.
2) как vm-install
подсказки, ваш $DISPLAY
переменная установлена неправильно. Вам нужно либо настроить это, либо отключить вывод QEMU с помощью -display none
,
3) Пожалуйста, не используйте cirrus
; использование std
или же qxl
вместо этого: https://www.kraxel.org/blog/2014/10/qemu-using-cirrus-considered-harmful/
Для меня это была испорченная установка брлапи.
Для отладки я убил libvirt, бэкэнд для Virtual Machine Manager и Gnome Boxes с
sudo systemctl stop libvirtd
а затем запустил его в терминале с
sudo libvirtd
Первая ошибка намекнула, что
internal error: Child process (LC_ALL=C PATH=/sbin:/bin:/usr/sbin:/usr/bin HOME=/root USER=Douglas LOGNAME=adams /bin/qemu-system-alpha -help) unexpected exit status 127: /bin/qemu-system-alpha: error while loading shared libraries: libbrlapi.so.0.6: cannot open shared object file: No such file or directory
Затем, чтобы найти то, что предоставляет libbrlapi, я побежал
$ dnf provides --refresh "libbrlapi.so*"
brlapi-0.6.3-10.fc23.x86_64 : Application Programming Interface for BRLTTY
После чего быстрая переустановка исправила мою проблему
sudo dnf reinstall brlapi
Вероятно, это было вызвано некоторыми изменениями в ядре, которые я сделал для компиляции brillo, php и app engine.
Надеюсь это поможет!