安裝多重作業系統常見問答集

想要幫自己的電腦安裝數個作業系統,上網搜尋相關資料,依照資料一步驟一步驟的操作。雖然成功安裝好了,但要是自己的需求和資料稍有出入,自行修改了部份步驟,卻發現問題多多,心裡總有滿腹疑問,「為什麼不能這樣改?為什麼不能那樣改呢?」,會有這種問題的最根本原因是沒有足夠的概念,無法融會貫通。因此這篇文章的誕生就是為了幫助讀者建立觀念,以便更容易了解、吸收相關資料的內容。

從開機到進入作業系統經過了什麼地方?

按下電腦的電源鈕後,便由BIOS掌控大局。BIOS檢查完硬體相關狀況後,便會把主持棒交給MBR,然後再載入藏在MBR中的開機管理程式。這個藏在MBR裡面的開機管理程式會依照選擇而進入其他開機管理程式或是載入進入作業系統所需的核心,最後就進入作業系統。說了這麼一大串,大家應該都混亂了吧XD,

簡單來說就是:開機→BIOS→MBR→開機管理程式→(開機管理程式→)作業系統

MBR是什麼?

MBR全名是Master Boot Record,中文是「主啟動磁區」,也就是硬碟的第零軌。MBR的磁區大小為512Bytes,其中這又分成「Magic Number」、「Partition table」、「Bootloader」三個區塊。

Magic Number

存在於MBR的1~2Bytes,大小是2Bytes,中文是神奇數字!?(自己亂翻譯)。這個區域永遠填入固定的值「55AA」,事實上這個區域沒有任何特殊功能XD,只是讓其他程式可以辨認出這裡是MBR,簡單來說就只是一個識別碼。

Partition table

存在於MBR的3~66Bytes,大小是64Bytes,中文是「硬碟分割表」。裡面記載著硬碟各分割區的資料,例如:分割區的格式、分割區的起點與終點…等等。每一個分割區資料會花掉16Bytes,聰明的你,一定會發現,「那不就只能分割成4個分割區?」,為了增加可分割的數量,所以有一種分割區的格式是「延伸分割區」,裡面記載的不是真正的分割區資料,而是記載哪裡還有像硬碟分割表之類的東西。透過這種方法所建立的分割區,我們稱它為「邏輯分割區」。

Bootloader

存在於MBR的67~512Bytes,大小是446Bytes。這裡面放著一個開機管理程式(例如:GRUB),我們可以透過這個開機管理程式來載入作業系統所需的檔案,然後載入作業系統。又或者我們可以透過開機管理程式載入其他的開機管理程式。

開機管理程式放在哪裡?

每一個分割區的第一個磁區,我們稱之為「開機磁區」(Boot Sector)。開機管理程式可以放在MBR裡的Bootloader,或者是每個分割區的開機詞區裡。

為什麼MBR裡的Bootloader一定要存在一個開機管理程式?

因為BIOS做完他的工作後,會直接載入這個位置的程式。畢竟載入BIOS時,根本還不知道什麼分割區(因為那是下一個步驟才會載入的)。因此我們不能苛求它到處找開機管理程式,所以一定要在MBR裡的Bootloader地方放一個開機管理程式來接下主持棒。

一台電腦有幾個MBR?

這個問題看似困難,其實這個問題很簡單。想想他的定義:硬碟的第零軌。這時候你就會恍然大悟,原來有幾個硬碟就有幾個MBR。此時回想一下我們在設定開機順序時,不是可以設定要先載入哪個光碟機或是硬碟嗎?如果是選硬碟,就是指載入這個硬碟的MBR。

MBR修復程式是如何做到修復的?

MBR修復程式只會重新寫入「Magic Number」、「Bootloader」,如果是使用Windows 光碟片裡的程式「fixmbr」,他就會在Bootloader裡面重新寫入Windows的開機管理程式;相同的,如果是用GRUB相關的修復程式來修復,他就會在Bootloader重新寫入GRUB。至於「Partition table」則沒有修復程式可以幫你修復,畢竟每個人的分割區都不一樣。所以我們只能平常自行備份硬碟分割表,不過千萬要注意,不要備份在同一個硬碟裡面,不然到時候還是讀不到喔XD

後記

哈哈,寫到這我也想不到問題了,如果各位有好問題要問,可以留言,我會再把有價值的問題新增上去^^d。感謝各位的支持與閱讀,下台一鞠躬Orz(←是這個插圖嗎= =a?)

文章分類:作業系統|標籤:, , , , , ,

迴響已關閉