Linux + Win 雙系統卻不見Grub 開機選單?
文章推薦指數: 80 %
Step. 4 - Mount Ubuntu and its Boot
Articles31Tags31Categories13HomeArchivesTagsCategoriesLinkAbout安裝了Linux+Windows的雙系統,但卻不見開機選單?放心,很多人跟你一樣。
事先聲明在磁區間操作有一定風險,若操作不當導致不可逆的後果,本站概不負責。
本文全程以Ubuntu20.04.3LTS操作,其他版本不一定適用。
MBR(MasterBootRecord,主啟動磁區)首先,一般計算機在開機時,會先執行BIOS之後才進入OS。
但其實準確的說,在進入OS前,會先經過MBR(MasterBootRecord),也就是主啟動磁區。
至於進入哪個作業系統,這就靠MBR的設定了。
BootLoader(開機引導)雙系統並非什麼新鮮事,但對新手來說,可能會持續糾結DualBooting的問題好一陣子。
為了方便使用雙系統,大多數的作法是在進入OS前,載入一個選單,由使用者手動選擇來決定使用哪個OS以達到雙系統的目的。
而這個選單就是大家所說的BootLoader(開機引導)。
其中GNUProject中的程式「GRUB(GRandUnifiedBootloader)」極具代表性。
而Ubuntu預設就會安裝Grub(以下以Ubuntu做解說)Linux+Windows雙系統若使用者在已有WindowsSystem下的計算機安裝第二(或更多)個系統,那對MBR會有什麼影響?當計算機只有單一系統時,MBR理所當然的只會進入該系統。
但若是安裝了第二個系統,這時MBR有著極大的可能會被第二個系統所覆寫,進而導致一個「MBR會指向越晚安裝的系統」的現象。
安裝OS的順序也有關係?正因為大多數情況下MBR會被最後一個安裝的系統給覆蓋設定,因此若是最後一個安裝的系統有如GURB之類的開機引導,那麼就可以成功顯示開機選單。
因此大多數情況下都會建議使用者先安裝Windows後,才安裝Linux。
由於前面提到的,Ubuntu預設會自動為使用者安裝Grub,因此若是先安裝Windows再安裝Ubuntu的話,那麼MBR將會指向Linux的BootLoader也就是Grub。
我偏要先安裝Linux再裝Windows同理,若是讓MBR指向Windows的BootLoader,那將不會有Grub,也就是會直接進入Windows。
即便如此,在某些情況下仍然有著需要最後安裝Windows的需求。
而大多數的新手玩家在安裝完雙系統後,發現開機選單消失,大多數都是因為上述原因。
這時候其實只需要手動再安裝一次Grub即可。
正式開始-手動安裝Grub以覆寫MBR設定Step.1-準備UbuntuLiveCD你需要準備一個裝有UbuntuOS的開機碟,靠它來協助你手動安裝Grub。
Step.2-進入Ubuntu利用開機碟進入Ubuntu的安裝界面。
注意!別急著按下安裝,我們僅需要使用試用模式即可,按下「TryUbuntu(試用Ubuntu)」後進入Ubuntu桌面環境。
Step.3-確定EFI、Ubuntu及Ubuntu’sBoot所在磁區接著掛載原有的Ubuntu安裝區。
使用fdisk-l指令查看當前磁區狀況。
記得使用root權限執行。
$sudofdisk-l
......
DeviceStartEndSectorsSizeType
/dev/sda12048624639622592304MEFISystem
......
/dev/sda4173963264886562815712599552339.8GLinuxfilesystem
/dev/sda588656281689187532753125122.5GLinuxfilesystem
......每個人的磁區編號不同,以上面例子來說:/dev/sda1為EFISystem。
EFI的磁區編號不重要,記得是在哪個硬碟就好,如上述為/dev/sda。
而Ubuntu則是裝在/dev/sda4。
若當初在安裝Ubuntu時,有選擇另外分割Boot,那麼就會看到如例子中的/dev/sda5,反之則沒有。
Step.4-MountUbuntuanditsBoot確認完計算機上的磁區後,就可以開始操作了。
首先先將Ubuntumount起來,以下的磁區請依個人在Step.3所見更改。
sudomount/dev/sda4/mnt
sudomount/dev/sda5/mnt/boot/efi#若Boot有獨立分割才需要Step.5-安裝Grub$sudochroot/mnt
$grub-install/dev/sda#請自行依照個人在`Step.3`所見的EFI磁碟編號更改。
......
$update-grub
......Step.6-重新開機,迎接Grub的到來😃reboot安裝過程報錯cannotfindefidirectory這可能是因為Grub安裝程式抓不到你掛載下來的EFI目錄,這時請在grub-install後加上參數「--efi-directory=/mnt/boot/efi」來指定。
若還有其他錯誤,那麼請試著將路徑參數手動指定(請自行確認計算機上的路徑):grub-install--boot-directory=/mnt/boot--efi-directory=/mnt/boot/efi--target=x86_64-efi
若錯誤依舊無法解決,那麼可能是在前面幾個步驟出錯,請自行再檢查一次,或者將錯誤訊息丟上Google,以及到Ubuntu社群「askubuntu.com」看看大家的討論。
不再自動進入Windows,改為自動進入Ubuntu!?開機選單呢!!編輯以下檔案:sudovim/etc/default/grub
找到「GRUB_TIMEOUT_STYLE=hidden」在前方加上「#」註解掉,即「#GRUB_TIMEOUT_STYLE=hidden」,保存並關閉。
在更早的版本中則是「GRUB_HIDDEN_TIMEOUT=0」,一樣將其註解為「#GRUB_HIDDEN_TIMEOUT=0」後保存。
沒意外的話就可以在Reboot之後看見Grub選單了!Author:Alpaca0x0Link:https://blog.alpaca0x0.com/posts/Dual-Boot-with-Grub/CopyrightNotice:AllarticlesinthisblogarelicensedunderCCBY-NC-SA4.0unlessstatingadditionally.WindowsLinuxGrubDonateBTCPreviousPostSimplysettingupaProxyServerwithSSHNextPostRaspberryPi4(Ubuntu)configureautoconnecttowifiAlpaca0x0廢到笑,學渣一隻。
Articles31Tags31Categories13FollowMeCatalog1.事先聲明2.MBR(MasterBootRecord,主啟動磁區)3.BootLoader(開機引導)4.Linux+Windows雙系統5.安裝OS的順序也有關係?6.我偏要先安裝Linux再裝Windows7.正式開始-手動安裝Grub以覆寫MBR設定7.1.Step.1-準備UbuntuLiveCD7.2.Step.2-進入Ubuntu7.3.Step.3-確定EFI、Ubuntu及Ubuntu’sBoot所在磁區7.4.Step.4-MountUbuntuanditsBoot7.5.Step.5-安裝Grub7.6.Step.6-重新開機,迎接Grub的到來😃8.安裝過程報錯9.不再自動進入Windows,改為自動進入Ubuntu!?開機選單呢!!RecentPostCTF「hackme」WebWriteUp2022-04-11ChangerootpasswordinMySQL82022-01-29Ubuntu更換/Home到新硬碟2022-01-27HowtousePPPoEtoconnectnetworkonUbuntu2022-01-21BuildaFTPServerwith「vsftpd」2022-01-19简Localsearch✨網站已更新最新版本👉點擊刷新
延伸文章資訊
- 1電腦開機選單有三個系統選擇,怎麼去掉。 - 迪克知識網
只需從雙啟動選單中刪除舊的windows,只留下當前的使用的windows,這樣就沒有其他作業系統可供 ... 在開始-執行,輸入msconfig,在boot裡面可以選擇。
- 2如何取消開機時顯現的開機選單? - Mobile01
把不要的開機選項刪掉只剩一個,系統開機就自然不會出現開機選單 ... 直接用筆記本之類的文字編輯器去修改C:根目錄底下的boot.ini,就不用上述的步驟
- 3修復雙重開機電腦上的開機功能表 - Microsoft Docs
- 4關於取消multi boot選單
- 5章20. 開機選項Red Hat Enterprise Linux 7
若要由 boot: 提示返回至開機選單,請重新啟動電腦,並再次由安裝媒介開機。 在以BIOS 為基礎的AMD64 ... 若要取消編輯並返回開機選單,請在任何時候按下Esc 鍵。