The All In One Boot Floppy
“The Only Boot Floppy You Ever Need”
Jump to downloads.
Why yet another boot floppy?
There are several reasons why I created this floppy:
- Floppies are dying -- the PC I created this floppy on does
not even have a floppy drive. Soon most of the PCs will not have any
floppy drives any more. So development of floppy based software
somehow stalled - one would cut off users that do not have a floppy
drive. Today most bootable software is shipped on CDROM.
- On the other hand, when helping people to "fix their PC",
there are quite a lot of PCs in use whose BIOS does not support
booting from CDROMs (Most pre-Pentium BIOSes do not support CDROM
boot). However, these PCs are still fast enough for web browsing or
being used as X terminals or network routers. So it should at least
be possible to boot from this floppy and "chainload" a usual IDE
cdrom. A floppy containing only this would be enough for PCs like this.
- Another quite new booting "method" is booting via
network. Since many BIOSes support this, usual Linux live CDs tend to
support a "terminal server" mode where one CD can boot lots of PCs via
network. Older BIOSes (or, to be more precise, most BIOSes that are
used today) do not support booting from network. So it would be great
if you could boot from network with this floppy as well. However,
booting from PCMCIA network cards is impossible as far as I know, and
booting PCI cards depends on its chipset. So I won't make promises
here.
- And last but not least, there are lots of "small floppies"
flying around in my floppy box, containing stuff like CmosPWD (to
decode BIOS passwords), Memtest (to test your PCs RAM) or a FreeDOS
boot floppy with CDROM drivers (for accessing a DOS virus scanner
stored on a CD). And of course, a GRUB floppy to boot a Linux based
system from hard disk when MBR and/or boot sectors are hosed (as long
as you know where your kernel and initrd is stored). Of course, you
could put all this onto a CDROM as well, but then you'd have to insert
two disks (one floppy and one CDROM) to boot from it.
What will never be on this floppy
There will never be a "linux live system"
like tomsrtbt on it. Those
floppies all have a fundamental flaw: there is too much software
needed to fit on a single floppy. Either there is no command
completion, or no NTFS/SMB/ReiserFS/putyourfavouritefilesystemhere
support, or there is no network driver for the PC you have to save
your data from, ad infinitum. When you need a linux live system, use a
CDROM based one like Knoppix
or grml, and use this floppy to
boot from your CDROM if your BIOS does not support it.
There will be no commercial software on this floppy (like MSCDEX.EXE
from Microsoft) since putting it on would make distribution of the
disk much harder, if not impossible. If you need those, customize the
disk yourself (it uses a FAT12 filesystem that can be read by
virtually every operating system). Proprietary freeware tools are no
problem though.
Where can I download this floppy
Download the floppy image (1440 KB).
Download grub patch (1 KB) and
all config files (11 KB, kind of source code).
Download the previous version
On Windows,
use RawWriteWin
to write it to a floppy. Linux users will know themselves how to use
dd :-)
What is new in Version 1.0?
The following programs were removed:
- Etherboot 5.4.1 (replaced by gPXE)
- Testdisk 6.2 (the latest version did no longer fit onto
this floppy; you will find testdisk on almost every rescue Linux
distribution)
The following programs were added:
- GRUB2 1.96
- gPXE 0.9.3
- GRUB Invaders 1.0.0
- Sysinternals NtfsDos 3.02R
- FreeDOS Fdisk 1.2.1
The following programs were updated:
- Cmospwd was upgraded from 4.8 to 5.0
- Memtest86 was upgraded from 3.2 to 3.4
- memtest86+ was upgraded from 1.65 to 2.01
- Some patches for Smart Boot Manager 3.7.1 (From the SourceForge
Patches tracker from 2007-01-21) have been applied.
What does the floppy currently contain?
The current version (Version 1.0) contains the following:
-
GRUB boot loader (the first you will see) with keyboard layouts
for German, Spanish and French (English is supported by your BIOS anyway)
and some boot templates; in addition a command line version of GRUB2.
-
Smart Boot Manager to boot from CDROM drives
-
Memory testers: Memtest86 and Memtest86+
-
gPXE to boot via network
-
GRUB-Invaders, a sample game
that is its own operating system (which needs only 3K of space)
-
A FreeDOS kernel with IDE CDROM support, and the following DOS utilities:
-
mKeyb -- a very small international keyboard driver
-
Sysinternals NtfsDos -- read
NTFS drives
-
FreeDOS Fdisk -- just in case you need to remove all partitions from a
disk when it does not want to boot
-
CmosPwd -- decode BIOS passwords
-
!BIOS 3.20 -- another BIOS password decoder
-
pciscan -- detect PCI network cards (to know which etherboot module to load)
-
lucifer (download: DOS/UNIX)-- simple CPU burn-in test
-
How was this floppy created?
For creating floppies like this, it is very useful to have an I386
emulator like VirtualBox handy. This enables you to build floppy images on
hard disk and test them without having to write them to slow floppies
(and without having to reboot a lot).
If you don't have a physical floppy drive and are on a Windows system,
having VFD is very useful since it allows you to create a virtual
floppy drive that stores its data either in an image file.
For patching GRUB you will need a GNU/Linux or similar system, however
if you don't need the eye candy on the splash screen, it should work
with an unpatched GRUB as well.
Let's start with the 0.9 version of the floppy, and copy the latest version of the tools mentioned above to it. Everything except Smart Boot Manager and GRUB2 is available in precompiled form (for gPXE look at Rom-o-matic).
Download the sourcecode of Smart Boot Manager and the four patches from jhess in SourceForge's Patches forum and apply them. Also download apply my patch from the same location (numbered 5). For compilation on a Debian system you will need nasm and libucl-dev. When it is compiled, insert any scratch floppy (where there is nothing on it you still need) into the (virtual) floppy drive and run:
release/sbminst -l -f sbootmgr.lkr
You can discard the installed SBM on the floppy, just use the generated sbootmgr.lkr file.
Download Grub2 1.96 and compile it (./configure && make && make install, you know the drill. Note that make install will only install the helper binaries, not the boot loader). Then run:
grub-mkimage -p /boot/grub2 -o core.img biosdisk fat
Now just copy all the files in $PREFIX/lib/grub/i386-pc and core.img to /boot/grub2 on the floppy and add an entry to GRUB for loading GRUB2.
That's it for this version of the all in one boot floppy!
Contact me
Send Feedback to schierlm@gmx.de.
Michael Schierl, Ignaz-Baldauf-Str. 5, D-86551
Aichach, Germany