[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

harddisk boot



Hi!

Here are two enhancements for the docs.

Ingo Wichmann

Title: Installing Debian GNU/Linux 3.0 For Intel x86 - Obtaining System Installation Media

[ previous ] [ Contents ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ 12 ] [ next ]

Installing Debian GNU/Linux 3.0 For Intel x86
Chapter 4 - Obtaining System Installation Media


4.1 Official Debian GNU/Linux CD-ROM Sets

By far the easiest way to install Debian GNU/Linux is from an Official Debian CD-ROM Set (see the CD vendors page). You may also download the CD-ROM images from the Debian server and make your own set, if you have a fast network connection and a CD burner. If you have a Debian CD set and CDs are bootable on your machine, you can skip right to Booting from a CD-ROM, Section 5.2; much effort has been expended to ensure the files most people need are there on the CD.

If your machine doesn't support CD booting, but you do have a CD set, you can use an alternative strategy ( floppy disk, hard disk, or net boot) to initially boot the system installer. The files you need for booting by another means are also on the CD; the Debian network archive and CD folder organization are identical. So when archive file paths are given below for particular files you need for booting, look for those files in the same directories and subdirectories on your CD.

Once the installer is booted, it will be able to obtain all the other files it needs from the CD.

If you don't have a CD set, then you will need to download the installer system files and place them either on your hard disk, floppy disk or a connected computer so they can be used to boot the installer.


4.2 Downloading Files from Debian Mirrors

When downloading files from a Debian mirror, be sure to download the files in binary mode, not text or automatic mode. It's important to replicate the directory structure you find on the mirror to create a local `sub-mirror'. It isn't really necessary to do this if you place all the installation files on floppies; but it still makes it easier to find the files when you need them. You should start your local directory structure at the level under disks-i386, for example:

     current/subarchitecture/images-1.44/flavor/rescue.bin

You don't need to download every file under that level, just those that apply to you (you'll find out which ones apply as you read on). Just name the directories the same as the mirror's, and keep the files in their proper directories.

If your machine is set up to automatically decompress/decode files you download, you must turn that feature off when downloading the installation system files. They will be decompressed just-in-time by the installer. Decompressing in your current system will waste space and time, and if the original compressed archives are deleted by the decompression program, they won't be there later when the installer needs them.


4.2.1 Installation Options

Files you may need fall into three categories:

  1. Files needed to boot into the installation system (for example, rescue.bin, linux.bin, and root.bin)
  1. Files the installation system will need access to after it has been booted in order to install the operating system kernel and peripheral drivers (for example, rescue.bin and drivers.tgz)
  1. Base system installation files (for example, basedebs.tar)

If you have a working Ethernet connection on the computer, and your Ethernet card is of one of the types compiled into the installation kernel, you may only need the install system boot files. The installer is capable of installing the kernel and drivers over the network for many common Ethernet cards.

If you have an Ethernet connection for which the installer doesn't have built-in support, you may need both the install system boot files and the kernel and peripheral driver installation files.

If you are installing on a system without a working network connection, or if your network connection is via PPP (using a modem) rather than Ethernet, you will need to obtain all three types of files before starting the installation.

If you're not sure which files you need, just start with the install system boot files. If your first attempt to configure the network within the installer fails, you can just quit, get the extra files you need, and re-start the installation.

The base system installation file basedebs.tar is currently about 27M. If you are able to use a CD, or configure your network before installing the base system, it is better to do so; in that case you won't need this file. The network location is listed in the appendix (Debian Base System Installation Files, Section 11.2.3.4).


4.2.2 Choosing the Right Installation Set

Installation files include kernel images, which are available in various ``flavors''. Each flavor supports a different set of hardware. The flavors available for Intel x86 are:

