16.3 主引導目錄(MBR)結構及作用
MBR 也就是主引導記錄,位于硬盤的 0 磁道、0 柱面、1 扇區中,主要記錄了啟動引導程序和磁盤的分區表。我們通過圖 1 來看看 MBR 的結構。
圖 1 MBR的結構
MBR 共占用了一個扇區,也就是 512 Byte。其中 446 Byte 安裝了啟動引導程序,其后 64 Byte 描述分區表,最后的 2 Byte 是結束標記。我們已經知道,每塊硬盤只能劃分 4 個主分區,原因就是在 MBR 中描述分區表的空間只有 64 Byte。其中每個分區必須占用 16 Byte,那么 64 Byte 就只能劃分 4 個主分區。每個分區的 16 字節的規劃如表 2 所示。
大家注意到了吧,MBR 中最主要的功能就是存儲啟動引導程序。
啟動引導程序的作用
BIOS 的作用就是自檢,然后從 MBR 中讀取出啟動引導程序。那么,啟動引導程序最主要的作用就是加載操作系統的內核。當然,每種操作系統的啟動引導程序都是不同的。
每種操作系統的文件格式不同,因此,每種操作系統的啟動引導程序也不一樣。不同的操作系統只有使用自己的啟動引導程序才能加載自己的內核。如果我的服務器上只安裝了一個操作系統,那么這個操作系統的啟動引導程序就會安裝在 MBR 中。BIOS 調用 MBR 時讀取出啟動引導程序,就可以加載內核了。
但是在有些時候,我的服務器中安裝了多個操作系統,而 MBR 只有一 個,那么在 MBR 中到底安裝哪個操作系統的啟動引導程序呢?
很明顯,一個 MBR 是不夠用的。每塊硬盤只能有一個 MBR 是不能更改的,所以不可能増加 MBR 的數量。系統只能在每個文件系統(可以看成分區)中單獨劃分出一個扇區,稱作引導扇區(Boot Sector)。每個分區的引導扇區中也能安裝啟動引導程序,也就是說,在 MBR 和每個單獨分區的引導扇區中都可以安裝啟動引導程序。這樣多個操作系統才能安裝在同一臺服務器中(每個操作系統要安裝在不同的分區中),而且每個操作系統都是可以啟動的。
還有一個問題,BIOS 只能找到 MBR 中的啟動引導程序,而找不到在分區的引導扇區中的啟動引導程序。那么,要想完成多系統啟動,我們的方法是増加啟動引導程序的功能,讓安裝到 MBR 中的啟動引導程序(GRUB)可以調用在分區的引導扇區中的其他啟動引導程序。
因此,啟動引導程序擁有以下功能:
加載操作系統的內核。這是啟動引導程序最主要的功能。
擁有一個可以讓用戶選擇的菜單,來選擇到底啟動哪個系統。大家如果在服務器上安裝過雙 Windows 系統,就應該見過類似的選擇菜單,不過這個選擇菜單是由 Windows 的啟動引導程序提供的,而不是 GRUB。
可以調用其他的啟動引導程序,這是多系統啟動的關鍵。不過需要注意的是,Windows 的啟動引導程序不能調用 Linux 的啟動引導程序,所以我們一般建議先安裝 Windows,后安裝 Linux,是為了將 Linux 的啟動引導程序安裝到 MBR 中,覆蓋 Windows 的啟動引導程序。
當然,這個安裝順序不是絕對的,就算最后安裝了 Windows,我們也可以通過手工再安裝 GRUB 的方法,來保證 MBR 中安裝的還是 Linux 的啟動引導程序。
下圖為我們展示了啟動引導程序的作用。
圖 2 啟動引導程序的作用
Linux Windows
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。