Linux学习笔记之 5 Linux GRUB启动管理器

1.GRUB简介

1.1grub与启动引导器
    启动引导器是计算机启动过程中运行的第一个真正的软件,通常计算机启动时在通过BIOS自检后读取并运行硬盘的主引导扇中的启动引导器程序,启动引导器再负责加载启动硬盘分区中的操作系统。
1.2 grub的功能
  • 提供了真正的命令行交互界面,能够使用户以最大灵活性使用各种参数引导操作系统和收集系统信息。
  • 支持LBA模式
  • GRUB能够访问ext2分区
2 安装GRUB
    安装GRUB有两个层次的含义:
  • 安装GRUB软件包
  • 安装GRUB到MBR  #grub-install /dev/hda
GRUB软件包的安装:
    文件名:grub-0.93-4.i386.rpm
    #rpm –q grub  //查询
    #rpm –ivh /mnt/cdrom/RedHat/RPMS/grub-0.93-4.i386.rpm//安装

3 GRUB的操纵界面
3.1 GRUB的启动菜单界面
    作用:可以选择GRUB配置文件中预设的启动菜单项,从而实现硬盘中多个操作系统的切换引导。此外还可以进入菜单项编辑界面和GRUB命令行界面。
    GRUB启动菜单按键:
  • ↑↓在启动菜单项间移动
  • Enter:启动当前的菜单项
  • e:编辑当前的启动菜单项
  • a:添加内核的启动参数
  • c:进入GRUB的命令行模式

3.2 GRUB的启动菜单项编辑界面

    在此模式下可以对GRUB配置文件中已经存在的启动项做进一步的调整.  例如:对现有行进行编辑、添加删除命令行。
    GRUB启动菜单编辑界面按键:
  • ↑↓选择菜单项中的行
  • b:启动当前的菜单项
  • e:编辑当前选中的行
  • c:进入GRUB的命令行方式
  • o:在当前行后面插入一行
  • O:在当前行前面插入一行
  • d:删除当前行
  • Esc:返回GRUB启动菜单界面,取消对当前启动菜单项所做的任何修改
3.3 GRUB命令行界面
Guub命令行界面提供了方便友好的命令行交互方式,其特点包括:
  • 提供在线帮助命令“help”,并且可以获得每条命令的详细帮助
  • 可使用左右方向键编辑行命令
  • 可以使用上下方向键滚动历史命令
  • 可使用“tab”键补全命令
4 GRUB的配置文件
    默认的配置文件在/boot/grub/grub.conf,在GRUB成功安装到硬盘主引导扇区后,只要编辑该文件,就可实现对GRUB的配置.无需重写grub到MBR.
GRUB配置文件中包括全局配置和菜单项配置两部分:
4.1 GRUB配置文件的全局命令
  • 使用default命令设置GRUB的默认启动项
  • 命令格式:default 菜单项序号
  • 使用splashimage命令设置GRUB的启动界面
  • 命令格式:splashimage 图象文件全路径名 //用于指定某一个文件作为启动菜单的背景图象
  • 例:splashimage (hd0,0)/boot/grub/splash.xpm.gz
  • 使用timeout命令设置菜单的启动延时
  • 命令格式:#timeout 延时秒数
4.2 GRUB的菜单项的配置命令
title 菜单项名称 例:#title windows
4.3 配置linux的启动菜单项
    GRUB对于不同的操作系统有不同的引导方式,对linux操作系统GRUB可以直接引导其内核并启动,典型的linux启动彩单配置为:
Title RedHat Linux(2.4.20-8)
       root(dh0,0)
   kernel/boot/vmlinuz-2.4.20-8 ro root=LABEL=/
   initrd/boot/initrd-2.4.20-8.img
    linux启动菜单项的配置命令:
  • title:定义linux启动菜单项的名称
  • root:设置GRUB的根设备(root)为linux内核所在的分区
  • kernel:使用kernel命令后跟linux内核文件作为参数,加载linux的内核文件
  • initrd:使用initrd命令加载镜像文件
4.4    配置windows的启动菜单项
    GRUB不能够直接加载windows系统的内核文件进行引导,而是通过调用windows操作系统自身的启动引导器,通常为windows所在分区的引导扇区
    典型的windows启动菜单项配置为:
title win2kp
      map(hd0)(hd1)
      map(hd1)(hd0)
      root(hd1,0)
      makeactive
      chainloader+1
    Windows启动菜单项配置命令:
  • title:定义windows启动菜单项的名称
  • map:使用map命令交换磁盘或分区在BIOS中的标志符,用于启动在第二个硬盘中的windows
  • root:设置真实的windows分区为GRUB的根设备
  • Makeactive:设置根设备为活动分区(针对windows不能从非活动分区启动)
  • chainloader:使用chainloader命令调用windows分区的启动引导器引导windows系统

5 GRUB的安全设置
    主要功能:
  • 可以针对启动菜单设置全局口令
  • 可对某菜单项使用全局口令
  • 可对某菜单项设置独立口令
  • 对所有的口令都可以使用MD5进行加密
