IT
sudo apt install cpu-checker -y # kvm-ok
sudo apt install qemu-kvm virt-manager virtinst libvirt-clients bridge-utils libvirt-daemon-system -y
apt-get install libosinfo-bin # osinfo-query
sudo qemu-img create -f qcow2 ~/linux_test.qcow2 20G
sudo virt-install --virt-type kvm --name ubuntu1804 --ram 2048
--disk ~/linux_test.qcow2,format=qcow2
--network network=default
--graphics vnc,listen=0.0.0.0,password=YOUR_PASSWORD
--noautoconsole
--os-type=linux --os-variant=ubuntu17.10
--cdrom=/home/seal/Downloads/ubuntu-18.10-desktop-amd64.iso
Install RHEL
sudo virt-install --virt-type kvm --name RHEL7 --ram 2048
--disk ~/rhel7.9.qconw2,format=qcow2
--network network=default
--graphics vnc,listen=0.0.0.0,password=YOUR_PASSWORD
--noautoconsole
--os-type=linux --os-variant=rhl7
--cdrom=/home/seal/Downloads/<rhel img>
如果在 remote 狀態下可能會卡在手動安裝.
如果沒有 console, 可以考慮用 vnc-viewer 來顯示手動安裝畫面.
畫面完成後可以得到 ks file 來做自動安裝
virt-manager 也可以做到同樣的事情,但是在 macbook m1 會無法執行
用 ks file 來做 auto installation
/root/anaconda-ks.cfg
建立一個 6G 左右的 raw 空間 (rhel6 基本需求為 6g 的空間)
這邊沒辦法使用 qcow2 ,會無法進行 partition 跟格式化
qemu-img create -f raw disk_raw.img 6G
接著用 attach-disk 把硬碟接上 VM
virsh attach-disk {vm-name} --source /var/lib/libvirt/images/{img-name-here} --target vdb --persistent
接著在 vm 裡面做一般的分割跟格式化
fdisk /dev/vda //分割 vda 假設新的裝置在 vda
mkfs.ext4 /dev/vdb1 //格式化成 ext4
透過 lsblk 應該可以得到以下結果
$lsblk
...
...
vdb 252:16 0 6G 0 disk
└─vdb1 252:17 0 6G 0 part /vdb
最後對 vdb1
做 mount
mount /dev/vdb1 /vdb
成功的話就可以再把檔案放到裡面了
$ virsh domblklist rhel-server-6.10-x86_64-dvd.iso
Target Source
------------------------------------------------
sda /home/user/linux_test.qcow2
hda -
vdb /home/user/rhel_extra_6G
https://www.cyberciti.biz/faq/how-to-add-disk-image-to-kvm-virtual-machine-with-virsh-command/
把 cd rom mount 上 VM
virsh change-media image.iso hda ~/clonezilla-live-2.7.0-10-amd64.iso
Reference:
sudo systemctl enable libvirtd
sudo systemctl start libvirtd
chown libvirt-qemu:libvirt-qemu rhel-server.img
chown libvirt-qemu:libvirt-qemu rhel.qconw2