修改linux多系統啟動順序

2022-03-08 10:52:23 字數 2385 閱讀 4081

ubuntu和xp雙系統grub2預設啟動項設定為xp

裝了雙系統後,在開機時總會有想讓乙個系統預設啟動的時候,一般安裝完ubuntu和xp雙系統後,開機時預設的是啟動ubuntu系統,但是當想讓xp作為默

認啟動的系統時怎麼辦呢?

在早期的ubuntu系統中,啟動管理器用的是grub,要修改開機預設啟動的系統的,只要修改 /boot/grub/下的menu.lst就行了,但是在後來的

ubuntu系統中採用的是grub2,而grub2已經沒有menu.lst檔案了。 www.2cto.com

grub2由三部分組成:/etc/default/grub檔案 、 /etc/grub.d資料夾、和 /boot/grub/grub.cfg檔案,電腦開機時的啟動選單介面用的是

grub.cfg檔案。 怎麼理解這三部分之間的關係呢?我覺得可以這樣認為,在我們執行update-grub(更新啟動選單)命令後系統就會根據

/etc/default/grub檔案 和 /etc/grub.d資料夾 的內容生成/boot/grub/目錄下的 grub.cfg 檔案,所以當 /etc/default/grub檔案 和 /etc/grub.d文

件夾 被修改後,再執行update-grub, grub.cfg檔案內容被更改,或者說是被更新吧。

/etc/default/grub檔案 ----存有開機預設啟動項、倒記時時間的內容

/etc/grub.d資料夾 -------存有各個啟動項,如下

00_header 10_linux 30-os-prober readme

05_debian_theme 20_memtest86+ 40_custom

其中,30-os-prober是windows系統的啟動項, 當然10_linux就是linux系統的啟動項,注意到每個檔案前面都有個數字,在執行 update-grub

後生成的grub.cfg檔案中,數字越小項就會排在越前面,也就是在啟動選單裡就會排越上。像上面的內容,在開機啟動選單 裡,linux系統就會排在最前

面。下面就介紹三種修改的方法。

一、直接修改grub.cfg檔案

[root~]# sudo gedit /boot/grub/grub.cfg

裡面### begin /etc/grub.d/*** ###

menuentry "……"

### end /etc/grub.d/*** ###

各代表每一啟動項,位置越上,在啟動選單裡就會越上。

第12行的 set default="0" 代表預設選擇項,也就是開機時選擇游標最初的選擇項,注意項的下標是從0開始的,例如在grub.cfg中,xp系統所處的位置

是第五個啟動項(簡單的查 看方法是看它前面有幾個menuentry "……"),那麼就把set default="0" 改為 set default="4"

第54行(可能不一樣)的set timeout=5 表示倒計時時間,5就表示5秒。

修改後,儲存,重新後就可以看到效果了,此方面缺點是在update-grub後會恢復原樣,而系統在安裝更新時常常會執行update-grub命令,所以此修改方

法不推薦。

www.2cto.com

二、修改/etc/default/grub.d

[root~]# sudo cd /etc/grub.d

[root~]# ls

這時我們可以看到

00_header 10_linux 30-os-prober readme

05_debian_theme 20_memtest86+ 40_custom

(這是我系統裡的,你的可能不一樣)

[root~]# mv 30_os-prober 06_os-prober (30_os-prober重新命名為06_os-prober)

[root~]# update-grub

這時開啟grub.cfg會看到xp系統已經排在前面了,這種方法簡單,且以後不管進行多少次update-grub,xp系統項總是會排在第一位,推薦使用。

三、修改/etc/default/grub

[root~]# sudo gedit /etc/default/grub

修改grub_default=0 (選擇游標預設處於的位置,像這樣是處於第一位,如果xp系統是處於選單項的第5位,就修改為grub_default=4)

grub_timeout=5 (倒記時時間)

修改後,儲存,重新update-grub, 此方法由於是直接修改選擇游標的初始位置,而當xp項前面如果多了幾項(像更新核心後),就不行了。此

方法不推薦。

如何更改預設項的等待時間

[root~]# sudo gedit /boot/grub/grub.cfg

將其中的 timeout =?設定為你要更改的值即可

Linux的系統啟動順序

linux的啟動步驟 1.load bios hardware information 載入基本輸入輸出系統bios,即basic input and output system 2.read mbr s config to find the os 讀取引導檔案 3.load the kernel ...

多系統啟動

多啟動的流程是從ntldr開始的,ntldr通過讀取boot.ini,確定作業系統啟動分割槽的位置,對於,只有乙個作業系統的電腦,ntldr直接讀取ntdetect.com,開始下一步的流程,如果是多個系統的情況 2000 xp為例 ntldr把boot.ini選擇選單的內容顯示在螢幕上,讓使用者選...

Linux作業系統啟動順序

1 開機自檢,夾在核心 2核心識別並載入根檔案系統rootfs bin sbin,lib,lib64,proc,sys,dev 首先讀取根檔案系統下 sbin init init負責替代kenel負責啟動使用者所需要的一起子程序。所以這些程序都是init的子程序。3掛載別的檔案系統 在根檔案系統下的...