Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 8 Aug 2011 00:28:35 -0500
From:      Antonio Olivares <olivares14031@gmail.com>
To:        Devin Teske <devin.teske@fisglobal.com>
Cc:        FreeBSD Questions <freebsd-questions@freebsd.org>
Subject:   Re: Howto's, Advice, Hints/Gotchas about livecd creation in FreeBSD
Message-ID:  <CAJ5UdcMP%2BNCSdRUx1_9heBN%2B4%2BA=L2t45z5xs7OGTUV913nPsw@mail.gmail.com>
In-Reply-To: <000c01cc4d88$bd57a330$3806e990$@fisglobal.com>
References:  <CAJ5UdcOxtiHHqr1ea74NzxgV3ES%2Bx%2ByqSsbHBRAeN3ytsGOpyg@mail.gmail.com> <000c01cc4d88$bd57a330$3806e990$@fisglobal.com>

next in thread | previous in thread | raw e-mail | index | archive | help
> Though still in its infancy, my project brings some features that no others
> have:
>
> http://druidbsd.sourceforge.net/
>
> I've not seen any other project utilize ISOLINUX as the boot-loader. Doing so
> has freed me from many restrictions. For example, my one single ISO can be
> written to either CD/DVD or USB or Hard Disk or SSD (without modification).
>
> Naturally, I'm not going to document how to burn an ISO (that should be pretty
> straight forward), but here's a link on how to write the ISO to either USB thumb
> drive (process is similar for HDD/SSD, just skip steps 2 and 3 because you
> presumably already know the device name associated with your target disk):
>
> 1. Visit http://sourceforge.net/projects/druidbsd/files/Druid-0.0.iso/download
> and download "Druid-0.0.iso" to a local directory.
>
> 2. Insert USB thumb drive
>
> 3. Execute: camcontrol devlist
>
> NOTE: find the `daN' device associated with your thumb drive
>
> 4. Execute: dd if=Druid-0.0.iso of=/dev/da5
>
> NOTE: assuming `da5' is your thumb drive
>
> --- At this point, your thumb drive is ready to rock and roll --
>
> However, continue with the remaining below steps to create a 2nd [visible]
> partition beyond the primary [invisible] bootable partition (allowing you to use
> the remainder of your thumb drive for usable storage)...
>
> 5. Execute: echo "p 2 0x0c * *" | fdisk -f - /dev/da5
>
> NOTE: again, assuming `da5' is your thumb drive
>
> 6. Execute: newfs_msdos /dev/da5s2
>
> NOTE: again, assuming `da5' is your thumb drive
>
> NOTE: You'll get a "class not found" response. Just ignore this. It's completely
> spurious.
>
> That's it. You now have a thumb drive with:
>
> a. An invisible boot partition for booting into Druid (a disc full of tools)
> b. A visible partition for storage, usable under Mac, Windows, Linux, and UNIX.
>
> NOTE/RECAP: Don't be fooled into thinking that this will work with just any-ol'
> ISO file. This works because (a) I am using the ISOLINUX boot-loader to
> chain-load to the FreeBSD mfsroot and (b) I've post-processed my ISO file
> (generated with mkisofs) with the ISOLINUX-isohybrid utility.
>
>
> Other advantages include the fact that the smallest possible ISO is 28MB, but
> can be grown to any size you want (my mfsroot remounts the CD-ROM through
> /dev/iso9660 GEOM structure).
> --

Thank you for this information.  I built the package on my machine,
but it replicates the effort.  I just built the same iso that you have
on your website.  I would like to use the concept to make an iso of my
running system, but don't know how.

I had freesbie port installed, cd /usr/ports/sysutils/freesbie/; make
install clean;
Did not know how to proceed, found a powerpoint and it said,
/usr/local/share/freesbie/freesbie, and it was going to be configured
and one selects options.  That was not the case, but I found a
makefile in that directory and several options, so I try one, make and
it fails :(  See the error message:

tricorehome# cd /usr/local/share/freesbie/
tricorehome# ls
COPYING		README		extra
Makefile	conf		scripts
tricorehome# make
#### Building world for amd64 architecture ####
>>> World build started on Sun Aug  7 22:52:50 CDT 2011
>>> Rebuilding the temporary build tree
>>> stage 1.1: legacy release compatibility shims
>>> stage 1.2: bootstrap tools
>>> stage 2.1: cleaning up the object tree
>>> stage 2.2: rebuilding the object tree
>>> stage 2.3: build tools
>>> stage 3: cross tools
>>> stage 4.1: building includes
>>> stage 4.2: building libraries
>>> stage 4.3: make dependencies
>>> stage 4.4: building everything
>>> stage 5.1: building 32 bit shim libraries
>>> World build completed on Mon Aug  8 00:13:52 CDT 2011
#### Building kernel for amd64 architecture ####
>>> Kernel build for FREESBIE started on Mon Aug  8 00:13:52 CDT 2011
>>> stage 1: configuring the kernel
Something went wrong, check errors!
Log saved on /usr/obj/usr/local/share/freesbie/.tmp_buildkernel
*** Signal 15

Stop in /usr/local/share/freesbie.
tricorehome# cat /usr/obj/usr/local/share/freesbie/.tmp_buildkernel | more
make __MAKE_CONF=/usr/local/share/freesbie/conf/make.conf
TARGET_ARCH=amd64 SRCCONF=/dev/null buildkernel

--------------------------------------------------------------
>>> Kernel build for FREESBIE started on Mon Aug  8 00:13:52 CDT 2011
--------------------------------------------------------------
===> FREESBIE
mkdir -p /usr/obj/usr/src/sys

--------------------------------------------------------------
>>> stage 1: configuring the kernel
--------------------------------------------------------------
cd /usr/src/sys/amd64/conf;
PATH=/usr/obj/usr/src/tmp/legacy/usr/sbin:/usr/obj/usr/src/tmp/legacy/usr/bin:/usr/obj/usr/src/tmp/legacy/usr/games:/usr/obj/usr/src/tmp/usr/sbin:/usr/obj/usr/src/tmp/usr/bin:/usr/obj/usr/src/tmp/usr/games:/sbin:/bin:/usr/sbin:/usr/bin
 config  -d /usr/obj/usr/src/sys/FREESBIE
/usr/local/share/freesbie/conf/amd64/FREESBIE
Mapping option COMPAT_IA32 to COMPAT_FREEBSD32.
/usr/local/share/freesbie/conf/amd64/FREESBIE: unknown option "TCP_DROP_SYNFIN"
*** Error code 1

Stop in /usr/src.
*** Error code 1

Stop in /usr/src.


Has anyone succeeded making a FreeBSD LiveCD from an amd64 system?
What does one need to do, to achieve this successfully?  I would like
to clone my system onto a livecd and have the same system that can be
bootable on other 64 bit machines.

Thanks in Advance,

Antonio

P.S.
I looked at other system, /usr/ports/sysutils/livecd, but again don't
know how the scripts work as their appears to be no new instructions
on how to build a livecd using that tool.
If I have to use the other(harder method), I'll probably take a chance
on it, but I am afraid to screw my working system up.  This is why I
ask for advice.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAJ5UdcMP%2BNCSdRUx1_9heBN%2B4%2BA=L2t45z5xs7OGTUV913nPsw>