適用版本:Ubuntu 24.04以上
本文介紹如何在Ubuntu安裝QEMU/KVM和Virt Manager。
QEMU/KVM是Linux才有的開源虛擬機技術。其中QEMU負責模擬電腦硬體,KVM則負責讓Linux變成Type 1 Hypervisor,加速虛擬機效能。
相關文章: Linux版QEMU/KVM指令教學
這樣一來,QEMU/KVM便能以接近原生的效能跑虛擬機,例如跑Windows、macOS、Linux、Android-x86、FreeBSD系統。
它還可以把宿主機的顯示卡直通(GPU Passthrough)給虛擬機使用,這樣虛擬機也能玩大型3D遊戲了。
至於Virt Manager (Virtual Machine Manager) 是RedHat公司發行的虛擬機管理軟體,配套管理工具還有Libvirt。就像VMware或是VirtualBox那樣,有一個圖形界面能夠管理電腦上的QEMU/KVM虛擬機。
以上軟體組合起來,就變成了一組虛擬機軟體。
1. 檢查電腦硬體相容性#
你需要一台x86_64架構的Linux電腦。CPU Intel或AMD的都可以。
- 在BIOS開啟CPU的VT-x虛擬化加速技術。執行以下指令檢查CPU是否啟用VT-x虛擬化,回傳值不應為0
sudo grep -E -c '(vmx|svm)' /proc/cpuinfo
- KVM為Linux核心內建的功能,通常不需要額外安裝。請使用CPU-checker檢查KVM是否可用。
sudo apt install cpu-checker && kvm-ok
- KVM若可用,應會回傳:
INFO: /dev/kvm exists
KVM acceleration can be used
2. 安裝QEMU和Virt Manager套件#
- 安裝以下套件。内含QEMU、Libvirt、Virt Manager、模擬UEFI韌體的OVMF、TPM模擬器
sudo apt update
sudo apt install qemu-system libguestfs-tools libvirt-clients libvirt-daemon-system bridge-utils virt-manager ovmf swtpm
- 將自己加入libvirt和kvm的群組
sudo usermod -a -G libvirt $USER
sudo usermod -a -G kvm $USER
sudo usermod -a -G input $USER
- 啟動libvirtd服務
sudo systemctl enable libvirtd
sudo systemctl start libvirtd
- 再設定開機自動啟用虛擬機網路卡。
sudo virsh net-start default
sudo virsh net-autostart default
3. 安裝虛擬機#
從應用程式列表點選圖示啟動Virt Manager。
或從終端機啟動:
virt-manager
- 現在可以點左上角圖示新增虛擬機了,例如:
4. Virt Manager實用技巧#
Virt Manager預設建立的網路是NAT模式,需要允許外部網路連線進來的話請手動設定NAT Forwarding Incoming,或者設定Macvlan,或是 調整為橋接網路模式。
Spice Guest Tools能讓虛擬機與宿主機共用剪貼簿,虛擬機也會自動隨著虛擬機視窗大小縮放解析度。
如果想要與虛擬機共享資料夾,可考慮用 virtio-fs掛載本機Linux的目錄。
部份系統的虛擬機可以透過 virglrenderer達成3D硬體加速。
你可以透過「GPU Passthrough」,將Linux的顯示卡直通給虛擬機,使其能執行3D應用程式、跑AI計算、玩遊戲。具體作法參見 在Windows虛擬機玩遊戲
Virt Manger支援虛擬機快照,你也可以備份完整映像檔,參見 手動備份與還原虛擬機。
如果容量不足,參見 如何用圖形化程式調整QEMU/KVM虛擬機的qcow2硬碟容量大小