5.1    设置全局口令琐定启动菜单
    全局口令用于设置只允许用户选择启动菜单项进行启动,如进行其他操作需输入设置的全局口令.
  • Password命令

命令格式:#password 口令字  //为GRUB 的启动菜单和菜单项设置口令

  • 设置全局口令(设置GRUB的全局口令为12345)
     password12345
    
    解锁GRUB启动菜单:
  • 在锁定的启动菜单中选者“p”
  • 在 “password:”提示符后输入正确的口令,并按回车键确认
  • 如口令输入正确,启动菜单解锁后恢复正常的状态
5.2使用全局口令锁定启动菜单项
    锁定启动菜单项的步骤为:
  • 设置GRUB全局口令
  • 在菜单项配置中使用lock命令锁定菜单项
5.3设置独立的口令锁定启动菜单项
5.4使用MD5加密口令
6 GRUB的使用技巧
6.1配置GRUB重复上次启动项
  • 在全局配置中使用default saved,用于指定默认启动项为上次保存值
  • 在各菜单项配置命令的末尾使用savedefault命令,保存当前启动项为默认启动项
6.2制作GRUB启动软盘
  • #mke2fs /dev/fd0
  • #mount /mnt/floppy/
  • #grub-install –root-directory=/mnt/floppy/`(fd0)`
  • #umount /mnt/floppy/
  • #reboot
6.3使用GRUB启动软盘恢复被覆盖的硬盘引导系统
  • grub>root
  • grub>find /boot/grub/grub.conf
  • grub>root(hd0,0)
  • grub>setup(hd0,0)

配置文件的位置和名称
GRUB 启动引导器的相关文件被缺省保存在“/boot/grub”目录中,其中 menu.lst 文件是 GRUB 的主配置文件,GRUB 在启动时就是根据该文件的配置内容显示启动菜单的。 
# ls /boot/grub/
device.map     grub.conf         minix_stage1_5     stage2
e2fs_stage1_5  iso9660_stage1_5  reiserfs_stage1_5  ufs2_stage1_5 fat_stage1_5   jfs_stage1_5      splash.xpm.gz      vstafs_stage1_5 ffs_stage1_5   menu.lst          stage1             xfs_stage1_5
在 Red Hat 系列的 Linux 系统中(包括 CentOS)更习惯于使用文件名 grub.conf 来作为 GRUB 的配置文件。为了保持与其他系统的兼容性和文件的一致性,CentOS 分别在“/boot/grub”和“/etc”两个目录中建立了名为 grub.conf 的符号链接文件指向真正的配置文件“/boot/grub/menu.lst”。 
# cd /boot/grub
# ls -l menu.lst grub.conf
-rw------- 1 root root 595 Mar 31 18:06 grub.conf
lrwxrwxrwx 1 root root  11 Mar 31 18:06 menu.lst -> ./grub.conf # ls -l /etc/grub.conf
lrwxrwxrwx 1 root root 22 Mar 31 18:06 /etc/grub.conf -> ../boot/grub/grub.conf
因此,无论直接编辑menu.lst文件,还是编辑相应目录中的grub.conf文件都可以达到修改GRUB配置的目的。 
CentOS 5 中 GRUB 的缺省配置
CentOS 5 服务器方式缺省安装后,文件 menu.lst 已经进行了缺省的配置。 
## 执行 cat 命令后显示 menu.lst 文件的缺省配置 # cat /boot/grub/menu.lst
# grub.conf generated by anaconda #
# Note that you do not have to rerun grub after making changes to this file # NOTICE:  You have a /boot partition.  This means that
#          all kernel and initrd paths are relative to /boot/, eg. #          root (hd0,0)
#          kernel /vmlinuz-version ro root=/dev/VolGroup00/LogVolRoot #          initrd /initrd-version.img

#boot=/dev/hda default=0 timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz hiddenmenu
title CentOS (2.6.18-53.el5)         root (hd0,0)
        kernel /vmlinuz-2.6.18-53.el5 ro root=/dev/VolGroup00/LogVolRoot         initrd /initrd-2.6.18-53.el5.img
menu.lst 文件中的内容可以分为三类: 

