查看“RecoveringUbuntuAfterInstallingWindows”的源代码
来自Ubuntu中文
←
RecoveringUbuntuAfterInstallingWindows
跳到导航
跳到搜索
因为以下原因,您没有权限编辑该页面:
您请求的操作仅限属于该用户组的用户执行:
用户
您可以查看和复制此页面的源代码。
== 使用Ubuntu安装光盘 == 本部分解释如何使用Ubuntu的安装光盘来恢复GRUB(the GRand Unified Boot loader) * 进入电脑的BIOS,检查是否可以从光驱启动。如果您可以从光驱启动的话,将光盘放入光驱。退出BIOS(如果需要的话,保存设置以确保电脑从光驱启动)。 * 当Ubuntu启动界面出现boot:提示时,输入rescue然后按回车键。 * 选择语言、地区(国家)和键盘布局,就像进行全新安装时一样。 * 输入主机名,或者使用默认值(Ubuntu)。 * 选择根分区(屏幕上会显示硬盘上的分区列表,所以您需要知道Ubuntu安装在哪个分区上)。应该是形如dev/discs/disc0/partX,其中X是分区号。 * 然后您将进入命令行(a hash)。 * 输入 $ grub-install /dev/hdaX X是您的Ubuntu的根目录所在分区。 == 使用Ubuntu Live CD == 请在下列方法中选择一种: === 使用LiveCD,同时保留Windows Bootloader === 请记住这种方法会将GRUB安装到硬盘的MBR(主启动记录master boot record)上面,而不是安装在根分区上。对于大多数人来说这是没有问题的,除非您已经另外有一个启动管理器。 换言之,如果您使用Boot Magic或者System Commander之类的启动管理器的话,那您在上面看到的命令将会覆盖您原有的启动管理。 如果您已经将GRUB安装到根分区,命令会有一些不同。下面是我在我的系统中所使用的。 在使用Ghost重新恢复Windows后,如何恢复Grub菜单: * 从Live CD(如Ubuntu Live,Knoppix,Mepis或者相类似的)启动。 * 打开终端。切换为超级用户(SuperUser)。(在Ubuntu中输入"sudo -i",在Ubuntu以外的其它发行版中输入"su")。输入根用户密码。 * 输入"grub",会出现GRUB命令提示。 * 输入"find /boot/grub/stage1"。会出现如同"(hd0)"样的结果,在我的电脑上是"(hd0,3)"。在下面的命令中使用您电脑中得到的结果。 * 输入"root (hd0,3)"。 * 输入"setup (hd0,3)"。这里是关键。在其它一些指南中使用"(hd0)", 如果您想将GRUB写入MBR的话,那使用"(hd0)"是没有问题的。如果您想将GRUB写入您的Linux根分区的话,则您需要在逗号之后加上数字,形如"(hd0,3)"。 * 输入"quit"。 * 取出Live CD,重新启动电脑。 From: http://ubuntuforums.org/showpost.php?p=121355&postcount=5 === 使用Live CD,同时覆盖Windows bootloader === * 从Live CD启动进入桌面。 * 打开终端或者切换到一个tty(Ctrl+Alt+F1)。 * 输入"grub" * 输入"root (hd0,6)",就是您硬盘和启动分区的编号。(我的启动分区(/boot)位于/dev/sda7,转换到grub就是hd0,6)。 * 输入"setup (hd0)",或者是您的硬盘编号。 * 输入"quit"退出grub。 * 重新启动。 From: http://ubuntuforums.org/showpost.php?p=117829&postcount=2 == 不使用Ubuntu Live CD == 您可以不使用Ubuntu Live CD,而是直接从您的硬盘上运行"grub"。首先您需要挂载根分区(下面的例子中假设根分区在hda1上): <pre><nowiki> sudo mkdir /mnt/linux sudo mount /dev/hda1 /mnt/linux</nowiki></pre> 然后,进入sbin目录并运行grub <pre><nowiki> sudo cd /mnt/linux/sbin sudo ./grub</nowiki></pre> == 使用非官方的"Super Grub Disk" == '''注意:此方法对于只有一个Linux的系统是非常有效的。如果您有不止一个Linux系统的话,Super Grub Disk将会恢复在您的分区上发现的第一个Grub。''' * 下载[http://adrian15.raulete.net/grub/ Super Grub Disk] * 将其刻录到cdrom上或复制到软盘上 * 从光盘或软盘上启动 * '''选择:您的语言''' * '''选择:将Grub恢复到MBR(Restore Grub on MBR)''' * '''选择:自动(Auto)''' * 您将看到这条信息:SGD has done it! * 重新启动 * 完成 == 疑难解答 == 本部分适用于--- * 在Ubuntu之后安装Windows的双系统启动设置 * Windows崩溃导致重新安装的情况 * 在Windows系统恢复中还原了MBR * GRUB未能成功安装的情况 前提条件: * 您的Ubuntu分区未被改动 * 您有一张Live CD,比如说是Ubuntu Live CD,或者是其它您喜欢的任何一种 * 您可以熟练地通过LiveCD进入控制台 * 您还记得您是怎样设置分区的(有一张打印好的/etc/fstab是最理想的了,但您也可以使用fdisk -l /dev/hda的输出结果) * 如果您使用非Ubuntu的内核或者是自己编译的内核,那需要您具有内核是如何工作的相关知识,特别是有关initrd的知识 * 您的内核的版本;本解答中假设版本号为2.6.10-5-386 === 准备您的工作环境 === 将LiveCD放入光驱并启动电脑。继续LiveCD的启动程序,进入工作界面。如果LiveCD没有自动打开一个控制台(也叫做终端)的话,您可以手动打开。在Ubuntu中,单击"应用程序->系统工具->终端"。 '''注意:由于这是一个LiveCD的环境,所以在这里对用户帐户或文件系统的改动都是暂时性的。这就是说,您可以在不影响您的实际安装的情况下,设置一个临时的根用户密码和建立目录。''' 现在,您需要获得根用户权限。在Ubuntu下,可以使用如下命令: <pre><nowiki> sudo -i</nowiki></pre> 在Knoppix下,使用如下命令,无须输入密码。 <pre><nowiki> su -</nowiki></pre> 现在您已经拥有根用户权限,您需要挂载包含有启动文件的分区。 您需要能访问/sbin/和/boot/目录的权限。如果/boot/列在您的fstab文件中,您就需要挂载两个分区。 为您的工作环境创建一个挂载点--您会发现这和创建一个目录是一样的。 <pre><nowiki> mkdir /mnt/work</nowiki></pre> 如果你需要挂载/boot/,您还需运行下面的命令。 <pre><nowiki> mkdir /mnt/work/boot</nowiki></pre> 现在可以加载您的文件系统了。复查您的fstab文件并确认根目录(/)和/boot/目录的位置;应该是类似/dev/hda3和/dev/hda4,但字母a和数字3、4可能因您的文件系统而不同。 ''' 注意:'''以下部分均假设是/dev/hda3和/dev/hda4,您应该在输入时根据自己的情况做相应的改变。 输入以下命令加载您的文件系统和一些GRUB需要的信息。 <pre><nowiki> mount /dev/hda4 /mnt/work mount -o bind /dev /mnt/work/dev mount -o bind /proc /mnt/work/proc cp /proc/mounts /mnt/work/etc/mtab </nowiki></pre> 现在,您需要通过下面的命令进入您的工作环境。 <pre><nowiki> chroot /mnt/work/ /bin/bash</nowiki></pre> ''' 警告:'''从现在开始,您所修改的任何文件都将影响Ubuntu系统。您已经离开了LiveCD安全环境。小心操作。 === 自动恢复GRUB === 如果您的/boot/是独立分区,输入下列命令。 <pre><nowiki> mount /dev/hda3 /boot/</nowiki></pre> 在这里重新安装GRUB很容易。输入以下命令即可。 <pre><nowiki> /sbin/grub-install /dev/hda</nowiki></pre> 如果您使用上面的命令没有成功,(这种可能性不大),您就需要手动配置GRUB(也不困难);如果您使用上面的命令成功了,您应该阅读最后一节--“配置GRUB菜单”开始部分的注意事项。 === 手动恢复GRUB === 在您进行下一步之前,您需要理解GRUB是如何区分分区的。 对GRUB来说,数字从0开始,字母用数字来表示,也从0开始。 例如,/dev/hda1就是GRUB中的"hd0,0"。 同样地,/dev/hdb3是"hd1,2"。 '''注意:'''如果您有一个/boot/分区的话,"root"命令必须指向您/boot/分区的位置。如果您没有/boot/分区,则指向您的根分区。 <pre><nowiki> /sbin/grub grub> root (hd0,2) grub> setup (hd0) grub> quit </nowiki></pre> === 配置GRUB菜单 === ''' 注意:'''如果您只是想恢复您的MBR的话,则就无需进行这一步的操作了。Windows不会修改您原有的menu.lst的内容,所以如果以前一切正常的话,现在应该也会正常工作了,您可以重新启动电脑了。 使用您喜欢的编辑工具打开GRUB菜单文件/boot/grub/menu.lst。例如: <pre><nowiki> nano /boot/grub/menu.lst</nowiki></pre> '''注意:'''您的menu.lst文件是用来控制GRUB启动时显示的操作系统以及其显示外观。本节的内容仅解释如何启动您的操作系统;不会帮助您将启动管理器设置得美观。 下面是一个menu.lst的范例,但删去了不必要的注释。它是基于前面例子中/dev/hda3和/dev/hda4的假设的,同时也假设Windows安装在/dev/hda1. <pre><nowiki> timeout 5 #The number of seconds GRUB should wait before booting an OS default 0 #The entry which should be booted by default fallback 1 #The entry which should be booted in the event of the first one failing title Ubuntu, 2.6.10 #A 32-bit Ubuntu entry #This (or something like it) should be in your configuration root (hd0,2) initrd /initrd.img-2.6.10-5-386 kernel /vmlinuz-2.6.10-5-386 root=/dev/hda4 title Ubuntu, 2.6.10 #Another 32-bit Ubuntu entry #This is an example of an Ubuntu entry which does not have a separate /boot/ partition #(it is provided only as an alternate to the example above -- do not use them together) root (hd0,2) initrd /boot/initrd.img-2.6.10-5-386 kernel /boot/vmlinuz-2.6.10-5-386 title Microsoft Windows XP Home #An entry for a Windows installation #If you're reading this guide, you probably want this root (hd0,0) makeactive chainloader +1</nowiki></pre> 就是这样了。保存并关闭此文件,然后重新启动试用一下。 == GRUB相关资源 == * [http://www.gnu.org/software/grub/manual/html_node/ GRUB Manual] * [http://www.gnu.org/software/grub GRUB homepage] * [http://autistici.org/grub/ Grub wiki] * [http://tldp.org/HOWTO/Linux+Win9x+Grub-HOWTO/index.html Linux+Win+Grub HowTo] * [http://adrian15.raulete.net/grub/ Super Grub Disk. Ready to go cdrom or floppy that restores Grub on MBR automatically] * [http://promote-opensource.org/modules/mylinks/singlelink.php?cid=14&lid=94 Linux Recovery and Boot Disk Creation with Grub]. * [http://www.skyjammer.com/files/knoppix/ Win32 Grub] * [http://www.ameritech.net/users/gholmer/booting.html Booting with GRUB] * [http://grub4dos.sourceforge.net/ WinGRUB] * [http://www.geocities.com/lode_leroy/grubinstall/ GRUB Installer for Windows] * [http://grub.linuxeden.com/ GRUB for DOS] - Bridging DOS/Windows to Unix/Linux [[category:CategoryDocumentation]] [[category:CategoryCleanup]] ----
返回
RecoveringUbuntuAfterInstallingWindows
。
导航菜单
页面操作
页面
讨论
阅读
查看源代码
历史
页面操作
页面
讨论
更多
工具
个人工具
登录
导航
首页
最近更改
随机页面
页面分类
帮助
搜索
编辑
编辑指南
沙盒
新闻动态
字词处理
工具
链入页面
相关更改
特殊页面
页面信息