|
|
第1次装LFS(宿主为MagicLinux2.0,以下简称ML),在中文版LFS6.1.1手册的参考下顺利进行到8.3编译内核这一章节(感谢csfrank的翻译),接下来的 8.4安装配置GRUB我跳过了,因为我安装ML时已经把GRUB安装到硬盘的MBR上了,所以我想用已有的GRUB来引导LFS~~
此时我硬盘上有3个OS:hda1为WINXP(FAT32),hda12为ML(reiserfs),hda13为LFS(ext2),hda14为SWAP,这最后3个逻辑分区是当初在XP的磁盘管理中划分的(只分区,没格式化)~~
于是我就在ML的GRUB配置文件menu.lst中加入了LFS的引导菜单,接着重启,在GRUB中选择LFS,结果出现Grub Error 17,引导LFS失败~~- root (hd0,12)
- filesystem type unknown partition type 0x6
- Error 17 : Cannot mount selected partition
复制代码
提示很明显,说hda13分区类型ID为6,而GRUB没认出文件系统类型从而不能加载根分区,但是明明格式化hda13为ext2了阿~~
马上回ML用fdisk -l查看,发现hda12,hda13的分区ID都为6,文件系统为FAT16!?- Device Boot Start End Blocks Id System
- /dev/hda1 * 1 653 5245191 b W95 FAT32
- ......
- 中间无关分区省略
- ......
- /dev/hda12 8751 9218 3759178+ 6 FAT16
- /dev/hda13 9219 9664 3582463+ 6 FAT16
- /dev/hda14 9665 9729 522081 82 Linux swap / Solaris
复制代码
但是用df -Th查看hda12和hda13确实分别是reiserfs和ext2格式(否则怎么能用ML):- 文件系统 类型 容量 已用 可用 已用% 挂载点
- /dev/hda12 reiserfs 3.6G 2.7G 914M 76% /
- ......
- 其他无关加载点省略
- ......
- /dev/hda13 ext2 3.4G 881M 2.4G 27% /mnt/lfs
复制代码
搞不懂了,但我想既然文件系统是对的,那就试着用fdisk把hda13的ID手动改为Linux的83,然后重启看看GRUB能不能认出hda13的ext2~~结果验证了我的猜想,顺利启动LFS~~
问题来了:
1:为什么hda12和hda13的分区类型ID都为FAT16的6呢?hda12是在安装ML时用它的安装程序格式化为reiserfs的,hda13是在准备安装LFS时用mke2fs格式化为ext2的,按道理格式化后它们的分区ID都应该是Linux的83阿~~
2:在修改hda13分区ID之前,hda12和hda13的ID同为6,为什么GRUB能认出hda12的reiserfs,却不能认出hda13的ext2?
我想很多人应该和我一样,刚开始用WINXP系统,后来为了装Linux而在XP中把最后几个逻辑分区删掉重建给Linux用,不知道有没人遇到一样的情况?
很迷惑,望大家赐教~~
现在的分区情况:- Device Boot Start End Blocks Id System
- /dev/hda1 * 1 653 5245191 b W95 FAT32
- ......
- 中间无关分区省略
- ......
- /dev/hda12 8751 9218 3759178+ 6 FAT16
- /dev/hda13 9219 9664 3582463+ 83 Linux
- /dev/hda14 9665 9729 522081 82 Linux swap / Solaris
复制代码 |
|