diff options
Diffstat (limited to 'others/vm3/compute/create.sh')
| -rwxr-xr-x | others/vm3/compute/create.sh | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/others/vm3/compute/create.sh b/others/vm3/compute/create.sh index a1d84f6..1a0411b 100755 --- a/others/vm3/compute/create.sh +++ b/others/vm3/compute/create.sh @@ -49,8 +49,8 @@ xml="${workingdir}/xml" image_dir_path="/var/lib/libvirt/images/.image_store" src_file="${image_dir_path}/${os}.qcow2" -new_vm_dir="/var/lib/libvirt/images/${vmname}" -new_vm="${new_vm_dir}/${vmname}.qcow2" +new_vm_config_dir="/var/lib/libvirt/images/${vmname}.config" +new_vm="/var/lib/libvirt/images/${vmname}.qcow2" # Check mandatory arguments, basicaly checking for initial 1 argument. if it dont exist, vmname will be null # image is os!! @@ -75,7 +75,7 @@ if [ ! -f "${src_file}" ]; then exit 1 fi -sudo mkdir -p $new_vm_dir +sudo mkdir -p $new_vm_config_dir sudo cp "$src_file" "$new_vm" &> /dev/null || { echo "Failed to create a new image."; exit 1; } @@ -90,11 +90,12 @@ fi # Define the disk options based on OS type if [ "$os" = "debian12" ]; then - disk_opts="--disk path=$new_vm,format=qcow2" + disk_opts="--disk path=${new_vm},format=qcow2" else - disk_opts="--disk path=$new_vm,format=qcow2 --disk path=$seed_iso,device=cdrom" + disk_opts="--disk path=${new_vm},format=qcow2 --disk path=$seed_iso,device=cdrom" fi + # Use the conditional disk options in virt-install sudo virt-install --name $vmname \ --vcpus $vcpu \ @@ -105,7 +106,8 @@ sudo virt-install --name $vmname \ --virt-type kvm \ --graphics none \ --network bridge=virbr0,model=virtio \ - --print-xml > $xml || { sudo rm -rf $new_vm_dir; exit 1; } + --print-xml > $xml || { sudo rm -rf $new_vm; exit 1; } +# if you want this in a new storage pool, move it to a new storage pool after initialisation sudo virsh define $xml #&> /dev/null || { echo "Failed to define the new VM."; exit 1; } |
