diff options
Diffstat (limited to 'kvmx')
-rwxr-xr-x | kvmx | 27 |
1 files changed, 26 insertions, 1 deletions
@@ -184,7 +184,8 @@ function __kvmx_initialize { mkdir -p $STATE_DIR $LOG_DIR - if [ ! -e "$image" ] && [ "$ACTION" != "up" ] && [ "$ACTION" != "purge" ] && [ "$ACTION" != "destroy" ]; then + if [ ! -e "$image" ] && [ "$ACTION" != "up" ] && [ "$ACTION" != "purge" ] \ + && [ "$ACTION" != "destroy" ] && [ "$ACTION" != "install" ]; then echo "$BASENAME: file not found: $image" exit 1 fi @@ -1295,6 +1296,30 @@ function kvmx_mv { kvmx_rename $* } +# Install system +function kvmx_install { + local media="$3" + + if [ -z "$media" ]; then + echo "usage: $BASENAME install $VM <installation-media>" + exit 1 + elif [ ! -e "$media" ]; then + echo "$BASENAME: file not found: $media" + exit 1 + fi + + if [ -z "$memory" ]; then + memory="2048" + fi + + if [ ! -e "$image" ]; then + echo "Creating $image with size $size..." + qemu-img create -f qcow2 $image $size + fi + + kvm -m $memory -net nic,model=virtio -net user -drive file=$image -cdrom $media +} + # Dispatch if type kvmx_$ACTION 2> /dev/null | grep -q "kvmx_$ACTION ()"; then __kvmx_initialize |