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 ……
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
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。
翻译
相关推荐
-
Hyper-V R2配置要避免的三大错误
几乎在所有控制面板中都能找到Hyper-V R2的配置错误。尽管这些都不会破坏数据中心,但还是会危害客户环境。下面我们就来看看Hyper-V R2配置要避免的三大错误吧。
-
Windows配置管理指南
在Windows服务器系统中,配置与管理是永恒变的课题。新系统新工具的配置在管理员的工作中不会少见,系统和工具的配置变更占的比重也绝不会少,而完成新配置之后的管理更是管理员日常工作中的重头戏。我们整合了Windows专家们的意见与建议,将他们Windows配置管理工作中遇到的问题、用到的工具和实践心得汇集成册分享给你们。
-
SELinux教程:如何配置RHEL5和Web服务器?
RHEL同时提供了图形用户界面(GUI)和命令行两种方式配置SELinux。为了表现SELinux的简单易用,本文使用RHEL的GUI来启用SELinux。
-
配置Linux管理任务:整合及安全(下)
《意外的管理员:按步教你配置Linux服务器》最初并没有作为一本书来编写。作者Don R. Crawley写了一份讲义,作为他任教的Linux研讨会的补充学习材料。