#!/bin/bash cat ./hosts | while read line do ip=$(echo $line | cut -d ' ' -f 1) hostname=$(echo $line | cut -d ' ' -f 2) vmnum=$(echo $ip | cut -d '.' -f 3,4 | sed 's/.// ') echo "VMNUM=$vmnum" qm clone 5000 $vmnum --name $hostname --full if [ $? -eq 0 ] then echo "clone OK" else "clone ERROR"; exit 1 fi qm set $vmnum --tags 3,gfx ## preparing custom CloudInit snippets cp ./user.yaml /mnt/pve/syno-tigra/snippets/${vmnum}_user.yaml sed -i "s/HOSTNAME/$hostname/g" /mnt/pve/syno-tigra/snippets/${vmnum}_user.yaml qm resize $vmnum scsi0 +50G qm set $vmnum --cicustom "user=syno-tigra:snippets/${vmnum}_user.yaml" qm set $vmnum --ipconfig0 ip=$ip/24,gw=10.10.35.1 qm cloudinit update $vmnum qm start $vmnum done echo "VMs from 'hosts' successfully created"