Jump to content

Qemoo: различия между версиями

Новая страница: «Qemoo Ссылки сюда (1) → Содержание 1 Qemoo - скрипт-обертка для эмулятора qemu. 1.1 Просто передайте то, что нужно запустить 1.1.1 Установка ОС на виртуальный диск 1.1.2 Установка с исо на реальный диск 1.1.3 Параметры для qemu 1.1.4 Хитромудрая загрузка 1.2 Проброс каталога ме...»
 
Нет описания правки
 
Строка 1: Строка 1:
Qemoo
=== Qemoo - скрипт-обертка для эмулятора qemu. ===
Ссылки сюда (1) →
 
Содержание
===== Просто передайте то, что нужно запустить: =====
1 Qemoo - скрипт-обертка для эмулятора qemu.
1.1 Просто передайте то, что нужно запустить
1.1.1 Установка ОС на виртуальный диск
1.1.2 Установка с исо на реальный диск
1.1.3 Параметры для qemu
1.1.4 Хитромудрая загрузка
1.2 Проброс каталога между хостом и гостем
2 Сеть
3 Демон
4 systemd
5 Конфигурационные файлы
Qemoo - скрипт-обертка для эмулятора qemu.
Qemoo не заменит virt-manager или virtualbox, а также поддерживает только малую часть возможностей qemu, но совершенно незаменим когда нужно быстро запустить виртуальную машину.
Qemoo избавит вас от необходимости заучивать километровые команды для запуска элементарной виртуалки с iso.
Qemoo имеет всего несколько параметров и конфигурационный файл позволяющий добавить или изменить любые параметры эмулятора qemu.
Qemoo может помочь вам, даже когда его возможностей по конфигурации qemu недостаточно, добавив ключ -S вы можете сгенерировать cmdline для qemu и уже на основе этой заготовки делать свой набор параметров.
Просто передайте то, что нужно запустить
   qemoo Rosa.iso
   qemoo Rosa.iso
   qemoo /dev/sda
   qemoo /dev/sda
   qemoo ./Rosa.qcow2
   qemoo ./Rosa.qcow2
 
Если EFI, то добавляем ключ -e


===== Если EFI: =====
добавляем ключ -e
   qemoo -e my.img  
   qemoo -e my.img  
   и т.д
   и т.д
Установка ОС на виртуальный диск
 
===== Установка ОС на виртуальный диск: =====
Добавляем ключ -i
Добавляем ключ -i
   qemoo -i Rosa.iso
   qemoo -i Rosa.iso
   qemoo -i -е /dev/sdb
   qemoo -i -е /dev/sdb
Строка 35: Строка 18:


   qemoo _qemoo1_ROS.qcow2 (имена образов генерируются, но можно и задать)
   qemoo _qemoo1_ROS.qcow2 (имена образов генерируются, но можно и задать)
Установка с исо на реальный диск
 
===== Установка с исо на реальный диск: =====
Ключ -a позволяет подключать к виртуальной машине дополнительные устройства или образы
Ключ -a позволяет подключать к виртуальной машине дополнительные устройства или образы


   qemoo Rosa.iso -a /dev/sdb
   qemoo Rosa.iso -a /dev/sdb
Параметры для qemu
 
===== Параметры для qemu: =====
Можно добавлять свои параметры для qemu в конце строки после --
Можно добавлять свои параметры для qemu в конце строки после --


   qemoo -e -S Rosa.iso -- -smp 4
   qemoo -e -S Rosa.iso -- -smp 4
Хитромудрая загрузка
 
===== Хитромудрая загрузка: =====
Можно грузить с iso так, как загрузка шла бы если исо по-байтово копировать на флешку.
Можно грузить с iso так, как загрузка шла бы если исо по-байтово копировать на флешку.


Строка 51: Строка 37:


   qemoo -L /dev/sdb
   qemoo -L /dev/sdb
Проброс каталога между хостом и гостем
 
===== Проброс каталога между хостом и гостем: =====
При каждой загрузке в гостевую ОС пробрасывается папка ( по умолчанию ./ ), как подключить ее в гостевой ОС линукс будет написано в консоль при старте
При каждой загрузке в гостевую ОС пробрасывается папка ( по умолчанию ./ ), как подключить ее в гостевой ОС линукс будет написано в консоль при старте


Сеть
===== Сеть: =====
Для удобства взаимодействия по сети с виртуальными машинами Virt-Manager'а, виртуальные машины, запущенные с помщью qemoo, получают сетевой адрес из той же подсети, если она существует. Обычно это подсеть 192.168.122.0/24 на интерфейсе virbr0. Если этого интерфейса нет, вероятно не установлена и/или не запущена служба libvirtd. В этом случае для каждой виртуальной машины будет подниматься своя виртуальная подсеть, в которой она будет находиться за NAT, что не всегда подходит. Также сетевой мост можно создать и настроить самостоятельно, назвав его qemoobr0. При его наличии virbr0 игнорируется.
Для удобства взаимодействия по сети с виртуальными машинами Virt-Manager'а, виртуальные машины, запущенные с помщью qemoo, получают сетевой адрес из той же подсети, если она существует. Обычно это подсеть 192.168.122.0/24 на интерфейсе virbr0. Если этого интерфейса нет, вероятно не установлена и/или не запущена служба libvirtd. В этом случае для каждой виртуальной машины будет подниматься своя виртуальная подсеть, в которой она будет находиться за NAT, что не всегда подходит. Также сетевой мост можно создать и настроить самостоятельно, назвав его qemoobr0. При его наличии virbr0 игнорируется.


