📄 安装grub.htm
字号:
<br>另一个的链。这种链式装入技术可以用于引导任何版本的 DOS 或 Windows。如果你在计
<br>算机中装有win98,winme,win2k,winxp的话,chainloader会把引导权交与win的NTLoader
<br>来引导.
<br>(三)Grub启动盘的制作
<br>要制作引导盘,需执行一些简单的步骤。首先,在新的软盘上创建 ext2 文件系统。然
<br>后,将其安装,并将一些 GRUB 文件复制到该文件系统,最后运行 "grub" 程序,它将
<br>负责设置软盘的引导扇区。
<br>将一张空盘插入 1.44MB 软驱,输入:
<br># mke2fs /dev/fd0
<br>创建了 ext2 文件系统后,需要安装该文件系统:
<br># mount /dev/fd0 /mnt/floppy
<br>现在,需要创建一些目录,并将一些关键文件(原先安装 GRUB 时已安装了这些文件)
<br>复制到软盘:
<br># mkdir /mnt/floppy/boot
<br># mkdir /mnt/floppy/boot/grub
<br># cp /boot/grub/stage1 /mnt/floppy/boot/grub
<br># cp /boot/grub/stage2 /mnt/floppy/boot/grub
<br>再有一个步骤,就能得到可用的引导盘。
<br>在linux bash中,从 root 用户运行"grub",该程序非常有趣并值得注意,因为它实际
<br>上是 GRUB 引导装入器的半功能性版本。尽管 Linux 已经启动并正在运行,您仍可以运
<br>行 GRUB 并执行某些任务,而且其界面与使用 GRUB 引导盘或将 GRUB 安装到硬盘 MBR
<br> 时看到的界面(即GRUB控制台)完全相同。
<br>在 grub> 提示符处,输入:
<br>grub> root (fd0) (root 与(fd0)之间有空格,下同)
<br>grub> setup (fd0)
<br>grub> quit
<br>现在,引导盘完成了。
<br>(四).恢复被windows破坏的grub. (以Red hat 9为例)
<br>如果你用grub来引导linux和windows,当windows出毛病重新安装后,会破坏MBR中的grub
<br>,这时需要恢复grub. (相当于用98启动软盘或光盘启动到实DOS下,用命令fdisk/mbr
<br>清除/mbr里grub的信息)
<br>1.把linux安装光盘的第一张放到光驱,然后重新启动机器,在BOIS中把系统用光驱来引
<br>导。
<br>2.等安装界面出来后键入linux rescue并按回车,进入linux rescue模式。
<br>3.一系列键盘以及几项简单的配制,过后就[继续]了。。。这个过程,我不说了,比
<br>较简单。
<br>4.然后会出现这样的提示符:sh# 。你可以到/mnt/下面看到一个sysimage这么目录,进去以后,就是你安装linux的/分区. 使用命令chroot将根分区变为当前目录的根分区:
<br>chroot /mnt/sysimage
<br>5.我们就可以操作GRUB了.输入grub:
<br>sh#grub
<br>会出现这样的提示符:
<br>grub>
<br>我们就可以在这样的字符后面,输入:
<br>grub>root (hdX,Y)
<br>grub>setup (hd0)
<br>如果成功会有一个successful......
<br>这里的X,如果是一个盘,就是0,如果你所安装的linux的根分区在第二个硬盘上,那X
<br>就是1了;Y,就是装有linux系统所在的根分区。 setup (hd0)就是把GRUB写到硬盘的M
<br>BR上。
<br>(五).用NTLoader来引导linux.
<br>如果你在安装linux时没有选择安装grub,不必着急,现在我们来看看如何在安装linux后
<br>安装grub.并用windows的NTLoader来引导linux.
<br>1. 安装grub
<br>我用的grub是Redhat带的grub安装包: grub-0.92-7.rpm
<br>安装: rpm -ivh grub-0.92-7.rpm
<br>其他安装方式也一样,只要你安装上grub就行了.(RH9缺省用的grub, 1,2步骤可以省了.)
<br>2. 建立grub的环境
<br>cp /usr/share/grub/i386-pc/* /boot/grub
<br>3. 生成grub的配置文件/boot/grub/menu.conf
<br>按照上面所讲的grub.conf来生成一个配置文件.
<br>注意了, 这里我的linux在/dev/hda8,所以menu.conf那些分区位置为(hd0,7),
<br>你的可能不一样了。下面第3步install的中的分区位置也应该和你的系统一致.
<br>3. 安装grub至Linux分区boot
<br>将grub的stage1安装到/dev/hda8的boot扇区(hd0,7). 过程如下:
<br>/sbin/grub (运行grub)
<br>grub> install (hd0,7)/grub/stage1 d (hd0,7) (hd0,7)/boot/grub/stage2 p (hd0,7) /grub/menu.conf
<br>(注意,上面"grub>"为grub的提示符.)
<br>4. 取得grub的boot信息
<br>过程如下:
<br>dd if=/dev/hda8 of=/grub.lnx bs=512 count=1
<br>if 是input_file of 是output_file bs是 字节数 count 是 执行的次数
<br>这样在根目录下得到grub的引导信息,只要用NT Loader来加载它就行了.
<br>5. 将上面得到的grub.lnx弄到Windows的C盘根目录下
<br>可以先把grub.lnx弄得软盘上,然后启动windows,拷贝到C:\; 情况允许也可以直接在Li
<br>nux下拷贝到C:了. 我的C盘(即设备/dev/hda1)为FAT32, 可以直接从Linux下弄过去了.
<br> 如下:
<br>mount -t vfat /dev/hda1 /mnt/c
<br>cp /grub.lnx /mnt/c
<br>umount /mnt/c
<br>6. 修改NT Loader的boot.ini
<br>在其中加入一行: C:\grub.lnx="Redhat Linux - GRUB"
<br>加入后boot.ini的内容如下:
<br>[boot loader]
<br>timeout=15
<br>default=C:\boot.lnx
<br>[operating systems]
<br>multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Profession
<br>al" /fastdetect
<br>[VGA mode]" /basevideo /sos
<br>C:\grub.lnx="Redhat Linux - GRUB"
<br>OK. 可以用NT Loader加载Linux了, 其实上面过程基本思想就是用NT Loader来加载grub的引导区(grub.lnx), 其中的关键就是grub的引导区的获取. 。
<br>(六)活用grub的交互功能
<br>grub具有强大的交互功能.学会了将会使你受益非浅!
<br>1.grub没有显示菜单怎么办?
<br>当开机后进入grub界面但没了菜单,只剩下一个grub>提示符。
<br>
<br>〈1〉grub>cat (hd0,7)/grub/grub.conf(为了看参数,或者用fdisk -l显示当前分区情况)
<br>〈2〉grub>root (hd0,7)
<br>〈3〉grub>kernel (hd0,7)/boot/vmlinuz-2.6.6-1-686-smp root=LABEL=/ ro vga=785
<br>〈4〉grub>initrd (hd0,7)/initrd-2.4.18-14.img
<br>〈5〉grub>boot
<br>以上这个方法也可以用于测试新编译的内核.
<br>2.进入单用户模式.
<br>有时不小心把root用户密码忘了,只能进入单用户模式来重新设置root密码。
<br>进单用户模式的具体方法为:在出现grub引导界面的时候,按e,然后选中kernel/boot/vmlinuz-2.6.6-1-686-smp root=LABEL=/ ro vga=785 splash=silent这一项再按e编辑他,把他该成kernel/boot/vmlinuz-2.6.6-1-686-smp root=LABEL=/ single ro vga=785 splash=silent之后按回车退出,再按b。
<br>或者在在出现grub引导界面的时候然后按照上面的方法进行,只是在第三步要在后面加入single参数.
<br>3. 设置GRUB的密码
<br><1> 进入grub字符cmd-line
<br>#grub
<br>grub> md5crypt
<br>Password: ********** 你的密码
<br>Encrypted: $1$U$JK7xFegdxWH6VuppCUSIb grub给出了密文
<br>复制粘贴记下密文备用,如果忘记密文也无妨,重新md5crypt一下,因为同一个密码,grub给出的密文不一样
<br>grub> reboot
<br>#
<br>
<br><2> 编辑menu.lst
<br>#vi /boot/grub/menu.lst
<br>添加一行:password --md5 $1$U$JK7xFegdxWH6VuppCUSIb
<br>password命令的位置可以不限,只要在所有title引导项之前就行了,然后是空格,两条短横线和md5,又是空格,你的密文。
<br>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -