From: xf0r3m Date: Mon, 9 Sep 2024 09:51:09 +0000 (+0200) Subject: Rozpoczęcie prac nad nowym narzędziem immudex-kvm X-Git-Url: https://gitweb.morketsmerke.org/?a=commitdiff_plain;h=cfc05123cab44377cdcd2126e4df40d44588b386;p=immudex.git Rozpoczęcie prac nad nowym narzędziem immudex-kvm --- diff --git a/tools/bin/immudex-kvm b/tools/bin/immudex-kvm new file mode 100755 index 0000000..d80df2b --- /dev/null +++ b/tools/bin/immudex-kvm @@ -0,0 +1,77 @@ +#!/bin/bash + +#immudex-kvm -L|[-R URI] help|[command] [arg1]..[argX] + +if [ "$1" ] && [ "$1" = "-L" ] || [ "$1" = "-R" ]; then + if [ "$1" = "-R" ]; then + export CONNECT="$2"; + shift 2; + else + if $(sudo virsh net-list --all | grep '\ nieaktywne\ '); then + sudo virsh net-start default; + fi + export CONNECT="qemu:///system"; + shift; + fi +else + if $(sudo virsh net-list --all | grep '\ nieaktywne\ '); then + sudo virsh net-start default; + fi + export CONNECT="qemu:///system"; +fi + +function immudex-kvm-help() { + echo "immudex-kvm - script for KVM management."; + echo "morketsmerke.org @ 2024"; + echo; + echo "SYNTAX:"; + echo "$ immudex-kvm -L|[-R URI] help|[command] [arg1]..[argX]"; + echo; + echo "CONNECT:"; + echo " -L - connect with local KVM instance (qemu:///system)"; + echo " -R - connect with remote KVM instance (requires URI)"; + echo; + echo "COMMANDS:"; + echo " list - list of KVM virtual machines on this instance"; + echo " List args: "; + echo " create - create VM, with defaults settings."; + echo " Create args: , , , , , "; + echo " start - run VM."; + echo " Start args: "; + echo " connect - connect with VM console."; + echo " Connect args: "; + echo " restart - force reboot for VM."; + echo " Restart args: "; + echo " shutdown - shutting down the VM."; + echo " Shutdown args: "; + echo " poweroff - power off the VM."; + echo " Power off args: "; + echo " delete - deletes VM."; + echo " Delete args: [delete-disk]"; + #Dodać polecenie sprawdzenia sieci wirtualny, oraz możliwość jej/ich włączenia. +} + +function immudex-kvm-list() { + virsh -c $CONNECT list --all; + #Dodać wyświetlanie listy os-types +} + +function immudex-kvm-create() { + virt-install --connect $CONNECT --name=$1 --vcpus=$3 --memory=$4 --cdrom=$5 --disk=${6},bus=sata,size=${7} --os-variant=$2 +} + +function immudex-kvm-connect() { + virt-viewer -c $CONNECT $1; +} + +echo "Connect: $CONNECT"; +#immudex-kvm-help; + +case "$1" in + 'list') immudex-kvm-list;; + 'create') shift; + immudex-kvm-create $@;; + 'connect') shift; + immudex-kvm-connect $1;; + *) immudex-kvm-help;; +esac