GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So erhalten Sie einen Datenträgernamen, der eine bestimmte Partition enthält

Sie können in /sys beobachten das Blockgerät für einen bestimmten Partitionsnamen. Beispiel:/dev/sda1:

$ ls -l /sys/class/block/sda1
lrwxrwxrwx 1 root root /sys/class/block/sda1 -> \
 ../../devices/pci0000:00/.../ata1/host0/target0:0:0/0:0:0:0/block/sda/sda1

Ein Skript, um arg /dev/sda1 zu übernehmen und drucken Sie /dev/sda ist:

part=$1
part=${part#/dev/}
disk=$(readlink /sys/class/block/$part)
disk=${disk%/*}
disk=/dev/${disk##*/}
echo $disk

Ich habe kein lvm usw. zum Ausprobieren, aber es gibt wahrscheinlich einen ähnlichen Pfad.

Es gibt auch lsblk :

$ lsblk -as /dev/sde1
NAME  MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sde1    8:65   1  7.4G  0 part 
`-sde   8:64   1  7.4G  0 disk 

und wie @don_crissti sagte, können Sie das übergeordnete Element direkt abrufen mit:

lsblk -no pkname /dev/sda1

Linux
  1. So ersetzen Sie eine ausgefallene Festplatte in einem Linux-Software-RAID

  2. So generieren Sie ein zufälliges Passwort unter Linux mit /dev/random

  3. Wie behandelt Linux mehrere aufeinanderfolgende Pfadtrennzeichen (/home////username///file)?

  4. Wie portabel sind /dev/stdin, /dev/stdout und /dev/stderr?

  5. Wann sollte /dev/random vs. /dev/urandom verwendet werden?

Linux:Unterschied zwischen /dev/console , /dev/tty und /dev/tty0?

Wie tauscht man /dev/sda mit /dev/sdb aus?

Wie Linux /dev/tty und /dev/tty0 verwendet

echo oder print /dev/stdin /dev/stdout /dev/stderr

Warum sind < oder > erforderlich, um /dev/tcp

Unterschiede zwischen /dev/sda und /dev/sda1