Meine /etc/fstab enthält Folgendes:

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

Auf diesem System befinden sich mehrere andere Festplatten, und nicht alle Festplatten werden an der richtigen Position bereitgestellt (z. B. werden / dev / sda1 und / dev / sdb1 manchmal umgekehrt).

Wie kann Ich sehe die UUIDs für alle Festplatten auf meinem System. Kann ich die UUID für die dritte Festplatte auf diesem System sehen?

Kommentare

  • @setzamora Antwort ist besser. Bitte ändern Sie die akzeptierte Antwort.

Antwort

In /dev/disk/by-uuid dort sind Symlinks, die die UUID jedes Laufwerks seinem Eintrag in /dev (z. B. /dev/sda1)

Kommentare

  • ‚ ist bei LVM-Partitionen nicht lesbar.
  • LVM verwendet bereits lange UUID-ähnliche Bezeichner (obwohl dargestellt) anders) in seiner Struktur. Ich denke, der einzige Grund für die Verwendung von Dateisystem-UUIDs mit LVM wäre eine einheitliche Schnittstelle für irgendeine Art von Automatisierung, da LVM bereits die Zuordnung von LVs zu benutzerfreundlichen Namen für Sie vornimmt.
  • ls -lha /dev/disk/by-uuid
  • Nur als Referenz hat sich das Ergebnis geändert und unterscheidet sich von blkid und hat ‚ funktioniert nicht zum Booten: i.imgur.com/ocgoi3g.png
  • Ich verwende häufig Dieser Ansatz, insbesondere weil blkid SU-Berechtigungen benötigt. Aber

    hat leider viel weniger Informationen und wird Sie in einigen Fällen in Schwierigkeiten bringen. Für mich funktionierte dies mit RAID- und btrfs-Volumes, da verschiedene Partitionen eine UUID gemeinsam nutzen, aber es gibt nur einen Eintrag für jede UUID in den Symlinks …

Antwort

Es gibt ein Tool namens blkid (verwenden Sie es als root oder mit sudo) ,

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

Sie können diesen Link auf weitere Informationen überprüfen.

Kommentare

  • Nur ein kleiner Kommentar: Es scheint, als ob ein Mitglied der Gruppe disk ausreicht, um ; keine vollständigen Superuser-Berechtigungen erforderlich.
  • Wenn Sie nur die UUID möchten (wie beim Parsen in einem Skript), können Sie blkid /dev/sda1 -s UUID -o value.
  • Kurzer Kommentar hier: In meiner Distribution (Debian 8) ergibt dies UUID sowie “ PARTUUID „, was ziemlich verwirrend ist. Ich habe {lsblk} -Befehle verwendet, die nur einen Wert ergeben.
  • Dieser speichert Es ist viel Zeit, obwohl ich lieber blkid /dev/sd* mache, um alle Laufwerke aufzulisten. Die Informationen, die ausgespuckt werden, sind im Allgemeinen mehr als genug, um das Laufwerk zu finden, das Sie benötigen. 🙂
  • PARTUUID für GPT-partitionierte Festplatten ist die GPT-UUID für die Partition, nicht für das darin enthaltene Dateisystem. Kann nützlich sein, wenn noch kein Dateisystem erstellt wurde. Auf einer MBR-partitionierten Festplatte ist PARTUUID keine echte UUID, sondern lediglich eine Windows-Festplattensignatur aus dem MBR + ein Bindestrich + Partitionsnummer.

Antwort

Der beste Befehl ist lsblk -f. Es werden alle Geräte und Partitionen aufgelistet, wie sie (wenn überhaupt) bereitgestellt werden, und die Baumstruktur der Geräte, wenn LVM, crypto_LUKS oder mehrere Volume-Gruppen auf demselben Laufwerk verwendet werden.

Kommentare

  • Dies ist die beste Antwort – die gründlichste und wirklich One-Stop-Methode.
  • Eine Ergänzung: Ich musste sudo einfügen davor konnte die UUID der Partition nicht abgerufen werden und die Spalte war leer.
  • df --output=source MYFILE | tail -n1 | xargs lsblk -o uuid

Antwort

Um nur die UUID eines bestimmten Festplattengeräts abzurufen (z. B. zur Verwendung in a Skript) können Sie verwenden:

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

wobei /dev/sdXY der Name des Geräts ist.

Kommentare

  • Nicht sicher, warum dies nicht ‚ der oberste Kommentar ist.

Antwort

Dies funktioniert bei mir:

ls -la /dev/disk/by-uuid 

Wenn Sie überprüfen möchten, um welchen Typ es sich bei der Partition handelt, verwenden Sie:

df -Th 

und es wird angezeigt, ob Sie ext3 oder ext2 haben. Heute hat es mir geholfen, weil es eine formatierte ext2-Partition gab und ich dachte, es sei ext3, was dazu führte, dass der Mount fehlschlug.

Kommentare

  • Sie könnte immer versuchen mount -t auto /dev/sda1 /media/sda1.

Antwort

lsblk -o +uuid,name 

Sie können alle Ausgaben sehen, die kann mit

lsblk --help 

