登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

梦想之鹰的天空

天高任鸟飞......放飞....心情..........放飞.....梦想

 
 
 

日志

 
 

配置GRUB 2:调整Ubuntu Server 9.10中的启动程序  

2010-12-04 09:21:04|  分类: Linux |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

GRUB已经出现很多年了。相对于它的前 身LILO,GRUB有更大的优势,其中最重要一点的就是在启动时,它能够直接对文件系统进行寻址。在最近的Linux发行版中,比如Ubuntu Server 9.10,就使用了下一版的GRUB。从本文中,您将学习到如何使用GRUB 2.0。

  GRUB1已经很不错了,但还是有一些改进的余地。GRUB 2的改进包括一个支持主题模块化负载、跨平台兼容和其它功能的图形界面。另外的一个变化是配置方式的改变。在本文中,您将学习如何在Ubuntu server 9.10中配置GRUB。

  安装GRUB2

   要安装GRUB 2,你只需要安装Ubuntu Server 9.10。安装完成后,新版本GRUB的配置文件都保存在目录/ boot / grub中。它包括许多.mod文件,(这些.mod文件包含了在GRUB2中需要的模块)、GRUB.cfg文件和其它一些配置文件。与旧版相 比,GRUB2的主要变化是,你再也不用编辑文件menu.lst,只要生成GRUB.cfg就可以了,但这并不意味着要对Grub.cfg进行编辑。

   要更改GRUB 2的配置,你需要修改主配置文件/etc/default/GRUB。此外,还需要修改一些位于目录/etc/GRUB.d/下的独立脚本。对这些文件进 行更改后,您就可以使用命令update-GRUB2或update-GRUB将更改写入GRUB.cfg文件。进行更改的方式如下:

  对/etc/default/GRUB 或者目录/etc/GRUB.d/中的一些文件进行相应的修改。
  运行命令update-GRUB,将这些修改写入文件/boot/GRUB/GRUB.cfg.

  修改/etc/default/GRUB

   第一个需要修改的文件便是/etc/default/GRUB。如果您配置过老版的GRUB的话,应该知道这个文件包含的是在老版中文件/ boot / grub / menu.lst开始的一些设置。这些设置会影响GRUB引导菜单的显示方式以及用于启动GRUB的超时设定。

  /etc/default/GRUB的默认内容如下:

#如果你更改这个文件, 运行 'update-GRUB'后更新
# /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 || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX="find_preseed=/preseed.cfg automatic-ubiquity noprompt"
# 取消无效图形终端的备注 (只有GRUB-pc)
#GRUB_TERMINAL=console
# 用于图形终端的分辨率
# 注意,你只能用图形卡通过VBE支持的模式
# 你可以通过命令 `vbeinfo'在真实GRUB中看到它们
#GRUB_GFXMODE=640x480
#如果你不想GRUB越过"root=UUID=xxx" 参数到达Linux就取消备注
#GRUB_DISABLE_LINUX_UUID=true
# 取消对无效的恢复模式菜单条目生产的备注
#GRUB_DISABLE_LINUX_RECOVERY="true"

   让我们来看看在GRUB中最重要的几行。首先,你可以看到GRUB_DEFAULT = 0这一行。跟老版中的menu.lst类似,它指的是默认启动的选项。要想知道这是哪个启动项,你应该看一下/boot/GRUB/GRUB.cfg,在 这个文件里包含了要使用的启动选项。

  接下来,让我们看一下 GRUB_HIDDEN_TIMEOUT。如果你只安装了Linux,默认情况下不显示GRUB菜单。但是,如果电脑中还安装有其它操作系统,它将给出一 个启动菜单。如果你希望在加载内核前将系统暂停,而且不显示任何菜单,那就请给这个参数赋一个大于零的值。例如,GRUB_HIDDEN_TIMEOUT = 5就表示系统在开始加载内核前将暂停五秒钟的时间。

  接 着,让我们再看一下GRUB_CMDLINE_LINUX这几行。这里,你指定的是GRUB采用的内核参数。例如,如果你希望你的服务器使用参数 data=writeback进行加载(这将激活最快的日志模式),你可以在这一行添加参数rootflags=data=writeback。你也可以 使用任何其它的内核选项。你可以在示例行中找到一些常用的内核选项。所以,如果你打算使用任何特定的内核选项,就在这里添加参数。

  理解/etc/GRUB.d/*

   接下来,在目录/ etc / GRUB.d中还有一些配置文件,当运行GRUB-update时,这些脚本被读取并且创建新的GRUB.cfg配置文件。其中第一个文件是文件 00_header,实际上它是指你对/etc/default/GRUB的设定,所以如果你删除此文件,对/etc/default/GRUB的设定将 无法生效。

  文件05_debian_theme决定了加载 GRUB时显示的内容。默认情况下,它显示默认的GRUB图形化桌面主题,你可以将自己的图片存为.png或者.tga格式并保存到目录/usr /share/images/desktop-base中来自定义自己的GRUB主题。

   另外还有你可能不太会去改变的一些文件。文件10_linux用于加载内核,文件20_memtest86 +用于载入内存测试,文件30_os-prober用于查找计算机上可能会有的其它操作系统,并将它们添加到GRUB的启动菜单中。这些都说明GRUB 2更加智能,你大可不必手工为电脑中所有操作系统创建启动菜单项。

  然而,你可能要编辑文件40_custom。在这个文件中,你可以添加的配置信息跟你在GRUB1中的配置文件非常相似,它加载额外的内核和initrd。下面的例子你可以看到这个文件的内容:

menuentry "Some other Linux, linux 2.6.27-6-pae" { set root=(hd0,3) linux /boot/vmlinuz-2.6.27-6-pae root=/dev/sda4 initrd /boot/initrd.img-2.6.27-6-pae }
EOF

  只需将上面的文字插入到文件40_custom中,确保不要修改其它行的配置,执行命令update – GRUB以将更改写入GRUB.cfg。下一次引导时你就会发现所有的更改都已经显示在GRUB菜单中了。

  第一眼看上去,GRUB 2跟老版本的GRUB有很大的区别。再仔细看一看,你会发现GRUB 2和GRUB 1之间的区别并不是很大。本文解释了如何修改GRUB 2配置,或许你会发现,在不久的将来,会有越来越多的Linux发行版本使用GRUB2。

  评论这张
 
阅读(1068)| 评论(0)

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018