無法使用 virt-install 安裝額外的 VM
使用 virt-install 命令安裝額外的 VM 會導致以下錯誤:
ERROR internal error: process exited while connecting to monitor: 2019-02-20T08:21:45.534416Z qemu-system-x86_64: -drive file=/home/chris/VM/ubuntu-16.04.iso,format=raw,if=none,id=drive-ide0-0-0,readonly=on: Could not open '/home/chris/VM/ubuntu-16.04.iso': Permission denied
這是我的 virt-install 命令:
sudo virt-install \ -n VPNserver \ --description "VPN server" \ --os-type=Linux \ --os-variant=ubuntu16.04 \ --ram=1096 \ --vcpus=1 \ --disk path=/var/lib/libvirt/images/vpnserver.img,bus=virtio,size=10 \ --network bridge:br2 \ --graphics none \ --location /home/chris/VM/ubuntu-16.04.iso \ --extra-args console=ttyS0 \ --autostart
/chris/home/VM/ 中的文件權限:
-rw-rw-r-- 1 chris chris 93 Jan 3 14:15 Fileserver.README -rwx------ 1 chris chris 334 Nov 21 09:20 installFileserver -rwx------ 1 chris chris 332 Feb 20 08:21 installVPNServer -rwx------ 1 chris chris 331 Nov 21 09:20 installWebserver -rw-rw-rw- 1 chris chris 795 Jan 24 13:10 README.txt -rw-rw-r-- 1 libvirt-qemu kvm 912261120 Jul 31 2018 ubuntu-16.04.iso
類似的問題:
我試過的…
1)將iso文件“chown”給使用者’chris'
將文件移動到 /tmp 目錄
Sudo -s 並執行腳本。
重新下載iso鏡像。
$HOME 權限可能過於嚴格。ISO 可讀是不夠的 - 每個父目錄也需要具有“x”權限。
ApArmor 或 SELinux 可能拒絕訪問 $HOME 和/或 /tmp 下的文件
由於您使用的是特權 libvirtd,因此推薦的方法是將 ISO 映像與磁碟一起保存在 /var/lib/libvirt/images/ 下。
有一個類似的案例
virt-install
失敗了:Starting install... Retrieving file vmlinuz... | 9.4 MB 00:00:00 Retrieving file initrd.img... | 72 MB 00:00:00 ERROR internal error: process exited while connecting to monitor Domain installation does not appear to have been successful. If it was, you can restart your domain by running: virsh --connect qemu:///system start mymachine.local otherwise, please restart your installation.
閒逛之後,我注意到 OOM 正在拍攝創建的機器,這是在查看機器狀態後發現的
dmesg
。由於我將大頁面配置為佔用幾乎所有虛擬機管理程序記憶體,因此機器可以獲得快速保留空間,因此我需要添加
--memorybacking hugepages=yes
到我的virt-install
命令中。