Hier ist das, worauf ich gekommen bin, um alle verfügbaren Festplatten zu finden und einzubinden. In diesem Skript werden auch alle fehlgeschlagenen Reittiere nachverfolgt (die ich auch in meiner Situation benötigt habe, nicht Teil der Frage, aber für andere nützlich sein könnte).
Hier scanne ich alle Partitionen ein /proc/partitions
und versuchen, jede Partition zu mounten, die ich finde. LVM-Partitionen werden nach dem Scannen und Aktivieren in dieser Datei aufgeführt.
# Scan for all volume groups
lvscan
# Activate all volume groups
vgchange -a y
# Get all partitions (-n+3 skips first 3 lines since they do not contain partitions)
# Also skip partitions that are loop devices which is actually the ISO cd itself
all_partitions=$(tail -n+3 /proc/partitions | awk '{print $4}' | grep -v loop)
# Array of failed mounts
declare -a failed_mounts=()
# Mount each partition to /mnt/{partition name}
for partition in ${all_partitions}; do
mountdir=/mnt/${partition}
mkdir -p ${mountdir}
mount /dev/${partition} ${mountdir} &>>${INIT_LOG}
if [ $? -ne 0 ]; then
echo "Failed to mount ${partition}"
rm -rf ${mountdir}
failed_mounts+=(${partition})
fi
done
Dies kann abhängig von der Distribution sein oder auch nicht, aber da ich dies in eine Live-CD einbaue, muss sie nicht unabhängig von der Distribution sein.