linux-live-x.y.z.tar.gz and precompiled
kernel from ftp://ftp.slax.org/Linux-Live/
(you may, of course, prefer to
compile your own kernel to Linux Live specifications).
/tmp.
/boot, and
make sure that you can boot your client partition using this
kernel (you may need to run mkinitrd to create an
initial ramdisk).
cd /tmp/linux-live-x.y.z
tools/liblinuxlive script, deleting all the
users options for mount (the
ed command g/,users/s///g will do the
trick).
cd-root/boot/isolinux/isolinux.cfg file,
adding noauto to the
APPEND line.
.config file, setting
LIVECDNAME="contest",
USENTFS3G=no and
KERNEL=a.b.c, where a.b.c is the
version number of the kernel being used.
rm /etc/X11/xorg.conf
> /etc/modprobe.conf # clear the file without deleting it
> /etc/sysconfig/hwconf
for i in `find var/log -type f`
do
> $i
done
./build (defaults are okay).
cd /tmp/live_data_nnnn/contest
(where nnnn is a four-digit number chosen by the
build script, which creates the directory).
./make_iso.sh to create the CD-ROM image,
/tmp/contest.iso.
cdrecord -v fs=8m dev=/dev/cdwriter -data /tmp/contest.iso
[Note: As of this writing, bblcd does not support devfs, so it cannot be used to create a bootable CD-ROM for a distribution that relies on devfs (e.g., Gentoo).]
The CD-ROM image can be created on any machine with a CD writer; it does not have to be the same machine on which the original client partition was made.
[You may, of course, place your contest directories anywhere you like.]mkdir /usr/local/contest /usr/local/contest/image cd /usr/local/contest
This creates a directory named bblcd-version. The version used for the following steps was 0.7.10.tar xvfj bblcd-version.tar.bz2
cd /usr/local/contest/image rm -fr * # if needed tar xvfz /tmp/contest.tar.gz
/dev
the minimal devices necessary to boot the CD:
(cd /dev; tar cf - hda hdc tty0 tty1 ram0 ram1 null) \
| (cd
/usr/local/contest/image/dev; tar xvf -)
tmp/* tmp/.[^.]* usr/* root/* root/.[^.]*
opt/knoppix/*.tar.gz
var/cache/man/*/*.bz2
var/log/*.[0-9] var/log/*/*.[0-9] var/log/Xorg*
var/spool/up2date/* var/cache/yum/* var/lib/rpm/*
etc/sysconfig/hwconf
for i in `find var/log -type f`
do
> $i
done
cd /usr/local/contest/bblcd-version
make -C bootdsk floppy-288
mkisofs.input/etc/fstab:
/etc/fstab
[Note: Values for options [2], [3] and [4] are given as for a Fedora Core 2 image; adjust accordingly.]make config
Option Value [1] Path to root of master distribution: /usr/local/contest/image[2] Path to kernel: /usr/local/contest/image/boot/vmlinuz-2.6.8-1.521[3] Path to modules source directory: /usr/local/contest/image/lib/modules/2.6.8-1.521custom[4] List of modules: kernel/drivers/block/loop.ko[A] [4] Make /etc writable: yes
make prep
Just go through items 1-6 in order.
Item [2] can be skipped (home directories will be NFS-mounted from the server).
For item [5] a varfiles.cfg file containing just the
line "include ." will suffice (all excess files have already been removed).
For item [6], just follow the directions and add the line
test -e /sbin/boot.bblcd && source /sbin/boot.bblcd
to the initial boot script, just after /proc is
mounted.
chmod a+rx /var
after the "test -e ..." line in the initial
boot script.
bblcd.iso):
make iso
cdrecord -v fs=8m dev=/dev/cdwriter -data ./bblcd.iso