GNU/Linux >> Linux Esercitazione >  >> Linux

Come ottenere il nome del disco che contiene una partizione specifica

Puoi osservare in /sys il dispositivo a blocchi per un dato nome di partizione. Ad esempio, /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

Uno script per prendere arg /dev/sda1 e stampa /dev/sda è:

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

Non ho lvm etc da provare, ma probabilmente esiste un percorso simile.

C'è anche 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 

e come ha detto @don_crissti puoi ottenere direttamente il genitore con:

lsblk -no pkname /dev/sda1

Linux
  1. Come ottengo un equivalente di /dev/one in Linux

  2. Come si scambia /dev/sda con /dev/sdb?

  3. Come Linux usa /dev/tty e /dev/tty0

  4. echo o print /dev/stdin /dev/stdout /dev/stderr

  5. Perché sono necessari < o > per usare /dev/tcp

Come verificare se un disco/partizione è in uso da Oracle ASM, è stato utilizzato da Oracle ASM o non è mai stato utilizzato da Oracle ASM

Come spostare /usr e /var su un'altra partizione o disco

Come codificare in base64 /dev/random o /dev/urandom?

Quando dovrei usare /dev/shm/ e quando dovrei usare /tmp/?

Linux:differenza tra /dev/console , /dev/tty e /dev/tty0

Differenze tra /dev/sda e /dev/sda1