Update id.sh

This commit is contained in:
MacRimi 2025-04-04 15:20:47 +02:00 committed by GitHub
parent b74a1fb737
commit f72972a115
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -152,10 +152,10 @@ MOUNTED_DISKS=$(mount | grep /dev/sd | awk '{print $1}' | sort -u)
while read -r DISK; do while read -r DISK; do
BASENAME=$(basename "$DISK") BASENAME=$(basename "$DISK")
# ❌ Excluir si es un ZVOL (zd*) # ❌ Excluir ZVOL directamente
[[ "$BASENAME" == zd* ]] && continue [[ "$BASENAME" == zd* ]] && continue
# ❌ Excluir si el disco completo está en LVM # ❌ Excluir si disco completo está en LVM
if echo "$LVM_DEVICES" | grep -Fxq "$DISK"; then if echo "$LVM_DEVICES" | grep -Fxq "$DISK"; then
continue continue
fi fi
@ -170,7 +170,6 @@ while read -r DISK; do
IS_RAID_ACTIVE=false IS_RAID_ACTIVE=false
IS_ZFS=false IS_ZFS=false
# Analizar particiones del disco
while read -r part fstype; do while read -r part fstype; do
[[ -z "$part" ]] && continue [[ -z "$part" ]] && continue
full_path="/dev/$part" full_path="/dev/$part"
@ -199,20 +198,16 @@ while read -r DISK; do
esac esac
done < <(lsblk -ln -o NAME,FSTYPE "$DISK" | tail -n +2) done < <(lsblk -ln -o NAME,FSTYPE "$DISK" | tail -n +2)
# ❌ ZFS detectado # ❌ Excluir si montado o ZFS o RAID activo
$IS_ZFS && continue
# ❌ RAID activo o pasivo
$IS_RAID && continue
# ❌ Montado en el sistema
$IS_MOUNTED && continue $IS_MOUNTED && continue
$IS_ZFS && continue
$IS_RAID_ACTIVE && continue
# 🧠 Información del disco # 🧠 Mostrar advertencias si RAID pasivo o zd
INFO=($(get_disk_info "$DISK")) EXTRA=""
MODEL="${INFO[@]::${#INFO[@]}-1}" $IS_RAID && EXTRA="⚠ RAID (pasivo)"
SIZE="${INFO[-1]}" [[ "$BASENAME" == zd* ]] && EXTRA="⚠ ZVOL"
DESCRIPTION=$(printf "%-30s %10s" "$MODEL" "$SIZE") DESCRIPTION=$(printf "%-40s %10s %s" "$(lsblk -dn -o MODEL "$DISK" | xargs)" "$(lsblk -dn -o SIZE "$DISK" | xargs)" "$EXTRA")
FREE_DISKS+=("$DISK" "$DESCRIPTION" "OFF") FREE_DISKS+=("$DISK" "$DESCRIPTION" "OFF")
done < <(lsblk -dn -o PATH,TYPE | awk '$2 == "disk" {print $1}') done < <(lsblk -dn -o PATH,TYPE | awk '$2 == "disk" {print $1}')
@ -223,6 +218,7 @@ done < <(lsblk -dn -o PATH,TYPE | awk '$2 == "disk" {print $1}')
if [ "${#FREE_DISKS[@]}" -eq 0 ]; then if [ "${#FREE_DISKS[@]}" -eq 0 ]; then
cleanup cleanup
whiptail --title "$(translate "Error")" --msgbox "$(translate "No disks available for this VM.")" 8 40 whiptail --title "$(translate "Error")" --msgbox "$(translate "No disks available for this VM.")" 8 40