`
gstarwd
  • 浏览: 1488020 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

grub2 基础教程

阅读更多

grub2基础教程-修订版
     
                                 smallapple


目录

一、 grub2 新特性

二、 grub2 安装与启动

三、 grub2 配置文件详解

四、脚本修改

五、使用 grub2 常见错误及修复方法


一、 grub2 新特性

1 grub2 grub 有很多不同的地方
a
)图形接口
b
)使用了模块机制,通过动态加载需要的模块来扩展功能
c
)支持脚本语言,例如条件判断,循环、变量和函数
d
)支持 rescue 模式,可用于系统无法引导的情况
e
)国际化语言。包括支持非 ASCII 的字符集和类似 gettext 的消息分类,字体,图形控制台等等
f
)有一个灵活的命令行接口。如果没有配置文件存在, GRUB 会自动进入命令模式
g
)针对文件系统、文件、设备、驱动、终端、命令、分区表、 os loder 的模块化、层次化、基于对象的框架
h
)支持多种文件系统格式
i
)可访问已经安装的设备上的数据
j
)支持自动解压

2
、设备的命名
grub2
同样以 fd 表示软盘, hd 表示硬盘(包含 IDE SCSI 硬盘)。设备是从 0 开始编号,分区则是从 1 开始,主分区从 1-4 ,逻辑分区从 5 开始,而 grub 分区编号是从 0 开始的。下面给出几个例子 :
(fd0)
:表示整个软盘
(hd0,1)
:表示 BIOS 中的第一个硬盘的第 1 个分区
(hd0,5)/boot/vmlinuz
:表示 BIOS 中的第一个硬盘的第一个逻辑分区下的 boot 目录下的 vmlinuz 文件

二、 grub2 安装与启动

1 、安装 ubuntu9.10 时, grub 默认安装在第一硬盘( hd0 )的 mbr ,其实就是把引导文件 boot.img 写入硬盘的 mbr ,当然,用户也可以选择不写入硬盘 mbr 而是写入 linux 分区的引导扇区。启动时根据 mbr 所提供信息找到启动分区后,加载分区内的 grub 核心文件 core.img 和配置文件 grub.cfg ,进入选择菜单画面,在菜单画面,按上下箭号选择需要系统菜单项,按 Enter 进入选项。






e 进入己选择菜单的编辑状态,在编辑状态下,由上下左右箭号来移动光标, enter 键换行, ctrl+x 以编辑的内容启动, ctrl+c 进命令行状态,按 Esc 退出,回到菜单项。

在需要使用额外的内核参数启动时,比如要加上 acpi=off 时,把光标移动到 linux 这一行最后,在 splash 后加上一空格再输入 acpi=off ,然后按 ctrl+x 启动。



c 进入命令行状态,按 Tab 键可查看所有可用的命令。




在命令行状态,可以根据需要加载或移除相应模块,也可用来启动在菜单没有显现的的系统。

比如,在第一硬盘的第一分区上装有 windows xp 系统,但在菜单上没显示出来,我们可以命令行状态下输入命令启动:

    grub>set root=(hd0,1)

    grub>chainloader +1

    grub>boot

又比如启动第二硬盘第一逻辑分区上的 ubuntu 系统:

    grub>set root=(hd1,5)

    grub>linux /boot/vmlinuz-xxx-xxx root=/dev/sdb5

    grub>initrd /boot/initrd.img-xxx-xxx

    grub>boot

其中内核 vmlinuz initrd.img 的版本号可用按 Tab 键自动查看。


2 、下面介绍下在 grub2 中一些常用的命令

    1)help
        查看命令用法,如
    help search
:查看 search 命令详细用法
    2)set

        设置变量值,如

    set default=0
    set timeout=5

    set root=(hd0,3) 等等

        需要调用变量 AA 的值时,使用 ${AA} ,如 set root=(hd1,1) ,则 ${root}=(hd1,1)

    3)default

        定义默认引导的操作系统。 0 表示第一个操作系统, 1 表示第 2 个,依此类推

    4)timeout

        定义在时间内用户没有按下键盘上的某个按键,自动引导 default 指定的操作系统。

    5)root

        指定用于启动系统的分区。

    6)insmod rmmod

        加载或移除某模块,如

insmod jpeg

insmod png

insmod ntfs

rmmod png

 等

 7)drivemap
 drivemap
兼容 grub map ,主要用于只能从第一硬盘 (hd0) 引导启动的系统如 win2000 xp 2003 ,比如要添加第二硬盘第一分区上的 xp 系统:
 menuentry "Windows XP" {
 set root=(hd1,1)
 drivemap -s (hd0) ${root}
 chainloader +1
 }

    8)ls
        列出当前的所有设备。如 (hd0) (hd0,1) (hd0,5) (hd1) (hd1,1) (hd1,2)

    ls -l
        详细列出当前的所有设备。对于分区,会显示其 label uuid
    ls /
        列出当前设为 root 的分区下的文件
    ls (hd1,1)/
        列出 (hd1,1) 分区根目录的文件
    9)search
    search -f /ntldr
        列出根目录里包含 ntldr 文件的分区,返回为分区号
    search -l LINUX
        搜索 label LINUX 的分区。
    search --set -f /ntldr
        搜索根目录包含 ntldr 文件的分区并设为 root ,注意如果多个分区含有 ntldr 文件,

    set 失去作用。

    10)loopback
    loopback
命令可用于建立回放设备,如
    loopback lo0 (hd1,1)/abc.iso
        可以使用 lo0 设备来访问 abc.iso 里的内容,比如说,可以从 abc.iso 里的软盘映像中启动
    loopback lo0 (hd1,1)/aa.iso
    linux (lo0)/memdisk
    initrd (lo0)/abc.img
        要删除某一回放设备,可以使用 -d 参数:
    loopback -d lo0
    11)pager
        分页显示。
    set pager=1
        显示满一页时暂停,按 space 继续
    set pager=0
        取消分页显示
    12)linux
        用 linux 命令取代 grub 中的 kernel 命令

    13)chainloader

        调用另一个启动器,如

    chainloader (hd0,1)+1

        调用第一硬盘第一分区引导扇区内的启动器,可以是 windows linux 的启动器


三、 grub2 配置文件详解

    grub2 改用 grub.cfg 为配置文件,配置文件包含以下基本内容:(红色为解释部分)


### BEGIN /etc/grub.d/00_header ###
load_env

# 加载变量,如果在grubenv 保存变量,则启动时装载
set default="0"

# 设置默认引导项,默认值为0
insmod ext2

# 插入文件系统支持的模块,除了用作启动的分区外,其他分区格式可在menuentry 底下再添加
set root=(hd0,8)

# 指定系统root 分区,也就是 / 分区
search --no-floppy --fs-uuid --set 2d61e5f9-1d2a-4167-a6f1-b991ba00878b

#指定uuid=2d61e5f9-1d2a-4167-a6f1-b991ba00878b的分区为root分区,如果前面的分区号(hd0,8)的#uuid与这里的uuid一致,这两句作用一样,如果不一致,则指定uuid的起作用。

if loadfont /usr/share/grub/unicode.pf2 ; then

# 设置终端字体,unicode.pf2 支持中文字符显示
set gfxmode=640x480

# 设置显示分辨率,默认为640x480 ,可用800x600 ,1024x768 ,建议跟你想设定的图片大小一致
insmod gfxterm

# 插入终端模块gfxterm ,支持中文字符显示和支持24 位图像
insmod vbe

# 插入vbe 模块,GRUB2 引入模块化机制,要使用它,需要在这里加入
if terminal_output gfxterm ; then true ; else
# For backward compatibility with versions of terminal.mod that don't
# understand terminal_output
terminal gfxterm

# 设定grub2 终端为gfxterm
fi
fi
set timeout=10

# 设定默认启动前等待时间,默认为10
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/05_debian_theme ###
set menu_color_normal=white/black

# 设定菜单字体及背景颜色
set menu_color_highlight=black/blue

#设定选择项字体及背景颜色

# 如果使用默认,背景将完全被蓝色挡住了,需要修改blue 为black ,背景图片才能显示
### END /etc/grub.d/05_debian_theme ###


### BEGIN /etc/grub.d/10_linux ###

#10_linux为系统自动添加的当前root分区linux引导项

# 每个菜单项要包括menuentry 双引号" " 和大括号{ } 才完整,否则不显示菜单
menuentry "Ubuntu, Linux 2.6.31-10-generic" {
set quiet=1
insmod ext2
set root=(hd0,8)
search --no-floppy --fs-uuid --set 2d61e5f9-1d2a-4167-a6f1-b991ba00878b

# 这句与set root=(hd0,8) 效果一样,可删除其一,二者不一致以这句为准
linux /boot/vmlinuz-2.6.31-10-generic root=UUID=2d61e5f9-1d2a-4167-a6f1-b991ba00878b ro quiet splash

# 不喜欢看到一长串的, roo=UUID=*** 可用root=/dev/sda8(/ 分区的分区号) 代替
initrd /boot/initrd.img-2.6.31-10-generic
}


### END /etc/grub.d/10_linux ###


#20_memtest86+ 为系统自动添加的内存测试菜单项
### BEGIN /etc/grub.d/20_memtest86+ ###
menuentry "Memory test (memtest86+)" {
linux16 /boot/memtest86+.bin
}
menuentry "Memory test (memtest86+, serial console 115200)" {
linux16 /boot/memtest86+.bin console=ttyS0,115200n8
}
### END /etc/grub.d/20_memtest86+ ###
#30_os-prober
或30_others 为系统自动查找并添加其他系统菜单项,按windows ,linux ,macos 顺序

# 查找并添加,支持windows 7 识别
### BEGIN /etc/grub.d/30_os-prober ###
### END /etc/grub.d/30_os-prober ###
### BEGIN /etc/grub.d/30_otheros ###
# This entry automatically added by the Debian installer for a non-linux OS
# on /dev/sda1
menuentry "Microsoft Windows XP Professional" {
set root=(hd0,1)
search --no-floppy --fs-uuid --set e852-230b
drivemap -s (hd0) $root

# 对以ntldr 引导的系统如win2000 ,xp ,win2003 ,因其引导机制只能从第一硬盘启动,系统会自动添加# 映射命令,对vista 和win7 就没有这句命令
chainloader +1
}
### END /etc/ grub.d/30_otheros ###
#40_custom
为自定义的启动项,如启动cdlinux
### BEGIN /etc/grub.d/40_custom ###

menuentry "CDLinux"{

set root=(hd0,8)

linux /CDlinux/bzImage root=/dev/ram0 vga=791 CDL_LANG=zh_CN.UTF-8

initrd /CDlinux/initrd

}
### END /etc/grub.d/40_custom ###

定制个性化的配置文件,可以加入背景图片,使用中文字符,让启动画面独具特色,而不是单调的黑、白、蓝三色。下面是一张经美化启动画面:




四、脚本修改

该怎样定制个性化的配置文件呢 ?

系统安装完成后,用户就会发现 /boot/grub/grub.cfg 文件只有 root 权限可读,如果要直接修改 grub.cfg 文件,要先修改其权限。好不容易把 grub.cfg 修改好了,系统内核或 grub 升级时,会自动执行 update-grub grub.cfg 文件就会被打回原形,如何保证修改后的配置文件能一直保留下来呢?

其实不用修改grub.cfg ,只要把个性化配置写入/etc/default/ 目录下的grub 和/etc/gurb.d 目录下的脚本文件,以后不管升级内核或者是升级grub 所执行的update-grub ,都会按要求创建个性化的grub.cfg

1 、首先看下 /etc/default/grub ,先从应用程序-附件里打开终端,输入

            sudo gedit /etc/default/grub

                  用户密码



看看打开的文件可作什么修改:


# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.

GRUB_DEFAULT=0 ->设置默认启动项,按menuentry顺序。比如要默认从第四个菜单项启动,数字改为3,若改为 saved,则默认为上次启动项。
GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true ->隐藏菜单,grub2不再使用,不管
GRUB_TIMEOUT="3" ->设置进入默认启动项的等候时间,默认值10秒,按自己需要修改
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" ->添加内核启动参数,这个为默认
GRUB_CMDLINE_LINUX="noresume" ->手动添加内核启动参数,比如 acpi=off noapic等可在这里添加

# Uncomment to disable graphical terminal (grub-pc only)
#GRUB_TERMINAL=console ->设置是否使用图形介面。去除前面#,仅使用控制台终端,不使用图形介面

# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'
#GRUB_GFXMODE=640x480 设定图形介面分辨率,如不使用默认,把前面#去掉,把分辨率改为800x600或1024x768

# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
#GRUB_DISABLE_LINUX_UUID=true ->设置grub命令是否使用UUID,去掉#,使用root=/dev/sdax而不用root=UUDI=xxx

# Uncomment to disable generation of recovery mode menu entrys
#GRUB_DISABLE_LINUX_RECOVERY="true" ->设定是否创建修复模式菜单项

2、再看下/etc/grub.d目录下的脚本文件:




00_header,05_debian_theme,10_linux,20_memtest86+,30_os- prober,40_custom这五个脚本对应grub.cfg上的各个部分,有的版本的grub可能把30_os-prober分出另一部分为 30_os-others,这并不影响。怎样修改这些脚本文件才能保证不会破坏update-grub的运行,又能让生成的grub.cfg合乎意愿呢? 其实很简单,只要在脚本文件中找到
    cat << EOF
    ********
    ********
    ********
    EOF
这类语句,EOF中间的文本会直接写入grub.cfg中相应位置,所以个性化的语句添加在这地方就可以了。

其他使用变量的语句不要随变做修改,除非你清楚修改后会有什么结果。


1)看看00_header,一样在终端中打开sudo gedit /etc/grub.d/00_header,找到这部分


cat << EOF
load_env ->加载由save_env保存在grubenv的变量
set default="${GRUB_DEFAULT}" ->使用/etc/default/grub中的设定值
if [ \${prev_saved_entry} ]; then
  saved_entry=\${prev_saved_entry}
  save_env saved_entry
  prev_saved_entry= ->变里设置的变量由下句保存到grubenv
  save_env prev_saved_entry
fi ->这里回车添加新行后可插入需要添加的模块
insmod jpeg ->添加背景图片格式支持,如jpeg,png,tga等。
insmod fat ->添加文件系统格式支持如fat,ntfs,也可在menuentry下添加
EOF

再看看最后这一段


cat << EOF
if [ \${recordfail} = 1 ]; then
  set timeout=-1 ->设定为若有启动失败记录,就显示菜单,需手动选择才能启动选择项
else
  set timeout=${GRUB_TIMEOUT} ->使用/etc/default/grub中的设定值
fi ->这行后添加行
background_image (hd0,7)/boot/images/002.jpg ->添加背景图片的绝对路径
EOF


2)05_debian_theme修改字体及背景颜色

先打开文件 sudo gedit /etc/grub.d/05_debian_theme

看这里

  cat << EOF
set menu_color_normal=white/black ->设置菜单项的字体和背景颜色
set menu_color_highlight=black/white ->设置选择项的字体和背景颜色。
EOF

可供使用菜单颜色有:
black,blue,green,cyan,red,magenta,brown,light- gray,dark-gray,light-blue,light-green,light-cyan,light-red,light- magenta,yellow,white


3)10_linux这部分是自动搜索当前系统,建立当前系统的启动菜单,包括系统头,内核等信息,不要随便修改,要使用个性菜单名,比如中文菜单,可适当添加:

先打开文件 sudo gedit /etc/grub.d/10_linux,找到


        cat << EOF
menuentry "$1" { ->双引号内可添加个性化字符,$1变量也可改为定值,如改为menuentry "启动 Ubuntu Karmic" {
        recordfail=1
        save_env recordfail ->如不要保存启动失败记录的,这两句可删除
EOF

  if [ "x$3" = "xquiet" ]; then
    cat << EOF
    set quiet=1
EOF ->启动画面不用splash,要用跳动字符的,这段可删除


个性化菜单项也可在这里修改,即上面的menuenrty "$1"不变,修改下面的数值:
  linux_entry "${OS}, Linux ${version}" \ ->可改为 linux_entry "启动 Ubuntu, Linux ${version}"\
      "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_EXTRA} ${GRUB_CMDLINE_LINUX_DEFAULT}" \
      quiet
  if [ "x${GRUB_DISABLE_LINUX_RECOVERY}" != "xtrue" ]; then
    linux_entry "${OS}, Linux ${version} (recovery mode)" \ ->可改为 linux_entry "启动 Ubuntu, Linux ${version} (修复模式)"\
    "single ${GRUB_CMDLINE_LINUX}"
  fi

注意只修改引号内的字符,前面的menuentry,linux_entry和后面的\不要做修改。


4)20_memtest86+自动添加内存测试启动项

打开文件 sudo gedit /etc/grub.d/20_memtest86+,找到


  cat << EOF
menuentry "Memory test (memtest86+)" { ->双引号内可添加个性字符如menuentry "启动 内存测试"
    linux16    $MEMTESTPATH
}
menuentry "Memory test (memtest86+, serial console 115200)" {
    linux16    $MEMTESTPATH console=ttyS0,115200n8
}
EOF
上面有两内存测试项,可删除其中一个。

5)30_os-prober查找其他分区中存在的系统并建立菜单项,依次为windows,linux,macos。

对于单系统,默认会隐藏菜单,可在这里去掉隐藏

先打开文件 sudo gedit /etc/grub.d/30_os-prober

单ubuntu系统会自动隐藏菜单,要取消隐藏菜单,可把这部份的三个timeout=0改为和/etc/default/grub中的timeout一致,比如timeout=10。
    cat <<EOF
if [ \${timeout} != -1 ]; then
  if keystatus; then
    if keystatus --shift; then
      set timeout=-1
    else
      set timeout=0
    fi
  else
    if sleep$verbose --interruptible 3 ; then
      set timeout=0
    fi
  fi
fi
EOF
      else
    cat << EOF
if [ \${timeout} != -1 ]; then
  if sleep$verbose --interruptible ${GRUB_HIDDEN_TIMEOUT} ; then
    set timeout=0
  fi
fi
EOF

下面这段自动查找并添加windows、linux和macos启动项,可在menuentry内修改个性字符
windows启动项
for OS in ${OSPROBED} ; do
   ......
  if [ -z "${LONGNAME}" ] ; then
    LONGNAME="${LABEL}"
  fi
    ......
      cat << EOF
menuentry "${LONGNAME} (on ${DEVICE})" { ->比如改为menuentry "启动 Windows XP" {
EOF

linux启动项
    linux)
      LINUXPROBED="`linux-boot-prober ${DEVICE} 2> /dev/null | tr ' ' '^' | paste -s -d ' '`"
    ......
        if [ -z "${LLABEL}" ] ; then
          LLABEL="${LONGNAME}"
        fi
        cat << EOF
menuentry "${LLABEL} (on ${DEVICE})" { ->比如改为menuentry "启动 Mandriva" {
EOF

macos启动项
    macosx)
      OSXUUID="`grub-probe --target=fs_uuid --device ${DEVICE} 2> /dev/null`"
        cat << EOF
menuentry "${LONGNAME} (on ${DEVICE})" { ->比如改为menuentry "启动 MacOS" {
EOF

6)40_custom 自定义启动项,按菜单标准格式在后面添加即可,如


#!/bin/sh
exec tail -n +3 $0
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.

menuentry "启动 Veket" {
    set root=(hd0,8)
    linux /veket/vmlinuz root=/dev/ram0 PMEDIA=hd
    initrd /veket/initrd.gz
}
menuentry "启动 CDLinux" {
    set root=(hd0,8)
    linux /CDlinux/bzImage root=/dev/ram0 vga=791 CDL_LANG=zh_CN.UTF-8
    initrd /CDlinux/initrd
}


3、把各项脚本修改保存后,在终端执行
sudo update-grub
再执行

sudo gedit /boot/grub/grub.cfg
看看配置文件是不是和你想要的一样了。
如果有不够满意的地方,重新修改下脚本文件,再执行sudo update-grub


4、 ubuntu 和windows 双系统,怎样让系统默认为从windows 启动

在 /etc/grub.d目录中的脚本文件的文件名都是以数字开头,这确定了在执行update-grub时各文件内容被执行的顺序,我们只要把 30_os-prober这个文件名的数字30改为05到10之间的数字即可(没多少可选06、07、08、09),比如改为08_os-prober, 这样创建出来的grub.cfg内的菜单项,windows的排序就会自动在ubuntu之前。


五、使用grub2常见错误及修复方法

1 、双系统,重装windows 引起没有ubuntu 启动项

使用安装版的windows 重装windows 时会改写mbr ,造成grub 丢失,可以用grub4dos 引导进入ubuntu 后修复grub 或用livecd 启动后修复grub

1 )用grub4dos 修复ubuntu

先下载最新版的grub4dos ,下载地址 http://nufans.net/grub4dos/ ,如果是 xp 系统,把 grub4dos 压缩包内的 grldr 复制到 C 根目录 下,修改 boot.ini ,在最后加上一行 c:\grldr = "grub4dos"

 



对 于vista/win7系统,把压缩包内的grldr.mbr和grldr复制到C盘根目录下,在C盘自己建立一个boot.ini文件,若有boot隐 藏分区的,先给boot分区分配盘符,再把grldr,grldr.mbr和boot.ini放在boot分区下,boot.ini内容如下:

     Win7使用软改激活的请不要使用此方法,否则会造成win7不能启动。

 



然后在根目录新建一个menu.lst,内容为

        timeout 0
        default 0

        title grub2
        find --set-root /boot/grub/core.img

        kernel /boot/grub/core.img
        boot

        (有/boot分区的改为

        find –set-root /grub/core.img

        kernel /grub/core.img)

重启后选择Grub4Dos会自动转入grub2,从grub2菜单项选择ubuntu启动后,在终端执行

        sudo grub-install /dev/sda

将grub装入第一硬盘的mbr,如要装入第二硬盘的mbr把sda改为sdb,第三硬盘为sdc,类推。

至于要把 grub 装到 sda sdb sdc mbr 上,需根据自己情况确定,看看要设置哪一块硬盘为启动盘,就把 grub 装到那块硬盘的 mbr 上。


2)用livecd修复grub

用ubuntu9.10的livecd启动后,打开终端

假如你的ubuntu的 / 分区是sda7,又假如 /boot分区是 sda6,用livecd启动,在终端下输入
    sudo -i
    mount /dev/sda7 /mnt
    mount /dev/sda6 /mnt/boot (如果没 /boot 单独分区这步跳过)
    grub-install --root-directory=/mnt  /dev/sda
  

     和前面一样,要装入第二硬盘的把sda改为sdb。


如果grub.cfg己丢失,或grub.cfg出现错误,需要重建的继续执行下面操作:

    mount --bind /proc /mnt/proc
    mount --bind /dev /mnt/dev
    mount --bind /sys /mnt/sys
    chroot /mnt update-grub
    umount /mnt/sys
    umount /mnt/dev
    umount /mnt/proc

    exit


3)用带grub启动的光盘或U盘修复

如果手上有grub启动的工具盘,用工具盘启动,在grub菜单上按c进入命令行状态,

在grub>提示符下输入

    grub>find /boot/grub/core.img (有/boot分区的用find /grub/core.img)

    (hdx,y) (显示查找到的分区号)

    grub>root (hdx,y)

    grub>kernel /boot/grub/core.img (/boot分区的用 kernel /grub/core.img)

    grub>boot

执行boot后能转入grub2菜单,启动ubuntu后,再在ubuntu终端下执行

    sudo grub-install /dev/sda (或sdb,sdc等)修复grub。

    如果ubuntu的启动分区使用ext4格式,要有支持ext4格式的grub才能修复。



4)没安装引导器的 grub4dos引导ubuntu的方法

    按第一步的方法使用 boot.ini 建立grub4dos 引导项,自己编写 menu.lst,内容如下
   
timeout 3
default 0

title Ubuntu 9.10
root (hdx,y)  --------> (hd0x,y) 为 /boot分区的分区号
kernel /vmlinuz-xxx-generic root=/dev/sdxy   ------->/dev/sdxy 为 / 分区的分区号

initrd /initrd.img-xxx-generic

 

没 /boot 分区的用

timeout 3
default 0

title Ubuntu 9.10
root (hdx,y)
kernel /boot/vmlinuz-xxx-generic root=/dev/sdxy
initrd /boot/initrd.img-xxx-generic


<span st

分享到:
评论

相关推荐

    GRUB2基础教程

    本书介绍了grub2的新特性、grub2安装与启动、grub2配置文件详解、相关脚本修改、以及grub2常见错误和修复方法。

    Grub2基础教程基础教程

    Grub2基础教程Grub2基础教程Grub2基础教程Grub2基础教程

    Grub2基础教程Grub2基础教程

    一、grub2新特性 二、grub2安装与启动 三、grub2配置文件详解 四、脚本修改 五、使用grub2常见错误及修复方法

    grub2基础教程-修订版

    一、grub2新特性 1、grub2和grub有很多不同的地方: a)图形接口 b)使用了模块机制,通过动态加载需要的模块来扩展功能 c)支持脚本语言,例如条件判断,循环、变量和函数 d)支持rescue模式,可用于系统无法引导的情况 e)...

    Grub2基础教程(新特性、安装与启动、配置文件详解等)

    Grub2基础教程。 一、 grub2 新特性 二、 grub2 安装与启动 三、 grub2 配置文件详解 四、脚本修改 五、使用 grub2 常见错误及修复方法

    grub2基础教程

    想要搞清楚grub2,必看此章!详细介绍grub2的各种基本功能与用法!

    grub2基础教程 by smallapple

    grub2基础教程 by smallapple

    GRUB基础教程.pdf

    GRUB基础教程.pdf

    grub_2_基础_教程(修正版).pdf

    一、grub2新特性 二、grub2安装与启动 三、grub2配置文件详解 四、脚本修改 五、使用grub2常见错误及修复方法

    Grub4dos 应用教程

    基础及提高,看完后可以熟练使用grub工具。

    系统引导管理器GRUB

    系统引导管理器GRUB,基础教程方便使用

    Linux基础教程

    Linux基础教程 总目录 Ubuntu18.04LTS安装与优化 Linux基础 Markdown Vim 1. Ubuntu18.04LTS安装与优化 目录 准备 下载光盘映像 启动盘刻录 分区准备 进入BIOS 开始安装 优化 换源 系统美化 更换主题 更换桌面环境...

    Linux零基础初级教程

    主讲Linux基本技能(Ubuntu初步、安装、Linux基础、Linux系统简介、命令行、Ubuntu系统简介、软件安装、Xwindow简介、系统管理、简明VIM教程、引导管理器Grub、FAQ)。随着Linux日益强大,越来越多的人接触Linux,但...

    Ubuntu 完全教程(中文版).pdf

    Linux 基础;Linux 系统简介;命令行;Ubuntu 系统简介;软件安装;Xwindows 简介;系统管理;系统信息;文件管理;权限管理;压缩解压;搜索;其他;用户管理;进程管理;磁盘和内存管理;网络和硬件管理;简明 VIM...

    linux系统与网络管理教程.txt

    第2章 文件和磁盘管理. wmv 第3章 常见软件设置和硬件.wmy 第4章 用户和组管理.wmv 第5章 软件包管理.wmv 第6章GRUB引导器. wmv 第7章 Linux中的进程管理.wmy 第8章 远程登录管理.wmv 第9章 TCPIP网络基础. wmv 第10...

    Linux使用教程(教程)

    目 录 一、Linux基础 5 1.什么是Linux? 5 2.什么是自由软件、GNU和GPL? 5 3.从技术上说,Linux有什么优点? 5 4.我需要学习Linux吗? 5 5.Linux会取代Windows吗?...6.Linux与WindowsNT谁更好...十六、GRUB使用说明 131

Global site tag (gtag.js) - Google Analytics