1

Я просто хочу запустить несколько ВМ (не одновременно). Я хочу, чтобы они хранились в другом разделе (смонтированном здесь /run/media/shark/VM), а не в пуле хранения по умолчанию /var/lib/libvirt/images/default .

Неважно, чтобы я использовал virsh или qemu-kvm, virtlib или qemu, CLI или GUI, я просто хочу, чтобы мои виртуальные машины работали :)

Я установил KVM следующим образом:

  1. Запустите YaST и выберите «Виртуализация»> «Установка гипервизора и инструментов».
  2. Выберите KVM и подтвердите, нажав Принять.
  3. Подтвердите список пакетов, которые должны быть установлены с помощью Install.
  4. Согласитесь настроить сетевой мост, нажав Да.

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

Обновление (02.10.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 ответа3

1

для меня это была испорченная установка брлапи.

Чтобы отладить его, я убил 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.

Надеюсь это поможет!

1

Некоторые люди могут захотеть включить виртуализацию в параметрах процессора в "BIOS".

1

Я постараюсь ответить на проблемы 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/

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .