grub引導中,在kernal 中設置root分區現在有3中方式
1. 使用卷標
查看/etc/fstab,可以看到類似
label=/ / ext3 defaults 1 1
/dev/hda7 /usr ext3 defaults 1 1
第二行的意思很容易懂,就是把/dev/hda7 mount到/usr 上。第一行沒有指明分區,意思是把label(卷標)為/ 的分區mount到/上。這樣寫的好處在于即使如果把硬盤從主板上的ide0(hda) 換到ide2(hdc)上,系統仍然可以自動掛載正確的分區。通常Linux安裝的時候已經自動指定了卷標。
所以我們可以這樣設置root分區 , kernel **** root=LABEL=/
2. 使用UUID
UUID 全稱是 Universally Unique Identifier,也就是說,每個分區有一個唯一的 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
3. 通過 blkid 命令
# sudo blkid
/dev/sdb5: LABEL="SWAP" UUID="0909-090B" TYPE="vfat"
通過這三種方法都可以獲得分區的 UUID,UUID 依據分區不同,長度和格式都不相同。
root=UUID=*****
3. 使用win模式下的/dev/*
通過explore2fs查看root , home對應的分區,顯示格式如:/dev/sda2
root=/dev/sda2