LinuxSir.cn,穿越时空的Linuxsir!

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

[已解决]崩溃了,grub无法引导,error 15:file not found

[复制链接]
发表于 2009-4-19 15:59:31 | 显示全部楼层 |阅读模式
宿主系统为光盘版的lfs6.2,整个过程中没出过什么大错,小错都自行解决

在做到创建网络脚本时断电,之后重新挂载虚拟内核,继续下面章节,没遇到什么大错

可是到最后grub引导总是出错,出错提示是error 15:file not found

磁盘分区结构为一块sda分为三个区

sda1为boot分区(ext3 256M)

sda2为swap分区(swap 512M)

sda3为根分区(ext3 other all)

下面是个人认为grub重新设置后就不会出问题的步骤,大家帮看看还少什么或者是什么地方错了

安装grub
mkdir -v /boot/grub
cp -v /usr/lib/grub/i386-pc/stage{1,2} /boot/grub

相关内核文件copy到boot目录
cp -v arch/i386/boot/bzImage /boot/lfskernel-2.6.16.27

cp -v System.map /boot/System.map-2.6.16.27

cp -v .config /boot/config-2.6.16.27

配置完grubshell
root (hd0,0)
setup (hd0,0)

设置引导选项列表
cat > /boot/grub/menu.lst << "EOF"
# Begin /boot/grub/menu.lst

# By default boot the first menu entry.
default 0

# Allow 30 seconds before booting the default.
timeout 30

# Use prettier colors.
color green/black light-green/black

# The first entry is for LFS.
title LFS 6.2
root (hd0,0)
kernel /boot/lfskernel-2.6.16.27 root=/dev/sda1
EOF

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
发表于 2009-4-19 17:01:39 | 显示全部楼层
你把/boot独立出来,那么grub下就应该是/lfskernel-2.6.16.27
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-4-19 17:05:17 | 显示全部楼层
Post by newper;1976581
你把/boot独立出来,那么grub下就应该是/lfskernel-2.6.16.27
lfskernel-2.6.16.27放在grub下?我试试

T T 还是一样
回复 支持 反对

使用道具 举报

发表于 2009-4-20 00:08:07 | 显示全部楼层
我弄LFS的时候,是在一块SD卡上弄的,用lfs的livecd弄的时候,显示的是/dev/sda1,真正的grub里的menu.lst文件里写的是 root=/dev/hdd1,而不是sda。写sda启动不了,在boot里测试了几次才弄对。不知道适不适合你的情况。
回复 支持 反对

使用道具 举报

发表于 2009-4-20 08:22:34 | 显示全部楼层
Post by godsad;1976561
宿主系统为光盘版的lfs6.2,整个过程中没出过什么大错,小错都自行解决

在做到创建网络脚本时断电,之后重新挂载虚拟内核,继续下面章节,没遇到什么大错

可是到最后grub引导总是出错,出错提示是error 15:file not found

磁盘分区结构为一块sda分为三个区

sda1为boot分区(ext3 256M)

sda2为swap分区(swap 512M)

sda3为根分区(ext3 other all)

下面是个人认为grub重新设置后就不会出问题的步骤,大家帮看看还少什么或者是什么地方错了

安装grub
mkdir -v /boot/grub
cp -v /usr/lib/grub/i386-pc/stage{1,2} /boot/grub

相关内核文件copy到boot目录
cp -v arch/i386/boot/bzImage /boot/lfskernel-2.6.16.27

cp -v System.map /boot/System.map-2.6.16.27

cp -v .config /boot/config-2.6.16.27

配置完grubshell
root (hd0,0)
setup (hd0,0)

设置引导选项列表
cat > /boot/grub/menu.lst << "EOF"
# Begin /boot/grub/menu.lst

# By default boot the first menu entry.
default 0

# Allow 30 seconds before booting the default.
timeout 30

# Use prettier colors.
color green/black light-green/black

# The first entry is for LFS.
title LFS 6.2
root (hd0,0)
kernel /boot/lfskernel-2.6.16.27 root=/dev/sda1
EOF

改成这样是是,
title LFS 6.2
root (hd0,0)
kernel /boot/lfskernel-2.6.16.27 root=/dev/sda3
回复 支持 反对

使用道具 举报

发表于 2009-4-20 09:42:05 | 显示全部楼层
可以进入GRUB的命令行模式
手工输入命令试试
输的时候用用TAB键,就知道是哪个地方有问题了。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-4-20 10:06:12 | 显示全部楼层
Post by trublemaker;1976815
可以进入GRUB的命令行模式
手工输入命令试试
输的时候用用TAB键,就知道是哪个地方有问题了。

真怪哎~~~kernel /boot/lfskernel-2.6.16.2按TAB也显示error 15:file not found

现在初步可以确定grub没有正确加载sda1,不过奇怪的是同在sda1的menu.lst却能正确加载
回复 支持 反对

使用道具 举报

发表于 2009-4-20 12:31:07 | 显示全部楼层
可以这样
root (hd0, -->tab
会列出所有的分区
然后看你的LINUX分区在哪个上

  kernel / <tab> 选boot目录,看有没有,
  如果没有就是你的LFS没有做好。
有的话 /boot/ <tab>会列出文件,看看有没有你的内核
没有就找原因,觉得可能是你文件名错了,grub加载分区和内核加载是不一样的。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-4-20 19:44:11 | 显示全部楼层
额~~~原来是这样kernel /grub/lfskernel-2.6.16.2
回复 支持 反对

使用道具 举报

发表于 2009-5-2 12:33:09 | 显示全部楼层
Post by trublemaker;1976893
可以这样
root (hd0, -->tab
会列出所有的分区
然后看你的LINUX分区在哪个上

  kernel / <tab> 选boot目录,看有没有,
  如果没有就是你的LFS没有做好。
有的话 /boot/ <tab>会列出文件,看看有没有你的内核
没有就找原因,觉得可能是你文件名错了,grub加载分区和内核加载是不一样的。
呵呵,谢谢了!我刚刚装完了LFS,启动就遇到了这个问题!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

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