linux MBR是什麼

2023-02-15 06:00:45

在linux中,MBR是指主開機記錄,位於硬碟的0磁軌、0柱面、1磁區中,主要記錄了啟動載入程式和磁碟的分割區表。MBR中最主要的功能就是儲存啟動載入程式,而啟動載入程式最主要的作用就是載入作業系統的核心。

本教學操作環境:linux7.3系統、Dell G3電腦。

linux MBR(主引導目錄)

MBR 是英文Master Boot Record的縮寫,中文意為主開機記錄。

位於硬碟的 0 磁軌、0 柱面、1 磁區中,主要記錄了啟動載入程式和磁碟的分割區表。我們通過圖 1 來看看 MBR 的結構。

1.jpg
圖 1 MBR的結構

MBR是以下三個部分組成

1、Bootloader,主載入程式(446個位元組)

2、Dpt(Disk Partition table),硬碟分割區表(64個位元組)

3、磁區結尾標誌(55aa)(個位元組)

MBR 共佔用了一個磁區,也就是 512 Byte。其中 446 Byte 安裝了啟動載入程式,其後 64 Byte 描述分割區表,最後的 2 Byte 是結束標記。我們已經知道,每塊硬碟只能劃分 4 個主分割區,原因就是在 MBR 中描述分割區表的空間只有 64 Byte。其中每個分割區必須佔用 16 Byte,那麼 64 Byte 就只能劃分 4 個主分割區。每個分割區的 16 位元組的規劃如表 2 所示。

表 2 分割區表內容
儲存位元組資料內容及含義
第 1 位元組引導標誌
第 2 位元組本分割區的起始磁軌號
第 3 位元組本分割區的起始磁區號
第 4 位元組本分割區的起始柱面號
第 5 位元組分割區型別,可以識別主分割區和擴充套件分割區
第 6 位元組本分割區的結束磁軌號
第 7 位元組本分割區的結束磁區號
第 8 位元組本分割區的結束柱面號
第 9~12 位元組本分割區之前已經佔用的磁區數
第 13~16 位元組本分割區的總磁區數

大家注意到了吧,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.jpg
圖 2 啟動載入程式的作用

相關推薦:《Linux視訊教學

以上就是linux MBR是什麼的詳細內容,更多請關注TW511.COM其它相關文章!