`vanilla'
The standard kernel package available in Debian. This includes almost all drivers supported by Linux built as modules, which includes drivers for network devices, SCSI devices, sound cards, Video4Linux devices, etc. The `vanilla' flavor includes one rescue floppy, one root and four driver floppies.
`compact'
Like `vanilla', but with many of the less-frequently-use drivers removed (sound, v4l, etc). In addition, it has built in support for several popular PCI Ethernet devices — NE2000, 3com 3c905, Tulip, Via-Rhine and Intel EtherExpress Pro100. These built in drivers allow you to take full advantage of the Debian installer's net install feature to install the driver floppies over the network so that only the root and rescue floppy disks need to be made. Finally, `compact' also supports several common RAID controllers: DAC960, and Compaq's SMART2 RAID controllers. The `compact' flavor includes one rescue floppy, one root and two driver disks.
`idepci'
Kernel that supports only IDE and PCI devices (and a very small number of ISA devices). This kernel should be used if the SCSI drivers in the other flavors cause your system to hang on startup (probably because of resource conflicts, or a misbehaving driver/card in your system.) The `idepci' flavor also has a built-in ide-floppy driver so that you can install from LS120 or ZIP devices.
`bf2.4'
This is an experimental flavor which uses a special version of the kernel-image-2.4 package. It provides support for newer hardware components which is absent in the other (more stable) flavors. It supports more USB hardware, USB keyboards/mice, modern IDE controllers, some new network cards, and Ext3 and Reiser file systems. Compared to the driver set of our main kernel-image-2.4.x-yz packages, some non-essential drivers have been removed in order to keep the number of needed floppy disks in a sane range. If you have unexplainable problems with kernel 2.4, you should use other flavors. If you need more new drivers or optimisations for your CPU type, feel free to install an "official" kernel-image-2.4.x-yz package. This flavor comes with one rescue floppy, one root and four driver floppies.

Although we have described above how many 1.44MB diskettes the different sets occupy, you may still choose different methods of installation.

The kernel config files for these flavors can be found in their respective directories in a file named kernel-config.


4.2.3 Where to Find Installation Files

The network locations of installation files for each i386 flavor are listed in the Appendix. These include:

The rescue image contains a compressed Linux boot kernel. It is used for both floppy disk booting (when transferred to a floppy) and as the source for the Linux kernel when the kernel is being installed on your machine. The kernel binary linux.bin is an uncompressed binary kernel. It is used when booting the installer from the hard disk or CD-ROM, and is not needed for floppy installer booting.

Refer to Creating Floppies from Disk Images, Section 4.3 for important information on properly creating floppy disks from floppy images.

The root floppy image contains a compressed RAMdisk filesystem which gets loaded into memory after you boot the installer.

The peripheral drivers may be downloaded as a series of floppy images or as a tarball (drivers.tgz). The installer system will need access to the drivers file during installation. If you have a hard drive partition or connected computer which will be accessible to the installer (see below), the tarball will be more convenient to handle. The floppy image files are needed only if you must install the drivers from floppies.

When downloading files, you should also pay attention to the type of file system you are downloading them to, unless you will use floppies for the kernel and drivers. The installer can read files from many kinds of file systems, including FAT, HFS, ext2fs, and Minix. When downloading files to a *nix file system, choose the largest possible files from the archive.

The installer cannot access files on an NTFS file system — you must load the appropriate driver).

In addition to the files above, you will need .../current/dosutils/loadlin.exe (see Files for the Initial System Boot, Section 11.2.3.1).

During the installation, you will erase the partition(s) on which you are installing Debian before beginning the installation. All downloaded files must be placed on partitions other than those on which you are planning to install the system.


4.3 Creating Floppies from Disk Images

Bootable floppy disks are commonly used to boot the installer system for machines with a floppy drive. Floppies can also be used for installation of the kernel and modules on most systems.

Disk images are files containing the complete contents of a floppy disk in raw form. Disk images, such as rescue.bin, cannot simply be copied to floppy drives. A special program is used to write the image files to floppy disk in raw mode. This is required because these images are raw representations of the disk; it is required to do a sector copy of the data from the file onto the floppy.

There are different techniques for creating floppies from disk images, which depend on your platform. This section describes how to create floppies from disk images on different platforms.

No matter which method you use to create your floppies, you should remember to flip the tab on the floppies once you have written them, to ensure they are not damaged unintentionally.


4.3.1 Writing Disk Images From a Linux or Unix System

To write the floppy disk image files to the floppy disks, you will probably need root access to the system. Place a good, blank floppy in the floppy drive. Next, use the command

     dd if=file of=/dev/fd0 bs=1024 conv=sync ; sync

where file is one of the floppy disk image files. /dev/fd0 is a commonly used name of the floppy disk device, it may be different on your workstation (on Solaris, it is /dev/fd/0). The command may return to the prompt before Unix has finished writing the floppy disk, so look for the disk-in-use light on the floppy drive and be sure that the light is out and the disk has stopped revolving before you remove it from the drive. On some systems, you'll have to run a command to eject the floppy from the drive (on Solaris, use eject, see the manual page).

Some systems attempt to automatically mount a floppy disk when you place it in the drive. You might have to disable this feature before the workstation will allow you to write a floppy in raw mode. Unfortunately, how to accomplish this will vary based on your operating system. On Solaris, you can work around volume management to get raw access to the floppy. First, make sure that the floppy is auto-mounted (using volcheck or the equivalent command in the file manager). Then use a dd command of the form given above, just replace /dev/fd0 with /vol/rdsk/floppy_name, where floppy_name is the name the floppy disk was given when it was formatted (unnamed floppies default to the name unnamed_floppy). On other systems, ask your system administrator.


4.3.2 Writing Disk Images From DOS, Windows, or OS/2

If you have access to an i386 machine, you can use one of the following programs to copy images to floppies.

The FDVOL, WrtDsk or RaWrite3 programs can be used under MS-DOS.

http://www.minix-vmd.org/pub/Minix-vmd/dosutil/

To use these programs, first make sure that you are booted into DOS. Trying to use these programs from within a DOS box in Windows, or double-clicking on these programs from the Windows Explorer is not expected to work. If you don't know how to boot into DOS, just hit F8 while booting.

NTRawrite is an attempt to create a contemporary version of Rawrite/Rawrite3 that is compatible with WinNT and Win2K. It is a self-explanatory GUI application; you select the disk drive to write to, browse to the disk image you want to place there and hit the Write button.

http://sourceforge.net/projects/ntrawrite/


4.3.3 Modifying the Rescue Floppy to Support National Language

The messages shown by the rescue floppy (before loading the Linux kernel) can be shown in your mother tongue. To achieve this if you are not an English speaker, after writing the image file, you must copy the provided message files and a font to the floppy. For MS-DOS and Windows users there is a batch file setlang.bat in the dosutils directory, which copies the correct files. Simply enter this directory (e.g.

     cd
     c:\debian\dosutils

) within a command prompt window, and run setlang lang, where lang is a two-letter code of your language in lower case, for example setlang pl to set the language to Polish. Currently these language codes are available:

     ca cs da de eo es fi fr gl hr hu it ko ja pl pt ru sk sv tr zh_CN

Note that the descriptions in this manual assume that you use non localized (English) installation; otherwise the names of menus and buttons will differ from what you will see on your screen.


4.4 Preparing Files for Hard Disk Booting

The installer may be booted using boot files placed on an existing hard drive partition, either launched from another operating system or by invoking a boot loader directly from the BIOS.

A full, "pure network" installation can be achieved using this technique. This avoids all hassles of removable media, like finding and burning CD images or struggling with too numerous and unreliable floppy disks.

The installer cannot boot from files on an NTFS file system.


4.4.1 Hard disk installer booting using LILO

This section explains how to add to or even replace an existing linux installation using LILO.

At boot time, LILO supports loading in memory not only the kernel, but also a disk image. This RAM disk can be used as the root file-system by the kernel. Choose the flavor in Choosing the Right Installation Set, Section 4.2.2 that best fits your taste, and you will be (almost) done.

Copy the following two or three files from the Debian archives (dists/woody/main/disks-i386/current/<flavor>) in a convenient location on your hard drive, for instance in /boot/newinstall/.

Remember on which physical partition (e.g. /dev/hda4) are the .o drivers you just extracted from drivers.tgz.

You can also replace linux.bin and drivers.tgz by your custom kernel and the carefully chosen drivers that you will need for the installation, for instance a module for your exotic and unsupported network interface. Do not forget that your custom kernel must have (at least) the RAMDISK and initrd features built-in. See the very beginning of Replacing the Rescue Floppy Kernel, Section 10.3 for the list of the other mandatory built-in kernel features required to boot and launch the installer. Do not go on and do not read there the irrelevant floppy-related stuff after the list of features.

Finally, to configure LILO proceed to Booting from linux using LILO, Section 5.4.2.


4.5 Preparing Files for TFTP Net Booting

If your machine is connected to a local area network, you may be able to boot it over the network from another machine, using TFTP. If you intend to boot the installation system from another machine, the boot files will need to be placed in specific locations on that machine, and the machine configured to support booting of your specific machine.

You need to setup a TFTP server, and for CATS machines, a BOOTP server , or RARP server, or DHCP server.

The Reverse Address Resolution Protocol (RARP) is one way to tell your client what IP address to use for itself. Another way is to use the BOOTP protocol. BOOTP is an IP protocol that informs a computer of its IP address and where on the network to obtain a boot image. The DHCP (Dynamic Host Configuration Protocol) is a more flexible, backwards-compatible extension of BOOTP. Some systems can only be configured via DHCP.

The Trivial File Transfer Protocol (TFTP) is used to serve the boot image to the client. Theoretically, any server, on any platform, which implements these protocols, may be used. In the examples in this section, we shall provide commands for SunOS 4.x, SunOS 5.x (a.k.a. Solaris), and GNU/Linux.


4.5.1 Setting up RARP server

To setup RARP, you need to know the Ethernet address of the client (a.k.a. the MAC address). If you don't know this information, you can boot into ``Rescue'' mode (e.g., from the rescue floppy) and use the command /sbin/ifconfig eth0.

On systems using a Linux 2.2.x kernel, you need to populate the kernel's RARP table. To do this, run the following commands:

     /sbin/rarp -s client-hostname client-enet-addr
     /usr/sbin/arp -s client-ip client-enet-addr

If you get

     SIOCSRARP: Invalid argument

you probably need to load the RARP kernel module or else recompile the kernel to support RARP. Try modprobe rarp and then try the rarp command again.

On systems using a Linux 2.4.x kernel, there is no RARP module, and you should instead use the rarpd program. The procedure is similar to that used under SunOS in the following paragraph.

Under SunOS, you need to ensure that the Ethernet hardware address for the client is listed in the ``ethers'' database (either in the /etc/ethers file, or via NIS/NIS+) and in the ``hosts'' database. Then you need to start the RARP daemon. In SunOS 4, issue the command (as root): /usr/etc/rarpd -a; in SunOS 5, use /usr/sbin/rarpd -a.


4.5.2 Setting up BOOTP server

There are two BOOTP servers available for GNU/Linux, the CMU bootpd and the other is actually a DHCP server, ISC dhcpd, which are contained in the bootp and dhcp packages in Debian GNU/Linux.

To use CMU bootpd, you must first uncomment (or add) the relevant line in /etc/inetd.conf. On Debian GNU/Linux, you can run update-inetd --enable bootps, then /etc/init.d/inetd reload to do so. Elsewhere, the line in question should look like:

     bootps         dgram   udp     wait    root    /usr/sbin/bootpd        bootpd -i -t 120

Now, you must create an /etc/bootptab file. This has the same sort of familiar and cryptic format as the good old BSD printcap(5), termcap(5), and disktab(5) files. See the bootptab(5) manual page for more information. For CMU bootpd, you will need to know the hardware (MAC) address of the client. Here is an example /etc/bootptab:

     client:\
             hd=/tftpboot:\
             bf=tftpboot.img:\
             ip=192.168.1.90:\
             sm=255.255.255.0:\
             sa=192.168.1.1:\
             ha=0123456789AB:

You will need to change at least the "ha" option, which specifies the hardware address of the client. The "bf" option specifies the file a client should retrieve via TFTP; see Move TFTP Images Into Place, Section 4.5.5 for more details.

By contrast, setting up BOOTP with ISC dhcpd is really easy, because it treats BOOTP clients as a moderately special case of DHCP clients. Some architectures require a complex configuration for booting clients via BOOTP. If yours is one of those, read the section Setting up a DHCP server, Section 4.5.3. Otherwise, you will probably be able to get away with simply adding the allow bootp directive to the configuration block for the subnet containing the client, and restart dhcpd with /etc/init.d/dhcpd restart.


4.5.3 Setting up a DHCP server

At the time of this writing, there is only one DHCP server which is free software, namely ISC dhcpd. In Debian GNU/Linux, this is available in the dhcp package. Here is a sample configuration file for it (usually /etc/dhcpd.conf):

     option domain-name "example.com";
     option domain-name-servers ns1.example.com;
     option subnet-mask 255.255.255.0;
     default-lease-time 600;
     max-lease-time 7200;
     server-name "servername";
     
     subnet 192.168.1.0 netmask 255.255.255.0 {
       range 192.168.1.200 192.168.1.253;
       option routers 192.168.1.1;
     }
     
     host clientname {
       filename "/tftpboot/tftpboot.img";
       server-name "servername";
       next-server servername;
       hardware ethernet 01:23:45:67:89:AB; 
       fixed-address 192.168.1.90;
     }

In this example, there is one server "servername" which performs all of the work of DHCP, server, TFTP server, and network gateway. You will almost certainly need to change the domain-name options, as well as the server name and client hardware address. The "filename" option should be the name of the file which will be retrieved via TFTP. After you have edited the dhcpd configuration file, restart it with /etc/init.d/dhcpd restart.


4.5.4 Enabling the TFTP Server

To get the TFTP server ready to go, you should first make sure that tftpd is enabled. This is usually enabled by having the following line in /etc/inetd.conf:

     tftp dgram udp wait root /usr/etc/in.tftpd in.tftpd /tftpboot

Look in that file and remember the directory which is used as the argument of in.tftpd; you'll need that below. The -l argument enables some versions of in.tftpd to log all requests to the system logs; this is useful for diagnosing boot errors. If you've had to change /etc/inetd.conf, you'll have to notify the running inetd process that the file has changed. On a Debian machine, run /etc/init.d/netbase reload (for potato/2.2 and newer systems use /etc/init.d/inetd reload); on other machines, find out the process ID for inetd, and run kill -HUP inetd-pid.


4.5.5 Move TFTP Images Into Place

Next, place the TFTP boot image you need, as found in Description of Installation System Files, Section 11.2.3, in the tftpd boot image directory. Generally, this directory will be /tftpboot. You'll have to make a link from that file to the file which tftpd will use for booting a particular client. Unfortunately, the file name is determined by the TFTP client, and there are no strong standards.

Often, the file that the TFTP client will look for is client-ip-in-hexclient-architecture. To compute client-ip-in-hex, take each byte of the client IP address and translate it into hexadecimal notation. If you have a machine handy with the bc program, you can use the program. First issue the obase=16 command to set the output to hex, then enter the individual components of the client IP one at a time. As for client-architecture, try out some values.

NOT YET WRITTEN


4.5.6 Installing with TFTP and NFS Root

It is closer to "TFTP install for lowmem..." because you don't want to load the RAMdisk anymore but boot from the newly created NFS-root file system. You then need to replace the symlink to the tftpboot image by a symlink to the kernel image (for example, linux-a.out). My experience on booting over the network was based exclusively on RARP/TFTP which requires all daemons running on the same server (the sparc workstation is sending a TFTP request back to the server that replied to its previous RARP request). However, Linux supports BOOTP protocol, too, but I don't know how to set it up :-(( Does it have to be documented as well in this manual?

To boot the client machine, go to Booting from TFTP, Section 5.5.


4.6 Automatic Installation

For installing on multiple computers it's possible to use the fully automatic installation called FAI. The Debian package fai has to be installed on a computer called the install server. Then all install clients boot from their network card or floppy disk and automatically install Debian on their local disks.


[ previous ] [ Contents ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ 12 ] [ next ]

Installing Debian GNU/Linux 3.0 For Intel x86

version 3.0.24, 24 May, 2002
Bruce Perens
Sven Rudolph
Igor Grobman
James Treacy
Adam Di Carlo

595c595
< Copy the following two or three files from the Debian archives (<code>dists/woody/main/disks-i386/current/&lt;flavor&gt;</code>) in a convenient
---
> Copy the following two or three files from the Debian archives in a convenient
604c604
< <code>../images-1.44/&lt;flavor&gt;/root.bin</code> (root image)
---
> <code>root.bin</code> (root image)

Title: Installing Debian GNU/Linux 3.0 For Intel x86 - Booting the Installation System

[ previous ] [ Contents ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ 12 ] [ next ]

Installing Debian GNU/Linux 3.0 For Intel x86
Chapter 5 - Booting the Installation System


Subject to limitations in some cases, you may boot the installation system from a Debian GNU/Linux CD-ROM, floppy disks, a partition on a hard disk, or from another machine via a local area network.


5.1 Boot Parameter Arguments

Boot parameters are Linux kernel parameters which are generally used to make sure that peripherals are dealt with properly. For the most part, the kernel can auto-detect information about your peripherals. However, in some cases you'll have to help the kernel a bit.

If you are booting from the rescue floppy or from CD-ROM you will be presented with the boot prompt, boot:. Details about how to use boot parameters with the rescue floppy can be found in Booting from Floppies, Section 5.3. If you are booting from an existing operating system, you'll have to use other means to set boot parameters. For instance, if you are installing from DOS, you can edit the install.bat file with any text editor.

Full information on boot parameters can be found in the Linux BootPrompt HOWTO; this section contains only a sketch of the most salient parameters.

If this is the first time you're booting the system, try the default boot parameters (i.e., don't try setting arguments) and see if it works correctly. It probably will. If not, you can reboot later and look for any special parameters that inform the system about your hardware.

When the kernel boots, a message

     Memory:
     availk/totalk available

should be emitted early in the process. total should match the total amount of RAM, in kilobytes. If this doesn't match the actual of RAM you have installed, you need to use the mem=ram parameter, where ram is set to the amount of memory, suffixed with ``k'' for kilobytes, or ``m'' for megabytes. For example, both mem=65536k and mem=64m mean 64MB of RAM.

Some systems have floppies with ``inverted DCLs''. If you receive errors reading from the floppy, even when you know the floppy is good, try the parameter floppy=thinkpad.

On some systems, such as the IBM PS/1 or ValuePoint (which have ST-506 disk drivers), the IDE drive may not be properly recognized. Again, try it first without the parameters and see if the IDE drive is recognized properly. If not, determine your drive geometry (cylinders, heads, and sectors), and use the parameter hd=cylinders,heads,sectors.

If your monitor is only capable of black-and-white, use the mono boot argument. Otherwise, your installation will use color, which is the default.

If you are booting with a serial console, generally the kernel will autodetect this . If you have a videocard (framebuffer) and a keyboard also attached to the computer which you wish to boot via serial console, you may have to pass the console=device argument to the kernel, where device is your serial device, which is usually something like ``ttyS0''.

Again, full details on boot parameters can be found in the Linux BootPrompt HOWTO, including tips for obscure hardware. Some common gotchas are included below in Troubleshooting the Install Process, Section 5.6.


5.1.1 dbootstrap Arguments

The installation system recognizes a few boot arguments which may be useful. The effects of quiet and verbose are listed in Effects of Verbose and Quiet, Section 11.5.

quiet
This will cause the installation system to suppress confirmation messages and try to do the right thing without fuss. If you are familiar and comfortable with what the installation system is going to expect, this is a nice option to quieten the process.
verbose
Ask even more questions than usual.
debug
Emit additional debug messages to the installation system log (see Using the Shell and Viewing the Logs, Section 5.7.1), including every command run.
bootkbd=...
Pre-select the keyboard you want to use, e.g., bootkbd=qwerty/us
mono
Use monochrome rather than color mode.
nolangchooser
Some architectures use the kernel framebuffer to offer installation in a number of languages. If framebuffer causes a problem on your system you can use this option to disable the feature. Problem symptoms are error messages about bterm or bogl, a blank screen, or a freeze within a few minutes after starting the install. The video=vga16:off argument may also be used to disable the framebuffer. Such problems have been reported on a Dell Inspiron with Mobile Radeon card.

5.2 Booting from a CD-ROM

The easiest route for most people will be to use a set of Debian CDs. If you have a CD set, and if your machine supports booting directly off the CD, great! Simply configure your system for booting off a CD as described in Boot Device Selection, Section 3.8.2, insert your CD, reboot, and proceed to the next chapter.

You may need to configure your hardware as indicated in Boot Device Selection, Section 3.8.2. Then put the CD-ROM into the drive, and reboot. The system should boot up, and you should be presented with the boot: prompt. Here you can enter your boot arguments, or just hit enter.

CD #1 of official Debian CD-ROM sets for Intel x86 will present a boot: prompt on most hardware. Press F3 to see the list of kernel options available from which to boot. Just type your chosen flavor name (idepci, vanilla, compact, bf24) at the boot: prompt followed by return.

If your hardware doesn't support booting of multiple images, put one of the other CDs in the drive. It appears that most SCSI CD-ROM drives do not support isolinux multiple image booting, so users with SCSI CD-ROMs should try either CD2 (vanilla) or CD3 (compact), or CD5 (bf2.4).

CD's 2 through 5 will each boot a different ``flavor'' depending on which CD-ROM is inserted. See Choosing the Right Installation Set, Section 4.2.2 for a discussion of the different flavors. Here's how the flavors are laid out on the different CD-ROMs:

CD 1
Allows a selection of kernel images to boot from (the idepci flavor is the default if no selection is made).
CD 2
Boots the `vanilla' flavor.
CD 3
Boots the `compact' flavor.
CD 4
Boots the `idepci' flavor.
CD 5
Boots the `bf2.4' flavor.

If your system can't boot directly from CD-ROM, or you simply can't seem to get it to work, don't despair; you can simply run E:\install\boot.bat under DOS (replace E: with whatever drive letter DOS assigns to your CD-ROM drive) to start the installation process. Then, skip down to Booting Into Your New Debian System, Chapter 8.

Also, if you're going to be installing from a FAT (DOS) partition, you have the option of booting the installer from the hard disk. See Booting from a DOS partition, Section 5.4.1 below for more information on installing via this method.

Note that certain CD drives may require special drivers, and thus be inaccessible in the early installation stages. If it turns out the standard way of booting off a CD doesn't work for your hardware, revisit this chapter and read about alternate kernels and installation methods which may work for you.

Even if you cannot boot from CD-ROM, you can probably install the Debian system components and any packages you want from CD-ROM. Simply boot using a different media, such as floppies. When it's time to install the operating system, base system, and any additional packages, point the installation system at the CD-ROM drive.

If you have problems booting, see Troubleshooting the Install Process, Section 5.6.


5.3 Booting from Floppies

Booting from floppies is supported for Intel x86.

You will have already downloaded the floppy images you needed and created floppies from the images in Creating Floppies from Disk Images, Section 4.3. If you need to, you can also modify the rescue floppy; see Replacing the Rescue Floppy Kernel, Section 10.3.

Booting from the rescue floppy is easy: place the rescue floppy in the primary floppy drive, and shut down the system as you normally would, then turn it back on.

Note that on some machines, Control-Alt-Delete does not properly reset the machine, so a ``hard'' reboot is recommended. If you are installing from an existing operating system (e.g., from a DOS box) you don't have a choice. Otherwise, please do a hard reboot when booting.

The floppy disk will be accessed, and you should then see a screen that introduces the rescue floppy and ends with the boot: prompt.

If you are using an alternative way to boot the system, follow the instructions, and wait for the boot: prompt to come up. If you boot from floppies smaller than 1.44MB, or, in fact, whenever you boot from floppy on your architecture, you have to use a ramdisk boot method, and you will need the Root Disk.

You can do two things at the boot: prompt. You can press the function keys F1 through F10 to view a few pages of helpful information, or you can boot the system.

Information on boot parameters which might be useful can be found by pressing F4 and F5. If you add any parameters to the boot command line, be sure to type the boot method (the default is linux) and a space before the first parameter (e.g., linux floppy=thinkpad). If you simply press Enter, that's the same as typing linux without any special parameters.

The disk is called the rescue floppy because you can use it to boot your system and perform repairs if there is ever a problem that makes your hard disk unbootable. Thus, you should save this floppy after you've installed your system. Pressing F3 will give further information on how to use the rescue floppy.

Once you press Enter, you should see the message Loading..., followed by Uncompressing Linux..., and then a screenful or so of information about the hardware in your system. More information on this phase of the boot process can be found below in Interpreting the Kernel Startup Messages, Section 5.6.3.

If you choose a non-default boot method, e.g., ``ramdisk'' or ``floppy'', you will be prompted to insert the Root Floppy. Insert the Root Floppy into the first disk drive and press Enter. (If you choose floppy1 insert the Root Floppy into the second disk drive.)

After booting from the rescue floppy, the root floppy is requested. Insert the root floppy and press Enter, and the contents are loaded into memory. The installer program dbootstrap is automatically launched.

If you have problems booting, see Troubleshooting the Install Process, Section 5.6.


5.4 Booting From a Hard Disk

Booting from an existing operating system is often a convenient option; for some systems it is the only supported method of installation.

To boot the installer from hard disk, you will have already completed downloading and placing the needed files in Preparing Files for Hard Disk Booting, Section 4.4.


5.4.1 Booting from a DOS partition

Boot into DOS (not Windows) without any drivers being loaded. To do this, you have to press F8 at exactly the right moment (and optionally select the `safe mode command prompt only' option). Enter the subdirectory for the flavor you chose, e.g.,

     cd c:\current\compact

