Sind Sie an der Virtualisierung von Linux-Maschinen interessiert?? Dann, KVM installieren (Kernelbasierte virtuelle Maschine) wird sicherlich für Sie nützlich sein. Diese kurze und prägnante Anleitung in 2026 erhalten Sie Anweisungen zur einfachsten Methode der KVM-Installation ohne zusätzliche Schritte und Zeitverschwendung. Ob Sie Softwareentwickler sind, Administrator, oder einfach eine Person, die sich für Virtualisierung interessiert, Dieser Leitfaden hilft Ihnen dabei, alle Phasen problemlos zu durchlaufen und die Aufgabe erfolgreich abzuschließen.

So installieren Sie KVM?
Für eine äußerst minimale Installation ist es auch möglich, nur QEMU und KVM zu verwenden, aber für die meisten Leute, Die Notwendigkeit von libvirt ist für die Konfiguration und Verwaltung der Virtualisierungsprozesse zwingend erforderlich (libvirt-daemon-system – libvirt, virt-manager – GUI-Tool für libvirt). Ein typischer Installationsprozess würde die Installation von Folgendem umfassen:
$ sudo apt install qemu-system libvirt-daemon-system
Wenn Sie für Ihre Installation einen Server verwenden, Dann sollten Sie das verwenden –no-install-recommends apt-Flag während der Installation, damit während des Installationsvorgangs keine unnötige grafische Software installiert wird.
$ sudo apt install --no-install-recommends qemu-system libvirt-clients libvirt-daemon-system
WordPress-Webhosting
Ab 3,99 $/Monat
Dieser Daemon wird beim Systemstart automatisch gestartet, Außerdem werden automatisch die erforderlichen KVM-Module kvm-amd oder kvm-intel geladen, die mit dem Debian Linux Kernel verfügbar sind. So arbeiten Sie mit virtuellen Maschinen über die Befehlszeilenschnittstelle, Sie müssen Virtinst installieren.
Zur Steuerung virtueller Maschinen mit einem regulären Benutzerkonto, Der Benutzer muss zur libvirt-Gruppe gehören:
# adduser <youruser> libvirt
Dann müssen Sie Ihre Domains auflisten können – d.h., virtuelle Maschinen unter libvirt-Verwaltung:
# virsh list --all
Benutzer- und System-VMs
Typischerweise, wenn virsh als normaler Benutzer gestartet wird, es nutzt das Qemu:///Sitzungs-URI-Zeichenfolge, um eine Verbindung mit libvirt herzustellen. Auf diese Weise, Es können nur VMs gesteuert werden, die dem Benutzer zugeordnet sind, der virsh ausführt. Um System-VMs zu verwalten (die VMs, die Root gehören) Wir müssen entweder Virsh als Root starten oder QEMU angeben:///System-URI für unsere Verbindung:
Günstiger VPS-Server
Ab 2,99 $/Monat
$ virsh --connect qemu:///system list --all
Alternativ, anstatt den URI jedes Mal anzugeben, wenn wir einen virsh-Befehl starten möchten, Es kann in der Umgebungsvariablen LIBVIRT_DEFAULT_URI definiert werden:
$ export LIBVIRT_DEFAULT_URI='qemu:///system'
Gasterstellung
Eine der einfachsten Methoden zum Erstellen und Steuern eines VM-Gasts ist die Verwendung eines GUI-Tools. Zum Beispiel:
- AQEMU Aqemu
- Virtual Machine Manager virt-manager
Auf der anderen Seite, Sie können einen Gast über die Befehlszeilenschnittstelle mit virt-install erstellen. Im Folgenden finden Sie ein Beispiel für die Erstellung eines Bookworm-Gasts mit dem Namen „Bücherwurm-amd64“:
virt-install --virt-type kvm --name bookworm-amd64 \
--cdrom ~/iso/Debian/debian-12.0.0-amd64-netinst.iso \
--os-variant debian12 \
--disk size=10 --memory 1024
Windows VPS-Hosting
Remote Access & Full Admin
Weil Ihr Gast zu diesem Zeitpunkt keine Netzwerkverbindung hat, Sie müssen den GUI-Virt-Viewer verwenden, um den Installationsvorgang abzuschließen.
Diese Methode verhindert, dass die ISO-Datei heruntergeladen werden muss, indem sie verwendet wird –Standortflagge:
virt-install --virt-type kvm --name bookworm-amd64 \
--location https://deb.debian.org/debian/dists/bookworm/main/installer-amd64/ \
--os-variant debian12 \
--disk size=10 --memory 1024
Zur Installation Ihres Systems über die Textkonsole, Sie müssen sicherstellen, dass virt-install die serielle Konsole verwendet:
virt-install --virt-type kvm --name bookworm-amd64 \
--location https://deb.debian.org/debian/dists/bookworm/main/installer-amd64/ \
--os-variant debian12 \
--disk size=10 --memory 1024 \
--graphics none \
--console pty,target_type=serial \
--extra-args "console=ttyS0"
Für eine vollständig automatisierte Installation schauen Sie sich Preseed oder Debootstrap an.
Bridge-Netzwerk-Setup
Standardmäßig, QEMU verwendet macvtap im VEPA-Modus, um NAT-Zugriff auf das Internet oder eine überbrückte Umgebung bereitzustellen, in der andere Gäste anwesend sind. Auf diese Weise, Gäste haben Zugang zum Internet (Vorausgesetzt, dass auf dem Host-Rechner eine Internetverbindung besteht) Sie sind jedoch weder vom Host-Computer noch von einem anderen Computer, der mit dem LAN des Hosts verbunden ist, sichtbar oder zugänglich.
Von Libvirt bereitgestelltes Standardnetzwerk
Das von Libvirt bereitgestellte Standardnetzwerk ermöglicht die Kommunikation zwischen dem Host-Rechner und den Gast-Rechnern. Das Standardnetzwerk ist ein NATted-Bridged-Netzwerk, bekannt als „Standard.“ Das Standardnetzwerk steht nur den VMs der Systemdomäne zur Verfügung (Dies bedeutet, dass VMs als Root-Benutzer oder als QEMU ausgeführt werden:///Systemverbindungs-URI). Mit dem Standardnetzwerk verbundene VMs werden innerhalb des platziert 192.168.122.1/24 Bereich und werden von dnsmasq mit DHCP versorgt. Das Standardnetzwerk wird nicht automatisch gestartet. Verwenden:
virsh --connect=qemu:///system net-start default
Um das Standardnetzwerk einzurichten, wird es automatisch gestartet, verwenden:
virsh --connect=qemu:///system net-autostart default
Damit das funktioniert, Es ist notwendig, die empfohlenen Pakete zu installieren: dnsmasq-base, Bridge-Utils, und Firewalld.
Zugriff auf Gäste über Hostnamen
Wenn das Standardnetzwerk eingerichtet ist, Es ist möglich, den DNS-Server von libvirt dnsmasq zu konfigurieren, Dies ermöglicht den Zugriff auf Gäste über deren Hostnamen. Dies ist nützlich, wenn Sie mit mehreren Gästen arbeiten und die Verbindung zu ihnen über einen einfacheren Hostnamen herstellen müssen, als sich alle IP-Adressen merken zu müssen.
Erste, Das Standardnetzwerk sollte durch Ausführen des Befehls konfiguriert werden:
<domain name='libvirt' localOnly='yes'/>
libvirt bezieht sich auf den Domänennamen, der für Gastmaschinen verwendet wird. Sie können diesen Wert bei Bedarf ändern, Vermeiden Sie jedoch die Verwendung von „local“, da dies zu Störungen bei mDNS führen kann. Es ist auch wichtig, hlocalOnly=’yes zu setzen‘ um sicherzustellen, dass Anfragen innerhalb dieser Domäne nicht an vorgelagerte Server weitergeleitet werden, Dies hilft, potenzielle Anforderungsschleifen zu verhindern.
Nach dem Anwenden dieser Einstellungen, Ihre Netzwerkkonfiguration sollte etwa wie folgt aussehen:
<network connections='1'>
<name>default</name>
<uuid>66b33e64-713f-4323-b406-bc636c054af5</uuid>
<forward mode='nat'>
<nat>
<port start='1024' end='65535'/>
</nat>
</forward>
<bridge name='virbr0' stp='on' delay='0'/>
<mac address='52:54:00:af:9f:2a'/>
<domain name='libvirt' localOnly='yes'/>
<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>
Möglicherweise müssen Sie Ihren Netzwerkdienst neu starten, damit die neuen Einstellungen aktiv werden.
Nächste, Weisen Sie Ihren virtuellen Maschinen Hostnamen zu. Zum Beispiel, wenn Sie einen Gast vm1 nennen möchten, Melden Sie sich bei dieser VM an und führen Sie sie aus:
sudo hostnamectl set-hostname vm1.libvirt
Danach, Passen Sie den NetworkManager des Hosts so an, dass er den DNS von libvirt verwendet und die VM-Hostnamen ordnungsgemäß auflösen kann. Beginnen Sie mit der Aktivierung des integrierten DNSMASQ von NetworkManager. Um dies zu tun, Erstellen Sie eine Datei unter /etc/NetworkManager/conf.d/libvirt_dns.conf mit folgendem Inhalt:
[main]
dns=dnsmasq
Dann, Konfigurieren Sie den DNSMASQ des Hosts so, dass alle DNS-Abfragen im Zusammenhang mit der Libvirt-Domäne an die eigene DNSMASQ-Instanz von Libvirt weitergeleitet werden. Dies erfolgt durch Erstellen einer weiteren Konfigurationsdatei unter /etc/NetworkManager/dnsmasq.d/libvirt_dns.conf mit dem folgenden Inhalt:
server=/libvirt/192.168.122.1
Hier, libvirt stellt den Domänennamen dar, der in Ihrer libvirt-Netzwerkkonfiguration definiert ist. Stellen Sie sicher, dass die IP-Adresse mit der IP-Adresse übereinstimmt, die dem Standardnetzwerk von libvirt zugewiesen ist (Weitere Informationen finden Sie im Abschnitt „IP“ in Ihrer früheren Netzwerkkonfiguration).
Sobald alles eingestellt ist, Starten Sie NetworkManager auf dem Host neu:
sudo systemctl restart NetworkManager
Nach Abschluss dieser Schritte, Sie sollten in der Lage sein, über deren Hostnamen eine Verbindung zu Ihren virtuellen Maschinen herzustellen, wie zum Beispiel ssh vm1.libvirt.
Zugriff auf Host-Dienste von Gästen bei Verwendung von firewalld
In der Standardkonfiguration, Die virbr0-Schnittstelle ist der libvirt-Zone in firewalld zugewiesen.
firewall-cmd --permanent --zone=libvirt --get-description
Diese Zone ist mit einer ACCEPT-Richtlinie konfiguriert, Dies ermöglicht die freie Weiterleitung des Datenverkehrs zwischen Schnittstellen in der Zone. Jedoch, Es gibt auch eine Ablehnungsregel mit niedrigerer Priorität, die den direkten Zugriff auf Hostdienste verhindert, sofern diese nicht ausdrücklich zugelassen sind. Administratoren können die Liste der zulässigen Dienste nach Bedarf ändern.
Die libvirt-Zone ist speziell für virtuelle Netzwerke konzipiert, die von libvirt verwaltet werden. Standardmäßig, Jede neue von libvirt erstellte virtuelle Netzwerkbrücke wird dieser Zone automatisch hinzugefügt.
Wenn Sie möchten, dass Ihre virtuellen Maschinen auf bestimmte Dienste zugreifen, die auf dem Host ausgeführt werden, Sie müssen die erforderlichen Ports in der libvirt-Zone öffnen. Zum Beispiel:
firewall-cmd --permanent --zone=libvirt --add-port=3142/tcp
systemctl restart firewalld.service
Manuelle Überbrückung
Um die Kommunikation zwischen dem Host und virtuellen Maschinen zu ermöglichen, Sie können eine MacVLAN-Brücke auf einer Dummy-Schnittstelle erstellen. Nach dem Einrichten, Konfigurieren Sie Ihre VMs für die Verwendung von dummy0 (macvtap) Schnittstelle im Bridged-Modus.
modprobe dummy
ip link add dummy0 type dummy
ip link add link dummy0 macvlan0 type macvlan mode bridge
ifconfig dummy0 up
ifconfig macvlan0 192.168.1.2 broadcast 192.168.1.255 netmask 255.255.255.0 up
Kommunikation zwischen Host, Gäste, und externes Netzwerk
Wenn Sie vollständige Konnektivität zwischen dem Host wünschen, virtuelle Maschinen, und das externe Netzwerk, Sie können eine Bridge-Schnittstelle wie in der QEMU-Dokumentation beschrieben konfigurieren.
Zum Beispiel, ändern /etc/network/interfaces um Ihre physische Schnittstelle anzuschließen (z.B., eth0) zu einer Brücke wie br0. Einmal konfiguriert, wählen br0 als Netzwerkschnittstelle für Ihre virtuellen Maschinen.
KVM unter Linux auf intelligente Weise einrichten
KVM unter Linux installieren in 2026 ist keine komplizierte oder zeitaufwändige Aufgabe mehr – insbesondere, wenn Sie einen rationalisierten Ansatz verfolgen. Mit modernen Distributionen, die integrierte Unterstützung für Virtualisierungstools bieten, In nur wenigen Schritten können Sie eine voll funktionsfähige KVM-Umgebung einrichten und in Betrieb nehmen.
Von der Installation der erforderlichen Pakete und der Aktivierung der Virtualisierungsunterstützung bis hin zur Konfiguration des Netzwerks und der Verwaltung virtueller Maschinen, Der gesamte Prozess ist benutzerfreundlicher und effizienter geworden. Tools wie libvirt und virt-manager machen es noch einfacher, Ihre virtuellen Maschinen zu steuern und zu überwachen, ohne sich mit unnötiger Komplexität herumschlagen zu müssen.
Abschließend erfahren Sie, wie Sie KVM installieren, KVM bleibt eine der leistungsstärksten und flexibelsten Virtualisierungslösungen, die unter Linux verfügbar sind. Ob Sie ein Heimlabor einrichten, Testumgebungen, oder die Ausführung von Produktions-Workloads, Durch die Beherrschung von KVM erhalten Sie eine zuverlässige und leistungsstarke Grundlage.