<a href="http://www.linuxeden.com/html/sysadmin/20071018/36313.html">http://www.linuxeden.com/html/sysadmin/20071018/36313.html</a>
Fstab 檔案大家都很熟悉,Linux 在啟動的時候通過 fstab 中的資訊挂載各個分區,一個典型的分區條目就像這樣:
/dev/sdb5 /mnt/usb vfat utf8,umask=0 0 0
/dev/sda4 為需要挂載的分區,sda4 是 Linux 檢測硬碟時按順序給分區的命名,一般來講,這個名稱并不會變化,但是如果你有多塊硬碟,硬碟在電腦中的順序變化的時候,相同的名稱可能代表着不同的硬碟分區,如果你是從 USB 裝置啟動,與其他 USB 裝置的插入順序也會導緻分區識别的困難。
這個時候 UUID 就派上用場了,UUID 全稱是 Universally Unique Identifier,也就是說,每個分區有一個唯一的 UUID 值,這樣就不會發生分區識别混亂的問題了。
在 fstab 中用 UUID 挂載分區,看起來向這樣:
UUID=1234-5678 /mnt/usb vfat utf8,umask=0 0 0
在 UUID= 後面填入分區相應的 UUID 值,就可以正确挂載分區了。
那麼,我們如何知道一個分區的 UUID 呢?
有 3 種方法:
1. 通過浏覽 /dev/disk/by-uuid/ 下的裝置檔案資訊。
# ls -l /dev/disk/by-uuid/
------
lrwxrwxrwx 1 root root 10 10-13 09:14 0909-090B -> ../../sdb5
lrwxrwxrwx 1 root root 10 10-13 09:13 7c627a81-7a6b-4806-987b-b5a8a0a93645 -> ../../sda4
.....
2. 通過 vol_id 指令。
# vol_id /dev/sdb5
ID_FS_USAGE=filesystem
ID_FS_TYPE=vfat
ID_FS_VERSION=FAT32
ID_FS_UUID=0909-090B
ID_FS_UUID_ENC=0909-090B
ID_FS_LABEL=SWAP
ID_FS_LABEL_ENC=SWAP
ID_FS_LABEL_SAFE=SWAP
3. 通過 blkid 指令
# blkid /dev/sdb5
/dev/sdb5: LABEL="SWAP" UUID="0909-090B" TYPE="vfat"
通過這三種方法都可以獲得分區的 UUID,UUID 依據分區不同,長度和格式都不相同。