Date: Mon, 2 Oct 2017 14:01:35 +0200 From: Andrea Venturoli <ml@netfence.it> Cc: freebsd-questions@freebsd.org Subject: Re: Create Ultimate Boot CD USB Stick [SOLVED] Message-ID: <8b835a99-7bb0-11f8-f313-b9cbaff47d15@netfence.it> In-Reply-To: <55EE8445.9070901@sneakertech.com> References: <55EDBF5A.9010808@netfence.it> <55EE8445.9070901@sneakertech.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On 09/08/15 08:46, Quartz wrote: >> Is there a way to create an UBCD stick from the ISO image without using >> Linux or Windows? > > UBCD uses the SYSLINUX package (specifically ISOLINUX) to boot to the > menu and load all its modules. I have not tested this, but it may be > possible to download and run the SYSLINUX scripts directly under *BSD to > create an 'empty' usb stick that just boots to a dummy menu. If that > works, you can then just cp the config and modules from the UBCD ISO > onto your stick afterwards and be good to go. (SYSLINUX, ISOLINUX and > PXELINUX all spawn an identical environment, so you can literally copy > and paste stuff between them). I know I'm replying to a more than two years old thread, but I thought I'd share with others the solution I found. I assume no responsibility in case something goes wrong :) One must first follow the instructions from ubcd/tools/linux/ubcd2usb/readme.txt. Of course we are not on Linux, so the actual commands are different. Point 2: I used "camcontrol devlist" to see that my USB drive was /dev/da6 (of course, in the following phases, it must be changed to whatever is correct). Point 3: A) dd bs=16M if=/dev/zero count=1 of=/dev/da6 B) gpart create -s MBR /dev/da6 gpart add -t fat16 /dev/da6 C) newfs_msdos /dev/da6s1 Point 4: > dd count=1 conv=osync if=ubcd/tools/linux/ubcd2usb/mbr.bin of=ubcd/tools/linux/ubcd2usb/mbr_padded.bin > gpart bootcode -b ubcd/tools/linux/ubcd2usb/mbr_padded.bin /dev/da6 > gpart set -a active -i 1 /dev/da6 ... Point 7: (after installing sysutils/syslinux and umounting the stick) syslinux -f --install -s -d /boot/syslinux /dev/da6s1 Now the additional part... Mount the USB stick and look into boot/syslinux: isolinux.bin, ldlinux.sys and every .c32 file in there (except localboot.c32) must be replaced from the ones from the syslinux port. E.g. > cp /usr/local/share/syslinux/bios/core/isolinux.bin .../boot/syslinux > cp /usr/local/share/syslinux/bios/com32/chain/chain.c32 .../boot/syslinux > ... Also add libcom32.c32 and libutil.c32. HTH. bye av.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?8b835a99-7bb0-11f8-f313-b9cbaff47d15>