CD bootable Linux isn’t an exclusive feature of
KNOPPIX. There are many distributions;
DemoLinux, Mepis, Slax, Adios, etc. Among them,
KNOPPIX is first popular CD bootable Linux,
because automatic hardware detection/configuration
(Autoconfig) and compressed loop back device
(cloop) are excellent.
Autoconfig function of KNOPPIX detects
individual devices and load suitable device drivers.
Autoconfig is achieved by “/etc/init.d/knoppix-
autoconfig” script. The script is consisted of
hardware detection part and driver setup part.
Hardware detection is done by the “hwsetup” binary
which is based on “kudzu”; Red Hat Linux hardware
probing library. After hardware detection, driver is
setup by setup-scripts like “xmk86config”. If
network card is detected and DHCP is available, IP
address is automatically set up.
Cloop is a compressed loop-back device. Loop
back device enables us to mount a file as block
device. It reduces the space needed on the CD to
about 50% down to 25% of the original file system.
KNOPPIX stores root file system to a cloop file and
mounts it at boot time. 700MB volume of CD-ROM
is almost occupied by cloop file
“/KNOPPIX/KNOPPIX”. The rest of the volume is
files for boot. Figure 1 shows the image of
KNOPPIX CD-ROM. A cloop file is loopback-
mounted and read a file on-the-fly decompression.
Figure 1: The contents of KNOPPIX CD
3 SFS
Self-certifying File System(SFS) is a secure network
file system for Internet [Mazières 2000, Fu 2002].
SFS provides a suitable and more secure alternative
to the widely deployed NFS file system.
SFS cryptographically secures all client-server
network communications with encryption and a
message authentication code. To prevent rogue
servers from impersonating valid ones, each SFS
server has a public key which is generated by SHA-1
hash. A server’s files all reside under a so-called
self-certifying pathname derived from its public key.
Self-certifying pathnames contain enough
information for an SFS client to connect to a server
and establish a cryptographically secure channel.
SFS consists of two programs run at boot time.
SFS clients must run the SFS client daemon (sfscd),
which creates “/sfs” directory and implements the
auto-mounting of remote SFS servers. SFS servers
must run the SFS server daemon (sfssd), which
makes local file systems available to SFS clients on
TCP port 4. “sfscd” is responsible for automatically
mounting new remote file systems. On the server
machine, “sfssd” accepts incoming SFS connections
and de-multiplexes these requests to the appropriate
SFS server daemons. The client and server file
system daemons communicate with the kernel using
NFS loopback.
4 SFS-KNOPPIX
FS-KNOPPIX is a combination of KNOPPIX and
SFS, which enables to boot KNOPPIX form
Internet. Unfortunately SFS-KNOPPIX is not
perfect Internet boot, because nobody could get IP
address and kernel image form Internet. LAN boot
depend on BOOTP and TFTP server to allocate IP
address and get a kernel image.
SFS-KNOPPIX is a customized KNOPPIX,
which is got rid of cloop file in the CD (Figure 2). A
cloop file is obtained form Internet using SFS at
boot time. The original KNOPPIX requires
downloading 700MB iso image but SFS-KNOPPIX
requires 20MB iso image, which is just a boot loader
of KNOPPIX. SFS-KNOPPIX doesn’t need to
download a whole cloop file, because SFS is a file
system which allows random access to cloop file. It
means that only necessity block of data is transferred
when application requires. It can reduce network
traffic. The performance is shown in Section 5.
Figure 2: The contents of SFS-KNOPPIX CD
SFS-KNOPPIX WHICH BOOTS FROM INTERNET
215