5.1. Booting the Installer on Intel x86

5.1.1. 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 Section 3.6.2, “Boot Device Selection”, insert your CD, reboot, and proceed to the next chapter.

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 Section 5.3, “Troubleshooting the Install Process”.

You may need to configure your hardware as indicated in Section 3.6.2, “Boot Device Selection”. 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.

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 ???.

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 Section 5.1.2, “Booting from a DOS partition” for more information on installing via this method.

5.1.2. Booting from a DOS partition

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 Section 4.5, “Preparing Files for Hard Disk Booting”.

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.1.3. Booting from linux using LILO or GRUB

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

  • tell LILO to load the initrd.gz installer as a RAM disk at boot time;

  • tell the vmlinuz kernel to use this RAM disk as its root partition.

Here is a /etc/lilo.conf example:


image=/boot/newinstall/vmlinuz
       label=newinstall
       initrd=/boot/newinstall/initrd.gz
       append="devfs=mount,dall"

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.

Procedure for GRUB is quite similar. Locate your menu.lst in the /boot/grub/ directory (sometimes in the /boot/boot/grub/), add the following lines:


title  New Install
kernel (hd0,0)/boot/newinstall/vmlinuz root=/dev/ram ramdisk_size=10000 devfs=mount,dall
initrd (hd0,0)/boot/newinstall/initrd.gz

and reboot. Please note, that the ramdisk_size parameter may need to be increased, depending on the image you are booting. From now on, there should be no difference between GRUB or LILO.

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

  • before the kernel has even been loaded, LILO displays a much longer Loading imagelabel...... line with more dots than usual, showing the progression of the RAM disk image loading.

  • You should see the RAM disk driver initialized notice, near the real time clock initialization, proving that your kernel supports the RAM disk feature.

  • Finally, if you don't see RAMDISK: ext2 filesystem found at block 0 immediately after the partition checks, it's probably because your kernel miss the initrd feature.

You should now see the debian installer 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 debian-installer. Leap directly to Mount a Previously-Initialized Partition, and mount the partition where you stored the modules that you extracted from drivers.tgz (Section 4.5.1, “Hard disk installer booting using LILO or GRUB”).

Then switch to an other virtual terminal and use a shell (see Section 6.3.10, “Using the Shell and Viewing the Logs”) to find drivers in the just mounted /target directory. insmod the ones you need.

Go to Section 6.3.4, “Configuring Network” in the debian-installer 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 debian-installer 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.1.4. Booting from USB memory stick

Lets assume you have prepared everything from Section 3.6.2, “Boot Device Selection” and Section 4.4, “Preparing Files for USB Memory Stick Booting”. Now just plug your USB stick into some free USB connector and reboot the computer. The system should boot up, and you should be presented with the boot: prompt. Here you can enter optional boot arguments, or just hit Enter.

In case your computer doesn't support booting from USB memory devices, you can still use a single floppy to do the initial boot and then switch to USB. Advance according to Section 5.1.5, “Booting from Floppies”; the kernel on boot floppy should detect your USB stick automatically. When it asks for the root floppy, simply press Enter. You should see debian-installer starting.

5.1.5. Booting from Floppies

You will have already downloaded the floppy images you needed and created floppies from the images in Section 4.3, “Creating Floppies from Disk Images”. If you need to, you can also modify the boot floppy; see ???.

To boot from the installer boot floppy, place it in the primary floppy drive, shut down the system as you normally would, then turn it back on.

For installing from a LS-120 drive (ATAPI version) with a set of floppies, you need to specify the virtual location for the floppy device. This is done with the root= boot argument, giving the device that the ide-floppy driver maps the device to. For example, if your LS-120 drive is connected as the first IDE device (master) on the second cable, you enter linux root=/dev/hdc at the boot prompt. Installation from LS-120 is only supported by 2.4 and later kernels.

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 boot floppy and ends with the boot: prompt.

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 through F7. 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.

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 Section 5.3.3, “Interpreting the Kernel Startup Messages”.

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

5.1.6. Booting with TFTP

Booting from the network requires that you have a network connection and a TFTP network boot server (DHCP, RARP, or BOOTP).

The installation method to support network booting is described in Section 4.6, “Preparing Files for TFTP Net Booting”.

There are various ways to do a TFTP boot on i386.

5.1.6.1. Etherboot

The etherboot project provides bootdiskettes and even bootroms that do a TFTPboot.

5.1.6.2. NIC with network bootROM

It could be that your Network Interface Card provides TFTP boot functionality.

Let us () know how did you manage it. Please refer to this document.

5.1.6.3. NIC or Motherboard that support PXE

It could be that your Network Interface Card or Motherboard provides PXE boot functionality. Which is a Intel™ re-implemention of TFTP boot.

Let us () know how did you manage it. Please refer to this document.

5.1.7. i386 Boot Parameters

If you are booting from the boot floppy or from CD-ROM you will be presented with the boot prompt, boot:. Details about how to use boot parameters with the boot floppy can be found in Section 5.1.5, “Booting from Floppies”. 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.

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 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.

If your screen begins to show a weird picture while the kernel boots, eg. pure white, pure black or colored pixel garbage, your system may contain a problematic video card which does not switch to the framebuffer mode properly. Then you can use the boot parameter debian-installer/framebuffer=false or video=vga16:off to disable the framebuffer console. The language chooser will not appear; only the english language will be available during the installation due to limited console features. See Section 5.2, “Boot Parameters” for details.

5.1.8. System freeze during the PCMCIA configuration phase

Some laptop models produced by Dell are known to crash when PCMCIA device detection tries to access some hardware addresses. Other laptops may display similar problems. If you experience such a problem and you don't need PCMCIA support during the installation, you can disable PCMCIA using the hw-detect/start_pcmcia=false boot parameter. You can then configure PCMCIA after the installation is completed and exclude the resource range causing the problems.

Alternatively you can try the following workaround:

  • boot the installation system in expert mode, choose your language and country, but stop before hardware detection

  • enter the system shell (see Section 6.3.10, “Using the Shell and Viewing the Logs” for details)

  • execute this command: echo exclude port 0x810-0x81f >> /etc/pcmcia/config.opts[4]

  • now return to the main menu and continue with the installation process

You will also have to exclude the same address range(s) in /target/etc/pcmcia/config.opts before you reboot the computer to avoid running into the same problem when you boot into your new Debian system.

5.1.9. System freeze while loading the USB modules

The kernel normally tries to install USB modules and the USB keyboard driver in order to support some non-standard USB keyboards. However, there are some broken USB systems where the driver hangs on loading. A possible workaround may be disabling the USB controller in your mainboard BIOS setup. Another option is passing the debian-installer/probe/usb=false parameter at the boot prompt, which will prevent the modules from being loaded.



[4] The address range in this example is for the Dell problem cited above; you may have to exclude other address range(s) in your situation. See section “System resource settings” in the PCMCIA HOWTO for other examples.