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

Installing Debian GNU/Linux 3.0 For Motorola 680x0
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-m68k, 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

For m68k (except VME), the installation system files (rescue.bin, linux.bin, root.bin, and drivers.tgz) have been compiled into one tarball. You may also need the base system installation file 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 tarball.

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 also need to download basedebs.tar 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).

To use a current debian system to assemble a basedebs.tar from the debian archives, first install debootstrap (apt-get install debootstrap). Then use the following command:

     debootstrap binary-basedebs SUITE=woody VERSION=3.0 \
       MIRROR="http://ftp.debian.org/debian" ARCHES="m68k"

4.2.2 Choosing the Right Installation Set

Installation files include kernel images, which are available for various ``subarchitectures''. Each subarchitecture supports a different set of hardware. The subarchitectures available for Motorola 680x0 are:


4.2.3 Where to Find Installation Files

For Amiga, Atari, and 68k Mac, the install system files have been compiled into one tarball. You will download the appropriate tarball listed in AmigaOS Installation Files, Section 4.2.3.1, Atari TOS Installation Files, Section 4.2.3.2, or 68k MacOS Installation Files, Section 4.2.3.3. Only VME machines will need the separate rescue, root, kernel and drivers files.

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

.../current/amiga/images-1.44/rescue.bin
.../current/atari/images-1.44/rescue.bin
.../current/bvme6000/images-1.44/rescue.bin
.../current/bvme6000/images-2.88/rescue.bin
.../current/mac/images-1.44/rescue.bin
.../current/mvme147/images-1.44/rescue.bin
.../current/mvme16x/images-1.44/rescue.bin
rescue image
.../current/amiga/images-1.44/root.bin
.../current/atari/images-1.44/root.bin
.../current/bvme6000/images-1.44/root.bin
.../current/mac/images-1.44/root.bin
.../current/mvme147/images-1.44/root.bin
.../current/mvme16x/images-1.44/root.bin
root image(s) or tarball
Linux Kernel Files, Section 11.2.3.2
kernel binary
Driver Files, Section 11.2.3.3
driver images or tarball
Debian Base System Installation Files, Section 11.2.3.4
base system images or tarball

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.

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.2.3.1 AmigaOS Installation Files

  1. Instead of the rescue, kernel, and driver files above, just download .../current/amigainstall.tar.gz.
  1. Unpack .../current/amigainstall.tar.gz into a partition with at least 25MB free. We recommend you unpack it into a directory named debian. The .../current/amigainstall.tar.gz will create an amiga subdirectory.
  1. Write down the Linux partition name for the location where your new debian directory is. See Device Names in Linux, Section 6.4 for more information on Linux partition naming.

4.2.3.2 Atari TOS Installation Files

  1. Instead of the rescue, kernel, and driver files above, just download .../current/atariinstall.tar.gz.
  1. Unpack .../current/atariinstall.tar.gz into a partition with at least 25 MB free. We recommend you unpack it into a directory named debian.
  1. After unpacking, you should have an atari subdirectory. Do not rename any files in this directory.
  1. Write down the Linux partition name for the location where your new debian directory is. See Device Names in Linux, Section 6.4 for more information on Linux partition naming.

4.2.3.3 68k MacOS Installation Files

  1. Instead of the rescue, kernel, and driver files above, just download .../current/macinstall.tar.gz.
  1. Unpack .../current/macinstall.tar.gz into a partition with at least 25 MB free. We recommend you unpack it into a directory named debian. Use Stuffit Expander (at least version 5.5) or MacGZip to extract it from its archive.
  1. After unpacking, you should have a mac subdirectory. Do not rename any files in this directory. Do not allow your decompression program to decompress drivers.tgz.
  1. Write down the Linux partition name for the location where your new debian directory is. See Device Names in Linux, Section 6.4 for more information on Linux partition naming.

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. Floppy disk booting is not supported on Amigas or 68k Macs.

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 consistently compatible with WinNT, Win2K and Win95/98. 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.3.4 Writing Disk Images on Atari Systems

You'll find the .../current/rawwrite.ttp program in the same directory as the floppy disk images. Start the program by double clicking on the program icon, and type in the name of the floppy image file you want written to the floppy at the TOS program command line dialog box.


4.3.5 Writing Disk Images on Macintosh Systems

There is no MacOS application to write the mac/images-1.44/rescue.bin and mac/images-1.44/driver.bin images to floppy disks (and there would be no point in doing this as you can't use these floppies to boot the installation system or install kernel and modules from on Macintosh). However, these files are needed for the installation of the operating system and modules, later in the process.


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.


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. Yet another alternative exists on VMEbus systems: the IP address can be manually configured in boot ROM. 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.

For BVM and Motorola VMEbus systems copy the files .../current/bvme6000/linuxbvme6000.bin, .../current/bvme6000/rootbvme6000.bin, .../current/bvme6000/tftplilo.bvme, and .../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 subarchitecture for additional system-specific configuration information.

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 Motorola 680x0

version 3.0.23, 16 May, 2002
Bruce Perens
Sven Rudolph
Igor Grobman
James Treacy
Adam Di Carlo