GNU/Linux >> Linux Esercitazione >  >> Linux

Modo script per identificare l'ennesima partizione di un disco?

Supponiamo di avere un disco situato in /dev/DISK_NAME . Sono curioso di sapere se esiste un comando per trovare il n esima partizione di questo disco.

Sembra che questo genere di cose dovrebbe essere possibile con lsblk . Il meglio che posso inventare è:

lsblk -nlpo NAME,TYPE /dev/DISK_NAME | awk '/part$/ {print $1}' | grep "[^0-9]n$"

Qui, il n nell'ultimo grep rappresenta il numero di partizione in questione.

Il comando sopra funziona per la macchina arch linux su cui sono attualmente, dove DISK_NAME=sda e l'output di lsblk -nlpo NAME,TYPE è

/dev/sda  disk
/dev/sda1 part
/dev/sda2 part
/dev/sda3 part
/dev/sda5 part

Il mio comando funziona anche sulla mia macchina arch linux dove DISK_NAME=nvme0n1 e l'output di lsblk -nlpo NAME,TYPE è

/dev/nvme0n1   disk
/dev/nvme0n1p1 part
/dev/nvme0n1p2 part

Tuttavia, sembra piuttosto complicato e non sono sicuro che funzionerebbe su un disco arbitrario.

Ci sono modi migliori per farlo?

Risposta accettata:

Non vi è alcuna garanzia che sda1 esiste affatto:ho un SSD con solo sda4 e sda5. Quindi la prima partizione sarebbe quella con l'LBA iniziale più basso?

O forse la prima voce nella tabella delle partizioni? Secondo parted -l ,

...
Number  Start  End    Size    File system  Name                   Flags
 2      316MB  333GB  333GB   ext4         /mnt/backup
 3      333GB  791GB  457GB   ext4         /mnt/filestore
 4      791GB  832GB  41.9GB  ext4         /run/timeshift/backup
 1      832GB  841GB  8590MB  ext4         /mnt/music

Qual è la prima partizione – è 2 (che ha l'LBA più basso) o è 1 (che ha il numero di partizione più basso).

Se preferisci l'antico fdisk -l comando, questo ordinerà la tabella delle partizioni per te [in modo che le partizioni con il numero più basso vengano prima].


Linux
  1. Come partizionare un disco in Linux

  2. I pregi di un filesystem senza partizioni?

  3. Come copiare il layout della partizione di un intero disco utilizzando strumenti standard?

  4. Modifica del filesystem della partizione di root dopo l'installazione?

  5. Su quale partizione è installato il bootloader?

Come creare partizioni in Linux

Comandi separati per gestire la partizione del disco

Configurazione della partizione LVM su server Linux

Tutto è un file in Linux – Parte 2

Come crittografare la partizione su Linux

Come creare partizioni del disco su Linux