轉載自http://www.ylsay029.com/ubuntu12-04-xp-grub2.html
我們安裝雙系統之後,在開機時總會有想讓一個系統預設啟動的時候,一般安裝完Ubuntu和XP雙系統後,開機時預設的是啟動Ubuntu系統,但是當想讓XP作為預設啟動的系統時怎麼辦呢?
在早期的Ubuntu系統中,啟動管理器用的是grub,要修改開機預設啟動的系統的,隻要修改 /boot/grub/下的menu.lst就行了,但是在後來的Ubuntu系統中采用的是grub2,而grub2已經沒有menu.lst檔案了。
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系統就會排在最前面。
我在網上看到别人說有三種修改啟動預設選項的方法,但是其中2項在做了updata-grub之後就會失效,是以在這裡就隻介紹最穩定的一種方法,這也是很多人都采用的方法:
修改/etc/default/grub.d
sudo -i
cd /etc/grub.d
ls
這時我們可以看到
00_header 10_linux 20_memtest86+ 30_uefi-firmware 41_custom
05_debian_theme 20_linux_xen 30_os-prober 40_custom README
(這是我系統裡的,你的可能不一樣)
mv 30_os-prober 06_os-prober (30_os-prober重命名為06_os-prober)
update-grub
這時打開grub.cfg會看到xp系統已經排在前面了,這種方法簡單,且以後不管進行多少次update-grub,XP系統項總是會排在第一位。