. Next, execute install.bat. The kernel will load and launch the installer system.

Please note, there is currently a loadlin problem (#142421) which precludes install.bat from being used with the bf2.4 flavor. The symptom of the problem is an `invalid compressed format' error.


5.4.2 Booting from linux using LILO

One initrd= line in /etc/lilo.conf is enough to configure two essentials things:

Here is a /etc/lilo.conf example:

     image=/boot/newinstall/linux.bin
            label=newinstall
            initrd=/boot/newinstall/root.bin
            append="flavor=<flavor>"

root=/dev/hdXYZ options in lilo.conf will be ignored in this case. For more details, refer to the initrd(4) and lilo.conf(5) man pages. Now run lilo and reboot.

You can trace the initrd magic at work several times during the boot.

You should now see the debian installer dbootstrap running. If you do not use any removable medium, you want to check very early that your network connection is working and before irreversibly partitioning your hard disk. So you maybe need to insmod some additional kernel modules for this, for instance for your network interface. It's time not to follow the order of steps suggested by dbootstrap. Leap directly to Mount a Previously-Initialized Partition, and mount the partition where you stored the modules that you extracted from drivers.tgz. Then switch to an other virtual terminal and use a shell (see Using the Shell and Viewing the Logs, Section 5.7.1) to find drivers in the just mounted /target directory. insmod the ones you need.

Go to ``Configure the Network'', Section 7.7 in the dbootstrap installer menus, and ping your favorite debian mirror at last. Congratulations!

Use Unmount a Partition if you have mounted one in the previous paragraph, safely go back to the partitioning steps at the start of dbootstrap and follow the regular procedure, with the network as a bonus. At this stage, it is even possible (only a bit risky) to completely wipe out all the previous partitions on your hard drive for a very clean installation. The only risk is that your hard drive will be un-bootable for a short period of time.


5.5 Booting from TFTP

Booting from the network requires that you have a network connection supported by the boot floppies, including either a static network address or a DHCP server, a RARP or a BOOTP server, and a TFTP server. The installation method to support TFTP booting is described in Preparing Files for TFTP Net Booting, Section 4.5.


5.6 Troubleshooting the Install Process


5.6.1 Floppy Disk Reliability

The biggest problem for people installing Debian for the first time seems to be floppy disk reliability.

The rescue floppy is the floppy with the worst problems, because it is read by the hardware directly, before Linux boots. Often, the hardware doesn't read as reliably as the Linux floppy disk driver, and may just stop without printing an error message if it reads incorrect data. There can also be failures in the Driver Floppies most of which indicate themselves with a flood of messages about disk I/O errors.

If you are having the installation stall at a particular floppy, the first thing you should do is re-download the floppy disk image and write it to a different floppy. Simply reformatting the old floppy may not be sufficient, even if it appears that the floppy was reformatted and written with no errors. It is sometimes useful to try writing the floppy on a different system.

One user reports he had to write the images to floppy three times before one worked, and then everything was fine with the third floppy.

Other users have reported that simply rebooting a few times with the same floppy in the floppy drive can lead to a successful boot. This is all due to buggy hardware or firmware floppy drivers.


5.6.2 Boot Configuration

If you have problems and the kernel hangs during the boot process, doesn't recognize peripherals you actually have, or drives are not recognized properly, the first thing to check is the boot parameters, as discussed in Boot Parameter Arguments, Section 5.1.

If you are booting with your own kernel instead of the one supplied with the installer, be sure that CONFIG_DEVFS is not set in your kernel. The installer is not compatible with CONFIG_DEVFS.

Often, problems can be solved by removing add-ons and peripherals, and then trying booting again. Internal modems, sound cards, and Plug-n-Play devices can be especially problematic.

There are, however, some limitations in our boot floppy set with respect to supported hardware. Some Linux-supported platforms might not be directly supported by our boot floppies. If this is the case, you may have to create a custom rescue disk (see Replacing the Rescue Floppy Kernel, Section 10.3), or investigate network installations.

If you have a large amount of memory installed in your machine, more than 512M, and the installer hangs when booting the kernel, you may need to include a boot argument to limit the amount of memory the kernel sees, such as mem=512m.

If you have a very old machine, and the kernel hangs after saying Checking 'hlt' instruction..., then you should try the no-hlt boot argument, which disables this test.


5.6.3 Interpreting the Kernel Startup Messages

During the boot sequence, you may see many messages in the form can't find something, or something not present, can't initialize something, or even this driver release depends on something. Most of these messages are harmless. You see them because the kernel for the installation system is built to run on computers with many different peripheral devices. Obviously, no one computer will have every possible peripheral device, so the operating system may emit a few complaints while it looks for peripherals you don't own. You may also see the system pause for a while. This happens when it is waiting for a device to respond, and that device is not present on your system. If you find the time it takes to boot the system unacceptably long, you can create a custom kernel later (see Compiling a New Kernel, Section 9.6).


5.6.4 dbootstrap Problem Report

If you get through the initial boot phase but cannot complete the install, dbootstrap's 'Report a Problem' menu choice may be helpful. It creates dbg_log.tgz on a floppy, hard disk or nfs-mounted filesystem. dbg_log.tgz details the system's state (/var/log/messages, /proc/cpuinfo etc.). dbg_log.tgz may provide clues as to what went wrong and how to fix it. If you are submitting a bug report you may want to attach this file to the bug report.


5.6.5 Submitting Bug Reports

If you still have problems, please submit a bug report. Send an email to submit@bugs.debian.org. You must include the following as the first lines of the email:

     Package: boot-floppies
     Version: version

Make sure you fill in version with the version of the boot-floppies set that you used. If you don't know the version, use the date you downloaded the floppies, and include the distribution you got them from (e.g., ``stable'', ``frozen'', ``woody'').

You should also include the following information in your bug report:

     flavor:        flavor of image you are using 
     architecture:  i386
     model:         your general hardware vendor and model
     memory:        amount of RAM
     scsi:          SCSI host adapter, if any
     cd-rom:        CD-ROM model and interface type, e.g., ATAPI
     network card:  network interface card, if any
     pcmcia:        details of any PCMCIA devices

Depending on the nature of the bug, it also might be useful to report whether you are installing to IDE or SCSI disks, other peripheral devices such as audio, disk capacity, and the model of video card.

In the bug report, describe what the problem is, including the last visible kernel messages in the event of a kernel hang. Describe the steps that you did which brought the system into the problem state.


5.7 Introduction to dbootstrap

dbootstrap is the name of the program which is run after you have booted into the installation system. It is responsible for initial system configuration and the installation of the ``base system''.

The main job of dbootstrap, and the main purpose of your initial system configuration, is to configure essential elements of your system. For instance, you may need to use certain ``kernel modules'', drivers which are linked into the kernel. These modules include storage hardware drivers, network drivers, special language support, and support for other peripherals which are not automatically built in to the kernel you are using.

Disk partitioning, disk formatting, and networking setup are also facilitated by dbootstrap. This fundamental setup is done first, since it is often necessary for the proper functioning of your system.

dbootstrap is a simple, character-based application, designed for maximum compatibility in all situations (such as installation over a serial line). It is very easy to use. It will guide you through each step of the installation process in a linear fashion. You can also go back and repeat steps if you find you have made a mistake.

To navigate within dbootstrap, use:


5.7.1 Using the Shell and Viewing the Logs

If you are an experienced Unix or Linux user, press Left Alt-F2 to get to the second virtual console. That's the Alt key on the left-hand side of the space bar, and the F2 function key, at the same time. This is a separate window running a Bourne shell clone called ash. At this point you are booted from the RAM disk, and there is a limited set of Unix utilities available for your use. You can see what programs are available with the command ls /bin /sbin /usr/bin /usr/sbin. The text editor is nano-tiny.

Use the menus to perform any task that they are able to do — the shell and commands are only there in case something goes wrong. In particular, you should always use the menus, not the shell, to activate your swap partition, because the menu software can't detect that you've done this from the shell. Press Left Alt-F1 to get back to menus. Linux provides up to 64 virtual consoles, although the rescue floppy only uses a few of them.

Error messages are redirected to the third virtual terminal (known as tty3). You can access this terminal by pressing Left Alt-F3 (hold the Alt key while pressing the F3 function key); get back to dbootstrap with Left Alt-F1.

These messages can also be found in /var/log/messages. After installation, this log is copied to /var/log/installer.log on your new system.

During the Base installation, package unpacking and setup messages are redirected to tty4. You can access this terminal by pressing Left Alt-F4; get back to dbootstrap with Left Alt-F1.

The unpack/setup messages generated by debootstrap are saved in /target/tmp/debootstrap.log when the installation is performed over a serial console.


5.8 ``Choose The Language''

Your architecture supports the new internationalization features. Therefore, as the first step of the installation, select the language in which you want the installation process to take place.

Some languages have variants available, and will therefore prompt you to ``Choose Language Variant'' after picking your language. Pick whichever variant applies to your geographic region.

The answers you provided in the previous two questions will be used to pick the language which the installer will use, will try to set a suitable keyboard layout, and, later in the process, will be used to pick the default Debian Mirror Server for your probably geographic location. However, you can also override these settings if you choose.


5.9 ``Release Notes''

The first screen after ``Choose the Language'' that dbootstrap will present you with is the ``Release Notes''. This screen presents the version information for the boot-floppies software you are using, and gives a brief introduction to Debian developers.


5.10 ``Debian GNU/Linux Installation Main Menu''

You may see a dialog box that says ``The installation program is determining the current state of your system and the next installation step that should be performed.''. On some systems, this will go by too quickly to read. You'll see this dialog box between steps in the main menu. The installation program, dbootstrap, will check the state of the system in between each step. This checking allows you to re-start the installation without losing the work you have already done, in case you happen to halt your system in the middle of the installation process. If you have to restart an installation, you will have to configure your keyboard, re-activate your swap partition, and re-mount any disks that have been initialized. Anything else that you have done with the installation system will be saved.

During the entire installation process, you will be presented with the main menu, entitled ``Debian GNU/Linux Installation Main Menu''. The choices at the top of the menu will change to indicate your progress in installing the system. Phil Hughes wrote in the Linux Journal that you could teach a chicken to install Debian! He meant that the installation process was mostly just pecking at the Enter key. The first choice on the installation menu is the next action that you should perform according to what the system detects you have already done. It should say ``Next'', and at this point the next step in installing the system will be taken.


5.11 ``Configure the Keyboard''

Make sure the highlight is on the ``Next'' item, and press Enter to go to the keyboard configuration menu. Select a keyboard that conforms to the layout used for your national language, or select something close if the keyboard layout you want isn't represented. Once the system installation is complete, you'll be able to select a keyboard layout from a wider range of choices (run kbdconfig as root when you have completed the installation).

Move the highlight to the keyboard selection you desire and press Enter. Use the arrow keys to move the highlight — they are in the same place in all national language keyboard layouts, so they are independent of the keyboard configuration. An 'extended' keyboard is one with F1 through F10 keys along the top row.

If you are installing a diskless workstation, the next few steps will be skipped, since there are no local disks to partition. In that case, your next step will be ``Configure the Network'', Section 7.7. After that, you will be prompted to mount your NFS root partition in ``Mount a Previously-Initialized Partition'', Section 6.9.


5.12 Last Chance!

Did we tell you to back up your disks? Here's your last chance to save your old system. If you haven't backed up all of your disks, remove the floppy from the drive, reset the system, and run backups.


[ previous ] [ Contents ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ 12 ] [ next ]

Installing Debian GNU/Linux 3.0 For Intel x86

version 3.0.24, 24 May, 2002
Bruce Perens
Sven Rudolph
Igor Grobman
James Treacy
Adam Di Carlo

443,444d442
<             append="flavor=&lt;flavor&gt;"
< 


Reply to: