Menggunakan UUID dengan mdadm

10

Saya menggunakan GPT sebagai skema partisi saya. Saya memeriksa UUID tentang partisi saya:

# ls -l /dev/disk/by-partuuid/
total 0
lrwxrwxrwx 1 root root 10 Oct 18 22:39 0793009a-d460-4f3d-83f6-8103f8ba24e2 -> ../../sdb3
lrwxrwxrwx 1 root root 10 Oct 18 22:39 13f83c47-ad62-4932-8d52-e93626166e7f -> ../../sdc3
lrwxrwxrwx 1 root root 10 Oct 18 22:39 1b247b1f-0b7b-419e-bc3b-0f90cbadb87c -> ../../sdc2
lrwxrwxrwx 1 root root 10 Oct 18 22:39 224d5933-7a23-4833-b785-79a67c9b9306 -> ../../sda1
lrwxrwxrwx 1 root root 10 Oct 18 22:39 2ff625b2-b96b-4ce5-b752-57cdf7092258 -> ../../sda3
lrwxrwxrwx 1 root root 10 Oct 18 22:39 449956f9-7289-49ed-9a37-ed6be9264d1c -> ../../sdb1
lrwxrwxrwx 1 root root 10 Oct 18 22:39 a2a95e45-7e4c-4b20-a2bd-66d96e737590 -> ../../sdb2
lrwxrwxrwx 1 root root 10 Oct 18 22:39 a8c07f74-9d6d-4f45-9453-dd2e6998f100 -> ../../sda2
lrwxrwxrwx 1 root root 10 Oct 18 22:39 c2c9e94c-9c73-4d6e-a4ec-2229f56152e8 -> ../../sdc1

Dan tambahkan /dev/sdc2menggunakan UUID-nya:

# mdadm /dev/md0 --add /dev/disk/by-partuuid/1b247b1f-0b7b-419e-bc3b-0f90cbadb87c
mdadm: added /dev/disk/by-partuuid/1b247b1f-0b7b-419e-bc3b-0f90cbadb87c

Tetapi ketika saya melihat rincian array RAID itu melaporkan /dev/sdc2bukannya UUID.

# mdadm --detail /dev/md0
/dev/md0:
        Version : 1.2
  Creation Time : Thu Oct 18 21:52:43 2012
     Raid Level : raid1
     Array Size : 1048564 (1024.16 MiB 1073.73 MB)
  Used Dev Size : 1048564 (1024.16 MiB 1073.73 MB)
   Raid Devices : 2
  Total Devices : 2
    Persistence : Superblock is persistent

    Update Time : Fri Oct 19 15:57:19 2012
          State : clean
 Active Devices : 2
Working Devices : 2
 Failed Devices : 0
  Spare Devices : 0

           Name : cow:0  (local to host cow)
           UUID : 9e691db1:f8fcc7d8:f56d9c11:1c202693
         Events : 47

    Number   Major   Minor   RaidDevice State
       2       8       34        0      active sync   /dev/sdc2
       1       8       18        1      active sync   /dev/sdb2
  1. Apakah tidak mungkin untuk membangun array RAID menggunakan UUID?
  2. Atau apakah menggunakan UUID tetapi melaporkan nama normal untuk meningkatkan keterbacaan? Kalau begitu, bagaimana saya bisa tahu?
  3. Saya ingin menggunakan UUID sehingga saya dapat memindahkan disk dengan bebas di mesin tanpa merusak apa pun. Bukankah itu kedengarannya ide yang bagus?
Dihapus
sumber

Jawaban:

13

mdraid selalu memungkinkan Anda untuk memindahkan disk secara bebas di mesin, terlepas dari cara Anda menambahkan disk ke array. Ini melacak disk oleh metadata RAID (superblok) yang disimpan pada disk.

Perhatikan bahwa ini mengasumsikan mdadm dapat menemukan disk ketika merakit array. Default (ditentukan dalam /etc/mdadm/mdadm.conf) biasanya DEVICE partitions, yang berarti untuk melihat semua partisi (pada semua disk) memeriksa untuk superblok RAID. Itu memeriksa kecocokan dari nama array atau UUID (tergantung pada apa yang Anda katakan harus dilakukan dalam file konfigurasi), perhatikan bagaimana keduanya di --detailoutput Anda .

Contoh:

DEVICE partitions
:
ARRAY /dev/md0 metadata=1.2 UUID=9e691db1:f8fcc7d8:f56d9c11:1c202693

Ketika disuruh berkumpul /dev/md0, mdadm akan memindai semua partisi pada sistem mencari 1,2 superblok dengan UUID 9e691db1: f8fcc7d8: f56d9c11: 1c202693. Ini akan membaca nomor perangkat, dll dari masing-masing, dan menggunakan informasi itu untuk merakit array.

Anda hanya akan mengubah DEVICEjalur jika memindai semua partisi itu mahal. Misalnya, jika Anda memiliki ratusan, melalui jaringan. Kemudian Anda bisa daftar perangkat yang relevan di sana, namun Anda ingin (oleh UUID seharusnya berfungsi dengan baik).

derobert
sumber
Terima kasih! Secara default /etc/mdadm/mdadm.confkata saya # by default (built-in), scan all partitions (/proc/partitions) and all containers for MD superblocks. alternatively, specify devices to scan, using wildcards if desired.. The DEVICEline outcommented secara default untuk Ubuntu. Tapi saya kira perilaku default akan sangat sempurna! (Saya tidak punya banyak sehingga harus memindai)
Dihapus
Bagaimana cara mengetahui UUID superblock untuk dimasukkan ke file konfigurasi?
Dims
@Dims mdadm akan memberi Anda UUID untuk array, blkid dan beberapa alat lain untuk perangkat blok ... Mungkin mengajukan pertanyaan tentang itu dengan detail?
derobert