<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>利田小子 &#187; Grub</title>
	<atom:link href="http://www.zhuhuang.com/tag/grub/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.zhuhuang.com</link>
	<description>胸有凌云志，无高不可攀</description>
	<lastBuildDate>Thu, 29 Jul 2010 02:32:27 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Vista和Ubuntu双系统引导 &#8211; 修改默认启动的操作系统</title>
		<link>http://www.zhuhuang.com/2010/01/vista-ubuntu-grub/</link>
		<comments>http://www.zhuhuang.com/2010/01/vista-ubuntu-grub/#comments</comments>
		<pubDate>Tue, 26 Jan 2010 01:46:07 +0000</pubDate>
		<dc:creator>nanyo</dc:creator>
				<category><![CDATA[技术乱弹]]></category>
		<category><![CDATA[Grub]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://www.zhuhuang.com/?p=1865</guid>
		<description><![CDATA[之前在台式机上装了双系统，电脑自带的是Vista Home Premium，而我装了Ubuntu 9.10。Ubuntu的Grub自动给电脑做好了引导程序，但默认的启动系统我选的是Ubuntu，不是Vista。后来发现，还是Vista用的多，但启动系统时一不留神就进来Ubuntu，得重启后再进Vista，如此折腾了多次。今天心血来潮，想把默认启动的系统改为Vista。Google了很多修改grub的文章，大多是针对Ubuntu 9.10之前的版本的，这些版本使用的是grub，而Ubuntu 9.10用的是Grub2。Grub2和Grub还是有些不同的，比如/boot/grub/文件夹下就找不到menu.lst。而网上的多数方法都是针对Grub。有关Grub2的修改的文章有一些，但大部分方法不对头，这些方法建议修改/boot/grub/grub.cfg的相关内容，如set default=&#8221;0&#8243;，来指定默认的启动系统。但这样治标不治本，更新grub之后，所作的修改都会失效。究其原因，可以看grub.cfg文件开头的一段描述： # # DO NOT EDIT THIS FILE # # It is automatically generated by /usr/sbin/grub-mkconfig using templates # from /etc/grub.d and settings from /etc/default/grub # 也就是说，grub.cfg文件的内容是从文件etc/default/grub的设置导入的，如果只修改grub.cfg，而不修改grub文件，那执行命令update-grub或update-grub2之后，grub.cfg中所做的修改都是无效的。先来看下grub文件的内容： # If you change this file, run &#8216;update-grub&#8217; afterwards to update # /boot/grub/grub.cfg. GRUB_DEFAULT=0 #GRUB_HIDDEN_TIMEOUT=0 GRUB_HIDDEN_TIMEOUT_QUIET=true GRUB_TIMEOUT=10 GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null [...]]]></description>
			<content:encoded><![CDATA[<p>之前在台式机上装了双系统，电脑自带的是Vista Home Premium，而我装了Ubuntu 9.10。Ubuntu的Grub自动给电脑做好了引导程序，但默认的启动系统我选的是Ubuntu，不是Vista。后来发现，还是Vista用的多，但启动系统时一不留神就进来Ubuntu，得重启后再进Vista，如此折腾了多次。今天心血来潮，想把默认启动的系统改为Vista。Google了很多修改grub的文章，大多是针对Ubuntu 9.10之前的版本的，这些版本使用的是grub，而Ubuntu 9.10用的是Grub2。Grub2和Grub还是有些不同的，比如/boot/grub/文件夹下就找不到menu.lst。而网上的多数方法都是针对Grub。有关Grub2的修改的文章有一些，但大部分方法不对头，这些方法建议修改<strong>/boot/grub/grub.cfg</strong>的相关内容，如set default=&#8221;0&#8243;，来指定默认的启动系统。但这样治标不治本，更新grub之后，所作的修改都会失效。究其原因，可以看grub.cfg文件开头的一段描述：<br />
<span id="more-1865"></span></p>
<blockquote><p>#<br />
# DO NOT EDIT THIS FILE<br />
#<br />
# It is automatically generated by /usr/sbin/grub-mkconfig using templates<br />
# from /etc/grub.d and settings from /etc/default/grub<br />
#</p></blockquote>
<p>也就是说，grub.cfg文件的内容是从文件<strong>etc/default/grub</strong>的设置导入的，如果只修改grub.cfg，而不修改grub文件，那执行命令update-grub或update-grub2之后，grub.cfg中所做的修改都是无效的。先来看下grub文件的内容：</p>
<blockquote><p># If you change this file, run &#8216;update-grub&#8217; afterwards to update<br />
# /boot/grub/grub.cfg.</p>
<p>GRUB_DEFAULT=0<br />
#GRUB_HIDDEN_TIMEOUT=0<br />
GRUB_HIDDEN_TIMEOUT_QUIET=true<br />
GRUB_TIMEOUT=10<br />
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`<br />
GRUB_CMDLINE_LINUX_DEFAULT=&#8221;quiet splash&#8221;<br />
GRUB_CMDLINE_LINUX=&#8221;"</p>
<p># Uncomment to disable graphical terminal (grub-pc only)<br />
#GRUB_TERMINAL=console</p>
<p># The resolution used on graphical terminal<br />
# note that you can use only modes which your graphic card supports via VBE<br />
# you can see them in real GRUB with the command `vbeinfo&#8217;<br />
#GRUB_GFXMODE=640&#215;480</p>
<p># Uncomment if you don&#8217;t want GRUB to pass &#8220;root=UUID=xxx&#8221; parameter to Linux<br />
#GRUB_DISABLE_LINUX_UUID=true</p>
<p># Uncomment to disable generation of recovery mode menu entrys<br />
#GRUB_DISABLE_LINUX_RECOVERY=&#8221;true&#8221;</p></blockquote>
<p>这里我们只看两条语句：“GRUB_DEFAULT=0”和“GRUB_TIMEOUT=10”，其他的我也没去细究。GRUB_DEFAULT制定了默认启动的操作系统，0便是这个操作系统的在可选操作系统目录中的索引。我的电脑的系统引导界面里Ubuntu, Linux 2.6.31-17-generic-pae是第一条，所以这个0指向它。GRUB_TIMEOUT制定了引导界面的停留时间，默认是10秒。因此，修改默认启动的OS方法很简单，只要把想启动的OS在目录的索引值找出来，并赋给GRUB_DEFAULT。引导界面的操作系统列表可以从文件/boot/grub/grub.cfg找出。在grub.cfg文件中找到所有“<strong>menuentry &#8220;****&#8221;</strong> ”之类的语句，*代表任意内容。在我的grub.cfg文件里，一共找到了7条此类语句，按顺序排列如下：</p>
<blockquote><p>menuentry &#8220;Ubuntu, Linux 2.6.31-17-generic-pae&#8221;<br />
menuentry &#8220;Ubuntu, Linux 2.6.31-17-generic-pae (recovery mode)&#8221;<br />
menuentry &#8220;Ubuntu, Linux 2.6.31-14-generic-pae&#8221;<br />
menuentry &#8220;Ubuntu, Linux 2.6.31-14-generic-pae (recovery mode)&#8221;<br />
menuentry &#8220;Memory test (memtest86+)&#8221;<br />
menuentry &#8220;Memory test (memtest86+, serial console 115200)&#8221;<br />
menuentry &#8220;Windows Vista (loader) (on /dev/sda1)&#8221; </p></blockquote>
<p>Vista在最后，其索引值为6（从0开始数起）。知道了这个索引值之后，就可以动手修改/etc/default/grub文件了（修改此文件需要管理员权限），以我的系统为例，步骤如下：<br />
首先，打开一个Terminal窗口，输入命令&#8221;sudo vi /etc/default/grub&#8221;，提示输入管理员密码，“[sudo] password for ***: ”，输入密码（不会在:号之后显示出来）之后，vi编辑器将会打开文件grub。<br />
接着，在vi编辑器里，按“a”键切换到输入状态，找到“GRUB_DEFAULT=0”，将0改为6。按ESC切换回命令状态，输入“：wq！”，按Enter键后，保存退出，返回到命令窗口。<br />
最后，输入命令“sudo update-grub”“或sudo update-grub2”，更新grub引导程序。为了保险，我两条命令都试了一次。</p>
<p>更新完之后，可以打开文件/boot/grub/grub.cfg，里面的set default语句之后的数字已经变成6，而不是原来的0。重启系统，在系统引导界面，默认启动的系统已经变成Vista了（被高亮的）。</p>
<h3  class="related_post_title">随机文章</h3><ul class="related_post"><li><a href="http://www.zhuhuang.com/2009/08/google-xml-sitemaps/" title="使用插件Google XML Sitemaps发现的小问题mktime">使用插件Google XML Sitemaps发现的小问题mktime</a><br /><small>昨晚安装了一个中文版的WordPress，装了插件Google XML Sitemaps之后，便使用...</small></li><li><a href="http://www.zhuhuang.com/2009/10/red-delicious/" title="蛇果">蛇果</a><br /><small>秋天到了，有个好处，沃尔玛里水果玲琅满目。大部分是苹果和梨，可惜我不喜欢吃苹果，也不喜欢吃梨，没有口...</small></li><li><a href="http://www.zhuhuang.com/2010/06/learn-driving-first-day/" title="学车第一天">学车第一天</a><br /><small>今天开始学车，为了避开高温，就在傍晚学。天9点左右才真正黑下来，每天都七点开始学，能学上两个小时左右...</small></li><li><a href="http://www.zhuhuang.com/2009/07/fight_against_fly/" title="苍蝇作战记">苍蝇作战记</a><br /><small>今晚被两只苍蝇烦死，估计是开门时趁机钻进我的房间的。本人看书写东西时最受不了吵闹的声音，蚊子声都不行...</small></li><li><a href="http://www.zhuhuang.com/2009/08/bluehost_webhost_share/" title="Bluehost虚拟主机共享">Bluehost虚拟主机共享</a><br /><small>注册了两个bluehost账号，还有一堆域名，本想着建些网站，但现在连自己的博客都快顾不上来了，其他...</small></li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.zhuhuang.com/2010/01/vista-ubuntu-grub/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
