GNU/Linux >> Znalost Linux >  >> Linux

Jak získat název disku, který obsahuje konkrétní oddíl

Můžete sledovat v /sys blokové zařízení pro daný název oddílu. Například /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

Skript, který převezme arg /dev/sda1 a vytiskněte /dev/sda je:

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

Nemám lvm atd. k vyzkoušení, ale pravděpodobně existuje nějaká podobná cesta.

Existuje také 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 

a jak řekl @don_crissti, rodiče můžete získat přímo pomocí:

lsblk -no pkname /dev/sda1

Linux
  1. Jak vygenerovat náhodné heslo v linuxu pomocí /dev/random

  2. Jak Linux zpracovává více po sobě jdoucích oddělovačů cest (/home////username///soubor)?

  3. Kdy použít /dev/random vs /dev/urandom?

  1. Jak namapovat zařízení /dev/sdX a /dev/mapper/mpathY ze zařízení /dev/dm-Z

  2. Jak ověřit, zda je disk/oddíl používán Oracle ASM, byl používán Oracle ASM nebo není nikdy používán Oracle ASM

  3. Jak přesunout /usr a /var do jiného oddílu nebo disku

  1. Jak kódovat base64 /dev/random nebo /dev/urandom?

  2. Jak zaměníte /dev/sda s /dev/sdb?

  3. Kdy mám použít /dev/shm/ a kdy /tmp/?