224 lines
4.9 KiB
HTML
224 lines
4.9 KiB
HTML
<HTML
|
|
><HEAD
|
|
><TITLE
|
|
>How the pros do it</TITLE
|
|
><META
|
|
NAME="GENERATOR"
|
|
CONTENT="Modular DocBook HTML Stylesheet Version 1.63
|
|
"><LINK
|
|
REL="HOME"
|
|
TITLE="The Linux Bootdisk HOWTO"
|
|
HREF="index.html"><LINK
|
|
REL="PREVIOUS"
|
|
TITLE="Miscellaneous topics"
|
|
HREF="x1014.html"><LINK
|
|
REL="NEXT"
|
|
TITLE="Creating bootable CD-ROMs"
|
|
HREF="cd-roms.html"></HEAD
|
|
><BODY
|
|
CLASS="SECT1"
|
|
BGCOLOR="#FFFFFF"
|
|
TEXT="#000000"
|
|
LINK="#0000FF"
|
|
VLINK="#840084"
|
|
ALINK="#0000FF"
|
|
><DIV
|
|
CLASS="NAVHEADER"
|
|
><TABLE
|
|
WIDTH="100%"
|
|
BORDER="0"
|
|
CELLPADDING="0"
|
|
CELLSPACING="0"
|
|
><TR
|
|
><TH
|
|
COLSPAN="3"
|
|
ALIGN="center"
|
|
>The Linux Bootdisk HOWTO</TH
|
|
></TR
|
|
><TR
|
|
><TD
|
|
WIDTH="10%"
|
|
ALIGN="left"
|
|
VALIGN="bottom"
|
|
><A
|
|
HREF="x1014.html"
|
|
>Prev</A
|
|
></TD
|
|
><TD
|
|
WIDTH="80%"
|
|
ALIGN="center"
|
|
VALIGN="bottom"
|
|
></TD
|
|
><TD
|
|
WIDTH="10%"
|
|
ALIGN="right"
|
|
VALIGN="bottom"
|
|
><A
|
|
HREF="cd-roms.html"
|
|
>Next</A
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
><HR
|
|
ALIGN="LEFT"
|
|
WIDTH="100%"></DIV
|
|
><DIV
|
|
CLASS="SECT1"
|
|
><H1
|
|
CLASS="SECT1"
|
|
><A
|
|
NAME="PROS"
|
|
>10. How the pros do it</A
|
|
></H1
|
|
><P
|
|
>You may notice that the bootdisks used by major distributions such as
|
|
Slackware, RedHat or Debian seem more sophisticated than what is described
|
|
in this document. Professional distribution bootdisks are based on the
|
|
same principles outlined here, but employ various tricks because their
|
|
bootdisks have additional requirements. First, they must be able to work
|
|
with a wide variety of hardware, so they must be able to interact with the
|
|
user and load various device drivers. Second, they must be prepared to
|
|
work with many different installation options, with varying degrees of
|
|
automation. Finally, distribution bootdisks usually combine installation
|
|
and rescue capabilities.</P
|
|
><P
|
|
>Some bootdisks use a feature called <EM
|
|
>initrd</EM
|
|
>
|
|
(<EM
|
|
>initial ramdisk</EM
|
|
>). This feature was introduced
|
|
around 2.0.x and allows a kernel to boot in two phases. When the
|
|
kernel first boots, it loads an initial ramdisk image from the boot
|
|
disk. This initial ramdisk is a root filesystem containing a program
|
|
that runs before the real root fs is loaded. This program usually
|
|
inspects the environment and/or asks the user to select various boot
|
|
options, such as the device from which to load the real rootdisk. It
|
|
typically loads additional modules not built in to the kernel. When
|
|
this initial program exits, the kernel loads the real root image and
|
|
booting continues normally. For further information on
|
|
<B
|
|
CLASS="COMMAND"
|
|
>initrd</B
|
|
>, see your local file <A
|
|
HREF="file:/usr/src/linux/Documentation/initrd.txt"
|
|
TARGET="_top"
|
|
><TT
|
|
CLASS="FILENAME"
|
|
>/usr/src/linux/Documentation/initrd.txt</TT
|
|
></A
|
|
>
|
|
and <A
|
|
HREF="ftp://elserv.ffm.fgan.de/pub/linux/loadlin-1.6/initrd-example.tgz"
|
|
TARGET="_top"
|
|
><TT
|
|
CLASS="FILENAME"
|
|
>ftp://elserv.ffm.fgan.de/pub/linux/loadlin-1.6/initrd-example.tgz</TT
|
|
></A
|
|
></P
|
|
><P
|
|
>The following are summaries of how each distribution's installation
|
|
disks seem to work, based on inspecting their filesystems and/or
|
|
source code. We do not guarantee that this information is completely
|
|
accurate, or that they have not changed since the versions noted.</P
|
|
><P
|
|
> Slackware (v.3.1) uses a straightforward LILO boot similar to what
|
|
is described in <A
|
|
HREF="x703.html#TRANSFERRINGWITHLILO"
|
|
>Section 6.1</A
|
|
>. The
|
|
Slackware bootdisk prints a bootup message (“<TT
|
|
CLASS="LITERAL"
|
|
>Welcome to the
|
|
Slackware Linux bootkernel disk!</TT
|
|
>”) using LILO's
|
|
<TT
|
|
CLASS="LITERAL"
|
|
>message</TT
|
|
> parameter. This instructs the user to enter a
|
|
boot parameter line if necessary. After booting, a root filesystem is
|
|
loaded from a second disk. The user invokes a <B
|
|
CLASS="COMMAND"
|
|
>setup</B
|
|
>
|
|
script which starts the installation. Instead of using a modular kernel,
|
|
Slackware provides many different kernels and depends upon the user to
|
|
select the one matching his or her hardware requirements.</P
|
|
><P
|
|
> RedHat (v.4.0) also uses a LILO boot. It loads a compressed ramdisk
|
|
on the first disk, which runs a custom <B
|
|
CLASS="COMMAND"
|
|
>init</B
|
|
> program.
|
|
This program queries for drivers then loads additional files from a
|
|
supplemental disk if necessary.</P
|
|
><P
|
|
> Debian (v.1.3) is probably the most sophisticated of the
|
|
installation disk sets. It uses the SYSLINUX loader to arrange various
|
|
load options, then uses an <TT
|
|
CLASS="LITERAL"
|
|
>initrd</TT
|
|
> image to guide the
|
|
user through installation. It appears to use both a customized
|
|
<B
|
|
CLASS="COMMAND"
|
|
>init</B
|
|
> and a customized shell.</P
|
|
></DIV
|
|
><DIV
|
|
CLASS="NAVFOOTER"
|
|
><HR
|
|
ALIGN="LEFT"
|
|
WIDTH="100%"><TABLE
|
|
WIDTH="100%"
|
|
BORDER="0"
|
|
CELLPADDING="0"
|
|
CELLSPACING="0"
|
|
><TR
|
|
><TD
|
|
WIDTH="33%"
|
|
ALIGN="left"
|
|
VALIGN="top"
|
|
><A
|
|
HREF="x1014.html"
|
|
>Prev</A
|
|
></TD
|
|
><TD
|
|
WIDTH="34%"
|
|
ALIGN="center"
|
|
VALIGN="top"
|
|
><A
|
|
HREF="index.html"
|
|
>Home</A
|
|
></TD
|
|
><TD
|
|
WIDTH="33%"
|
|
ALIGN="right"
|
|
VALIGN="top"
|
|
><A
|
|
HREF="cd-roms.html"
|
|
>Next</A
|
|
></TD
|
|
></TR
|
|
><TR
|
|
><TD
|
|
WIDTH="33%"
|
|
ALIGN="left"
|
|
VALIGN="top"
|
|
>Miscellaneous topics</TD
|
|
><TD
|
|
WIDTH="34%"
|
|
ALIGN="center"
|
|
VALIGN="top"
|
|
> </TD
|
|
><TD
|
|
WIDTH="33%"
|
|
ALIGN="right"
|
|
VALIGN="top"
|
|
>Creating bootable CD-ROMs</TD
|
|
></TR
|
|
></TABLE
|
|
></DIV
|
|
></BODY
|
|
></HTML
|
|
> |