Qemoo: различия между версиями
| Betcher (обсуждение | вклад)  Новая страница: «Qemoo Ссылки сюда (1) → Содержание 1 Qemoo - скрипт-обертка для эмулятора qemu. 1.1 Просто передайте то, что нужно запустить 1.1.1 Установка ОС на виртуальный диск 1.1.2 Установка с исо на реальный диск 1.1.3 Параметры для qemu 1.1.4 Хитромудрая загрузка 1.2 Проброс каталога ме...» | Betcher (обсуждение | вклад) Нет описания правки | ||
| Строка 1: | Строка 1: | ||
| === Qemoo - скрипт-обертка для эмулятора qemu. === | |||
| ===== Просто передайте то, что нужно запустить: ===== | |||
| Просто передайте то, что нужно запустить | |||
|     qemoo Rosa.iso |     qemoo Rosa.iso | ||
|     qemoo /dev/sda |     qemoo /dev/sda | ||
|     qemoo ./Rosa.qcow2 |     qemoo ./Rosa.qcow2 | ||
| ===== Если 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