修复grub方法与知识.doc
6页方法一:光盘修复1、使用LiveCD引导进入Ubuntusudo grub输入管理员密码,然后就看到了grub>这样的提示3、在终端输入(看完这段再输入,别急):root(hdX,Y)4、在终端输入:setup(hd0)5、在终端输入:quit6、重启或者1.把linux安装光盘的第一张放到光驱,然后重新启动机器,在BOIS中把系统用光驱来引导 2.等安装界面出来后,按[F4]键,也就是linux rescue模式 3.一系列键盘以及几项简单的配制,过后就[继续]了这个过程,我不说了,比较简单 4.然后会出现这样的提示符: sh# 5.我们就可以操作GRUB了.输入grub: sh#grub 会出现这样的提示符: grub> 我们就可以在这样的字符后面,输入: grub>root (hdX,Y) grub>setup (hd0) 如果成功会有一个successful...... 这里的X,如果是一个盘,就是0,如果你所安装的linux的根分区在第二个硬盘上,那X就是1了;Y,就是装有linux系统所在的根分区 setup (hd0)就是把GRUB写到硬盘的MBR上 方法二:使用grub4dos下载grub4dos提取两个文件grldr和menu.lst,把它们放到C盘根目录,然后修改boot.ini在boot.ini最后添加一行:C:\grldr=linux bootgrldr会搜索C盘根目录寻找menu.lst文件。
又到了menu.lst了,用记事本打开menu.lst,设置好vmlinuz和initrd路径,一般看起来是这样的:title Red Flag Linuxroot (hd0,n) #[此处的hd0是假设你放linux在第一块硬盘上,n是放linux的第几个分区]kernel /boot/vmlinuz ro root=LABEL=/initrd /boot/initrd.imgBoot可能不爽的地方:更新内核以后,需要手动同步Windows的C盘的menu.lst的内容否则无法用新内核启动解决方法很简单,grub很强大,支持一条configfile的命令:把你的C盘根目录的menu.lst改成timeout 5configfile (hd0,6)/grub/menu.lst这样,grldr就会重新加载(hd0,6)/grub目录下的menu.lst,显示这个menu.lst的启动菜单方法三:使用boot.ini此方法是用NTLoader1、在设备管理器(硬件信息)中查到我的Ubuntu被安装在/dev/sda10上(和Grub的计数方式不同,是从1起计数的)2、在终端输入:dd if=/dev/sda10 of=/ubuntu.lnx bs=512 count=1dd命令使用来复制文件的。
if=/dev/sda10表示输入of=/ubuntu.lnx表示输出bs表示文件大小为512字节count=1表示块数目为1这样就会把系统分区前512字节写入文件ubuntu.lnx中了(输出的文件名是可以任意取的)3、将ubuntu.lnx复制到Windows的C盘根目录下4、修改Windows的C盘根目录下的boot.ini,在最后加入C:\ubuntu.lnx="Ubuntu Linux"以下是我的boot.ini[boot loader]timeout=30default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS[operating systems]multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetectC:\ubuntu.lnx="Ubuntu Linux"5、最后在Windows下使用Fixmbr命令将Grub再次驱逐出境这样,下次开机时,NTLoader就会停留30秒让你选择是进入XP还是Ubuntu了。
方法四:dos下修复我的系统分配如下:hdahdb(无主分区,整个盘都划为扩展DOS分区)hdb6 linux/分区恢复方法:找到ISO文件1里dosutils下的loadlin.exe和vmlinuz两个文件放到同一目录,在DOS下进入该目录执行:loadlin vmlinuz root=/dev/hdb6 (注意将hdb6更改为你的linux启动分区)用你的root身份登录后在命令行下执行>grubgrub>root (hd1,5) //第二硬盘,5=6(你的linux/分区)-1grub>setup (hd0) //习惯性思维我尝试过setup (hd1,5) setup (hd1)都不行,注意一定要为setup (hd0)grub>quit>reboot知识点 LINUX一、菜单命令 菜单命令只能用于grub配置文件的全局配置部分,不能用在grub命令行交互界面,菜单命令在配置文件中应放在其它命令之前 1、default //设置默认启动的菜单项 2、fallback //设置启动某菜单项失败后反回的菜单项 3、hiddenmenu //隐藏菜单界面 4、timeout //设置菜单自动启动的延时时间 5、title //开始一个菜单项 二、常规命令 常规命令可以应该于配置文件和grub命令行交互界面,可使用的常规命令有 1、bootp //通过bootp初始化网络设备 2、color //设置菜单界面的颜色 3、device //指定设备文件作为驱动器 4、dhcp //通过DHCP初始化网络设备 5、hide //隐藏某分区 6、ifconfig //手工配置网络设备 7、pager //改变内部页程序的状态 8、partnew //新建一个主分区 9、parttype //改变分区的类型 10、password 为菜单界面设置口令 11、rarp //通过RARP初始化网络设置 12、serial //设置串口设备 13、setkey //设置键盘映射 14、splashimage //设置GRUB启动时的背景图片文件 15、termainal //选择终端类型 16、tftpserver //指定TFTP服务器 17、unhide //还原某隐藏分区 三、命令行和菜单项命令 命令行和菜单项命令可应该于GRUB配置文件的菜单项设置中,也可以用在GRUB命令交互界面。
1、bolcklist //显示某文件所在分区位置(block list notation) 2、boot //启动操作系统 3、cat //显示文件内容 4、chainloader //把启动控制权软交给另外的启动引导器 5、cmp //比较两个文件 6、configfile //加载已存在的GRUB配置文件 7、debug //设置为debug模式 8、displayapm //显示APM BIOS信息 9、displaymem //显示内存配置 10、embed //嵌入Stage 1.5文件 11、find //查找包括某文件的所有设备 12、fstest //测试文件系统 13、geometry //显示某驱动器的物理信息 14、halt //停止计算机运行(软件关机) 15、help //显示GRUB的命令帮助信息 16、impsprobe //查询对称多处理器(SMP)的信息 17、initrd //加载initrd文件 18、install //安装GRUB 19、ioprobe //查询某驱动器的输入输出(I/O)端口 20、kernel //引导操作系统内核 21、lock //锁定某GRUB导菜单项,使其输入密码后才可启动 22、makeactive //激活某主分区 23、map //虚拟映射某驱动器 24、md5crypt //使用MD5加密口令 25、module //加载模块 26、modulenounzip //加载模块不进行解压 27、pause //暂停并等待按键 28、quit //退出GRUB 29、reboot //重新启动计算机 30、read //读取内存中的内容 31、root //设置GRUB的root设备 32、rootnoverify //设备GRUB的root设备但不装载文件系统 33、savedefault //保存当前的启动菜单项为默认启动 34、setup //自动安装GRUB 35、testload //从文件系统中测试读取某文件 36、testvbe //测试VESA BIOS EXTENSION 37、uppermem //强制设置主机上位内存的大小 38、vbeprobe //查询VESA BIOS EXTENSION信息 GRUB 里的设备命名法则 它使用了UNIX对设备的命名方法.比如我们拥有两块硬盘,那么采用这种形式(hdx,y), 这里,x,y, 都是从0开始计数的. 这是硬盘,那么光驱哪? 对,采用 (cd) 就可以了. 网络设备使用 (nd). 我估计,以后支持usb以后,可以使用 (ud). ;-) 欢迎你的参与,我们的开发还在继续. ROOT的使用格式是:ROOT(HDX,Y) 其中X从0---N,Y也是。
第一个硬盘,第一个分区就是(HD0,0),第一个硬盘,第二个分区就是(HD0,1); 第二个硬盘,第一个分区就是(HD1,0),第二个硬盘,第二个分区就是(HD1,1);如此类推,可以知道ROOT的用法了 ROOT是GRUB识别硬盘和文件格式的命令,告诉GRUB启动设备是什么和启动设备MOUNT的文件格式,以及下一步可以到那里找GRUB的配置文件,启动核心,或启动IMG文件等 SETUP 和 INSTALL 是安装GRUB 到指定位置如:MBR等,具体可以看HELP文件,没有什么特殊之处 STAGE1,STAGE2针对不同的的文件系统,都可以到GRUB的包里或/USR/SHARE/GRUB目录里找到,拷到GRUB目录下就可以了 GRUB.CONF的格式如下: default=0 timeout=10 splashimage=(hd1,2)/boot/grub/splash.xpm.gz title WindowsXP rootnoverify (hd0,0) chainloader +1 title RedHat9 root (hd0,1) kernel /boot/vmlinuz-2.4.20-8 ro root=LABEL=/ initrd /boot/initrd-2.4.20-8.img title Mandrake9.1 kernel (hd1,4)/boot/vmlinuz root=/dev/hdb5 quiet devfs=mount acpi=off vga=788 initrd (hd1,4)/boot/initrd.img default=X为默认启动的系统,0为排在第一个的系统,以此类推。
timeout=X为Grub菜单停留的时间,单。





