mirror of
https://github.com/xcat2/xNBA.git
synced 2024-11-25 19:08:35 +00:00
70 lines
2.8 KiB
Plaintext
70 lines
2.8 KiB
Plaintext
|
This is a quick and dirty script to convert a floppyfw floppy
|
||
|
(http://www.zelow.no/floppyfw/) to a tagged image for booting with
|
||
|
Etherboot (http://etherboot.sourceforge.net/). The advantages of network
|
||
|
booting include: it's much faster loading from the network than from a
|
||
|
floppy disk, you can boot from any size floppy, and you are not limited
|
||
|
to the maximum of 1.44 MB of the physical floppy. If you have enough RAM
|
||
|
and use a virtual floppy to build the initial boot image, you can put as
|
||
|
much on it as will fit the ramdisk.
|
||
|
|
||
|
See further down under -nonet if you want to boot from HD or CDROM.
|
||
|
|
||
|
This program requires mtools, tar, bzip2, loopback mount in the kernel,
|
||
|
and root privileges to execute. Hope you have them.
|
||
|
|
||
|
This script works for any of the releases for which a subdirectory of
|
||
|
that name is provided, but it should not be too hard to make it work for
|
||
|
other releases, all that is done here is to substitute some scripts for
|
||
|
the distributed ones.
|
||
|
|
||
|
First of all you should make the floppy work the way you want before
|
||
|
converting it to a tagged image. This involves editing the various
|
||
|
config files on the floppy. Instructions on this are distributed from
|
||
|
the floppyfw web page mentioned above.
|
||
|
|
||
|
Edit the $tftpdir assignment for the directory where you put your tagged
|
||
|
images. Edit the $libdir assignment and the use lib directive near the
|
||
|
top if you decide to put this package somewhere other than
|
||
|
/usr/local/lib/mkffwnb/. Adjust the instructions below as necessary.
|
||
|
|
||
|
Copy everything to $libdir.
|
||
|
|
||
|
mkdir -p /usr/local/lib/mkffwnb/
|
||
|
cp -a . /usr/local/lib/mkffwnb/
|
||
|
|
||
|
Make a link from /usr/local/lib/mkffwnb/mkffwnb.pl to
|
||
|
/usr/local/bin/mkffwnb so that it's in your path.
|
||
|
|
||
|
ln -s /usr/local/lib/mkffwnb/mkffwnb.pl /usr/local/bin/mkffwnb
|
||
|
|
||
|
Then run it as:
|
||
|
|
||
|
mkffwnb
|
||
|
|
||
|
You can also provide a floppy drive as an argument, e.g.
|
||
|
|
||
|
mkffwnb x:
|
||
|
|
||
|
where x: could be mapped to a disk file. This allows you to build an
|
||
|
image without a real floppy drive. Remember that for virtual drives root
|
||
|
must have the mapping for the drive in question in ~root/.mtoolsrc.
|
||
|
|
||
|
You can use the option --localtime=/etc/localtime to specify that the
|
||
|
file /etc/localtime is to be copied to /etc/localtime on the initrd.
|
||
|
Instead of /etc/localtime, you can use any of the timezone files under
|
||
|
/usr/share/zoneinfo/, it's just that /etc/localtime will usually be the
|
||
|
correct one for your timezone.
|
||
|
|
||
|
If you use the option -nonet, it leaves the intermediate files in
|
||
|
$tempdir, /tmp/mkffwnb by default. This is useful if you want the
|
||
|
vmlinuz and initrd.gz files for use with LILO or isolinux to boot from
|
||
|
HD or CDROM. Actually you can also use these with a floppy, it loads
|
||
|
faster if you fold all the scripts and modules into the initrd ahead
|
||
|
of time.
|
||
|
|
||
|
mkffwnb has to be run as root because it uses loopback mounts and also
|
||
|
because the files inside the initrd are owned by root.
|
||
|
|
||
|
Ken Yap
|
||
|
2003-04-20
|