|
发表于 2007-3-26 12:56:45
|
显示全部楼层
前天第一次安装 slackware 11 。
slackware 11 被安装在 SATA硬盘的第一主分区。我有双硬盘,在安装slackware之前在关机状态下先将 IDE 硬盘的电源线卸下,只留 SATA 硬盘。
安装的时候选择把 lilo 安装到 MBR 了。
发现不能启动。
在SLES-10系统中用 fdisk -l 看了一下,发现分区都是对的,引导的标识 * 也在 /dev/sda1 上。所以就是引导装载程序安装的问题了。
今天,在 SLES-10 中开虚拟机,挂SATA的物理硬盘。在这里虚拟机把SATA硬盘认作SCSI硬盘。
由于那块SATA硬盘的引导区被lilo覆盖,是无法启动的。我就把软驱挂上,选择的映像文件是我以自己做的2.88.img的软盘映像。就是一个2.88M的DOS软盘映像,里面放了grub.exe diskgen.exe ghost83.exe 等文件。
虚拟机中默认的从floppy启动,出现DOS提示符,然后运行 grub ,按 C 键到GRUB命令模式。
GRUB> kernel (hd0,0)/boot/vmlinuz root=/dev/sda1
GRUB> initrd (hd0,0)/boot/README.initrd
GRUB> boot
然后就正常启动系统了到字符环境。
login: root
password:
然后
# mkinitrd
出现三行字,大概看了一下。说要 cd 到一个目录下。然后再次运行 mkinitrd
# cd /boot/initrd-tree/
# mkinitrd
这样就生成了 /boot/initrd.gz 文件。
# ls -l /boot/initrd.gz
# reboot
重启之后,仍然还是从软盘映像启动到 DOS ,然后是 grub.exe ,按C键到 GRUB命令模式。
这次是这样:
kernel (hd0,0)/boot/vmlinuz root=/dev/sda1
initrd (hd0,0)/boot/initrd.gz
boot
这样就又顺利启动了系统。
好了,由于我还有一块IDE的硬盘,而且是可引导的,我就有办法启动第二块硬盘了。在启动第二块硬盘时,只需要先
map (hd0) (hd1)
map (hd1) (hd0)
然后再就是像从第一硬盘启动一样的了。
有两个问题:
如何给这块 SATA 的硬盘安装 GRUB ?
如何修复 lilo ?在论坛看过很多方法,都没有做好。实在是对 lilo 太陌生了。 |
|