Während auf meinen alten PCs Windows immer unter
VirtualBox läuft
(wg. USB Unterstützung, shared Folder, etc.),
habe ich mich nun entschieden bei DEB 10 auf die open Source Software
linux-kvm.org
– Kernel-based Virtual Machine umzusteigen.
Anbei noch eine
linux-kvm.org
FAQ - frequently asked questions - Liste.
Bei gleicher CPU (z.B. keinen ARM-Prozessor simulieren) reicht es qemu-kvm
zu installieren und
den eigenen Benutzer (hier a1
) der Gruppe kvm
hinzu zufügen.
su apt install qemu-kvm Minimal-Installation apt install qemu Emulator für andere CPUs whereis adduser DEB 10 kennt den Befehl nicht mehr direkt adduser: /usr/sbin/adduser... /usr/sbin/adduser a1 kvm a1 der Gruppe kvm hinzufügen Adding user `a1' to group `kvm' ... Adding user a1 to group kvm Done. id a1 Überprüfung uid=1001(a1) gid=1001(a) groups=1001(a),106(kvm)
Bereits jetzt in der Minimal-Konfiguration kann man kvm
via Command line interface - CLI nutzen.
Diese Möglichkeit möchte ich aber wegen des geringen Komforts nicht nutzen.
Siehe z.B.
ubuntuusers.de
KVM & VM Installation (Management-Tools als weiterführende Verknüpfung)
funtoo.org with KVM/QEMU & SPICE usage of VM Win10 with VirtIO driver;
Samba for file access; ...
Zum Start, Beenden, Konfigurieren, etc. des Client-Systems gibt es div. Manager
bedienbar z.B. über command-shell, Web-Interface oder einem graphischen Desktop.
Siehe:
linux-kvm.org unvollständige Übersicht an Management Tools.
Auf dieser Seite beschreibe ich lediglich Virsh.
Zum Anfang
Ebenso wie kvm
direkt über ein CLI benutzbar ist,
kann man KVM (und andere Virtualisierer) über virsh
- Virtual Shell geringfügig komfortabler bedienen.
Wenn auch nicht so einfach, so ist virsh
die leistungsfähigste Schnittstelle.
Dafür ist die Werkzeug-Bibliothek libvirt.org nötig.
Wer gleich eine graphische Oberfläche benutzen möchte, kann z.B. den Virtual Machine Manger oder Virt-Manger benutzen, deren Beschreibung ich wegen des Umfanges, ausgelagert habe.
su apt install virsh gibt es nicht ... E: Unable to locate package virsh apt-file search "/virsh " libvirt-clients: /usr/bin/virsh libvirt-daemon: /usr/share/bash-completion/completions/virsh apt install libvirt-clients apt install libvirt-daemon ist dann bereits enthalten ... libvirt-daemon is already the newest version (5.0.0-4+deb10u1). apt install libvirt-daemon-system enth. Konfig. für den libvirt-daemon virsh version Überprüfung error: failed to connect to the hypervisor error: Failed to connect socket to '/var/run/libvirt/libvirt-sock': No such file or directory systemctl start libvirtd Daemon Start-Versuch Failed to start libvirtd.service: Unit libvirtd.service is masked.
Nach der Installation läuft aber noch kein Daemon, daher gibt es zunächst eine Fehlermeldung.
In diesem Fall steht dort der 3. Off-Level masked (nach stop & disabled).
Also libvirtd.service is masked
.
Nach einem Neustart sieht es ein wenig besser aus.
su systemctl reboot virsh version Compiled against library: libvirt 5.0.0 Using library: libvirt 5.0.0 Using API: QEMU 5.0.0 Running hypervisor: QEMU 3.1.0 systemctl status libvirtd nach wie vor 'masked' ● libvirtd.service Loaded: masked (Reason: Unit libvirtd.service is masked.) Active: inactive (dead)
Was man mit einem masked Service macht,
fand ich auf folgender Seite
ruanbekker.com recht gut beschrieben.
su systemctl enable libvirtd Synchronizing state of libvirtd.service with SysV service script with /lib/systemd/systemd-sysv-install. Executing: /lib/systemd/systemd-sysv-install enable libvirtd Failed to enable unit: Unit file /etc/systemd/system/libvirtd.service is masked. file /etc/systemd/system/libvirtd.service Datei-Typ heraus bekommen /etc/systemd/system/libvirtd.service: symbolic link to /dev/null mv /etc/systemd/system/libvirtd.service /etc/systemd/system/libvirtd.service_ rm /etc/systemd/system/libvirtd.service_ später gelöscht
Zum Löschen fehlte mir zunächst der Mut ;-)
Daher habe ich die Verküpfung nach /dev/null
zunächst nur umbenannt.
Nach Neustart des Daemons, dem Start von libvirt
-Daemon und dem Enable (beim Booten),
ist zumindest ein Teilerfolg zu verbuchen.
D.h. der Daemon libvirt
ist aktiv (running),
aber in der Loaded: Zeile noch nicht enabled.
Im Nachhinein betrachtet, wäre es wahrscheinlich eleganter
mit systemctl list-unit-files | grep libvirt
zu überprüfen ob der Dienst "masked" ist,
um ihn dann mit systemctl unmask libvirtd
verwendbar zu machen (noch nicht ausprobiert).
Siehe digitalocean.com how to use systemctl.
su
systemctl daemon-reload Daemon Neustart
systemctl start libvirtd
systemctl enable libvirtd Service beim nächsten Booten wieder starten
systemctl status libvirtd
● libvirtd.service - LSB: libvirt management daemon
Loaded: loaded (/etc/init.d/libvirtd; generated)
Active: active (running) since Wed 2020-09-30 22:25:39 BST; 24min ago
Docs: man:systemd-sysv-generator(8)
Tasks: 17 (limit: 4915)
Memory: 20.7M
CGroup: /system.slice/libvirtd.service
└─2831 /usr/sbin/libvirtd -d
Sep 30 22:25:39 b41 systemd[1]: Starting LSB: libvirt management daemon...
Sep 30 22:25:39 b41 libvirtd[2823]: Starting libvirt management daemon: libvirtd
Sep 30 22:25:39 b41 systemd[1]: Started LSB: libvirt management daemon.
Um nicht immer als Admin eingeloggt zu sein,
sollte der Benuzter (hier a1
) libvirt
und libvirt-qemu
hinzugefügt werden.
su /usr/sbin/adduser a1 libvirt User a1 der Gruppe libvirt hinzufügen /usr/sbin/adduser a1 libvirt-qemu Adding user `a1' to group `libvirt-qemu' ... Adding user a1 to group libvirt-qemu Done. newgrp libvirt reload der Gruppe, statt aus- & einloggen newgrp libvirt-qemu
Um sich ein Aus- und Einloggen zu ersparen, kann man die geänderten Gruppen neu laden.
Kontrollieren kann man es wieder über id
.
id a1 uid=1001(a1) gid=1001(a) groups=1001(a),106(kvm),126(libvirt),64055(libvirt-qemu)
Eine Verbindung zum Hypervisor sollte nun möglich sein,
aber da ist noch ein Bug...
linux.debian.bugs.dist.narkive.com *argh*
virsh connect qemu:///system error: failed to connect to the hypervisor error: error from service: CheckAuthorization: Action org.libvirt.unix.manage is not registered
Nun zumindest, nachdem ich den Dienst ntp zum Laufen bekommen habe, ist die Meldung verschwunden.
Zunächst sollte man sich erst einmal orientieren…
Beispielsweise mit virsh help
bekommt man eine riesen Liste der möglichen Befehle.
Interessiert mich z.B. die Speicherverwaltung, kann ich virsh help pool
eingeben.
virsh pool-list Name State Autostart ------------------------------- ISO active yes 2 Quellen sind bereits etabliert libvirt active yes virsh pool-info ISO Name: ISO UUID: c252178a-e9dc-4990-8be2-8d6d009c6fa9 ... Available: 1.41 TiB
Mit pool-info <...>
bekomme ich leider keine Pfade heraus.
Unübersichtlicher, aber detaillierter ist da der Parameter pool-dumpxml
.
virsh pool-dumpxml libvirt <pool type='dir'> <name>libvirt</name> ... <path>/var/lib/libvirt</path> </pool>
Um leichter die virtuellen Images wieder zu finden,
bzw. dort abzulegen wo mehr Platz ist,
empfehle ich den Standard Pfad /var/lib/libvirt
(18 GB Platz via df -h
ermittelt) zu ändern.
Also kopiere ich den Ordner libvirt
auf die SSD
in das /home
-Verzeichnis (203 GB Platz; evtl. HD) und erstelle eine neue Verknüpfung.
df -h Filesystem Size Used Avail Use% Mounted on /dev/nvme0n1p1 28G 8.8G 18G 34% / 18 GB reicht meist für einen Gast nicht aus... /dev/nvme0n1p6 396G 203G 174G 54% /home ... su cd /var/lib/ ls -la ... drwxr-xr-x 7 root root 4096 Oct 13 10:02 libvirt cp -a libvirt/ /home/ -a archivieren = -dR -d keinen symbolischen Verknüpfungen folgen -R rekursiv mv libvirt/ libvirt_alt ln -s /home/libvirt/ libvirt -s symbolische Verknüpfung
Zum Anfang
Angenommen, MX-Linux Image
MX-19.2_x64.iso
ist bereits von einem Spiegel-Server runter geladen worden.
Im meinen Fall liegen dann die Images in einem speziellen Ordner auf der HD - Festplatte.
Hier: /mnt/sda3/ISO/MX-19.2_x64.iso
su virt-install bash: virt-install: command not found unter DEB 10 versteckt (früher qemu-img) apt-file search "/virt-install " entspr. Paket suchen virtinst: /usr/bin/virt-install virtinst: /usr/share/virt-manager/virt-install apt install virtinst enth. virt-install virt-clone virt-xml virt-convert apt install libosinfo-bin enth. osinfo-query evtl. noch interessant; enth. laut Synaptic folgendes: guestfish, virt-cat, virt-df, virt-edit, virt-filesystems, apt install libguestfs-tools virt-inspector, virt-ls, virt-make-fs, virt-rescue, virt-resize, virt-tar, virt-win-reg, etc.
Ein erster Test ergibt folgendes:
su virt-install --connect qemu:///system mit root, aber zu wenig Parameter... ERROR --name is required --memory amount in MiB is required --disk storage must be specified (override with --disk none) An install method must be specified (--location URL, --cdrom CD/ISO, --pxe, --import, --boot hd|cdrom|...)
Im Gegensatz zu virsh
, welches in einem interaktiven Modus bedient werden kann,
ist es bei virt-install
wichtig, alle nötigen Parameter direkt mit anzugeben.
Eine Möglichkeit sich das zu vereinfachen, ist sich ein entsprechendes Skript anzulegen.
Um die wichtigsten Parameter besser zu verstehen, erst einmal eine Auflistung.
Siehe virt-install --help
.
In der Hilfe selber wird auf libvirt.org verwiesen.
In der Auflistung werden konkrete Beispiele für z.B. MX-Linux genannt.
osinfo-query os
.
osinfo-query os | more Short ID | Name | Version | ID --------------------+------------------------------+----------+----------------------------------- ... debian9 | Debian Stretch | 9 | http://debian.org/debian/9 debian10 | Debian 10 | 10 | http://debian.org/debian/10 ubuntu18.04 | Ubuntu 18.04 LTS | 18.04 | http://ubuntu.com/ubuntu/18.04 win10 | Microsoft Windows 10 | 10.0 | http://microsoft.com/win/10 ...
Die Liste der unterstützten Systeme ist schon sehr lang, enthält aber z.B. nicht MX-Linux.
Eine mögliche Vorgehensweise ist nach den Ursprüngen zu suchen worauf es basiert.
z.B. via wikipedia.org List_of_Linux_distributions
Dort steht z.B. "There is also a Xfce distro called MX Linux that's based on Debian Stable"
Sollte man keinen Zusammenhang finden, kann man immer noch --os-variant generic
eingeben.
Ebenso ist Linux-Mint nicht zu finden, referenziert aber auf Ubuntu bzw. Debian.
Zum Anfang
Bei dem Thema Netzwerk, stellte ich fest, dass ich auch dort wieder ein neues Fass aufmachte.
Denn was unter DEB 9 oder älter noch funktionierte, ist nun unter DEB 10 anders...
Daher habe ich das ganze Thema ausgelagert.
Möchte man im folgenden Kapitel die "bridged" Schnittstelle br0
verwenden,
ist zuerst die ausgelagerte Seite Netzwerke unter Linux.
abzuarbeiten,
denn das Thema Netzwerk gliedert sich in 2 Teile.
Zum einen ist es auf dem Host-Rechner nötig eine oder mehrere Verbindungen zu etablieren,
welche dann von der Applikation KVM & Virsh
genutzt werden können
und zum anderen benötigt KVM & Virsh selber auch noch eine Zuweisung,
welche der (realen oder virtuellen) Schnittstellen für welchen Gast genutzt werden.
Ein Netzwerk zwischen virsh (benutzt Bibliothek libvirt)
und libvirtd (Daemon) ist unter Umständen noch nicht etabliert.
Das kann aber nachgeholt werden.
Über das Netzwerk greife ich z.B. via ssh, VNC client, Virt-Manager, Virt-Viewer, etc. auf den Gast zu.
virsh net-list --all Name State Autostart Persistent ---------------------------------------- hiernach kommt evtl. die Meldung State: inactive su dann... virsh net-start default Verbindung etablieren Network default started virsh net-autostart default und nach dem Booten aktivieren Network default marked as autostarted
Das default Netzwerk ist nun aktiv
und die Konfigurations-Datei kann man sich einmal angucken um etwas über den generellen Aufbau zu erfahren.
su ohne su ist default unbekannt virsh net-dumpxml default <network> <name>default</name> <uuid>da7fb9d7-9655-486e-ab95-fe0e377de3d5</uuid> <forward mode='nat'> NAT - Network Address Translation <nat> ermöglicht Gast-Zugriff via gleicher Host-IP <port start='1024' end='65535'/> </nat> </forward> <bridge name='virbr0' stp='on' delay='0'/> <mac address='52:54:00:98:5a:1d'/> <ip address='192.168.122.1' netmask='255.255.255.0'> <dhcp> <range start='192.168.122.2' end='192.168.122.254'/> </dhcp> </ip> </network>
Zunächst kopiere ich die Default-Vorlage
/etc/libvirt/qemu/networks/default.xml
um sie danach anzupassen.
Mit der neuen XML-Datei lege ich dann ein neues lokales,
vom Router isoliertes, Netzwerk iso0
an.
su cd /etc/libvirt/qemu/networks/ cp default.xml isolated.xml nano isolated.xml <network> <name>iso0</name> # die uuid immer ein wenig ändern... <uuid>da7fb9d7-9655-486e-ab95-fe0e377de3d9</uuid> <ip address='192.168.100.1' netmask='255.255.255.0'> <dhcp> <range start='192.168.100.2' end='192.168.100.254'/> </dhcp> </ip> </network> virsh net-define --file ./isolated.xml Network iso0 defined from ./isolated.xml
Auf ähnliche Art und Weise lege ich als Bridge noch ein "Routed Network" an.
Mit der neuen XML-Datei entsteht nun eine mit dem Router verbundene Netzwerk-Brücke br0
.
su cd /etc/libvirt/qemu/networks/ cp default.xml routed.xml nano routed.xml <network> <name>br0</name> <uuid>da7fb9d7-9655-486e-ab95-fe0e377de4d5</uuid> <forward mode='bridge'/> <bridge name='br0' /> </network> virsh net-define --file ./routed.xml Network br0 defined from ./routed.xml
Wenn alles geklappt hat, stehen nun 3 Netzwerke zur Verfügung.
Allerdings sind noch nicht alle aktiv...
su virsh net-list --all Name State Autostart Persistent ---------------------------------------------- br0 inactive no yes default active yes yes iso0 inactive no yes
Im Zusammenhang mit einem Netzwerk sind folgende Befehle am wichtigsten:
net-define
und zum wieder Entfernen net-undefine
,net-start
und zum Stoppen net-destroy
, net-autostart
und net-list --all
.
Achtung Der Befehl virsh net-define --file ./isolated.xml
generiert im selben Ordner aus isolated.xml
eine Datei iso.xml
,
welche bei Anwendung von virsh net-undefine iso0
wieder gelöscht wird.
Also aufpassen, dass die Namen oder Ordner unterschiedlich sind.
su virsh net-start br0 Network br0 started virsh net-autostart br0 Network br0 marked as autostarted
Zum Anfang
Als virtuellen Monitor kann man verschiedene Programme nutzen.
Das VNC-Protokoll wird beispielsweise von virsh vncdisplay mxlinux
unterstützt.
virt-install
ruft virt-viewer
auf, welcher VNC unterstützt.
Der noch nicht installierte virt-manager
kann sowohl VNC alsauch SPICE verwenden.
Oder man verwendet halt das spezielle Programm spicy
...
su virt-install --name mxlinux --memory 2048 --vcpus 2 --graphics vnc --cdrom /mnt/sda3/ISO/MX-19.2_x64.iso --disk path=./mxlinux.qcow2,size=10 WARNING No operating system detected, VM performance may suffer. Specify an OS with --os-variant for optimal results. Starting install... Allocating 'mxlinux.qcow2' | 10 GB 00:00 ERROR internal error: cannot load AppArmor profile 'libvirt-be0b890f-d1e5-4769-a7f4-4f3cb39ebcb6' Removing disk 'mxlinux.qcow2' | 0 B 00:00 Domain installation does not appear to have been successful. If it was, you can restart your domain by running: virsh --connect qemu:///system start mxlinux otherwise, please restart your installation.
Ein erster Versuch schlug fehl, da wahrscheinlich der
ntp-Daemon noch nicht lief.
Zur besseren Verwaltung und Übersicht sollte man virt-install
nicht wie oben beschrieben verwenden,
sondern alles in eine Datei schreiben.
Um Probleme zu vermeiden wo ein Gleichheitszeichen "=" benötigt wird und wo nicht,
habe ich es erfolgreich überall rein gestreut ;-)
su cd /home/libvirt/images nano mxlinux.sh #!/bin/sh # 27.10.20 virt-install --name=mxlinux \ --disk path=./mxlinux.qcow2,size=10 \ --cdrom=/mnt/sda3/ISO/MX-19.2_x64.iso \ # --location ist penibel... --memory=2048 \ --os-type=linux --os-variant=debian10 \ --network network=default \ # via NAT --graphics=vnc \ --vcpus=2 \ --hvm sh mxlinux.sh Starting install... ...
Beim Aufruf von virt-install
wird virt-viewer
wird automatisch gestartet
und es erscheint ein Boot-Menü der Live-CD.
Daran denken, dass jetzt ein System von CD läuft und die virtuelle Platte erst berührt wird,
wenn das Install... Ikon auf dem Desktop aufgerufen wird.
Das einmalig von der Live-CD gebootet wird, kann man nutzen,
wenn man z.B. eine virtuelle Windows-Platte nach Viren durchsuchen möchte
oder bestimmte Eingriffe vornehmen möchte, wo das Betriebssystem stört…
...
Die Installation an sich beschreibe ich nicht mehr, da sie vergleichbar ist wie bei einer realen Installation.
Was aber noch interessant sein könnte, sind ein paar Verwaltungs-Befehle.
virsh vncdisplay mxlinux
zeigt den benutzten Port virsh list --all
zeigt die aktiven virtuellen Gastsysteme sudo virsh list --all
zeigt alle (auch die ausgeschalteten) virtuellen Gastsysteme sudo virsh start mxlinux
. virsh save mxlinux mxsicherung
, virsh restore mxsicherung
.
Die folgenden Befehle sind eher gedacht, wenn man nicht mehr auf den Gast zugreifen kann...
Vergleichbar mit langem Drücken des Power-Buttons ist z.B. virsh shutdown mxlinux
Sofortiger Zusammenbruch der Spannungsversorgung ist vergleichbar mit z.B. virsh destroy mxlinux
Mit virsh dumpxml mxlinux > mxlinux.xml
kann ich mir die Konfiguration des Gast-Systems mxlinux in eine .xml Datei exportieren
und mit virsh create mint10.xml
ein weiteres Gastsystem (hier mint10) importieren.
Direktes Editieren ist auch möglich via z.B. virsh edit mint10
.
Und wieder gelöscht werden können gestoppte Gäste z.B. via virsh undefine mxlinux
.
Wer unter /home/libvirt/images
nach schaut, wird allerdings feststellen,
dass trotz virsh undefine mxlinux
die virtuelle Platte
mxlinux.qcow2
nicht gelöscht wurde.
Das ist dann händisch erforderlich.
Zur Vorbereitung habe ich das ISO-Image von Mint vorher runter geladen und in den Ordner /mnt/sda3/ISO
verschoben.
Eine weitere Voraussetzung ist das die Netzwerkbrücke br0
bereits eingerichtet ist.
Siehe Netzwerke unter Linux.
su cd /home/libvirt/images nano mint20.sh #!/bin/sh # 28.10.20 virt-install --name=mint20 \ --disk path=./mint20.qcow2,size=15 \ --cdrom=/mnt/sda3/ISO/linuxmint-20-xfce-64bit.iso \ --memory=2048 \ --os-type=linux --os-variant=ubuntu18.04 \ --network bridge=br0 \ --graphics=vnc \ --vcpus=2 \ --hvm sh mint20.sh Starting install... Allocating 'mint20.qcow2' | 15 GB 00:00 ERROR Cannot get interface MTU on 'br0': No such device Removing disk 'mint20.qcow2' | 0 B 00:00 Domain installation does not appear to have been successful. If it was, you can restart your domain by running: virsh --connect qemu:///system start mint20 otherwise, please restart your installation.
Leider ist das bridged Interface nicht richtig konfiguriert.
Zum Anfang
Ausgelagert: Siehe Virtual Machine Manager - VMM.
Ansonsten scheint Cockpit, eine GUI über ein Web-Interface, der Nachfolger von VMM zu werden, was vielleicht noch berichtenswert wäre.
Aufgrund der Menge habe ich es so weit es geht alphabetisch sortiert um Dubletten zu vermeiden.
admin-magazin.de
Sicherheitsaspekte-in-virtualisierten-Umgebungen (aus 2009);
ssh-keygen, virt-install, privates Netzwerk für VM mit virsh net-define,
bridged network via /etc/sysconfig/network-scripts/ifcfg-...; brctl; HW-bonding, MAC mit sVirt; etc.
cyberciti.biz
non-graphic headless KVM server on DEB 9
bridged with bridge-utils, virsh net-define, via vnc, new VM with virt-builder oder virt-install, div. virsh Kommandos
cyberciti.biz how-to-install-kvm-on-ubuntu-20-04-lts-headless-server
Bridge virbr0 soll default sein; weitere Bridge br0 mit nmcli erzeugt;
VM erzeugen mit virt-install; Display via virsh vncdisplay;
VM erzeugen mit virt-builder; etc.
datacenter-insider.de
virsh Verwaltung der KVM (2015)
Win-7 Installation über virsh (veraltet, virsh Dialog funktioniert nicht mehr bei DEB 10),
virt-install, virsh Kommandos; virsh migrate
dedoimedo.com How to setup bridged networking in KVM (2011)
creating bridge via brctl, virt-manager, some dirty bridging hacks,
debian.org Die manpage von virtinst, mit allen erdenklichen Optionen ;-)
digitalocean.com how to use systemctl (2015)
Systemd versus SysV; Services: start, stop, re-start, re-load, enable, disable, status, unmask, etc.
explorelinux.com
How To Manage KVM Virtual Machines From The Host Terminal? (2020)
virsh virt-install
funtoo.org Windows_10_Virtualization_with_KVM
Win mit VirtIO-Treiber; script to install Win via qemu-system-...; using spicy
golinuxcloud.com
virt-install examples; KVM virtualisation commands cheatsheet
virt-install, virt-viewer, tigervnc
libvirt.org Applications using libvirt
Sehr umfangreiche Liste an Tools mit Verknüpfungen für alle Belange:
z.B. virsh, virt-install, virt-p2v, virt-manager, virt-viewer, etc.
libvirt.org Domain XML format
Ein paar Netzwerk-Grundlagen (NAT, routed, isolated) und Konfiguration mit virt-manager,
Netzwerksteuerung mit virsh.
libvirt.org events configuration
Detailbeschreibung der XML-Konfiguration - siehe virsh dumpxml
linuxhint.com KVM on Debian 10 (using virsh)
etwas magere Beschreibung, aber mit speziellen Aspekten bzgl. virt-install, virsh vncdisplay
linuxtechi.com install-kvm-hypervisor-on-centos-7-and-rhel-7 (2019)
/etc/sysconfig/network-scripts/ bridge interface, virt-manager, virt-install
ostechnix.com manage-kvm-virtual-machines-with-virsh-program
virsh: help, list, save, restore, destroy, shutdown, dumpxml, create, edit, undefine, net- commands
raymii.org install online Distro with virt-install
fallocate, div. Beispiele virt-install, osinfo-query os, etc.
https://www.systutorials.com/docs/linux/man/1-virt-viewer/
techotopia.com
Installing a KVM Guest-OS from the Command-line (virt-install)
virt-install Parameter-Tabelle & ein Beispiel (ein bischen wenig...-> previous & next)
tecmint.com How to manage KVM via command line tools (2015)
create storage pool with virsh pool-define-as; qemu-img create for image; virt-install
tecmint.com 1110 best tools to access remote linux desktop (2019)
TigerVNC, RealVNC, TeamViewer, Remmina, NoMachine, Apache Guacamole, XRDP, FreeNX, X2Go, Xpra
tecmint.com install-kvm-on-ubuntu (2020)
create VM via virt-install & via virt-manager (recht kurz)
thomas-krenn.com
virsh Werkzeug zur Verwaltung virtueller Maschinen
Grundlagen, Virsh-Parameter-Tabelle; virsh: VM starten, entfernen, etc.; XML von VM editieren - mehr nicht...
https://manpages.ubuntu.com/manpages/trusty/man1/virt-viewer.1.html
ubuntuusers.de virsh
virt-install; virsh: start, shutdown via ACPI -> acpid für den Gast, console (Debugging), virt-top
https://documentation.suse.com/sles/15-SP1/html/SLES-all/cha-libvirt-config-virsh.html
Zum Anfang