LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1573|回复: 3

make world失败之解决方法

[复制链接]
发表于 2004-7-1 17:21:04 | 显示全部楼层 |阅读模式
make world失败之解决方法

昨天升级源代码,make world之后,出现同Andy84920一样的情况:

http://www.linuxsir.cn/forum.php?mod=viewthread&tid=122858
怎么编译内核后出现mountroot>
我编译内核后重启进系统时出现(还没完全进入系统)
Mounting root from ufs:/dev/ad0s3a
setrootbyname failed
ffs_mountroot : can't find rootvp
Root mount failed:6
manual root filesystem specification:
...这里有一些例子
mountroot>
我用?也不能列出可能的启动地方.
现在该如何解决?
(就算用单用户模式,一样出同样的错误.)

上网找了一下,没找到相应的文章,那就自己动手吧!
我是这样的解决的,老鸟就不用看了,免得笑死:p

系统:FreeBSD-5.2
/etc/fstab:
/dev/ad0s3b        swap
/dev/ad0s3a        /
/dev/ad0s3d        /tmp
/dev/ad0s3f        /usr
/dev/ad0s3e        /var

1.用Disc2光碟启动.  (做完之后,才发现,原来Disc1光碟也有"Fixit"这一项.)

2.选择:Fixit

3.CDROM/DVD Use the "live" filesystem CDROM/DVD

4.按ALT + F4 得到一个Shell

5.mkdir /mnt/bsd
  mount /dev/ad0s3a /mnt/bsd
  mount /dev/ad0s3d /mnt/bsd/tmp
  mount /dev/ad0s3f /mnt/bsd/usr
  mount /dev/ad0s3e /mnt/bsd/var
  swapon /dev/ad0s3b
  cp -R /dev/* /mnt/bsd/dev/
  chroot /mnt/bsd /bin/sh
这时已经进入到你的系统了,想干什么都可以啦!!上面的问题我不知道怎样解决,只想make world 回到5.2.1-Release就算了.当然也可以继续

cvsup到最新的(但能不能解决问题就只有天才知道).

6.umount /dist
  取出Disc2光碟,放入Disc1光碟.
  mount_cd9660 /dev/acd0 /dist        (这句好象这多余的,呵~)

7.删除所有源代码
  cd /usr/src
  rm -Rf *      (一时手快,把内核配置文件也一并删掉.)

8.重装5.2.1-Release源代码
  sysinstall
  Custom
  Commit
  Custom -> src (只选择Src就可以啦)
  重装源码后,将Disc2重新挂上.        (如果一开始就用Disc1就不用那么麻烦.呵~)

9.然后就再次make world.


总结:这是使用FreeBSD半年以来,N次make world失败之后(N>5),第一次可以不重装系统能解决问题.问题解决之后好开心,这时严重感觉到

,FreeBSD(BSD/Linux/Unix)真的越用越简单,条条大路通罗马!!解决问题的方法真的很多,没有最好的,只有想不到的!!


ps:这样make world重启之后,好象还存在一点点问题,不过开机显示的已经是5.2.1-RELEASE了.假如一开始就用Disc1,效果会更好!!
发表于 2004-7-2 00:05:47 | 显示全部楼层
好好学习一下, 然后我也 make world , 呵呵 :p
发表于 2004-7-4 09:38:31 | 显示全部楼层
我的居然在 make buildkernel 的时候出问题....

唉..
发表于 2004-7-4 10:42:45 | 显示全部楼层
其实不用这么麻烦了。
用sysinstall->custom->lable->'M'(此时必须按原来的分区名进行)
->'esc'->setup就是了。
试试。
反正我是这样做的。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表