免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3349 | 回复: 0
打印 上一主题 下一主题

找回freebsd的bootmgr以及安装grub [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-02-01 13:30 |只看该作者 |倒序浏览
一、找回freebsd的bootmgr:
计算机装的是双系统,xp和freebsd.
  原来是FreeBSD 的BOOTMGR.后来重装了xp.MBR已经被重写了,打算装回FreeBSD 的BOOTMGR。
  请出Acronis Disk Director 10
  把FreeBSD的分区激活为启动作用分区,然后启动FREEBSD。
  
  刚开始用sysinstall重新设置bootmgr,但是提示有错误,在网上看了很多相关的说法,没有一个说到解决的办法,后来用google关键词"freebsd bootmgr"找到一位网友的解决办法:
  
  #fdisk /dev/ad0 /mbr
  #sysctl kern.geom.debugflags=16
 
 然后#sysinstall->configure->fdisk->ok->将FreeBSD分区激活,就是选择
FreeBSD的slice->按 s->按w->选择 bootmgr->确定,然后就应该提示你 操作成功了:)
  然后应该就安装成功了,然后reboot。
  呵呵,熟悉的界面回来了!!
  
二、安装grub:
  
  第一步,我们需要安装 Grub,可以通过 Ports 安装:
  
  [root@tianlap.dirk.sh:~]# cd /usr/ports/sysutils/grub
  [root@tianlap.dirk.sh:/usr/ports/sysutils/grub]# make install clean第二步,我们需要准备镜像文件和菜单文件:
  
  Grub 把镜像文件安装到了 /usr/local/share/grub/i386-freebsd 目录下,我们需要将相应的文件拷贝到 grub 的主目录,也就是 /boot/grub 目录。
  
  [root@tianlap.dirk.sh:~]# mkdir -p /boot/grub
  [root@tianlap.dirk.sh:~]# cp -Rf /usr/local/share/grub/i386-freebsd /boot/grub/编辑一个 Grub 菜单文件 menu.lst,以我的环境为例:
  
  default 1
  timeout 3
  
  title Microsoft Windows 2000 Advanced Server
  root (hd0,0)
  makeactive
  chainloader +1
  savedefault
  
  title FreeBSD 6.2 Release
  root (hd0,1,a)
  kernel /boot/loader
  makeactive
  savedefault注意:hd0 是在 /boot/grub/device.map 文件中列出的对应到真实硬盘的映射符号,我的真实硬盘是 /dev/ad0。
  
  第三步,我们需要让 FreeBSD 允许 Grub 将数据写到硬盘 MBR 中,这需要临时打开 FreeBSD 的以下开关(否则会在 Grub 安装的时候报告 Error 29: Disk write error):
  
  [root@tianlap.dirk.sh:~]# sysctl kern.geom.debugflags=16最后,我们要将镜像文件和菜单安装到硬盘引导区中(我的硬盘是 /dev/ad0):
  
  [root@tianlap.dirk.sh:~]# grub-install /dev/ad0或者可以使用 Grub 的命令工具:
  
  grub> find /boot/grub/stage1
  (hd0,1,a)
  grub> root (hd0,1,a)
  Filesystem type is ufs2, partition type 0xa5
  grub> setup (hd0)
  Checking if "/boot/grub/stage1" exists... yes
  Checking if "/boot/grub/stage2" exists... yes
  Checking if "/boot/grub/ufs2_stage1_5" exists... yes
  Running "embed /boot/grub/ufs2_stage1_5 (hd0)"... 17 sectors are embedded.
  succeeded
  Running "install /boot/grub/stage1 (hd0) (hd0)1+17 p (hd0,1,a)/boot/grub/stage2
  /boot/grub/menu.lst"... succeeded
  Done.
  
  本方法适合解决先装FreeBSD后装WIN系统的BOOTMGR丢失的问题。
  
  感谢网友.
               
               
               

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/15173/showart_2166435.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP