在u盘上安装grub,如何写设备名?
环境:vm上运行suse10;u盘 使用mkfs.ext2 格式化fdisk -l 显示:硬盘为/dev/sda,(sda1=swap;sda2=/, reiserfs)
u盘为/dev/sdb,只有一个分区/dev/sdb1
在u盘中放好了内核及文件系统,现在需要安装grub以实现u盘启动,执行grub-install /dev/sdb1 显示“/dev/sdb1 does not have any corresponding BIOS driver.”
换执行grub进入“grub>”后,输入“root (” 然后tab,出现“(hd0,”,再tab,可以有两个选择0和1,但是看信息就是sda1和sda2。
如果我强行输入“root (sd”,则出错“Error 23 : Error while parsing number”
我的问题是:
1、sd设备在grub中应该如何写设备名?为什么root后出现的是hd?
2、为什么我上面的操作中没有找到u盘设备?
3、/dev/ram设备上可以安装grub吗? 执行 grub-install --root-directory=/mnt/usb /dev/sdb1
显示 /mnt/usb/boot/grub/stage1 not read correctly
可是相关文件我已经cp好了 在u盘上安装linux正是我想要的,安装完后,别忘了把帖子往前提一提,写上点心得,分享分享? 这好办,关键现在卡在root ( 这里了,按照网上的一些教程,好象行不通,不知道哪里的错 这个问题难道一点共性也没有吗? 终于搞明白一些了:
当打入root (然后按tab让系统自动查找可用设备时,它显示的是/boot/grub/device.map中所列项目的可用设备,原来这个文件并不包括我后插的sdb设备,所以总是出错。
如果编辑这个文件,添加(hd1) /dev/sdb然后再进入grub> root (hd1,再tab就可以出现sdb设备可用的分区号;甚至如果添加的新行写成(hd6) /dev/sdb也可以
但是如果使用grub-install,好像就不依赖于device.map这个文件了,它直接以设备名为参数,可惜我还没能读懂它............
使用这个命令的格式:grub-install --root-directory=/mnt/usb /dev/sdb 有用,肯定用!
页:
[1]