[ 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 3 - Before Installing Debian GNU/Linux


3.1 Overview of the Installation Process

Here's a road map for the steps you will take during the installation process.

  1. Create partition-able space for Debian on your hard disk
  1. Locate and/or download kernel and driver files (except Debian CD users)
  1. Set up boot floppies or place boot files (except most Debian CD users can boot from one of the CDs)
  1. Boot the installation system
  1. Configure the keyboard
  1. Create and mount Debian partitions
  1. Point the installer to the location of the kernel and drivers
  1. Select which peripheral drivers to load
  1. Configure the network interface
  1. Initiate automatic download/install/setup of the base system
  1. Configure Linux or multi-system boot loading
  1. Boot the newly installed system and do some final configuration
  1. Install additional tasks and packages, at your discretion

3.2 Back Up Your Existing Data!

Before you start, make sure to back up every file that is now on your system. If this is the first time a non-native operating system has been installed on your computer, it's quite likely you will need to re-partition your disk to make room for Debian GNU/Linux. Anytime you partition your disk, you should count on losing everything on the disk, no matter what program you use to do it. The programs used in installation are quite reliable and most have seen years of use; but they are also quite powerful and a false move can cost you. Even after backing up be careful and think about your answers and actions. Two minutes of thinking can save hours of unnecessary work.

If you are creating a multi-boot system, make sure that you have the distribution media of any other present operating systems on hand. Especially if you repartition your boot drive, you might find that you have to reinstall your operating system's boot loader, or in many cases the whole operating system itself and all files on the affected partitions.

With the exception of the BVM and Motorola VMEbus computers, the only supported installation method for m68k systems is booting from a local disk or floppy using an AmigaOS/TOS/MacOS-based bootstrap, for these machines you will need the original operating system in order to boot Linux. In order to boot Linux on the BVM and Motorola VMEbus machines you will need the ``BVMBug'' or ``16xBug'' boot ROMs.


3.3 Information You Will Need


3.3.1 Documentation


3.3.1.1 Installation Manual

This file you are now reading, in plain ASCII, HTML or PDF format.


3.3.1.2 Dselect for Beginners

Tutorial for using the dselect program. This is one means of installing additional packages onto your system after the basic install is complete.


3.3.1.3 Partitioning Program Manual Pages

Manual pages for the partitioning software used during the installation process.


3.3.1.4 MD5 checksums

List of MD5 checksums for the binary files. If you have the md5sum program, you can ensure that your files are not corrupt by running md5sum -v -c md5sum.txt.


3.3.2 Finding Sources of Hardware Information

Hardware information can be gathered from:

                  Hardware Information Needed for an Install              
     +-------------------------------------------------------------------+
     |Hardware|                Information You Might Need                |
     |--------+----------------------------------------------------------|
     |        |  * How many you have.                                    |
     |        |  * Their order on the system.                            |
     |Hard    |  * Whether IDE or SCSI (most computers are IDE).         |
     |Drives  |  * Available free space.                                 |
     |        |  * Partitions.                                           |
     |        |  * Partitions where other operating systems are          |
     |        |    installed.                                            |
     |--------+----------------------------------------------------------|
     |        |  * Model and manufacturer.                               |
     |        |  * Resolutions supported.                                |
     |Monitor |  * Horizontal refresh rate.                              |
     |        |  * Vertical refresh rate.                                |
     |        |  * Color depth (number of colors) supported.             |
     |        |  * Screen size.                                          |
     |--------+----------------------------------------------------------|
     |        |  * Type: serial, PS, or USB.                             |
     |Mouse   |  * Port.                                                 |
     |        |  * Manufacturer.                                         |
     |        |  * Number of buttons.                                    |
     |--------+----------------------------------------------------------|
     |Network |  * Model and manufacturer.                               |
     |        |  * Type of adapter.                                      |
     |--------+----------------------------------------------------------|
     |Printer |  * Model and manufacturer.                               |
     |        |  * Printing resolutions supported.                       |
     |--------+----------------------------------------------------------|
     |        |  * Model and manufacturer.                               |
     |Video   |  * Video RAM available.                                  |
     |Card    |  * Resolutions and color depths supported (these should  |
     |        |    be checked against your monitor's capabilities).      |
     +-------------------------------------------------------------------+

3.3.3 Hardware Compatibility

Many brand name products work without trouble on Linux. Moreover, hardware for Linux is improving daily. However, Linux still does not run as many different types of hardware as some operating systems.

You can check hardware compatibility by:


3.3.4 Network Settings

If your computer is connected to a network 24 hours a day (i.e., an Ethernet or equivalent connection — not a PPP connection), you should ask your network's system administrator for this information. On the other hand, if your administrator tells you that a DHCP server is available and is recommended, then you don't need this information because the DHCP server will provide it directly to your computer during the installation process.

If your computer's only network connection is via a serial line, using PPP or an equivalent dialup connection, you will not be able to install the base system over the network. To install the system in this case, you must use a CD, pre-load the base packages on an existing hard disk partition, or prepare floppy disks containing the base packages. See Setting Up PPP, Section 8.9 below for information on setting up PPP under Debian once the system is installed.


3.4 Planning Use of the System

It is important to decide what type of machine you are creating. This will determine the disk space requirements for your Debian system.


3.5 Meeting Minimum Hardware Requirements

Once you have gathered information about your computer's hardware, check that your hardware will let you do the type of installation that you want to do.

Depending on your needs, you might manage with less than some of the recommended hardware listed in the table below. However, most users risk being frustrated if they ignore these suggestions. A 68030 or better processor is recommended for m68k installs. You may get by with a little less drive space than shown.

              Recommended Minimum System Requirements         
           +------------------------------------------+
           |Install Type|      RAM     | Hard Drive   |
           |------------+--------------+--------------|
           |No desktop  | 16 megabytes | 450 megabytes|
           |------------+--------------+--------------|
           |With Desktop| 64 megabytes | 1 gigabyte   |
           |------------+--------------+--------------|
           |Server      | 128 megabytes| 4 gigabytes  |
           +------------------------------------------+

Here is a sampling of some common Debian system configurations. You can also get an idea of the disk space used by related groups of programs by referring to Disk Space Needed for Tasks, Section 11.4.

Standard Server
This is a small server profile, useful for a stripped down server which does not have a lot of niceties for shell users. It includes an FTP server, a web server, DNS, NIS, and POP. For these 50MB of disk space would suffice, and then you would need to add space for any data you serve up.
Dialup
A standard desktop box, including the X window system, graphics applications, sound, editors, etc. Size of the packages will be around 500MB.
Work Console
A more stripped-down user machine, without the X window system or X applications. Possibly suitable for a laptop or mobile computer. The size is around 140MB.
Developer
A desktop setup with all the development packages, such as Perl, C, C++, etc. Size is around 475MB. Assuming you are adding X11 and some additional packages for other uses, you should plan around 800MB for this type of machine.

Remember that these sizes don't include all the other materials which are usually to be found, such as user files, mail, and data. It is always best to be generous when considering the space for your own files and data. Notably, the Debian /var partition contains a lot of state information. The dpkg files (with information on all installed packages) can easily consume 20MB; with logs and the rest, you should usually allocate at least 50MB for /var.


3.6 Pre-Partitioning for Multi-Boot Systems

Partitioning your disk simply refers to the act of breaking up your disk into sections. Each section is then independent of the others. It's roughly equivalent to putting up walls in a house; if you add furniture to one room it doesn't affect any other room.

If you already have an operating system on your system and want to stick Linux on the same disk, you will need to repartition the disk. Debian requires its own hard disk partitions. It cannot be installed on Windows or MacOS partitions. It may be able to share some partitions with other Linux systems, but that's not covered here. At the very least you will need a dedicated partition for the Debian root.

You can find information about your current partition setup by using a partitioning tool for your current operating system , such as HD SC Setup, HDToolBox, or SCSITool . Partitioning tools always provide a way to show existing partitions without making changes.

In general, changing a partition with a file system already on it will destroy any information there. Thus you should always make backups before doing any repartitioning. Using the analogy of the house, you would probably want to move all the furniture out of the way before moving a wall or you risk destroying it.

If your computer has more than one hard disk, you may want to dedicate one of the hard disks completely to Debian. If so, you don't need to partition that disk before booting the installation system; the installer's included partitioning program can handle the job nicely.

If your machine has only one hard disk, and you would like to completely replace the current operating system with Debian GNU/Linux, you also can wait to partition as part of the installation process (Partitioning for Debian, Chapter 6), after you have booted the installation system. However this only works if you plan to boot the installer system from floppies, CD-ROM or files on a connected machine. Consider: if you boot from files placed on the hard disk, and then partition that same hard disk within the installation system, thus erasing the boot files, you'd better hope the installation is successful the first time around. At the least in this case, you should have some alternate means of reviving your machine like the original system's installation floppies or CDs.

If your machine already has multiple partitions, and enough space can be provided by deleting and replacing one or more of them, then you too can wait and use the Debian installer's partitioning program. You should still read through the material below, because there may be special circumstances like the order of the existing partitions within the partition map, that force you to partition before installing anyway.

In all other cases, you'll need to partition your hard disk before starting the installation to create partition-able space for Debian. If some of the partitions will be owned by other operating systems, you should create those partitions using native operating system partitioning programs. We recommend that you do not attempt to create Debian Linux partitions using another operating system's tools. Instead, you should just create the native operating system's partitions you will want to retain.

If you are going to install more than one operating system on the same machine, you should install all other system(s) before proceeding with Linux installation. Windows and other OS installations may destroy your ability to start Linux, or encourage you to reformat non-native partitions.

You can recover from these actions or avoid them, but installing the native system first saves you trouble.

If you currently have one hard disk with one partition (a common setup for desktop computers), and you want to multi-boot the native operating system and Debian, you will need to:

  1. Back up everything on the computer.
  1. Boot from the native operating system installer media such as CD-ROM or floppies.
  1. Use the native partitioning tools to create native system partition(s). Leave either a place holder partition or free space for Debian GNU/Linux.
  1. Install the native operating system on its new partition.
  1. Boot back into the native system to verify everything's OK, and to download the Debian installer boot files.
  1. Boot the Debian installer to continue installing Debian.

3.6.1 Partitioning in AmigaOS

If you are running AmigaOS, you can use the HDToolBox program to adjust your native partitions prior to installation.


3.6.2 Partitioning in Atari TOS

Atari partition IDs are three ASCII characters, use ``LNX'' for data and ``SWP'' for swap partitions. If using the low memory installation method, a small Minix partition is also needed (about 2 MB), for which the partition ID is ``MNX''. Failure to set the appropriate partition IDs not only prevents the Debian installation process from recognizing the partitions, but also results in TOS attempting to use the Linux partitions, which confuses the hard disk driver and renders the whole disk inaccessible.

There are a multitude of third party partitioning tools available (the Atari harddisk utility doesn't permit changing the partition ID); this manual cannot give detailed descriptions for all of them. The following description covers SCSITool (from Hard+Soft GmBH).

  1. Start SCSITool and select the disk you want to partition (``Disk'' menu, item ``select'').
  1. From the ``Partition'' menu, select either ``New'' to add new partitions or change the existing partition sizes, or ``Change'' to change one specific partition. Unless you have already created partitions with the right sizes and only want to change the partition ID, ``New'' is probably the best choice.
  1. For the ``New'' choice, select ``existing'' in the dialog box prompting the initial settings. The next window shows a list of existing partitions which you can adjust using the scroll buttons, or by clicking in the bar graphs. The first column in the partition list is the partition type; just click on the text field to edit it. When you are finished changing partition settings, save the changes by leaving the window with the ``OK'' button.

    For the ``Change'' option, select the partition to change in the selection list, and select ``other systems'' in the dialog box. The next window lists detailed information about the location of this partition, and lets you change the partition ID. Save changes by leaving the window with the ``OK'' button.

  1. Write down the Linux names for each of the partitions you created or changed for use with Linux — see Device Names in Linux, Section 6.4.
  1. Quit SCSITool using the ``Quit'' item from the ``File'' menu. The computer will reboot to make sure the changed partition table is used by TOS. If you changed any TOS/GEM partitions, they will be invalidated and have to be reinitialized (we told you to back up everything on the disk, didn't we?).

There is a partitioning tool for Linux/m68k called atari-fdisk in the installation system, but for now we recommend you partition your disk using a TOS partition editor or some disk tool. If your partition editor doesn't have an option to edit the partition type, you can do this crucial step at a later stage (from the booted temporary install RAMdisk). SCSITool is only one of the partition editors we know of which supports selection of arbitrary partition types. There may be others; select the tool that suits your needs.


3.6.3 Partitioning in MacOS

Partitioning tools for Macintosh tested include pdisk, HD SC Setup 7.3.5 (Apple), HDT 1.8 (FWB), SilverLining (LaCie), and DiskTool (Tim Endres, GPL). Full versions are required for HDT and SilverLining. The Apple tool requires a patch in order to recognize third-party disks (a description on how to patch HD SC Setup using ResEdit can be found at http://www.euronet.nl/users/ernstoud/patch.html).

For IDE based Macs, you need to use Apple Drive Setup to create empty space for the Linux partitions, and complete the partitioning under Linux, or use the MacOS version of pdisk available from the MkLinux FTP server.


3.7 Installing Debian GNU/Linux from a Unix/Linux System

This section explains how to install Debian GNU/Linux from an existing Unix or Linux system, without using the ncurses-based, menu-driven installer as explained in the rest of the manual. This "cross-install" HOWTO has been requested by users switching to Debian GNU/Linux from Redhat, Mandrake, and SUSE. In this section some familiarity with entering *nix commands and navigating the file system is assumed. In this section, $ symbolizes a command to be entered in the user's current system, while # refers to a command entered in the Debian chroot.

Once you've got the new Debian system configured to your preference, you can migrate your existing user data (if any) to it, and keep on rolling. This is therefore a "zero downtime" Debian GNU/Linux install. It's also a clever way for dealing with hardware that otherwise doesn't play friendly with various boot or installation media.


3.7.1 Getting Started

With your current *nix partitioning tools, repartition the hard drive as needed, creating at least one filesystem plus swap. You need at least 150MB of space available for a console only install, or at least 300MB if you plan to install X.

To create file systems on your partitions. For example, to create an ext3 file system on partition /dev/hda6 (that's our example root partition):

      $ mke2fs -j /dev/hda6

To create an ext2 file system instead, omit -j.

Initialize and activate swap (substitute the partition number for your intended Debian swap partition):

      $ mkswap /dev/hda5
      $ sync; sync; sync
      $ swapon /dev/hda5

Mount one partition as /mnt/debinst (the installation point, to be the root (/) filesystem on your new system). The mount point name is strictly arbitrary, it is referenced later below.

      $ mkdir /mnt/debinst
      $ mount /dev/hda6 /mnt/debinst

3.7.2 Install debootstrap

The tool that the Debian installer uses, which is recognized as the official way to install a Debian base system, is debootstrap. It uses wget, but otherwise depends only on glibc. Install wget if it isn't already on your current system, then download and install debootstrap.

If you have an rpm-based system, you can use alien to convert the .deb into .rpm, or download an rpm-ized version at http://people.debian.org/~blade/install/debootstrap

Or, you can use the following procedure to install it manually. Make a work folder for extracting the .deb into:

      $ mkdir work
      $ cd work

The debootstrap binary is located in the Debian archive (be sure to select the proper file for your architecture). Download the debootstrap .deb from the pool, copy the package to the work folder, and extract the binary files from it. You will need to have root privileges to install the binaries.

      $ ar -xf debootstrap_0.X.X_arch.deb
      $ cd /
      $ zcat < /full-path-to-work/work/data.tar.gz | tar xv

3.7.3 Run debootstrap (Network-connected)

debootstrap can download the needed files directly from the archive when you run it. You can substitute any Debian archive mirror for http.us.debian.org/debian in the command example below, preferably a mirror close to you network-wise. Mirrors are listed at http://www.debian.org/misc/README.mirrors.

If you have a woody version Debian GNU/Linux CD mounted at /cdrom, you could substitute a file URL instead of the http URL: file:/cdrom/debian/

Substitute one of the following for ARCH in the debootstrap command: alpha, arm, hppa, i386, ia64, m68k, mips, mipsel, powerpc, s390, or sparc.

      $ /usr/sbin/debootstrap --arch ARCH woody \
          /mnt/debinst http://http.us.debian.org/debian

3.7.4 Run debootstrap (Using basedebs.tar)

debootstrap can use the basedebs.tar file, if you have already downloaded it ahead of time. The basedebs.tar file is generated only every once in a while, so you'll get the latest version of the base system by pointing debootstrap directly to a Debian archive as shown in the previous section.

The basedebs.tar file is found in the base-images-current directory of the Debian archive for your architecture, for example: http://http.us.debian.org/debian/dists/woody/main/disks-i386/base-images-current/basedebs.tar

Substitute one of the following for ARCH in the debootstrap command: alpha, arm, hppa, i386, ia64, m68k, mips, mipsel, powerpc, s390, or sparc.

      
     $ /usr/sbin/debootstrap --arch ARCH --unpack-tarball \
         /path-to-downloaded/basedebs.tar woody /mnt/debinst

3.7.5 Configure The Base System

Now you've got a real Debian system, though rather lean, on disk. Chroot into it:

      $ chroot /mnt/debinst /bin/bash

3.7.5.1 Mount Partitions

You need to create /etc/fstab.

      # editor /etc/fstab

Here is a sample you can modify to suit:

     # /etc/fstab: static file system information.
     #
     # file system    mount point   type    options                  dump pass
     /dev/XXX         /             ext2    defaults                 0    0
     /dev/XXX         /boot         ext2    ro,nosuid,nodev          0    2
     
     /dev/XXX         none          swap    sw                       0    0
     proc             /proc         proc    defaults                 0    0
     
     /dev/fd0         /mnt/floppy   auto    noauto,rw,sync,user,exec 0    0
     /dev/cdrom       /mnt/cdrom    iso9660 noauto,ro,user,exec      0    0
     
     /dev/XXX         /tmp          ext2    rw,nosuid,nodev          0    2
     /dev/XXX         /var          ext2    rw,nosuid,nodev          0    2
     /dev/XXX         /usr          ext2    rw,nodev                 0    2
     /dev/XXX         /home         ext2    rw,nosuid,nodev          0    2

Use mount -a to mount all the file systems you have specified in your /etc/fstab, or to mount file systems individually use:

      # mount /path  # e.g.:  mount /usr

You can mount the proc file system multiple times and to arbitrary locations, though /proc is customary. If you didn't use mount -a, be sure to mount proc before continuing:

      # mount -t proc proc /proc

3.7.5.2 Configure Keyboard

To configure your keyboard:

      # dpkg-reconfigure console-data

3.7.5.3 Configure Networking

To configure networking, edit /etc/network/interfaces, /etc/resolv.conf, and etc/hostname.

      # editor /etc/network/interfaces

Here are some simple examples from /usr/share/doc/ifupdown/examples:

     ######################################################################
     # /etc/network/interfaces -- configuration file for ifup(8), ifdown(8)
     # See the interfaces(5) manpage for information on what options are 
     # available.
     ######################################################################
     
     # We always want the loopback interface.
     #
     auto lo
     iface lo inet loopback
     
     # To use dhcp:
     #
     # auto eth0
     # iface eth0 inet dhcp
     
     # An example static IP setup: (broadcast and gateway are optional)
     #
     # auto eth0
     # iface eth0 inet static
     #     address 192.168.0.42
     #     network 192.168.0.0
     #     netmask 255.255.255.0
     #     broadcast 192.168.0.255
     #     gateway 192.168.0.1

Enter your nameserver(s) and search directives in /etc/resolv.conf:

      # editor /etc/resolv.conf

A simple /etc/resolv.conf:

     # search hqdom.local\000
     # nameserver 10.1.1.36
     # nameserver 192.168.9.100

Enter your system's host name (2 to 63 characters):

      # echo DebianHostName > /etc/hostname

If you have multiple network cards, you should arrange the names of driver modules in the /etc/modules file into the desired order. Then during boot, each card will be associated with the interface name (eth0, eth1, etc.) that you expect.


3.7.5.4 Configure Timezone, Users, and APT

Set your timezone, add a normal user, and choose your apt sources by running

      # /usr/sbin/base-config

3.7.5.5 Configure Locales

To configure your locale settings to use a language other than English, install the locales support package and configure it:

      # apt-get install locales
      # dpkg-reconfigure locales

NOTE: Apt must be configured before, ie. during the base-config phase. Before using locales with character sets other than ASCII or latin1, please consult the appropriate localisation HOWTO.


3.7.6 Install a Kernel

If you intend to boot this system, you probably want a Linux kernel and a boot loader. Identify available pre-packaged kernels with

      # apt-cache search kernel-image

Then install your choice using its package name.

      # apt-get install kernel-image-2.X.X-arch-etc

3.7.7 Set up the Boot Loader

To make your Debian GNU/Linux system bootable, set up your boot loader to load the installed kernel with your new root partition.


3.8 Pre-Installation Hardware and Operating System Setup

This section will walk you through pre-installation hardware setup, if any, that you will need to do prior to installing Debian. Generally, this involves checking and possibly changing firmware settings for your system. The ``firmware'' is the core software used by the hardware; it is most critically invoked during the bootstrap process (after power-up). Known hardware issues affecting the reliability of Debian GNU/Linux on your system are also highlighted.


3.8.1 Firmware Revisions and Existing OS Setup

Motorola 680x0 machine are generally self-configuring and do not require firmware configuration. However, you should make sure that you have the appropriate ROM and system patches. On the Macintosh, MacOS version >= 7.1 is recommended because version 7.0.1 contains a bug in the video drivers preventing the boot loader from deactivating the video interrupts, resulting in a boot hang. The Amiga bootstrap requires ixemul.library, a version of which is distributed on the CD-ROM. On the BVM VMEbus systems you should make sure you are using BVMBug revision G or higher boot ROMs. The BVMBug boot ROMs do not come as standard on the BVM systems but are available from BVM on request free of charge. FIXME: Mac needs >= 7.1 ? AmigaOS setpatch and ROM revisions? (see the m68k FAQ)


3.8.2 Hardware Issues to Watch Out For

Many people have tried operating their 90 MHz CPU at 100 MHz, etc. It sometimes works, but is sensitive to temperature and other factors and can actually damage your system. One of the authors of this document over-clocked his own system for a year, and then the system started aborting the gcc program with an unexpected signal while it was compiling the operating system kernel. Turning the CPU speed back down to its rated value solved the problem.

The gcc compiler is often the first thing to die from bad memory modules (or other hardware problems that change data unpredictably) because it builds huge data structures that it traverses repeatedly. An error in these data structures will cause it to execute an illegal instruction or access a non-existent address. The symptom of this will be gcc dying from an unexpected signal.

Atari TT RAM boards are notorious for RAM problems under Linux; if you encounter any strange problems, try running at least the kernel in ST-RAM. Amiga users may need to exclude RAM using a booter memfile. FIXME: more description of this needed.


[ 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.24, 18 December, 2002
Bruce Perens
Sven Rudolph
Igor Grobman
James Treacy
Adam Di Carlo