VIA EPIA M9000主板,C3 CPU,兼容x86标准[1]。使用debian testing,启动失败。
M9000主板有两个IDE口和四个USB口,由于没有合适的IDE设备,用U盘和移动硬盘分别做了系统测试启动。后文[1]有U盘的系统建立步骤,移动硬盘类似。
我在HP1017T的小型netbook上测试通过,也在主机上搭建虚拟机测试通过,还在acer aspire5100电脑上测试通过。
下面是问题了。
我在M9000主板上,使用U盘引导,启动到grub时出现out of disk的错误,进入rescue模式[2]。输入ls,看到(hd0)
(hd0,msdos1)。输入set,看到root=hd0,msdos1。再输入ls (hd0,msdos1)/,看到u盘根目录结构,但是输入ls
(hd0,msdos1)/boot/就出现out of disk。当然,insmod normal和insmod linux也全都是out of
disk。
移动硬盘问题类似,不过移动硬盘的结构是这样的。
shell-deb:~# fdisk -l /dev/sdb
Disk /dev/sdb: 320.1 GB, 320072933376 bytes
255 heads, 63 sectors/track, 38913 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0008346c
Device Boot Start End Blocks Id System
/dev/sdb1 1 38214 306946016+ 7 HPFS/NTFS
/dev/sdb2 38214 38914 5624832 83 Linux
而且错误也不一样,是unknown filesystem。可是在netbook,虚拟机,aspire 5100上一切正常阿。而且ls
(hd0,msdos2)/的时候连目录结构都看不到。
目前有几方面怀疑,一个是USB控制器,一个是BIOS,一个是grub2。我下面打算用debian.org
上推荐usb安装方法来启动安装盘,那个是syslinux的。如果安装盘能启动,说明是grub2的问题。除此外,还有可能是什么问题么?或者有人有类似的经验么?
感谢任何帮助。
附文:
[1].
shell-deb:~# fdisk -l /dev/sdb
Disk /dev/sdb: 8409 MB, 8409579520 bytes
255 heads, 63 sectors/track, 1022 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00060d21
Device Boot Start End Blocks Id System
/dev/sdb1 1 1022 8209183+ 83 Linux
shell-deb:~# mount -t ext3 /dev/sdb1 /root/lu
shell-deb:~# debootstrap testing /root/lu ...
shell-deb:~# LANG=C chroot /root/lu /bin/bash
root@shell-deb:/# passwd
root@shell-deb:/# update-initramfs -u
root@shell-deb:/# mount -t sysfs sysfs sys/
root@shell-deb:/# mount -t proc proc proc/
root@shell-deb:/# update-grub2
Generating grub.cfg ...
Found linux image: /boot/vmlinuz-2.6.32-5-686
Found initrd image: /boot/initrd.img-2.6.32-5-686
done
root@shell-deb:/# fdisk -l /dev/sdb
Disk /dev/sdb: 8409 MB, 8409579520 bytes
255 heads, 63 sectors/track, 1022 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00060d21
Device Boot Start End Blocks Id System
/dev/sdb1 1 1022 8209183+ 83 Linux
root@shell-deb:/# grub-install /dev/sdb
root@shell-deb:/# vi /etc/fstab
Installation finished. No error reported.
root@shell-deb:/# exit
shell-deb:~# cd lu
shell-deb:~/lu# umount sys
shell-deb:~/lu# umount proc
shell-deb:~/lu# cd ..
shell-deb:~# umount lu
参考:
[1].http://www.via.com.tw/en/products/embedded/ProductDetail.jsp?id=81
[2].https://help.ubuntu.com/community/Grub2