GRUB启动管理器的更多相关文章

  1. 修改win8系统中启动管理器的系统引导信息

    最近用某软件做了个启动U盘,软件安装在电脑上,启动盘很快做完了,结果重启电脑的时候发现悲剧,windows启动后会显示出一个系统引导菜单,显示有3秒倒计时但是倒计时结束依然不能自动进入系统.. 然后. ...

  2. win7 启动管理器修改默认启动项

    最近给我的超级本做了系统备份,以防万一,但是备份完成后,系统启动的时候总会首先进入Windows启动管理器,且默认启动项是Ghost,还需要选择一下才能进入Win7系统,如何解决这个问题呢? 方案一: ...

  3. 【转】解决virt-manager启动管理器出错:unsupported format character

    来源:http://blog.csdn.net/z_yttt/article/details/71192144 经验证OK.   今天打开virt-manager出错,报错信息如下: 启动管理器出错: ...

  4. virt-manager管理器新建虚拟机时出错:unsupported format character

    启动管理器出错:unsupported format character ‘��0xffffffef) at index 30 经验证,解决办法如下: 1.获取virt-manager的rpm包,并强 ...

  5. 在控制台启动服务器时出现:对于服务器soa1_wls, 与计算机oim1相关联的节点管理器无法访问。

    问题:在控制台启动服务器时出现:对于服务器soa1_wls, 与计算机oim1相关联的节点管理器无法访问.原因:nodemanager没有启起来解决方法: 一.对于managedServer于admi ...

  6. 安装ArcGIS License 10.1 许可管理器 破解版 服务启动又失败的解决办法

    安装破解文件的提示执行 替换许可管理器Bin下面的service.txt  文件,之后会发现,许可管理器启动不了(有时候又可以,挺郁闷), 经过多次的试验,我找到了一种折中解决的方法,供大家参考 解决 ...

  7. python爬虫主要就是五个模块:爬虫启动入口模块,URL管理器存放已经爬虫的URL和待爬虫URL列表,html下载器,html解析器,html输出器 同时可以掌握到urllib2的使用、bs4(BeautifulSoup)页面解析器、re正则表达式、urlparse、python基础知识回顾(set集合操作)等相关内容。

    本次python爬虫百步百科,里面详细分析了爬虫的步骤,对每一步代码都有详细的注释说明,可通过本案例掌握python爬虫的特点: 1.爬虫调度入口(crawler_main.py) # coding: ...

  8. 工控随笔_08_西门子_Win10安装Step7.V5.6中文版授权管理器不能正常启动

    随着Windows系统的不断升级,西门子工控软件也不断升级,但是有时候在安装西门子 软件的时候会出现授权管理器不能正常启动的情况. 图  Step7 因为自动许可证管理器不能正常打开 如上图所示,报S ...

  9. 如何启动iis(Internet 信息服务(IIS)管理器)

    Internet 信息服务(IIS)管理器 启动 IIS 管理器1.从“开始”菜单,指向“管理工具”,然后单击“Internet 信息服务 (IIS) 管理器”. 从“运行”对话框启动 IIS 管理器 ...

随机推荐

  1. mongodb----修改器

    $inc:增加或者减少指定键值,如果键不存在,就创建一个键. $set:指定一个健的值,如果键不存在,就创建一个键. $unset:删除指定的键. $push:向指定的数组末尾加添加一个元素,如果数组 ...

  2. Best Cow Line (POJ 3217)

    给定长度为N的字符串S,要构造一个长度为N的字符串T,起初,T是一个空串,随后反复进行下列任意操作. *从S的头部删除一个字符,加到T的尾部 *从S的尾部删除一个字符,加到T的尾部 目标是要构造字典序 ...

  3. 【CDOJ931】Car race game(树状数组求逆序)

    题目连接:http://acm.uestc.edu.cn/#/problem/show/931 OJ评判系统有些坑,不支持__int64以及输出的%I64d大家注意.全开long long也会TLE, ...

  4. js网页返回页面顶部的小方法

    咳咳,在网页出现滚动条的时候,许多网站会在右下角出现一个图标,点击可以回到页面顶部 本文就记录下js实现代码: 1.在html页面body添加dom元素 <img src="toTop ...

  5. nginx 采用https 协议通信配置

    在网络通信中,使用抓包软件可以对网络请求进行分析,并进行重放攻击,重放攻击的解决方案一般是使用一个变化的参数,例如RSA加密的时间戳,但考虑到网络传输时延,时间戳需要有一定的误差容限,这样仍然不能从根 ...

  6. Unity目录结构

    http://www.cnblogs.com/liudq/p/5540051.htmlUnity中有几个默认目录 Unity5.x Resources 项目中默认的资源路径,会直接打包到游戏包中.即使 ...

  7. [Hapi.js] Managing State with Cookies

    hapi has built-in support for parsing cookies from a request headers, and writing cookies to a respo ...

  8. Android窗口管理服务WindowManagerService对窗口的组织方式分析

    文章转载至CSDN社区罗升阳的安卓之旅,原文地址:http://blog.csdn.net/luoshengyang/article/details/8498908 我们知道,在Android系统中, ...

  9. [HeadFirst-JSPServlet学习笔记][第二章:高层概述]

    第二章:高层体系结构 容器 1 什么是容器? servelet没有main()方法.它们受控于另一个Java应用,这个Java应用称为容器(Container) Tomcat就是这样一个容器.Web服 ...

  10. ie11加载不了css的问题

    ie11打开页面,竟然一点css都没有加载出来,而且是老大的电脑遇到了这个问题,啃爹啊 上网查资料,做了如下修改: 1.pc端最好不要用h5来写页面,兼容性是个头疼的问题,切记切记(移动端可以用H5来 ...