`
touchmm
  • 浏览: 1038447 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

Grub引导Linux + Windows

阅读更多

标题:Grub + Linux + Windows


正文:

安装了一个双系统,分别是Windows 2003 Sever 和 RedFlag 6.0 桌面版。

遇到问题做记录,仅备忘。


1.存在问题:

把Grub的引导程序写到Linux系统第一个分区的引导区,当系统启动就直接进入进入Windows系统,Grub未曾出现。

把Grub的引导程序写到磁盘主引导扇区(MBR),系统启动显示grub>提示符。仍然没有Grub菜单。

2.MBR受损修复:Win98启动DOS后,使用fdisk /mbr 命令重写主引导记录即可。

3.重新把Grub装在Linux第一个分区的引导区中,然后在Windows下,使用DiskGenius工具把Linux的/boot复制出来,查

看/boot/grub/grub.conf和/boot/grub/menu.lst,未发现异常:

---------------------

#boot=/dev/hda8
default=1
timeout=5
gfxmenu (hd0,7)/boot/message
title RedFlag Linux (2.6.22.6-1)
root (hd0,7)
kernel /boot/vmlinuz-2.6.22.6-1 ro root=LABEL=/1 vga=788 splash=silent
initrd /boot/initrd-2.6.22.6-1.img
title Windows
rootnoverify (hd0,0)
chainloader +1

---------------------

4. 继续尝试,用Linux6安装光盘引导自动修复,未果。

5.看资料说修复GRUB如下操作:

1).安装盘引导
2).boot:linux rescure
3).sh#grub
4).grub>root (hdX,Y)
grub>setup (hd0)
5).exit退出linux rescure,重启。


但以linux救援模式进入后,执行sh#grub命令后,却提示:

Probing Devices to Guess BIOS Drives. This May Take a Long Time.

经查设备没有问题。

6.尝试用ntldr实现双系统的引导

原理:ntldr文件是由配置文件boot.ini提供工作参数的,位于Windows XP系统分区的根目录下,具有隐藏、系统、只

读属性。把Linux的引导记录作为一个文件备份到C盘的根目录下,并相应地在boot.ini文件里添加一个项目来指向它,

就可以实现双重系统了。

在Windows环境下备份Linux引导扇区操作:


1)找出Linux引导扇区的扇区数,再将该扇区保存为一个备份文件。

使用DiskGenius工具,选择Linux文件分区的引导扇区,查看“起始扇区号”,记录下来,如:108551268。

用Dskprobe备份引导扇区:工具dskprobe.exe在Windows 2000/XP安装光盘的\SUPPORT\TOOLS目录下的SUPPORT.cab

压缩包中。

运行Dskprobe.exe后,选择菜单“Drives”→“Pysical Drive”,弹出“Open Pysical Drive”对话框。

对话框的“Available Physical Drives”列表框中列出了所有的磁盘。

双击选择的物理硬盘,激活“Close Handle”和“Set Active”两个按钮,然后单击“OK”按钮返回到主界面。

选择菜单“Sectors”→“Read”,打开“Read Sectors”对话框。

在“Starting Sector”文本框里输入刚才通过DiskGenius工具记录的“起始扇区号”(如108551268),在

“Number of”文本框里输入1,然后单击“Read”按钮,此时显示Linux的/boot分区的引导扇区的内容。

选择菜单“File”→“Save as”,指定保存位置和文件名(如:C:\bootsect.dsk)即可。


2)修改C:\boot.ini文件。

编辑C:\boot.ini文件,添加C:\bootsect.dsk="RedFlag Linux 6.0"。

重启系统,发现仍没有Grub启动菜单,系统停留在grup>提示符。

7.使用Grub for DOS引导多系统

无奈之下只好用Grub for DOS了,版本0.4.2。

1)把Grub for DOS所有文件Copy至C:\boot\grub

2)把C:\boot\grub\grldr文件Copy至C:\

3)编辑C:\boot.ini文件,添加C:\grldr="Grub Menu"。

4)编辑C:\boot\grub\menu.lst文件,设置内容。

可以参考把Linux系统根分区内的/boot/grub/menu.lst直接移植过来使用。

也可以在Grub for DOS的menu.lst文件内,通过configfile直接引入Linux系统根分区内的/boot/grub/menu.lst菜

单使用。

即在Grub for DOS的menu.lst文件内内这样设置:

---------------------

title GNU Grub menu

configfile (hda0,X)/boot/grub/menu.lst

---------------------

或者编辑menu.lst文件形式如下:

---------------------

#title Grub Menu
#configfile (hd0,7)/boot/grub/grub.conf

default=0
timeout=30

splashimage (hd0,0)/boot/grub/chinese/bj2008.xpm.gz #设置图片
fontfile (hd0,0)/boot/grub/fonts.gz #设置字体,显示汉字

gfxmenu (hd0,7)/boot/message

title 红旗Linux 6
root (hd0,7)
kernel /boot/vmlinuz-2.6.22.6-1 ro root=LABEL=/1 vga=788 splash=silent
initrd /boot/initrd-2.6.22.6-1.img

title Windows 2003 Server
rootnoverify (hd0,0)
chainloader +1

title 从CDROM启动
cdrom --init
map --hook
chainloader (cd0)
boot

title 重启
reboot

title 关机
halt

title 退出
rootnoverify (hd0,0)
makeactive
chainloader +1

---------------------

重启系统,Grub启动,引导Windows和RedFlag Linux,一切正常。

PS1:忘记root密码的处理方法:

解决方法一:

  1. 用Linux安装盘启动系统,输入linux rescue以修复模式启动系统;

  2. 系统启动完毕后,会将系统mount到/mnt/sysimage;

  3. 在提示符后敲入命令:

  chroot /mnt/sysimage

  4. 敲入命令:passwd,更改密码

  5. 连续敲入两次exit,重起系统后,即可用新设置密码登录。


  除了用光盘引导rescue模式,还有一种方法是用启动装载器来进入单用户模式:


 解决方法二:

使用Grub移动系统启动,进入启动画面之后,输入“e”,把光标移动到kernel ...那一行。

再输入“e”,在kernel 一行的最后加上空格single,回车。

  输入“b”,启动系统,即进入单用户模式,此时候可以用passwd命令修改密码。


PS2:红旗Linux进入X后看不到鼠标的光标。

现象;偶尔在状态栏会显示光标的图标,或者是一个虚线闪烁的方块,或者不显示,但是左键和右键均能够使用。

解决办法:多是显卡驱动的问题。自动探测到的是via,可以使用vesa 或 intel试试。

操作如下:

#vi /etc/X11/xorg.config

把:
Section "Device"
Identifier "Videocard0"
Driver "via"

改为:
Section "Device"
Identifier "Videocard0"
Driver "vesa"

重启机器后,就可以顺利用startx。

或者鼠标右击,选择“显示配置”→“显卡驱动”,把via改为vesa,保存后重启。


by JRQ

2009/02/27夜.京.

分享到:
评论

相关推荐

    Grub4Dos+Grubinst

    3. **配置Grub4Dos**:在U盘的Grub4Dos配置文件中添加引导Linux ISO的菜单项。 4. **安装Grubinst**:使用Grubinst将Grub4Dos安装到硬盘的MBR,以便从硬盘启动时能见到Grub4Dos的启动菜单。 5. **启动并安装Linux**...

    Linux卸载后如何删除Grub引导方法

    当Linux被卸载后,若希望系统直接启动至Windows而不显示Grub引导界面,可以通过恢复主引导扇区(MBR)来实现这一目标。具体步骤如下: - 首先,需要准备一张win98的引导盘或DOS引导盘,并使用它引导系统进入纯DOS模式...

    grub引导linux启动.zip

    2. **GRUB引导流程** - BIOS或UEFI初始化:计算机启动时,BIOS或UEFI会寻找引导程序,通常位于MBR(主引导记录)或GPT(GUID分区表)的引导扇区。 - GRUB加载:GRUB的Stage 1被加载到内存,然后读取Stage 2,...

    linux 在grub2中添加windows启动项

    这篇博客“在GRUB2中添加Windows启动项”将指导我们如何使Linux系统能够识别并引导安装在同一个硬盘上的Windows操作系统。这个过程涉及到对GRUB2配置文件的编辑以及对系统引导扇区的更新。 首先,我们需要理解GRUB2...

    Linux + Windows HOWTO

    - **引导管理器**: 选择如GRUB或LILO等工具来管理不同操作系统的启动。 #### 实际经验 - **添加Linux到预装Windows 98的新电脑**:在一台预装Windows 98的电脑上安装Linux的具体步骤和注意事项。 - **配置**: ...

    Windows-grub引导扇区程序

    总结,Windows中的GRUB引导扇区程序为多系统用户提供了灵活的启动选择,同时也需要一定的技术知识来配置和维护。了解GRUB的工作原理以及如何在Windows环境下安装和使用,将有助于更好地管理和利用多操作系统环境。在...

    删除Linux后从Grub启动Windows

    通过修复MBR、BCD或使用专门的引导管理工具,用户可以顺利地从删除Linux后的Grub引导直接进入Windows系统。在进行这些操作时,务必备份重要数据,并确保对硬盘结构有清晰的理解,以避免不必要的麻烦。

    在windows下用于引导linux的grub的文件

    而"grldr"是GRUB的一个变体,通常与Grub4Dos工具一起使用,适用于在Windows环境下引导Linux。 总之,`grldr`和`menu.lst`是Windows下引导Linux系统的关键组件,它们配合工作,使用户能够在不重新分区或修改现有...

    Grub4dos-0.4.4+Grubinst-1.1-bin-w32+ linux安装材料

    Grubinst是GRUB安装程序,用于将GRUB引导加载器安装到硬盘的MBR(主引导记录)或其他位置。Grubinst-1.1-bin-w32是针对Windows 32位系统的版本,使得用户无需在DOS环境下也能安装和管理GRUB。这个工具对于那些不熟悉...

    用windows引导linux

    有时,用户可能希望在一台计算机上同时拥有这两种系统,这时就需要了解如何通过Windows来引导Linux。本文将深入探讨“用Windows引导Linux”的技术细节。 首先,我们需要理解“引导”这一概念。引导是指计算机开机后...

    ubuntu硬盘安装,修复Ubuntu的grub引导,修复windows7的引导.txt

    但是,如果先安装Ubuntu再安装Windows,Windows会覆盖MBR中的grub引导,导致无法启动Linux。 **修复步骤如下:** 1. **安装和配置grub4dos:** - 参考硬盘安装Ubuntu的步骤1-2。 2. **手动启动Ubuntu:** - ...

    修复grub Xp+Win7

    GRUB是Linux系统中常见的引导加载器,用于在计算机启动时提供一个菜单,让用户选择要加载的操作系统。当同时安装了XP和Win7,GRUB通常会取代XP的NTLDR和Boot.ini文件,成为多系统启动的入口。 2. **问题出现** ...

    LINUX教程之4-linux与windows双系统安装

    6. **GRUB引导加载器**:Linux安装程序会自动安装GRUB引导加载器,它允许在启动时选择要运行的操作系统。确保GRUB安装在主硬盘的MBR(主引导记录)或EFI系统分区。 7. **启动修复**:有时,Linux安装可能会导致...

    用Windows引导Linux

    用Windows引导Linux <br> 使用双操作系统最怕的就是Windows系统中毒崩溃,重装系统后Windows的MBR把Linux的Grub引导覆盖掉,这时你要是没有Linux系统盘的话要想修复Linux引导,怎么办呢?我给大家一个好东西,...

    linux中修复GRUB

    ### Linux中修复GRUB引导加载器 在Linux系统中,GRUB(Grand Unified Bootloader)是一种常见的引导加载器,用于启动操作系统。然而,在某些情况下,GRUB可能会出现故障,导致无法正常启动系统。例如,安装了双系统...

    GRUB 2 引导硬盘安装 Windows 7 和 openSUSE 13.1

    GRUB 2是一种流行的引导加载程序,广泛应用于Linux系统中。...通过GRUB 2引导硬盘安装Windows 7和openSUSE 13.1,以及使用SystemRescueCD进行系统备份和维护,体现了Linux系统强大的灵活性和多功能性。

    用Linux系统的安装盘来修复GRUB引导器

    用 Linux 系统的安装盘来修复 GRUB 引导器 本文介绍了如何使用 Linux 系统的安装盘来修复 GRUB 引导器。该解决方案适用于在安装 Windows 时,不小心将 GRUB 或 LILO 从 MBR 上清除的情况。 GRUB 是一个开源的引导...

    Linux系统下双硬盘多系统引导深入探究

    当需要在Linux和Windows之间进行多系统引导时,NT OS Loader无法直接引导Linux,必须通过GRUB或LILO作为中介。具体步骤如下: 1. 在主引导记录(MBR)或特定分区的引导扇区安装GRUB或LILO,使其能够启动Linux。 2. ...

    grub 引导文件 一点资料

    ### GRUB引导加载器:连接操作系统与硬件的关键 GRUB(Grand Unified Bootloader)作为一款功能强大的引导加载器,其重要性在于它充当了操作系统与硬件之间的桥梁,负责在计算机启动时选择并加载正确的操作系统内核...

    Grub硬盘引导安装Linux相关文件

    - **修复MBR**:使用专用工具如`grub-install`或`boot-repair`来修复MBR中的GRUB引导记录。 总之,GRUB作为Linux启动过程中的关键组件,其正确安装和配置对系统的正常运行至关重要。理解GRUB的工作原理和相关文件...

Global site tag (gtag.js) - Google Analytics