什麼是UUID?

 如果你試圖安裝或者升級到最新的ubuntu,你或許會發現所有的存儲設備現在都用一個叫UUID的字符串來表示了。UUID-Universally
Unique IDentifiers,翻譯過來就是“全局唯一標誌符”。
UUID到底是什麼?
UUID是一個標幟你係統中的存儲設備的字符串,其目的是幫助使用者唯一的確定系統中的所有存儲設備,不管它們是什麼類型的。它可以標識DVD驅動器,USB存儲設備以及你係統中的硬盤設備等。一個典型的UUID看起來就是這樣:
c73a37c8-ef7f-40e4-b9de-8b2f8103844
那爲什麼要使用UUID呢?
原因1:它是真正的唯一標誌符
UUID爲系統中的存儲設備提供唯一的標識字符串,不管這個設備是什麼類型的。如果你在系統中添加了新的存儲設備如硬盤,很可能會造成一些麻煩,比如說啓動的時候因爲找不到設備而失敗,而使用UUID則不會有這樣的問題。
原因2:設備名並非總是不變的
自動分配的設備名稱並非總是一致的,它們依賴於啓動時內核加載模塊的順序。如果你在插入了USB盤時啓動了系統,而下次啓動時又把它拔掉了,就有可能導致設備名分配不一致。
使用UUID對於掛載移動設備也非常有好處──例如我有一個24合一的讀卡器,它支持各種各樣的卡,而使用UUID總可以使同一塊卡掛載在同一個地方。
原因3:ubuntu中的許多關鍵功能現在開始依賴於UUID
例如grub──系統引導程序,現在可以識別UUID,打開你的/boot/grub/menu.lst,你可以看到類似如下的語句:
title           Ubuntu hardy (development branch), kernel 2.6.24-16-generic
root            (hd2,0)
kernel          /boot/vmlinuz-2.6.24-16-generic root=UUID=c73a37c8-ef7f-40e4-b9de-8b2f81038441 ro quiet splash
initrd          /boot/initrd.img-2.6.24-16-generic
quiet
列出系統中設備的UUID
如果你使用最新的ubuntu,你可以使用blkid命令列出系統中所有存儲設備的UUID。
# blkid
/dev/sda1: UUID="2220CF8220CF5B83″ TYPE="ntfs"
/dev/sda2: UUID="48E81F29E81F14B2″ LABEL="DRIVE-D" TYPE="ntfs"
/dev/sdb1: UUID="c73a37c8-ef7f-40e4-b9de-8b2f81038441″ SEC_TYPE="ext2″ TYPE="ext3″
/dev/sdb5: TYPE="swap" UUID="abe7529e-dcd5-4afc-b714-05569dbcd30b"
/dev/sdb6: UUID="f34c8c7c-a020-4a14-8c97-257180240250″ SEC_TYPE="ext2″ TYPE="ext3″
/dev/sdb7: UUID="8fa274ca-5b22-411f-b5da-7469c1f276da" SEC_TYPE="ext2″ TYPE="ext3″
/dev/sdc1: UUID="1e36f323-c4e5-4f55-ba0a-838643550bf9″ TYPE="ext3″ SEC_TYPE="ext2″
/dev/sdc2: UUID="83aa92e4-4df4-4aab-80f3-9bbb447e0459″ TYPE="ext3″ SEC_TYPE="ext2″
獲取指定設備的UUID:
如果你知道一個設備名而想確認它的UUID,例如你想確認你的/etc/fstab中的UUID是否正確,那麼你可以用vol_id命令:
# vol_id -u /dev/sdb1
c73a37c8-ef7f-40e4-b9de-8b2f81038441

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章