GRUB

GRUB(Boot Loader) 

grub: GRand Unified Bootloader

grub 0.x: grub legacy

grub 1.x: grub2

grub legacy:

stage1: mbr

stage1_5: mbr之后的扇区,让stage1中的bootloader能识别stage2所在的分区上的文件系统;

stage2:磁盘分区(/boot/grub/)

配置文件:/boot/grub/grub.conf <– /etc/grub.conf

stage2及内核等通常放置于一个基本磁盘分区;

功用:

(1) 提供菜单、并提供交互式接口

e: 编辑模式,用于编辑菜单;

c: 命令模式,交互式接口;

(2) 加载用户选择的内核或操作系统

允许传递参数给内核

可隐藏此菜单

(3) 为菜单提供了保护机制

为编辑菜单进行认证

为启用内核或操作系统进行认证 

如何识别设备:

(hd#,#)

hd#: 磁盘编号,用数字表示;从0开始编号

#: 分区编号,用数字表示; 0开始编号

(hd0,0)

grub的命令行接口

help: 获取帮助列表

help KEYWORD: 详细帮助信息

find (hd#,#)/PATH/TO/SOMEFILE

root (hd#,#)定义根目录

kernel /PATH/TO/KERNEL_FILE: 设定本次启动时用到的内核文件;额外还可以添加许多内核支持使用的cmdline参数;

例如:init=/path/to/init, selinux=0

initrd /PATH/TO/INITRAMFS_FILE: 设定为选定的内核提供额外文件的ramdisk

boot: 引导启动选定的内核; 

手动在grub命令行接口启动系统:

grub> root (hd#,#)

grub> kernel /vmlinuz-VERSION-RELEASE ro root=/dev/DEVICE

grub> initrd /initramfs-VERSION-RELEASE.img

grub> boot

配置文件:/boot/grub/grub.conf

配置项:

default=#: 设定默认启动的菜单项;落单项(title)编号从0开始;

timeout=#:指定菜单项等待选项选择的时长;

splashimage=(hd#,#)/PATH/TO/XPM_PIC_FILE:指明菜单背景图片文件路径;

hiddenmenu:隐藏菜单;

password [–md5] STRING: 菜单编辑认证;

title TITLE:定义菜单项“标题”, 可出现多次;

root (hd#,#)grub查找stage2kernel文件所在设备分区;为grub的“根”;

kernel /PATH/TO/VMLINUZ_FILE [PARAMETERS]:启动的内核

initrd /PATH/TO/INITRAMFS_FILE: 内核匹配的ramfs文件;

password [–md5] STRING: 启动选定的内核或操作系统时进行认证;  

grub-md5-crypt命令 

进入单用户模式:

(1) 编辑grub菜单(选定要编辑的title,而后使用e命令);

(2) 在选定的kernel后附加

1, s, Ssingle都可以;

(3) kernel所在行,键入“b”命令; 

安装grub

(1) grub-install

grub-install –root-directory=ROOT /dev/DISK

(2) grub

grub> root (hd#,#)

grub> setup (hd#) 

原创文章,作者:kang,如若转载,请注明出处:http://www.178linux.com/77621

(0)
kangkang
上一篇 2016-04-12 12:54
下一篇 2016-04-12 18:58

相关推荐

  • 马哥教育网络班21期第2周课程练习

    1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。     复制命令:cp         cp [OPTION]… [-T] SOURCE DEST     &…

    Linux干货 2016-07-16
  • N28-第二周

    1. Linux上的文件管理類命令都有哪些,其常用的使用方法及其相關示例演示。
    2. bash的工作特性之命令執行狀態返回值和命令行展開所涉及的內容及其示例演示。
    3. 請使用命令行展開功能來完成以下練習:
    (1) 創建/tmp目錄下的a_c、a_d、b_c、b_d。
    (2) 創建/tmp/mylinux目錄下的bin、boot/grub、dev、etc/rc.d/init.d、etc/sysconfig/network-scripts、lib/modules、
    lib64、proc、sbin、sys、tmp、usr/local/bin、usr/local/sbin、var/lock、var/log、var/run目錄。
    4. 如何查看文件的元數據,其信息有哪些,分別表示什麼含意?如何修改文件的時間戳信息?
    5. 如何定義一個命令的別名?如何在命令中引用另一個命令的執行結果?
    6. 顯示/var目錄下所有以L小寫開頭,以一個小寫字母結尾,且中間至少出現一位數字(可以有其它字符)的文件或目錄。
    7. 顯示/etc目錄下,以任意一個數字開頭,且以非數字結尾的文件或目錄。
    8. 顯示/etc目錄下,以非字母開頭,後面跟了一個字母以及其他任意長度任意字符的文件或目錄。
    9. 在/tmp目錄下創建以tfile開頭,後跟當前日期和時間的文件,文件名形如:tfile-2016-05-27-09-32-22。
    10. 複製/etc目錄下所有以p開頭,以非數字結尾的文件或目錄到/tmp/mytest1目錄中。
    11. 複製/etc目錄下所有以.d結尾的文件或目錄至/tmp/mytest2目錄中。
    12. 複製/etc目錄下所有以L小寫或m或n開頭,以.conf結尾的文件至/tmp/mytest3目錄中。

    Linux干货 2017-12-14
  • Shell脚本编程—特殊用法(select)及函数、递归

    Shell脚本编程—特殊用法及函数   一、while的特殊用法: 1、使用格式: while read 变量名;do    循环体 done </PATH/TO/filename 注:依次从指定的文件中的内容逐行读取,并把读取到的每行赋值给变量。 2、例题: 扫描/etc/passwd文件每一行,如发现GECOS字段为空…

    Linux干货 2016-08-21
  • 马哥教育网络班22期+第5周课程练习

    1、显示当前系统上root、fedora或user1用户的默认shell; [root@rhel677850 ~]# grep "^\(root\|fedora\|user1\)" /etc/passwd|awk -F: '{print $1,$7}&#039…

    Linux干货 2016-09-26
  • 关于shell脚本基础编程第五篇

                  shellb编程基础第五篇              本章内容:数组 变量:存储单个元素的内存空间数组:存储多个元素的连续的内存空间…

    系统运维 2016-08-24
  • linux文件查找工具 — find

    简述:   linux中find命令是一种强大的实时查找工具,它通过用户给出的路径,在该路径下的文件系统中进行文件查找。因此在遍历一个较大的文件系统时会比较花费时间,而且find命令占用资源也是比较大的,所以它的工作特点是,查找的速度略慢,但是可以实现精确查找和实时查找。由于用户权限的问题,可能只搜索用户具备读取和执行权限的目录。由于fi…

    Linux干货 2016-08-18