zum -o (--output) hinzugefügt werden > Auch dies erledigt die Aufgabe

# blkid 

Kommentare

  • Isn ‚ t name wird standardmäßig gedruckt?
  • ist es. Es wurde nur zu Bildungszwecken hinzugefügt (fügen Sie das Komma hinzu, um die gewünschten Felder zu trennen).

Antwort

Das vorherige Antworten funktionieren nicht für mehrere Geräte oder für Geräte mit identischen UUIDs.

Versuchen Sie Folgendes:

sudo blkid /dev/sd* 

Kommentare

  • Wirklich? Sie meinen, die am häufigsten gewählte Antwort funktioniert nicht?
  • Eine universell eindeutige Kennung (UUID) sollte immer eindeutig sein. Der gesamte Zweck einer UUID besteht darin, universell einzigartig zu sein. Wenn nicht, liegt ‚ ein Problem vor. Ich habe doppelte UUIDs in geklonten VMs gesehen, zumindest für Netzwerkgeräte.
  • Wenn Sie eine Partition mit dem Befehl dd klonen, hat die Kopie dieselbe UUID und Ja, das ist ein Problem. Die anderen Antworten hier würden ‚ das nicht zeigen.

Antwort

Mit der folgenden Befehlszeile sehen Sie die UUID sowie die Zuordnung zu Partitionen.

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 

Kommentare

  • Warum können wir die UUID von sda sehen?
  • Es gibt eine UUID für ein Dateisystem pro Partition. Auf sda habe ich 4 Partitionen, also hatte ich 4 UUID. wiki.debian.org/Part-UUID

Antwort

Ich habe das gleiche Problem wie Sie: Umbenennen von /dev/sd** nach einem Neustart durch den Kernel:

Natürlich alle meine automatischen Bereitstellungen in /etc/fstab werden von LABEL oder UUID referenziert, daher gibt es dafür im Grunde kein Problem. Alle oben genannten Befehle, blkid oder lsblk, geben diese Art von Informationen.

Das Problem beginnt jedoch wie in meinem Fall, wenn Sie eine Partition im RAW-Modus verwenden, im aktuell gebooteten Systempunkt. Ansicht: Zum Beispiel entweder: Die Partition wird als unformatiertes Gerät verwendet, um eine virtuelle Festplatte für VirtualBox zu erstellen (der Verweis auf diese Partition lautet also wie folgt: /dev/sdf3) oder die Partition wird verwendet als Raw-Gerät, um eine LUN für iSCSI zu erstellen (der Verweis auf diese Partition lautet also ungefähr wie folgt: /dev/sdc6)

Also jetzt beim Booten, zum Beispiel in rc .local müssen Sie auf zuverlässige Weise herausfinden, was das /dev/sdXX -Gerät Ihrer dedizierten RAW-Partition ist, und eine Datei anpassen:

BEISPIEL 1

Die VirtualBox-Festplatte * .vmk Beschreibung dieser Raw-Festplatte, in dem Teil wie folgt:

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

und starten Sie dann den VirtualBox-Dienst

LE 2

In der tgtd-Konfiguration wurde ein Ziel: target0 zur Erstellungszeit /dev/sdd6 zugeordnet. Nach dem Neustart wird dieselbe Partition in /deb/sdc6 umbenannt. Dies geschieht mit einem Wechseldatenträger, USB oder eSATA! Wie finde ich das neue Gerät automatisch? Wieder in /etc/rc.d/rc.local

In diesem Fall benötigen wir also eine zuverlässige Methode, um den neuen Gerätenamen zu ermitteln. Die GPT-Partition bietet eine eindeutige GUID für jede in die GPT-Tabelle geschriebene GPT-Partition.

gdisk stellt diese Informationen nicht im Listenmodus zur Verfügung, sondern nur im interaktiven Modus mit dem Befehl: i. Glücklicherweise macht es blkid!

Sie müssen also ein Shell-Skript schreiben, um alle Ihre Festplatten einzusehen. Dies ist das Gerät /dev/sdXX, das der GUID zugeordnet ist Wird beim Erstellen der Partition bemerkt.

So etwas wie 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 

und verwenden Sie dann /dev/shm/blkdevice in Ihrem rc.local-Skript.

Antwort

Um die UUID einer Festplattenpartition zu sehen, habe ich gerade Starten Sie das System mit einer Linux-CD und gehen Sie zu meinem Computer-Mount. Klicken Sie auf die Partition, die ich sehen möchte. Die UUID-Nummer der Linux-Partition wird angezeigt.

Sie können die Festplatten-UUID auch anzeigen, indem Sie das Linux-Festplatten-Dienstprogramm nach dem Start der Linux-CD ausführen.

Kommentare

  • Was ‚ s “ mein Computer mounten „? Und was ‚ s “ Linux-Festplatten-Dienstprogramm “ klingt nach gnome-disk-Dienstprogramm aka Disks?

Antwort

In diesen Fällen müssen Sie / dev / disk / by-partuuid überprüfen. Es gibt Symlinks, die die PARTUUID jedes Laufwerks seinem Eintrag in / dev / sdb1 usw. zuordnen.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.