Boot Parameters
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 this is the first time you're booting the system, try the default
boot parameters (i.e., don't try setting parameters) 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.
Information on many boot parameters can be found in the
Linux
BootPrompt HOWTO, including tips for obscure hardware. This
section contains only a sketch of the most salient parameters. Some
common gotchas are included below in
.
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 amount 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.
If you are booting with a serial console, generally the kernel will
autodetect
this (although not on DECstations).
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.
For &arch-title; the serial devices are ttya or
ttyb.
Alternatively, set the input-device and
output-device OpenPROM variables to
ttya.
Debian Installer Parameters
The installation system recognizes a few additional boot parameters
With current kernels (2.6.9 or newer) you can use 32 command line options and
32 environment options. If these numbers are exceeded, the kernel will panic.
which may be useful.
A number of parameters have a short form
that helps avoid
the limitations of the kernel command line options and makes entering the
parameters easier. If a parameter has a short form, it will be listed in
brackets behind the (normal) long form. Examples in this manual will
normally use the short form too.
debconf/priority (priority)
This parameter sets the lowest priority of messages to be displayed.
The default installation uses priority=high.
This means that both high and critical priority messages are shown, but medium
and low priority messages are skipped.
If problems are encountered, the installer adjusts the priority as needed.
If you add priority=medium as boot parameter, you
will be shown the installation menu and gain more control over the installation.
When priority=low is used, all messages are shown
(this is equivalent to the expert boot method).
With priority=critical, the installation system
will display only critical messages and try to do the right thing without fuss.
DEBIAN_FRONTEND
This boot parameter controls the type of user interface used for the
installer. The current possible parameter settings are:
DEBIAN_FRONTEND=noninteractive
DEBIAN_FRONTEND=text
DEBIAN_FRONTEND=newt
DEBIAN_FRONTEND=gtk
The default frontend is DEBIAN_FRONTEND=newt.
DEBIAN_FRONTEND=text may be preferable for
serial console installs. Generally, only the
newt frontend is available on default install
media. On architectures that support it, the graphical installer uses
the gtk frontend.
BOOT_DEBUG
Setting this boot parameter to 2 will cause the installer's boot process
to be verbosely logged. Setting it to 3 makes debug shells
available at strategic points in the boot process. (Exit the shells to
continue the boot process.)
BOOT_DEBUG=0
This is the default.
BOOT_DEBUG=1
More verbose than usual.
BOOT_DEBUG=2
Lots of debugging information.
BOOT_DEBUG=3
Shells are run at various points in the boot process to allow detailed
debugging. Exit the shell to continue the boot.
INSTALL_MEDIA_DEV
The value of the parameter is the path to the device to load the
Debian installer from. For example,
INSTALL_MEDIA_DEV=/dev/floppy/0
The boot floppy, which normally scans all floppies it can to find the
root floppy, can be overridden by this parameter to only look at the
one device.
debian-installer/framebuffer (fb)
Some architectures use the kernel framebuffer to offer installation in
a number of languages. If framebuffer causes a problem on your system
you can disable the feature by the parameter
fb=false. 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 kernel's use of the framebuffer. Such problems have been
reported on a Dell Inspiron with Mobile Radeon card.
Such problems have been reported on the Amiga 1200 and SE/30.
Such problems have been reported on hppa.
Because of display problems on some systems, framebuffer support is
disabled by default for &arch-title;. This can result
in ugly display on systems that do properly support the framebuffer, like
those with ATI graphical cards.
If you see display problems in the installer, you can try booting with
parameter debian-installer/framebuffer=true or
fb=true for short.
debian-installer/theme (theme)
A theme determines how the user interface of the installer looks (colors,
icons, etc.). What themes are available differs per frontend. Currently
both the newt and gtk frontends only have a dark
theme that was
designed for visually impaired users. Set the theme by booting with
theme=dark.
debian-installer/probe/usb
Set to false to prevent probing for USB on
boot, if that causes problems.
netcfg/disable_dhcp
By default, the &d-i; automatically probes for network configuration
via DHCP. If the probe succeeds, you won't have a chance to review and
change the obtained settings. You can get to the manual network setup
only in case the DHCP probe fails.
If you have a DHCP server on your local network, but want to avoid it
because e.g. it gives wrong answers, you can use the parameter
netcfg/disable_dhcp=true to prevent configuring
the network with DHCP and to enter the information manually.
hw-detect/start_pcmcia
Set to false to prevent starting PCMCIA
services, if that causes problems. Some laptops are well known for
this misbehavior.
preseed/url (url)
Specify the url to a preconfiguration file to download and use for
automating the install. See .
preseed/file (file)
Specify the path to a preconfiguration file to load for
automating the install. See .
preseed/interactive
Set to true to display questions even if they have
been preseeded. Can be useful for testing or debugging a preconfiguration
file. See .
auto-install/enable (auto)
Delay questions that are normally asked before preseeding is possible until
after the network is configured.
See for details about using this to
automate installs.
cdrom-detect/eject
By default, before rebooting, &d-i; automatically ejects the optical
media used during the installation. This can be unnecessary if the system
does not automatically boot off the CD. In some cases it may even be
undesirable, for example if the optical drive cannot reinsert the media
itself and the user is not there to do it manually. Many slot loading,
slim-line, and caddy style drives cannot reload media automatically.
Set to false to disable automatic ejection, and
be aware that you may need to ensure that the system does not
automatically boot from the optical drive after the initial
installation.
ramdisk_size
This parameter should already be set to a correct value where needed;
set it only it you see errors during the boot that indicate the ramdisk
could not be loaded completely. The value is in kB.
mouse/left
For the gtk frontend (graphical installer), users can switch the mouse to
left-handed operation by setting this parameter to true.
directfb/hw-accel
For the gtk frontend (graphical installer), hardware acceleration in directfb
is disabled by default. To enable it, set this parameter to
true when booting the installer.
rescue/enable
Set to true to enter rescue mode rather than
performing a normal installation. See .
Using boot parameters to answer questions
With some exceptions, a value can be set at the boot prompt for any question
asked during the installation, though this is only really useful in specific
cases. General instructions how to do this can be found in
. Some specific examples are listed below.
debian-installer/locale (locale)
Can be used to set both the language and country for the installation.
This will only work if the locale is supported in Debian.
For example, use locale=de_CH to select German as
language and Switzerland as country.
anna/choose_modules (modules)
Can be used to automatically load installer components that are not loaded
by default.
Examples of optional components that may be useful are
openssh-client-udeb (so you can use
scp during the installation) and
ppp-udeb (which supports PPPoE configuration).
netcfg/disable_dhcp
Set to true if you want to disable DHCP and instead
force static network configuration.
mirror/protocol (protocol)
By default the installer will use the http protocol to download files from
Debian mirrors and changing that to ftp is not possible during installations
at normal priority. By setting this parameter to ftp,
you can force the installer to use that protocol instead. Note that you
cannot select an ftp mirror from a list, you have to enter the hostname
manually.
tasksel:tasksel/first (tasks)
Can be used to select tasks that are not available from the interactive task
list, such as the kde-desktop task.
See for additional information.
Passing parameters to kernel modules
If drivers are compiled into the kernel, you can pass parameters to them
as described in the kernel documentation. However, if drivers are compiled
as modules and because kernel modules are loaded a bit differently during
an installation than when booting an installed system, it is not possible
to pass parameters to modules as you would normally do. Instead, you need
to use a special syntax recognized by the installer which will then make
sure that the parameters are saved in the proper configuration files and
will thus be used when the modules are actually loaded. The parameters
will also be propagated automatically to the configuration for the installed
system.
Note that it is now quite rare that parameters need to be passed to modules.
In most cases the kernel will be able to probe the hardware present in a
system and set good defaults that way. However, in some situations it may
still be needed to set parameters manually.
The syntax to use to set parameters for modules is:
module_name.parameter_name=value
If you need to pass multiple parameters to the same or different modules,
just repeat this. For example, to set an old 3Com network interface card
to use the BNC (coax) connector and IRQ 10, you would pass:
3c509.xcvr=3 3c509.irq=10
Blacklisting kernel modules
Sometimes it may be necessary to blacklist a module to prevent it from
being loaded automatically by the kernel and udev. One reason could be that
a particular module causes problems with your hardware. The kernel also
sometimes lists two different drivers for the same device. This can cause
the device to not work correctly if the drivers conflict or if the wrong
driver is loaded first.
You can blacklist a module using the following syntax:
module_name.blacklist=yes.
This will cause the module to be blacklisted in
/etc/modprobe.d/blacklist.local both during the
installation and for the installed system.
Note that a module may still be loaded by the installation system itself.
You can prevent that from happening by running the installation in expert
mode and unselecting the module from the list of modules displayed during
the hardware detection phases.