Демон
===== Демон: =====
Можно запустить виртуальную машину с выводом видео по протоколу SPICE, то есть машина будет запущена демоном, а для подключения к ее экрану вам понадобится сторонее приложение (virt-viewer, remmina).
Можно запустить виртуальную машину с выводом видео по протоколу SPICE, то есть машина будет запущена демоном, а для подключения к ее экрану вам понадобится сторонее приложение (virt-viewer, remmina).


Строка 63: Строка 50:


   qemoo -d Rosa.iso
   qemoo -d Rosa.iso
systemd
 
===== systemd: =====
Пакет qemoo содержит юниты для создания виртуальных машин управляемых systemd. Можно использовать для запуска виртуальных машин при старте ОС хоста.
Пакет qemoo содержит юниты для создания виртуальных машин управляемых systemd. Можно использовать для запуска виртуальных машин при старте ОС хоста.


Строка 107: Строка 95:
systemd-escape здесь нужен для экранирования слэшей в путях
systemd-escape здесь нужен для экранирования слэшей в путях


Конфигурационные файлы
===== Конфигурационные файлы: =====
В порядке увеличения приоритета:
В порядке увеличения приоритета:



Текущая версия от 13:28, 31 марта 2025

Qemoo - скрипт-обертка для эмулятора qemu.

Просто передайте то, что нужно запустить:
  qemoo Rosa.iso
  qemoo /dev/sda
  qemoo ./Rosa.qcow2
Если EFI:

добавляем ключ -e

  qemoo -e my.img 
  и т.д
Установка ОС на виртуальный диск:

Добавляем ключ -i

  qemoo -i Rosa.iso
  qemoo -i -е /dev/sdb

утилита создаст в текущем каталоге образ qcow2 и подключит его при старте, после инсталляции можно грузиться с образа этим же qemoo

  qemoo _qemoo1_ROS.qcow2 (имена образов генерируются, но можно и задать)
Установка с исо на реальный диск:

Ключ -a позволяет подключать к виртуальной машине дополнительные устройства или образы

  qemoo Rosa.iso -a /dev/sdb
Параметры для qemu:

Можно добавлять свои параметры для qemu в конце строки после --

  qemoo -e -S Rosa.iso -- -smp 4
Хитромудрая загрузка:

Можно грузить с iso так, как загрузка шла бы если исо по-байтово копировать на флешку.

  qemoo -l Rosa.iso
  qemoo -l -e Rosa.iso

Можно пробросить при загрузке usb устройство целиком, например для 4G модемов с sd картой куда установлена ОС или барий на токене

  qemoo -L /dev/sdb
Проброс каталога между хостом и гостем:

При каждой загрузке в гостевую ОС пробрасывается папка ( по умолчанию ./ ), как подключить ее в гостевой ОС линукс будет написано в консоль при старте

Сеть:

Для удобства взаимодействия по сети с виртуальными машинами Virt-Manager'а, виртуальные машины, запущенные с помщью qemoo, получают сетевой адрес из той же подсети, если она существует. Обычно это подсеть 192.168.122.0/24 на интерфейсе virbr0. Если этого интерфейса нет, вероятно не установлена и/или не запущена служба libvirtd. В этом случае для каждой виртуальной машины будет подниматься своя виртуальная подсеть, в которой она будет находиться за NAT, что не всегда подходит. Также сетевой мост можно создать и настроить самостоятельно, назвав его qemoobr0. При его наличии virbr0 игнорируется.

Демон:

Можно запустить виртуальную машину с выводом видео по протоколу SPICE, то есть машина будет запущена демоном, а для подключения к ее экрану вам понадобится сторонее приложение (virt-viewer, remmina).

Запустите с ключом -d. Qemoo вернет номер порта для подключения.

  qemoo -d Rosa.iso
systemd:

Пакет qemoo содержит юниты для создания виртуальных машин управляемых systemd. Можно использовать для запуска виртуальных машин при старте ОС хоста.

При запуске qemoo в режиме установки (ключ -i) рядом с новым qcow2 образом создается одноименный файл - образ.qcow2.conf он содержит настройки которые нужно применять при старте qemoo c этим образом

Выглядит так:

  ACTION=run
  RAM="auto"
  ADD=""
  EFI="-bios /usr/share/OVMF/OVMF_CODE.fd"
  PORT=""
  REDIRUSB=""
  LOSETUP=""
  SPICE=""
  SHARE="/home/betcher/Programming/ISO"
  QEMOOADD="" 
                                      

Для запуска с systemd нужно изменить:

  SPICE=yes  (чтобы виртуальная машина запускалась демоном)
  PORT=6001  (порт для подключения иначе будет назначен автоматически)
                                      

Запуск такого образа от root с systemd:

  systemctl start  qemoo@$(systemd-escape /path/to/your/img.qcow2)

Проверка состояния:

  systemctl status qemoo@$(systemd-escape /path/to/your/img.qcow2)

Включить авто запуск гостя при старте ОС хоста:

  systemctl enable qemoo@$(systemd-escape /path/to/your/img.qcow2)

Отключить запуск гостя при старте хоста:

  systemctl disable qemoo@$(systemd-escape /path/to/your/img.qcow2)
                                      

Те же команды можно использовать для запуска виртуальной машины с правами пользователя, для этого после systemctl добавляем --user

Например:

  systemctl --user enable qemoo@$(systemd-escape /path/to/your/img.qcow2)
                                      

systemd-escape здесь нужен для экранирования слэшей в путях

Конфигурационные файлы:

В порядке увеличения приоритета:

  1. /etc/qemoo.cfg
      или вместо него указанный в переменной окружения $QEMOOCFG
  2. ./qemoo.cfg
  3. имя_загружаемого_образа.conf
      то есть:
      _qemoo1_MOS.qcow2 - образ
      _qemoo1_MOS.qcow2.conf - его личный конфиг
  4. указанный с параметром --config