it-swarm.it

linux: come posso visualizzare tutti gli UUID per tutti i dischi disponibili sul mio sistema?

Mio /etc/fstab contiene questo:

# / was on /dev/sda1 during installation
UUID=77d8da74-a690-481a-86d5-9beab5a8e842 /               ext4    errors=remount-ro 0       1

Esistono molti altri dischi su questo sistema e non tutti i dischi vengono montati nella posizione corretta (ad esempio,/dev/sda1 e/dev/sdb1 sono talvolta invertiti).

Come posso vedere gli UUID per tutti i dischi sul mio sistema? Posso vedere l'UUID per il terzo disco su questo sistema?

177
Stefan Lasiewski

In /dev/disk/by-uuid ci sono collegamenti simbolici che mappano l'UUID di ogni unità alla sua voce in /dev (per esempio. /dev/sda1)

155
Michael Mrozek

C'è uno strumento chiamato blkid (usalo come root o con Sudo),

# blkid /dev/sda1
/dev/sda1: LABEL="/" UUID="ee7cf0a0-1922-401b-a1ae-6ec9261484c0" SEC_TYPE="ext2" TYPE="ext3"

puoi controllare questo link per maggiori informazioni

186
setzamora

Il miglior comando da usare è lsblk -f. Elencherà tutti i dispositivi e le partizioni, il modo in cui sono montati (se non del tutto) e la struttura ad albero dei dispositivi nel caso di utilizzo di LVM, crypto_LUKS o più gruppi di volumi sulla stessa unità.

46
John Rea

Per ottenere solo il UUID di un dispositivo disco specifico (ad esempio, da utilizzare in uno script) è possibile utilizzare:

Sudo blkid -s UUID -o value /dev/sdXY

dove /dev/sdXY è il nome del dispositivo.

14

Questo funziona per me:

ls -la /dev/disk/by-uuid

Se si desidera verificare il tipo di partizione, utilizzare:

df -Th

e ti mostrerà se hai ext3 o ext2. Oggi mi ha aiutato perché c'era una partizione ext2 formattata e ho pensato che fosse ext3, il che stava causando il fallimento del montaggio.

11
MIrra
lsblk -o +uuid,name

Puoi vedere tutti gli output che possono essere aggiunti a -o (--output) con

lsblk --help

Anche questo farà il lavoro

# blkid
7
Nico Rodsevich

Le risposte precedenti non funzionano per più dispositivi o per dispositivi con UUID identici.

Prova questo:

Sudo blkid /dev/sd*
2
Kevin

Con la seguente riga di comando puoi vedere UUID più il mapping alle partizioni.

ls /dev/disk/by-uuid -lt

lrwxrwxrwx 1 root root 10 Sep  1 18:51 57eacf4e-1940-436e-b945-85f8d4833aa5 -> ../../sda2
lrwxrwxrwx 1 root root 10 Sep  1 18:51 656f4cae-8527-43a0-a80f-00ac82818744 -> ../../sda1
lrwxrwxrwx 1 root root  9 Sep  1 18:51 d627595d-4060-440e-8380-a1fe9f3f2a81 -> ../../md0
lrwxrwxrwx 1 root root 10 Sep  1 18:51 0dfd6dfe-1852-460d-852c-676a5b9035ed -> ../../sda4
lrwxrwxrwx 1 root root 10 Sep  1 18:51 b1ddf850-8f81-429f-a653-38ae4a4ebb6f -> ../../sda3
lrwxrwxrwx 1 root root  9 Sep  1 18:51 b4b729f7-5699-411c-8f5a-424bbc7c89fc -> ../../sdb
1

Ho il tuo stesso problema: rinominare dal kernel di /dev/sd** dopo un riavvio:

Ovviamente tutto il mio montaggio automatico in /etc/fstab sono referenziati da LABEL o da UUID, quindi sostanzialmente non ci sono problemi. E tutti i comandi sopra, blkid o lsblk, forniscono questo tipo di informazioni.

Ma il problema inizia come nel mio caso, quando si utilizza la partizione in modalità RAW, nel punto di vista del sistema attualmente avviato: ad esempio: la partizione viene utilizzata come dispositivo non elaborato, per creare un disco virtuale per VirtualBox (quindi il riferimento a questa partizione è simile al seguente: /dev/sdf3) o la partizione viene utilizzata come dispositivo non elaborato, per creare un LUN per iSCSI (quindi il riferimento a questa partizione è simile a: /dev/sdc6)

Quindi ora all'avvio, ad esempio in rc.local, devi trovare in modo affidabile, qual è il /dev/sdXX dispositivo della tua partizione RAW dedicata e adattare alcuni file:

ESEMPIO 1

Il disco VirtualBox * .vmk descrizione di questo disco grezzo, nella parte qualcosa come:

\# Extent description
RW 488397167 FLAT "/dev/sdXX" 0

e quindi riavviare il servizio VirtualBox

ESEMPIO 2

nella configurazione di tgtd, un target: target0 era associato a /dev/sdd6 al momento della creazione. Dopo il riavvio si ottiene la stessa partizione rinominata /deb/sdc6 Questo succede con un disco rimovibile, USB o eSATA! Quindi, come trovare automaticamente il nuovo dispositivo? Ancora in /etc/rc.d/rc.local

Quindi in questo caso abbiamo bisogno di un modo affidabile per trovare qual è il nome del nuovo dispositivo. La partizione GPT offre unique GUID per qualsiasi partizione GPT, scritta nella tabella GPT.

gdisk non fornisce queste informazioni con la modalità elenco, ma solo in modalità interattiva con il comando: i. Fortunatamente, Blkid lo fa!

Quindi devi scrivere uno script Shell, per cercare in tutti i tuoi dischi, che è il dispositivo /dev/sdXX, associato a GUID notato al momento della creazione della partizione.

Qualcosa di simile, search_device_by_partUUID.sh:

\#!/bin/bash

PART_UUID=$1
if [ "$PART_UUID" = "" ]
then
    echo "Syntax: $0 <a valid partition UUID>"
    exit 3
fi
lsblk | grep '^sd' | awk '{print $1}' | while read DISK_DEVICE
do 
    INFO=`blkid /dev/${DISK_DEVICE}* | grep "PARTUUID=\"$PART_UUID\"" `
    if [ "$INFO" != "" ]
    then
        echo INFO : "$INFO"
        BLK_DEVICE=`echo "$INFO" | awk '{print $1}'`
        echo $BLK_DEVICE > /dev/shm/blkdevice
        echo -n "BLK_DEVICE : " ; cat /dev/shm/blkdevice
    fi
done

e quindi usa /dev/shm/blkdevice, nel tuo script rc.local.

In questi casi è necessario selezionare/dev/disk/by-partuuid. ci sono collegamenti simbolici che mappano il PARTUUID di ogni unità alla sua voce in/dev/sdb1 ecc

0
Sachin Mokashi

Per vedere il uuid di una partizione del disco rigido, avvio il sistema con un CD Linux e vado sul mio computer, fare clic su, la partizione che voglio vedere. Verrà visualizzato il numero uuid della partizione Linux.

Puoi anche vedere il uuid del disco eseguendo l'utility Disco Linux dopo l'avvio del CD Linux.

0
man puk tam