it-swarm-id.com

linux: Bagaimana saya bisa melihat semua UUID untuk semua disk yang tersedia di sistem saya?

/etc/fstab Saya berisi ini:

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

Ada beberapa disk lain di sistem ini, dan tidak semua disk sedang dipasang ke lokasi yang benar (Misalnya,/dev/sda1 dan/dev/sdb1 kadang-kadang terbalik).

Bagaimana saya bisa melihat UUID untuk semua disk di sistem saya? Bisakah saya melihat UUID untuk disk ketiga pada sistem ini?

177
Stefan Lasiewski

Di /dev/disk/by-uuid ada symlink yang memetakan setiap UUID drive ke entri di /dev (mis. /dev/sda1)

155
Michael Mrozek

Ada alat yang disebut blkid (gunakan sebagai root atau dengan Sudo),

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

anda dapat memeriksa tautan ini untuk info lebih lanjut

186
setzamora

Perintah terbaik untuk digunakan adalah lsblk -f. Ini akan mencantumkan semua perangkat dan partisi, bagaimana mereka dipasang (jika sama sekali) dan struktur pohon perangkat jika menggunakan LVM, crypto_LUKS, atau beberapa grup volume pada drive yang sama.

46
John Rea

Untuk hanya mendapatkan UUID perangkat disk tertentu (misalnya untuk digunakan dalam skrip) Anda dapat menggunakan:

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

dimana /dev/sdXY adalah nama perangkat.

14

Ini bekerja untuk saya:

ls -la /dev/disk/by-uuid

Jika Anda ingin memeriksa jenis partisi itu, gunakan:

df -Th

dan itu akan menunjukkan kepada Anda jika Anda memiliki ext3 atau ext2. Hari ini membantu saya karena ada partisi ext2 yang diformat dan saya pikir itu adalah ext3, yang menyebabkan mount gagal.

11
MIrra
lsblk -o +uuid,name

Anda dapat melihat semua output yang dapat ditambahkan ke -o (--output) dengan

lsblk --help

Ini juga akan melakukan pekerjaan

# blkid
7
Nico Rodsevich

Jawaban sebelumnya tidak berfungsi untuk beberapa perangkat atau untuk perangkat dengan UUID yang identik.

Coba ini:

Sudo blkid /dev/sd*
2
Kevin

Dengan baris perintah berikut, Anda dapat melihat UUID plus pemetaan ke partisi.

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

Saya memiliki masalah yang sama dengan Anda: mengganti nama dengan kernel /dev/sd** setelah reboot:

Tentu saja semua pemasangan otomatis saya di /etc/fstab dirujuk oleh LABEL atau oleh UUID, jadi pada dasarnya tidak ada masalah untuk itu. Dan semua perintah di atas, blkid atau lsblk, berikan informasi seperti ini.

Tetapi masalahnya dimulai seperti dalam kasus saya, ketika Anda menggunakan partisi dalam mode RAW, dalam sistem point-of-view saat ini boot: misalnya baik: partisi digunakan sebagai perangkat mentah, untuk membuat disk virtual untuk VirtualBox (jadi referensi ke partisi ini adalah seperti: /dev/sdf3) atau partisi tersebut digunakan sebagai perangkat mentah, untuk membuat LUN untuk iSCSI (jadi referensi ke partisi ini adalah seperti: /dev/sdc6)

Jadi sekarang saat boot, misalnya di rc.local, Anda harus menemukan dengan cara yang dapat diandalkan, apa /dev/sdXX perangkat dari partisi RAW khusus Anda, dan mengadaptasi beberapa file:

CONTOH 1

Disk VirtualBox * .vmk deskripsi disk mentah ini, pada bagian seperti:

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

dan kemudian restart layanan VirtualBox

CONTOH 2

dalam konfigurasi tgtd, target: target0 dikaitkan dengan /dev/sdd6 saat membangun. Setelah reboot, partisi yang sama diganti namanya /deb/sdc6 Ini terjadi dengan removable disk, USB atau eSATA! Jadi bagaimana cara menemukan perangkat baru secara otomatis? Lagi di /etc/rc.d/rc.local

Jadi dalam hal ini kita perlu cara yang dapat diandalkan untuk menemukan apa nama perangkat baru. Partisi GPT menawarkan unik GUID untuk setiap partisi GPT, ditulis dalam tabel GPT.

gdisk tidak memberikan info ini dengan mode daftar, tetapi hanya dalam mode interaktif dengan: perintah i. Untungnya, blkid melakukannya!

Jadi, Anda perlu menulis skrip Shell, untuk melihat semua disk Anda, yang merupakan perangkat /dev/sdXX, terkait dengan GUID terlihat pada waktu pembuatan partisi.

Sesuatu seperti, 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

dan kemudian gunakan /dev/shm/blkdevice, dalam skrip rc.local Anda.

Anda perlu memeriksa/dev/disk/by-partuuid dalam kasus ini. ada symlink yang memetakan PARTUUID setiap drive ke entri di/dev/sdb1 dll

0
Sachin Mokashi

Untuk melihat penggunaan partisi hard disk, saya cukup mem-boot sistem dengan CD Linux dan memasang komputer saya, klik, partisi yang ingin saya lihat. Nomor uuid dari partisi Linux akan ditampilkan.

Anda juga dapat melihat disk uuid dengan menjalankan utilitas Disk Linux setelah CD Linux boot up.

0
man puk tam