.png)
Wie erhalte ich eine Liste aller Datenträger wie diese?
/dev/sda
/dev/sdb
Antwort1
ls (zeigt jedoch einzelne Partitionen an)
# ls /dev/sd*
/dev/sda /dev/sda1
ls (nur Festplatten, Partitionen ignorieren)
# ls /dev/sd*[a-z]
/dev/sda
fdisk
# fdisk -l 2>/dev/null |awk '/^Disk \//{print substr($2,0,length($2)-1)}'
/dev/xvda
Antwort2
Sie können df
alle gemounteten Partitionen auflisten. Der Befehl gibt etwa Folgendes aus:
$ df
/dev/sda1 230467740 37314652 181422912 18% /
udev 10240 0 10240 0% /dev
tmpfs 5599420 0 5599420 0% /sys/fs/cgroup
/dev/sdb1 961303548 130106540 782342500 15% /media/Data
..
Wenn Sie nur Ihre gemounteten Festplatten auflisten möchten, können Sie die Ausgabe beispielsweise mit grep filtern
$ df | grep '^/dev'
/dev/sda1 230467740 37314752 181422812 18% /
/dev/sdb1 961303548 130106540 782342500 15% /media/Data
Dies passt zu Zeilen, die mit beginnen /dev
, oder, wenn Sie nur die Namen möchten
df | grep -o '^/dev[^ ]*'
/dev/sda1
/dev/sdb1
Dies gleicht Zeichenfolgen ab /dev
dem ersten Leerzeichen ab und gibt nur die Übereinstimmung aus (Option -o, --only-matching
),
Bearbeiten
Oben werden alle Partitionen aufgelistet. Wenn Sie die Festplatten auflisten müssen, verwenden Sie lsblk
stattdessen mit den folgenden Optionen (Mustervergleich wie oben)
$ lsblk -dp | grep -o '^/dev[^ ]*'
/dev/sda
/dev/sdb
-d
listet nur das Gerät auf, ohne Partitionen-p
gibt den gesamten Pfad aus
Bearbeiten 2
Wie erwähntunten, lsblk -dpno name
führt zum selben Ergebnis, kein Bedarf für grep
.