This chapter begins with some general information about booting Debian GNU/Linux, then moves to individual sections on particular installation methods, and concludes with some troubleshooting advice.
Boot parameters are under the setting, options tab.
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.
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.
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 the computer appears to be frozen once you get to the screen asking about
monochrome or color, simply switch to the second virtual console (Alt + F2 or
Command + F2 on a Mac) and manually start dbootstrap
. This bug
seems to have been fixed, but it resurfaces every once and awhile.
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 Boot
Process, Section 6.6.
The installation system recognizes a few arguments which may be useful.
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 8.4).
In some cases, you may wish to boot from an existing operating system. You can also boot into the installation system using other means, but install the base system from disk.
Use the following steps to install Debian from your pre-existing AmigaOS setup.
http://http.us.debian.org/debian/dists/potato/main/disks-m68k/current/amigainstall.tgz
and http://http.us.debian.org/debian/dists/potato/main/disks-m68k/current/base2_2.tgz
.
http://http.us.debian.org/debian/dists/potato/main/disks-m68k/current/amigainstall.tgz
into a partition with at least 25MB free. We recommend you unpack it into a
directory named debian
. The http://http.us.debian.org/debian/dists/potato/main/disks-m68k/current/amigainstall.tgz
will create an amiga
subdirectory.
http://http.us.debian.org/debian/dists/potato/main/disks-m68k/current/base2_2.tgz
into that same directory (e.g., debian
) where you unpacked
http://http.us.debian.org/debian/dists/potato/main/disks-m68k/current/amigainstall.tgz
.
Do not rename any files in this directory.
debian
directory is. See Device Names in Linux, Section
4.3 for more information on Linux partition naming.
Workbench
, start the Linux installation process by
double-clicking on the ``StartInstall'' icon in the debian
directory.
You may have to press the Enter key twice after the Amiga installer
program has output some debugging information into a window. After this, the
screen will go grey, there will be a few seconds' delay Next, a black screen
with white text should come up, displaying all kinds of kernel debugging
information. These messages may scroll by too fast for you to read, but that's
OK. After a couple of seconds, the installation program should start
automatically, so you can continue down at Using dbootstrap
for Initial System
Configuration, Chapter 7.
If, on the other hand, you have problems booting, see Troubleshooting the Boot Process, Section 6.6.
Use the following steps to install Debian from your pre-existing Atari TOS setup.
http://http.us.debian.org/debian/dists/potato/main/disks-m68k/current/atariinstall.tgz
and http://http.us.debian.org/debian/dists/potato/main/disks-m68k/current/base2_2.tgz
.
http://http.us.debian.org/debian/dists/potato/main/disks-m68k/current/atariinstall.tgz
into a partition with at least 25 MB free. We recommend you unpack it into a
directory named debian
.
atari
subdirectory. Move
http://http.us.debian.org/debian/dists/potato/main/disks-m68k/current/base2_2.tgz
into the same debian
directory where you unpacked http://http.us.debian.org/debian/dists/potato/main/disks-m68k/current/atariinstall.tgz
.
Do not rename any files in this directory.
debian
directory is. See Device Names in Linux, Section
4.3 for more information on Linux partition naming.
debian
directory and clicking
``Ok'' at the program options dialog box.
You may have to press the Enter key after the Atari bootstrap program
has output some debugging information into a window. After this, the screen
will go grey, there will be a few seconds' delay. Next, a black screen with
white text should come up, displaying all kinds of kernel debugging
information. These messages may scroll by too fast for you to read, but that's
OK. After a couple of seconds, the installation program should start
automatically, so you can continue below at Using dbootstrap
for Initial System
Configuration, Chapter 7.
If, on the other hand, you have problems booting, see Troubleshooting the Boot Process, Section 6.6.
Use the following steps to install Debian from your pre-existing MacOS setup.
http://http.us.debian.org/debian/dists/potato/main/disks-m68k/current/macinstall.tgz
and http://http.us.debian.org/debian/dists/potato/main/disks-m68k/current/base2_2.tgz
.
http://http.us.debian.org/debian/dists/potato/main/disks-m68k/current/macinstall.tgz
into a partition with at least 25 MB free. We recommend you unpack it into a
directory named debian
.
mac
subdirectory. Move
http://http.us.debian.org/debian/dists/potato/main/disks-m68k/current/base2_2.tgz
into the same debian
directory where you unpacked http://http.us.debian.org/debian/dists/potato/main/disks-m68k/current/macinstall.tgz
.
Do not rename any files in this directory.
debian
directory is. See Device Names in Linux, Section
4.3 for more information on Linux partition naming.
debian
directory. The Linux
booter will start up. Go to the ``Settings'' item in the ``File'' menu and
select the kernel and ramdisk images under the kernel tab in the
debian
directory by clicking on the corresponding buttons in the
upper right corner, and navigating the file select dialogs to locate the files.
Close the ``Settings'' dialog, save the settings and start the bootstrap using
the ``Boot Now'' item in the ``File'' menu.
The Penguin booter
will output some debugging information into a
window. After this, the screen will go grey, there will be a few seconds'
delay. Next, a black screen with white text should come up, displaying all
kinds of kernel debugging information. These messages may scroll by too fast
for you to read, but that's OK. After a couple of seconds, the installation
program should start automatically, so you can continue below at Using dbootstrap
for Initial System
Configuration, Chapter 7.
If, on the other hand, you have problems booting, see Troubleshooting the Boot Process, Section 6.6.
You can install Debian from an ext2fs partition or from a Minix partition. This installation technique may be appropriate if you are completely replacing your current Linux system with Debian, for instance.
Note that the partition you are installing from should not be the same
as the partitions you are installing Debian to (e.g., /
,
/usr
, /lib
, etc.).
To install from an already existing Linux partition, follow these instructions.
http://http.us.debian.org/debian/dists/potato/main/disks-m68k/current/base2_2.tgz
If you have a CD which is bootable, and if your architecture and system supports booting from a CD-ROM, you don't need any floppies. Currently, the only Motorola 680x0 subarchitecture that supports CD-ROM booting is the BVME6000.
Even if you cannot boot from CD-ROM, you can install the base Debian system from CD-ROM. Simply boot using a different media, such as floppies. When it is time to install the base system and any additional packages, point the installation system at the CD-ROM drive as described in ``Install the Base System'', Section 7.14.
You need to setup a RARP server, a BOOTP server and a TFTP 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. Yet another alternative exists on VMEbus systems: the IP address can be manually configured in boot ROM.
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.
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.
In GNU/Linux you need to populate the kernel's RARP table. To do this execute
/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.
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.
There are two BOOTP servers available for GNU/Linux, the CMU bootpd and the ISC
dhcpd, which are contained in the bootp
and dhcp
packages on 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.
By contrast, setting up BOOTP with ISC dhcpd
is really easy,
because it treats BOOTP clients as a moderately special case of DHCP clients.
You don't really need to know the hardware (MAC) address of the client unless
you wish to specify some options such as boot image filename or NFS root path
on a client-by-client basis, or unless you wish to assign fixed addresses to
your machines using BOOTP and/or DHCP. Simply add the allow bootp
directive to the configuration block for the subnet containing the client, and
restart dhcpd
with /etc/init.d/dhcpd restart.
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.
Next, place the TFTP boot image you need, as found in Description of Installation
System Files, Section 5.4, in the tftpd
boot image directory.
Generally, this directory will be /tftpboot
. Next 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.
Once you've determined the name, make the link like this: ln /boot/tftpboot.img /boot/file-name.
For BVM and Motorola VMEbus systems copy the files http://http.us.debian.org/debian/dists/potato/main/disks-m68k/current/bvme6000/linuxbvme6000
,
http://http.us.debian.org/debian/dists/potato/main/disks-m68k/current/bvme6000/rootbvme6000.bin
,
http://http.us.debian.org/debian/dists/potato/main/disks-m68k/current/bvme6000/tftplilo.bvme
,
and http://http.us.debian.org/debian/dists/potato/main/disks-m68k/current/bvme6000/tftplilo.conf
to /tftpboot/
.
Next, configure your boot ROMs or BOOTP server to initially load the
tftplilo.bvme
or tftplilo.mvme
files from the TFTP
server. Refer to the tftplilo.txt
file for your sub-architecture
for additional system-specific configuration information.
Now you should be ready to actually boot your system. After booting the VMEbus systems you will presented with the LILO Boot: prompt. At that prompt enter one of the following to boot Linux and begin installation proper of the Debian software using vt102 terminal emulation:
You may additionally append the string ``TERM=vt100'' to use vt100 terminal emulation, e.g., ``i6000 TERM=vt100 Enter''.
NOT YET WRITTEN
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 fs. You then need to replace the symlink to the tftpboot image by a symlink to the kernel image (eg. 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?
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 6.1.
Often, problems can be solved by removing add-ons and peripherals, and then trying booting again.
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'').
You should also include the following information in your bug report:
architecture: m68k 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.