diff options
-rwxr-xr-x | kvmx | 28 |
1 files changed, 26 insertions, 2 deletions
@@ -2185,8 +2185,32 @@ function kvmx_create { # Disposable guest function kvmx_disposable { - local date="`date +%Y%m%d%I%M%S`" - local disposable="$VM-disposable-$date" + # Determine guest name by appending the current date + # This approache leads to the following UNIX socket error + # if the VM name is too long: + # + # UNIX socket path '/var/cache/qemu/.../monitor' is too long + # Path must be less than 108 bytes + # + #local date="`date +%Y%m%d%I%M%S`" + #local disposable="$VM-disposable-$date" + + local disposable="$VM-disposable-" + local count=0 + + # Determine guest name using a sequential suffix + # + # This results in smaller guest names which are les prone to + # the UNIX socket path issue and also is easier to type + while true; do + disposable="${disposable}${count}" + if ! kvmx list_image ${disposable} &> /dev/null; then + break + fi + + echo $count + let count++ + done # Clone and ensure we use a backing file kvmx clone $VM $disposable --skell || exit 1 |