Funktion zur Erkennung von Partitionen implementiert

This commit is contained in:
eichehome 2023-09-11 14:38:33 +02:00
parent a911f16859
commit 05f4b13e8e

View file

@ -99,13 +99,43 @@ create () {
# existing_partitions <Gerät> [<Type>] # existing_partitions <Gerät> [<Type>]
existing_partitions () { existing_partitions () {
if [[ $# -eq 1 ]] # Genereller test auf Partitionen if [[ $# -eq 1 ]] # Genereller test auf Partitionen
then
ANZAHL_PARTITIONEN_VORHANDEN=$(lsblk -pl "${DEVICE}" | grep -ic "${1}")
if [[ ${ANZAHL_PARTITIONEN_VORHANDEN} != 0 ]]
then then
echo "yes" # Partitionen vorhanden echo "yes" # Partitionen vorhanden
#echo "no" # Partitionen nicht vorhanden else
echo "no" # Partitionen nicht vorhanden
fi
elif [[ $# -eq 2 ]] # Test auf eine bestimmte Partition elif [[ $# -eq 2 ]] # Test auf eine bestimmte Partition
then then
#echo "yes" # bestimmte Partition vorhanden case $2 in
"ESP")
PARTUUID="${GUIDS[ESP]}"
;;
"ROOT")
PARTUUID="${GUIDS[ROOT]}"
;;
"USR")
PARTUUID="${GUIDS[USR]}"
;;
"USRHASH")
PARTUUID="${GUIDS[USRHASH]}"
;;
"SWAP")
PARTUUID="${GUIDS[SWAP]}"
;;
*)
die 1 "Unbekannter Partitionstype"
;;
esac
SPEZIFISCHE_PARTITION_VORHANDEN=$(lsblk -o PARTTYPE "${DEVICE}" | grep "${PARTUUID}")
if [[ "${SPEZIFISCHE_PARTITION_VORHANDEN}" == 1 ]]
then
echo "yes" # bestimmte Partition vorhanden
else
echo "no" # bestimmte Partition nicht vorhanden echo "no" # bestimmte Partition nicht vorhanden
fi
else else
die 1 "Kein Gerät zur Prüfung auf Partitionen angegeben" die 1 "Kein Gerät zur Prüfung auf Partitionen angegeben"
fi fi