#!/bin/bash set -eu directory="/lmn/vm" if [ ! -d "$directory" ]; then echo "No VM directory found." exit 1 fi qcow2_files=("$directory"/*.qcow2) if [ "${#qcow2_files[@]}" -eq 0 ]; then echo "Keine QCOW2-Dateien gefunden." exit 0 fi echo "Gefundene QCOW2-Dateien:" echo "-------------------------------------------------------------" printf "%-50s %10s\n" "Datei" "Größe (MB)" echo "-------------------------------------------------------------" for file in "${qcow2_files[@]}"; do size=$(du -m "$file" | cut -f1) # Größe in MB printf "%-50s %10d\n" "$file" "$size" done echo "-------------------------------------------------------------" for file in "${qcow2_files[@]}"; do read -rp "Möchtest du die Datei $file löschen? (j/n) " confirmation if [[ "$confirmation" == "j" || "$confirmation" == "J" ]]; then link_count=$(stat -c %h "$file") rm "$file" echo "$file wurde gelöscht." if [ "$link_count" -gt 1 ]; then echo "Achtung: $file hat noch $((link_count - 1)) weitere Hardlinks." echo "Diese liegen evtl. unter:" echo "- /var/tmp/${UID}/vm/ (temporäre VMs, werden automatisch beim Neustart gelöscht)" echo "- /var/vm/${UID}/ (persistente VMs)" fi echo fi done