windows与linux系统引导分区系统修复
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
【转】 [命令]windows与linux系统引导分区系统修复
2011-09-08 16:26
转载自分享
最终编辑孤独散步者的梦
环境说明:
windows与linux系统并存情况下:
一、修复Linux的GRUO引导菜单:
在windows重装,卸载之后, linux引导分区修复,因为windows清除MBR中的多重开机管理程序,重新安装GRUB即可:
用Linux启动盘,或安装盘或livecd,引导进入救援模式:
插入linux系统盘是第一张,然后在出现界面时按F4或F5键,进入linux rescue模式,或直接输入“linux rescue”,再提示设定语系(选择English),键盘类型(选择US),选择是否启用网卡(选择NO),选择如何挂载Linux分区(一般选择Rdad-Only),然后进入sh#命令行!
(1)、方法一:然后进入sh#命令行!
输入:“chroot /mnt/sysimage”(切换目录);
输入:“grub-install /dev/hda”(重装GRUB,/dev/hda指linux系统安装在第一硬盘)
(2)、方法二:进入#sh>后:
sh#grub (输入grub回车)
grub>root (hd0,1) (注:这里hd0指第一硬盘,1指第一分区,不清楚按TAB键。)grub>setup (hd0) (注:指安装GRUO在第一硬盘上)
二、修复Windows引导菜单:
在linux系统删除之后,修复系统主引导扇区,出windows引导菜单方法:
(1)、用启动盘进入DOS,执行:
A:\> fdisk /mbr
(2)、用windows2000以上的安装光盘,引导进入“系统故障修复台”:
C:\windows\>fixmbr
(3)、使用SPFDisk程序修复mbr:
到下载SPFDisk软件,做成启动盘!引导系统!
A:\>spf2k3rc (执行exe程序)
A:\>spfdisk /mbr
GRUB使用指南kes,2007-06-15 09:29:13
GRUB使用指南
GRUB是一个多重开机管理工具,它可用来激活Linux、BSD、OS/2、BeOS与
Windows95/98/NT等众多操作系统,GRUB是一个独立于操作系统之外的开机程序,并不像LILO是依靠Linux才能进行设定与维护,也提供了类似Bash的命令列模式,让使用者更方便地设定GRUB。
取得与安装GRUB:
GRUB的原始码压缩档可至GNU的ftp站台( ftp:///gnu/GRUB/)下载最新版本,下载回来后可存放在/usr/local/src/目录下并将其解压缩:
cp grub.tar.gz /usr/local/src/
tar zxvf grub.tar.gz
在GRUB的目录下执行configure文件、make与make install,如下:
./configure
make
make install
当make install完成后GRUB也已顺利安装完毕,并有三个指令文件也被安装至系统中:grub、grub-install与mbchk。而GRUB的相关档案通常被安装到/usr/local/share/grub的目录下。
接下来先假设硬盘分割如下:
hda1:Windows98 (hd0,0)
hda2:Slackware Linux (hd0,1)
hdb1:Mandrake Linux (hd1,0)
注意的是GRUB认硬盘的方式跟Linux是不一样的,在Linux中第一颗IDE硬盘是hda(SCSI:sda)以此类推,而GRUB则将第一颗IDE硬盘视为hd0(SCSI:sd0)以此类推;在Linux中第一颗IDE硬盘的第一个分割区是hda1(SCSI:sda1)以此类推,而GRUB将第一颗IDE硬盘的第一个分割区表示为hd0,0(SCSI:sd0,0)以此类推。
制作GRUB激活磁盘:
制作GRUB激活磁盘其实不难,首先需要两个必备档案,分别是stage1与stage2,可以在GRUB的安装目录下的i386-pc目录中找到这两个档案,以及一片已格式化的干净磁盘,然后依照下面的制作步骤就可制作出GRUB的激活磁盘:
cd /usr/local/share/grub/i386-pc/
dd if=stage1 of=/dev/fd0 bs=512 count=1
dd if=stage2 of=/dev/fd0 bs=512 seek=1
制作好了GRUB的开机磁盘之后,就可以试着使用GRUB来进行多重操作系统的开机激活。
利用GRUB开机磁盘激活系统:
接着重新激活系统并设定BIOS由磁盘开机,然后就可以看到grub>的命令列正等待指令,这就是GRUB的命令列环境,表示GRUB已顺利地从激活磁盘加载并正常运作当中了。现在假设要激活上述的Slackware Linux的话,在GRUB提示符号下键入如下的指令,如此就会进入Slackware Linux系统:
grub> root (hd0,1)
grub> kernel /boot/vmlinuz root=/dev/hda2 ro
grub> boot
root指令会mount后面参数的硬盘分割区位置。当mount完成后kernel指令会加载其参数的系统核心,Linux的核心通常是在/boot目录下名为vmlinuz的档案。最后的两个参数都是要传给刚加载的核心,root=/dev/hda2是告诉核心根目录的位置是在/dev/hda2,并要求挂载成只读(ro)。
最后执行boot指令以进行Slackware系统的开机激活。同理,位在hdb1上的Mandrake Linux 也可以用类似的方式激活:
grub> root (hd1,0)
grub> kernel /boot/vmlinuz root=/dev/hdb1 ro
grub> boot
现在root指令改mount (hd1,0)的分割区,此分割区就是Mandrake Linux的根目录位置。然后kernel指令加载Mandrake的核心文件,告诉核心Mandrake系统的根目录是在
/dev/hdb1,并要求挂载成只读。最后以boot指令进行系统的激活。
以上的方式都可以顺利地激活Linux系统,但是对Windows系统可是不管用的,要激活在hda1上的Windows98的话,则要换些指令才行得通,请在GRUB命令列中依序键入下列指令就可以进入Windows98:
grub> rootnoverify (hd0,0)
grub> chainloader +1
grub> makeactive
grub> boot