Date: Wed, 21 Dec 2005 22:15:17 +0800 From: Tony <tony.uestc@gmail.com> To: zhaoyj@qddico.com.cn Cc: hackers@FreeBSD.org Subject: Re: Problem booting FreeBSD from cboot FreeBSD from cdrom using grubdrom using grub Message-ID: <43A96375.80704@gmail.com> In-Reply-To: <01c201c605f3$3a7efb30$1f0aa8c0@qddico> References: <43A8DD54.4000701@gmail.com> <01c201c605f3$3a7efb30$1f0aa8c0@qddico>
next in thread | previous in thread | raw e-mail | index | archive | help
I'm using FreeBSD 5.4 grub 0.95 Is this what you want? zhaoyj@qddico.com.cn wrote: > ??,??????,??????grub??freebsd,???????, > ??????grub?????ufs2 > ?????fc2,grub????0.94 > ???????????,????????? > ??????????? > > > > ----- Original Message ----- > From: "Tony" <tony.uestc@gmail.com> > To: <freebsd-hackers@freebsd.org> > Cc: <tony.uestc@gmail.com> > Sent: Wednesday, December 21, 2005 12:43 PM > Subject: Problem booting FreeBSD from cboot FreeBSD from cdrom using grubdrom using grub > > > >>Hi, >> I'm trying to make an iso image that will boot FreeBSD using GRUB boot >>loader. >> Grub will boot /boot/loader and the loader will boot /boot/kernel. It >>goes well on my disk, but when I try to make a livecd, it fails. I spend >>some time figuring out that /boot/loader does not probe cd it self, it >>depends on boot2 to tell him which cd to boot from. So I did some hack >>on /boot/loader. Bellow is the diff: >>*** sys/boot/i386/loader/main.c.bak Sun Dec 11 19:32:29 2005 >>--- sys/boot/i386/loader/main.c Sun Dec 11 22:04:29 2005 >>*************** >>*** 228,235 **** >> if ((new_currdev.d_type == biosdisk.dv_type) && >> ((new_currdev.d_kind.biosdisk.unit = bd_bios2unit(biosdev)) == >>-1)) { >> printf("Can't work out which disk we are booting from.\n" >>! "Guessed BIOS device 0x%x not found by probes, defaulting >>to disk0:\n", biosdev); >>! new_currdev.d_kind.biosdisk.unit = 0; >> } >> env_setenv("currdev", EV_VOLATILE, i386_fmtdev(&new_currdev), >> i386_setcurrdev, env_nounset); >>--- 228,238 ---- >> if ((new_currdev.d_type == biosdisk.dv_type) && >> ((new_currdev.d_kind.biosdisk.unit = bd_bios2unit(biosdev)) == >>-1)) { >> printf("Can't work out which disk we are booting from.\n" >>! "Guessed BIOS device 0x%x not found by probes, defaulting >>to cd0(%d):\n", biosdev, biosdev); >>! bc_add(biosdev); >>! new_currdev.d_type = bioscd.dv_type; >>! new_currdev.d_dev = &bioscd; >>! new_currdev.d_kind.bioscd.unit = bc_bios2unit(biosdev); >> } >> env_setenv("currdev", EV_VOLATILE, i386_fmtdev(&new_currdev), >> i386_setcurrdev, env_nounset); >> >>Then the kernel starts, but when the kernel try to mount the root fs, it >>stops. I have the follow line in my /etc/fstab >>/dev/acd0c / cd9660 ro 0 0 >> >>I am stranded. Can anyone help? I'm using FreeBSD 5.4 >> >>thanks >>Tony >> >> >> >>_______________________________________________ >>freebsd-hackers@freebsd.org mailing list >>http://lists.freebsd.org/mailman/listinfo/freebsd-hackers >>To unsubscribe, send any mail to "freebsd-hackers-unsubscribe@freebsd.org"
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?43A96375.80704>