[ previous ] [ Abstract ] [ Copyright Notice ] [ Contents ] [ next ]

Installing Debian GNU/Linux 2.2 For Intel x86
Chapter 7 Using dbootstrap for Initial System Configuration


7.1 Introduction to dbootstrap

dbootstrap is the name of the program which is run after you have booted into the installation system. It is responsible for initial system configuration and the installation of the ``base system''.

The main job of dbootstrap, and the main purpose of your initial system configuration, is to configure essential elements of your system. For instance, you may need to use certain ``kernel modules'', which are drivers which are linked into the kernel. These modules include storage hardware drivers, network drivers, special language support, and support for other peripherals which are not automatically built in to the kernel you are using.

Disk partitioning, disk formatting, and networking setup are also handled by dbootstrap. This fundamental setup is done first, since it is often necessary for the proper functioning of your system.

dbootstrap is a simple, character-based application, designed for maximum compatability in all situations (such as installation over a serial line). It is very easy to use. It will guide you through each step of the installation process in a linear fashion. You can also go back and repeat steps if you find you have made a mistake.

Navigation within dbootstrap is accomplished with the arrow keys, Enter, and Tab.


7.1.1 Using the Shell and Viewing the Logs

If you are an experienced Unix or Linux user, press Left Alt-F2 to get to the second virtual console. That's the Alt key on the left-hand side of the space bar, and the F2 function key, at the same time. This is a separate window running a Bourne shell clone called ash. At this point you are booted from the RAM disk, and there is a limited set of Unix utilities available for your use. You can see what programs are available with the command ls /bin /sbin /usr/bin /usr/sbin. Use the menus to perform any task that they are able to do -- the shell and commands are only there in case something goes wrong. In particular, you should always use the menus, not the shell, to activate your swap partition, because the menu software can't detect that you've done this from the shell. Press Left Alt-F1 to get back to menus. Linux provides up to 64 virtual consoles, although the Rescue Floppy only uses a few of them.

Error messages are redirected to the third virtual terminal (known as tty3). You can access this terminal by pressing Left Alt-F3 (hold the Alt key while pressing the F3 function key); get back to dbootstrap with Left Alt-F1.

These messages can also be found in /var/log/messages. After installation, this log is copied to /var/log/installer.log on your new system.


7.2 ``Release Notes''

The first screen dbootstrap will present you with is the ``Release Notes''. This screen presents the version information for the boot-floppies software you are using, and gives a brief introduction to Debian developers.


7.3 ``Debian GNU/Linux Installation Main Menu''

You may see a dialog box that says ``The installation program is determining the current state of your system and the next installation step that should be performed.''. On some systems, this will go by too quickly to read. You'll see this dialog box between steps in the main menu. The installation program, dbootstrap, will check the state of the system in between each step. This checking allows you to re-start the installation without losing the work you have already done, in case you happen to halt your system in the middle of the installation process. If you have to restart an installation, you will have to configure your keyboard, re-activate your swap partition, and re-mount any disks that have been initialized. Anything else that you have done with the installation system will be saved.

During the entire installation process, you will be presented with the main menu, entitled ``Debian GNU/Linux Installation Main Menu''. The choices at the top of the menu will change to indicate your progress in installing the system. Phil Hughes wrote in the Linux Journal that you could teach a chicken to install Debian! He meant that the installation process was mostly just pecking at the Enter key. The first choice on the installation menu is the next action that you should perform according to what the system detects you have already done. It should say ``Next'', and at this point the next step in installing the system will be taken.


7.4 ``Configure the Keyboard''

Make sure the highlight is on the ``Next'' item, and press Enter to go to the keyboard configuration menu. Select a keyboard that conforms to the layout used for your national language, or select something close if the keyboard layout you want isn't represented. Once the system installation is complete, you'll be able to select a keyboard layout from a wider range of choices (run kbdconfig as root when you have completed the installation).

Move the highlight to the keyboard selection you desire and press Enter. Use the arrow keys to move the highlight -- they are in the same place in all national language keyboard layouts, so they are independent of the keyboard configuration.

If you are installing a diskless workstation, the next few steps will be skipped, since there are no local disks to partition. In that case, your next step will be ``Configure the Network'', Section 7.14. After that, you will be prompted to mount your NFS root partition in ``Mount a Previously-Initialized Partition'', Section 7.9.


7.5 Last Chance!

Did we tell you to back up your disks? Here's your first chance to wipe out all of the data on your disks, and your last chance to save your old system. If you haven't backed up all of your disks, remove the floppy from the drive, reset the system, and run backups.


7.6 ``Partition a Hard Disk''

If you have not already partitioned your disks for Linux native and Linux swap filesystems, i.e., as described in Partitioning Prior to Installation, Section 4.6, the next step will be ``Partition a Hard Disk''. If you have already created at least one Linux native and one Linux swap disk partition, the ``Next'' menu selection will be ``Initialize and Activate a Swap Partition'', or you may even skip that step if your system had low memory and you were asked to activate the swap partition as soon as the system started. Whatever the ``Next'' menu selection is, you can use the down-arrow key to select ``Partition a Hard Disk''.

The ``Partition a Hard Disk'' menu item presents you with a list of disk drives you can partition, and runs a partitioning application. You must create at least one ``Linux native'' (type 83) disk partition, and you probably want at least one ``Linux swap`` (type 82) partition, as explained in Partitioning Your Hard Drive, Chapter 4. If you are unsure how to partition your system, go back and read that chapter.

Depending on your architecture, there are different programs which can be used. These are the program or programs available on your architecture:

fdisk
The original Linux disk partitioner, good for gurus; read the fdisk manual page.

Be careful if you have existing FreeBSD partitions on your machine. The installation kernels include support for these partitions, but the way that fdisk represents them (or not) can make the device names differ. Be careful, and see the Linux+FreeBSD HOWTO.

cfdisk
A simple-to-use, full-screen disk partitioner for the rest of us; read the cfdisk manual page.

Note that cfdisk doesn't understand FreeBSD partitions at all, and, again, device names may differ as a result.

One of these programs will be run by default when you select ``Partition a Hard Disk''. If the one which is run by default isn't the one you want, quit the partitioner, go to the shell (tty2), and manually type in the name of the program you want to use (and arguments, if any). Then skip the ``Partition a Hard Disk'' step in dbootstrap and continue to the next step.

A swap partition is strongly recommended, but you can do without one if you insist, and if your system has more than 12MB RAM. If you wish to do this, please select the ``Do Without a Swap Partition'' item from the menu.

Remember to mark your boot partition as ``Bootable''.


7.7 ``Initialize and Activate a Swap Partition''

This will be the next step once you have created one disk partition. You have the choice of initializing and activating a new swap partition, activating a previously-initialized one, and doing without a swap partition. It's always permissible to re-initialize a swap partition, so select ``Initialize and Activate a Swap Partition'' unless you are sure you know what you are doing.

This menu choice will first present you with a dialog box reading ``Please select the partition to activate as a swap device.''. The default device presented should be the swap partition you've already set up; if so, just press Enter.

Next, there is a confirmation message, since initialization destroys any data previously on the partition. If all is well, select ``Yes''. The screen will flash as the initialization program runs.


7.8 ``Initialize a Linux Partition''

At this point, the next menu item presented should be ``Initialize a Linux Partition''. If it isn't, it is because you haven't completed the disk partitioning process, or you haven't made one of the menu choices dealing with your swap partition.

You can initialize a Linux partition, or alternately you can mount a previously-initialized one. Note that dbootstrap will not upgrade an old system without destroying it. If you're upgrading, Debian can usually upgrade itself, and you won't need to use dbootstrap. For help on upgrading to Debian 2.2, see the upgrade instructions.

Thus, if you are using old disk partitions that are not empty, i.e., if you want to just throw away what is on them, you should initialize them (which erases all files). Moreover, you must initialize any partitions that you created in the disk partitioning step. About the only reason to mount a partition without initializing it at this point would be to mount a partition upon which you have already performed some part of the installation process using this same set of installation floppies.

Select ``Initialize a Linux Partition'' to initialize and mount the / disk partition. The first partition that you mount or initialize will be the one mounted as / (pronounced ``root'').

You will be asked whether to preserve ``Pre-2.2 Linux Kernel Compatibility?''. Saying ``No'' here means that you cannot run 2.0 or earlier Linux kernels on your system, since the file systems enable some features not supported in the 2.0 kernel. If you know you'll never need to run a 2.0 or earlier vintage kernel, then you can achieve some minor benefits by saying ``No'' here. The default is ``Yes'' in the name of compatibility.

You will also be asked about whether to scan for bad blocks. The default here is to skip the bad block scan, since the scan can be very time consuming, and modern disk drive controllers internally detect and deal with bad blocks. However, if you are at all unsure about the quality of your disk drive, or if you have a rather old system, you should probably do the bad block scan.

The next prompts are just confirmation steps. You will be asked to confirm your action, since initializing is destructive to any data on the partition, and you will be informed that the partition is being mounted as /, the root partition.[4]

Once you've mounted the / partition, if you have additional file systems that you wish to initialize and mount, you should use the ``Alternate'' menu item. This is for those who have created separate partitions for /boot, /var, /usr or others, which ought to be initialized and mounted at this time.


7.9 ``Mount a Previously-Initialized Partition''

An alternative to ``Initialize a Linux Partition'', Section 7.8 is the ``Mount a Previously-Initialized Partition'' step. Use this if you are resuming an installation that was broken off, or if you want to mount partitions that have already been initialized or have data on it which you wish to preserve.

If you are installing a diskless workstation, at this point, you want to NFS mount your root partition from the remote NFS server. Specify the path to the NFS server in standard NFS syntax, namely, server-name-or-IP:server-share-path. If you need to mount additional filesystems as well, you can do that at this time.

If you have not already setup your network as described in ``Configure the Network'', Section 7.14, then selecting an NFS install will prompt you to do so.


7.10 Mounting Partitions Not Supported by dbootstrap

In some special situations, dbootstrap might not know how to mount your filesystems (whether root or otherwise). It may be possible, if you're an experienced Linux user, to simply go to tty2 and manually run the commands you need to run in order to mount the partition in question.

If you are mounting a root partition for your new system, just mount it to /target, the go back to dbootstrap and continue (perhaps running the ``View the Partition Table'' step to cause dbootstrap to re-compute where it is in the installation process.

For non-root partitions, you'll have to remember to manually modify your new fstab file so that when you reboot the partition will be mounted. Wait for that file (/target/etc/fstab) to be written by dbootstrap, of course, before editing it.


7.11 ``Install Operating System Kernel and Modules''

The next step is to install a kernel and kernel modules onto your new system.

You will be offered a menu of devices from which you can install the kernel. Choose the appropriate device from which to install the kernel and modules. Remember that you can use any devices which is available to you, and that you are not restricted to using the same media you used to mount with (see Methods for Installing Debian, Chapter 5).

Note that the options presented to you will vary based on what hardware dbootstrap has detected. If you are installing from an official CD-ROM, the software should do the right thing automatically, not even prompting you for a device to install from (unless you boot with the verbose argument). When prompted for the CD-ROM, be sure to insert the first CD-ROM in the drive.

If you are installing from a local filesystem, you have a choice between two options. Select ``harddisk'' if the disk partition is not yet mounted; select ``mounted'' if it is. In both cases, the system will first look for some files in dists/potato/main/disks-i386/current. If it doesn't find those files, you will be prompted to ``Select Debian Archive path'' -- this is the directory within the disk where you have placed the required installation files discussed in Booting from a Hard Disk, Section 6.3. If you have a Debian archive mirrored locally, you can use that by giving the directory where that exists, which is often /archive/debian. Such archives are characterized by directory structures such as debian/dists/potato/main/disks-i386/current. You can type in the path manually, or use the <...> button to browse through the filesystem tree.

Continuing the discusssion on installation from a local disk or similar medium (such as NFS), you will next be prompted for the actual directory containing the needed files (which may be based on your subarchitecture). Note that the system may be quite insistent that the files appear in the precise location indicated, including the subdirectories, if any. See the logs in tty3 (see Using the Shell and Viewing the Logs, Section 7.1.1) where dbootstrap will log the location of the files it's looking for.

If the ``default'' option appears, then you should use that. Otherwise, try the ``list'' option to let dbootstrap try to find the actual files on its own (but note that this can be very slow if you're mounting over NFS). As a last resort, use the ``manual'' option to specify the directory manually.

If you're installing from floppies, you'll need to feed in the Rescue Floppy (which is probably already in the drive), followed by the Driver Floppies.

If you wish to install the kernel and modules over the network, you can do this using the ``network'' (HTTP) or ``nfs'' options. Your networking interfaces must be supported by the standard kernel (see Peripherals and Other Hardware, Section 2.4). If these ``nfs'' options don't appear, you need to select ``Cancel'', then go back and select the ``Configure the Network'' step (see ``Configure the Network'', Section 7.14), and then re-run this step.


7.11.1 NFS

Select the ``nfs'' option, and then tell dbootstrap your NFS server name and path. Assuming you've put the Rescue Floppy and Driver Floppies images on the NFS server in the proper location, these files should be available to you for installing the kernel and modules. The NFS filesystem will be mounted under /instmnt. Select the location of the files as for ``harddisk'' or ``mounted''.


7.11.2 Network

Select the ``network'' option, and then tell dbootstrap the URL and path to the Debian archive. The default will usually work fine, and in any case, the path part is probably correct for any official Debian mirror, even if you edit the server part. You may choose to pull the files in through a proxy server; just enter the server ...this sentence isn't finished...


7.11.3 NFS Root

If you are installing a diskless workstation, you should have already configured your networking as described in ``Configure the Network'', Section 7.14. You should be given the option to install the kernel and modules from NFS. Proceed using the ``nfs'' option described above.

Other steps may need to be taken for other installation media.


7.12 ``Configure PCMCIA Support''

There is an alternate step, before the ``Configure Device Driver Modules'' menu selection, called ``Configure PCMCIA Support''. This menu is used to enable PCMCIA support.

If you do have PCMCIA, but are not installing your Debian system using it (e.g., installation with a PCMCIA Ethernet card), then you need not configure PCMCIA at this point. You can easily configure and enable PCMCIA at a later point, after installation is complete. However, if you are installing by way of a PCMCIA network device, this alternate must be selected, and PCMCIA support must be configured prior to configuring the network.

If you need to install PCMCIA, select the alternate, below ``Configure Device Driver Modules''. You will be asked which PCMCIA controller your system contains. In most cases, this will be i82365. In some cases, it will be tcic; your laptop's vendor-supplied specifications should provide the information if in doubt. You can generally leave the next few sets of options blank. Again, certain hardware has special needs; the Linux PCMCIA HOWTO contains plenty of information in case the default doesn't work.

In some unusual cases, you may also need to read and edit /etc/pcmcia/config.opts. You can open your second virtual terminal (Left Alt-F2) and edit the file there, and then reconfigure your PCMCIA, or manually forcing a reload of the modules using insmod and rmmod.

Once PCMCIA is properly configured and installed, you should jump back up and configure your device drivers as described in the next section.


7.13 ``Configure Device Driver Modules''

Select the ``Configure Device Driver Modules'' menu item to configure device drivers, that is, kernel modules.

You will first be prompted if you would like to load additional kernel modules from a vendor-supplied floppy. Most can skip this step, since it is only useful if there are some additional proprietary or non-standard modules which are needed for your hardware (for instance, for a specific SCSI controller). It will look for modules in the floppy in locations such as /lib/modules/misc (where misc can be any standard kernel module section). Any such files will be copied to the disk you're installing to, so that they can be configured in the next step.

Next, the modconf program will be run, which is a simple program which displays the kernel modules sections and allows you to step through the various kernel sections, picking out what modules you would like to install.

We recommend that you only configure devices which are required for the installation process and not already detected by the kernel. Many people do not need to configure any kernel modules at all.

For instance, you may need to explicitly load a network interface card driver from the net section, a SCSI disk driver in the scsi section, or a driver for a proprietary CD-ROM in the cdrom section. The devices you configure will be loaded automatically whenever your system boots.

Some modules may require parameters. To see what parameters are relevant, you'll have to consult the documentation for that kernel driver.

At any point after the system is installed, you can reconfigure your modules by using the modconf program.


7.14 ``Configure the Network''

If the installation system does not detect that you have a network device available, you will be presented with the ``Configure the Hostname'' option. Even if you don't have a network, or if your network connection dynamically goes up and down (e.g., uses dialup) your machine must have a name to call itself.

If the installation system does detect a network device, you'll be presented with the ``Configure the Network'' step. If the system does not allow you to run this step, then that means it cannot see any network devices present. If you have a network device, that means you probably missed configuring the network device back in ``Configure Device Driver Modules'', Section 7.13. Go back to that step and look for net devices.

As you enter the ``Configure the Network'' step, if the system detects that you have more than one network device, you'll be asked to choose which device you wish to configure. You may only configure one. After installation, you may configuration additional interfaces — see the interfaces(5) man page.

If dbootstrap detects that you configured PCMCIA (``Configure PCMCIA Support'', Section 7.12), you will be asked to confirm that your network card is a PCMCIA card. This affects how and where the network configuration is set.

dbootstrap will next ask you whether you wish to use a DHCP or BOOTP server to configure your network. If you can, you should say ``Yes'', since it allows you to skip all the rest of the next section. You should hopefully see the reply ``The network has been successfully configured using DHCP/BOOTP.''. Jump forward to ``Install the Base System'', Section 7.15. If configuration fails, check your wires and the log on tty3, or else move on and configure the network manually.

To manually configure the network, dbootstrap will ask a number of questions about your network; fill in the answers from Information You Will Need, Section 3.2. The system will also summarize your network information and ask you for confirmation. Next, you need to specify the network device that your primary network connection uses. Usually, this will be ``eth0'' (the first Ethernet device).

Some technical details you might, or might not, find handy: the program assumes the network IP address is the bitwise-AND of your system's IP address and your netmask. It will guess the broadcast address is the bitwise OR of your system's IP address with the bitwise negation of the netmask. It will guess that your gateway system is also your DNS server. If you can't find any of these answers, use the system's guesses -- you can change them once the system has been installed, if necessary, by editing /etc/network/interfaces.


7.15 ``Install the Base System''

The next step is to install the base system. The base system is a minimal set of packages which provides a working, basic, self-contained system. It's under 70MB in size.

During the ``Install the Base System'' step, if you're not installing from a CD-ROM, you'll be offered a menu of devices from which you may install the base system. You should select the appropriate installation media. If you are installing from an official CD-ROM, you will simply be prompted to insert it.

If you choose to install from a filesystem on the harddisk or from a non-official CD-ROM, you will be prompted to specify the path to the http://http.us.debian.org/debian/dists/potato/main/disks-i386/current/base2_2.tgz file. If you have official media, the default value should be correct. Otherwise, enter the path where the base system can be found, relative to the media's mount point. As with the ``Install Operating System Kernel and Modules'' step, you can either let dbootstrap find the file itself or type in the path at the prompt.

If you choose to install from floppy disk, feed in the base floppies in order, as requested by dbootstrap. If one of the base floppies is unreadable, you'll have to create a replacement floppy and feed all floppies into the system again. Once the floppies have all been read, the system will install the files it had read from the floppies. This could take 10 minutes or more on slow systems, less on faster ones.

If you are installing the base system from NFS, then choose NFS and continue. You'll be prompted to specify the server, the share on the server, and the subdirectory within that share where the http://http.us.debian.org/debian/dists/potato/main/disks-i386/current/base2_2.tgz file can be found. If you have problems mounting NFS, make sure that the system time on the NFS server more or less agrees with the system time on the client. You can set your date on tty2 using the date command; you'll have to set it by hand. See the date(1) manual page.


7.16 ``Configure the Base System''

At this point you've read in all of the files that make up a minimal Debian system, but you must perform some configuration before the system will run.

You'll be asked to select your time zone. There are many ways to specify your time zone; we suggest you go to the ``Directories:'' pane and select your country (or continent). That will change the available time zones, so go ahead and select your geographic locality (i.e., country, province, state, or city) in the ``Timezones:'' pane.

Next, you'll be asked if your system clock is to be set to GMT or local time. Select GMT (i.e., ``Yes'') if you will only be running Unix on your computer; select local time (i.e., ``No'') if you will be running another operating system as well as Debian. Unix (and Linux is no exception) generally keeps GMT time on the system clock and converts visible time to the local time zone. This allows the system to keep track of daylight savings time and leap years, and even allows users who are logged in from other time zones to individually set the time zone used on their terminal.


7.17 ``Make Linux Bootable Directly From Hard Disk''

If you elect to make the hard disk boot directly to Linux, and you are not installing a diskless workstation, you will be asked to install a master boot record. If you aren't using a boot manager (and this is probably the case if you don't know what a boot manager is) and you don't have another different operating system on the same machine, answer ``Yes'' to this question. Note that if you answer ``Yes'', you won't be able to boot into DOS normally on your machine, for instance. Be careful, and see Reactivating DOS and Windows, Section 8.3. If you answer ``Yes'', the next question will be whether you want to boot Linux automatically from the hard disk when you turn on your system. This sets Linux root partition to be the bootable partition -- the one that will be loaded from the hard disk.

Note that multiple operating system booting on a single machine is still something of a black art. This document does not even attempt to document the various boot managers, which vary by architecture and even by subarchitecture. You should see your boot manager's documentation for more information. Remember: when working with the boot manager, you can never be too careful.

The standard i386 boot loader is called ``LILO''. It is a complex program which offers lots of functionality, including DOS, NT, and OS/2 boot management. Please carefully read the instructions in the directory /usr/share/doc/lilo/ if you have special needs; also see the LILO mini-HOWTO.

You can skip this step for now, and set the bootable partition later with the Linux fdisk or activate programs.

If you mess up and can no longer boot into DOS, you'll need to use a DOS boot disk and use the fdisk /mbr command to reinstall the DOS master boot record -- however, this means that you'll need to use some other way to get back into Debian! For more information on this please read Reactivating DOS and Windows, Section 8.3.

If you are installing a diskless workstation, obviously, booting off the local disk isn't a meaningful option, and this step will be skipped.


7.18 ``Make a Boot Floppy''

You may wish to make a boot floppy even if you intend to boot the system from the hard disk. The reason for this is that it's possible for the hard disk bootstrap to be mis-installed, but a boot floppy will almost always work. Select ``Make a Boot Floppy'' from the menu and feed the system a blank floppy as directed. Make sure the floppy isn't write-protected, as the software will format and write it. Mark this the ``Custom Boot'' floppy and write-protect it once it has been written.

This floppy will contain a kernel and a simple filesystem, with a directive to use your new root filesystem.


7.19 The Moment of Truth

You system's first boot on its own power is what electrical engineers call the ``smoke test''. If you have any floppies in your floppy drive, remove them. Select the ``Reboot the System'' menu item.

If are booting directly into Debian, and the system doesn't start up, either use your original installation boot media (for instance, the Rescue Floppy), or insert the Custom Boot floppy if you created one, and reset your system. If you are not using the Custom Boot floppy, you will probably need to add some boot arguments. If booting with the Rescue Floppy or similar technique, you need to specify rescue root=root, where root is your root partition, such as ``/dev/sda1''.

Debian should boot, and you should see the same messages as when you first booted the installation system, followed by some new messages.


7.20 Debian Post-Boot (Base) Configuration

After booting, you will be prompted to complete the configuration of your basic system, and then to select what additional packages you wish to install. The application which guides you through this process is called base-config.

If you wish to re-run base-config at any point after installation is complete, as root run dpkg-reconfigure base-config.


7.21 MD5 Passwords

You will first be prompted whether to install MD5 passwords. This is an alternate method of storing passwords on your system which is more secure than the standard means (called ``crypt'').

The default is ``no'', but if you do not require NIS support and are very concerned about security on this machine, you may say ``yes''.


7.22 Shadow Passwords

Unless you said ``yes'' to MD5 passwords, the system will ask whether you want to enable shadow passwords. This is a system in which your Linux system is made to be a bit more secure. In a system without shadow passwords, passwords are stored (encrypted) in a world-readable file, /etc/passwd. This file has to be readable to anyone who can log in because it contains vital user information, for instance, how to map between numeric user identifiers and login names. Therefore, someone could conceivably grab your /etc/passwd file and run a brute force attack (i.e. run an automated test of all possible password combinations) against it to try to determine passwords.

If you have shadow passwords enabled, passwords are instead stored in /etc/shadow, which is readable and writable only by root, and readable by group shadow. Therefore, we recommend that you enable shadow passwords.

Reconfiguration of the shadow password system can be done at any time with the shadowconfig program. After installation, see /usr/share/doc/passwd/README.debian.gz for more information.


7.23 Set the Root Password

The root account is also called the super-user; it is a login that bypasses all security protection on your system. The root account should only be used to perform system administration, and only used for as short a time as possible.

Any password you create should contain from 6 to 8 characters, and should contain both upper- and lower-case characters, as well as punctuation characters. Take extra care when setting your root password, since it is such a powerful account. Avoid dictionary words or use of any personal information which could be guessed.

If anyone ever tells you they need your root password, be extremely wary. You should normally never give your root account out, unless you are administering a machine with more than one system administrator.


7.24 Create an Ordinary User

The system will ask you whether you wish to create an ordinary user account at this point. This account should be your main personal log-in. You should not use the root account for daily use or as your personal login.

Why not? Well, one reason to avoid using root's privileges is that it is very easy to do irreparable damage as root. Another reason is that you might be tricked into running a Trojan-horse program -- that is a program that takes advantage of your super-user powers to compromise the security of your system behind your back. Any good book on Unix system administration will cover this topic in more detail -- consider reading one if it is new to you.

Name the user account anything you like. If your name is John Smith, you might use ``smith'', ``john'', ``jsmith'' or ``js''. You will also be prompted for the full name of the user, and, like before, a password.

If at any point after installation you would like to create another account, use the adduser command.


7.25 Setting Up PPP

You will next be asked whether you wish to install the rest of the system using PPP. If you are installing from CD-ROM and/or are connected directly to the network, you can safely say ``no'' and skip this section.

If you do choose to configure PPP at this point, a program named pppconfig will be run. This program helps you configure your PPP connection. Make sure, when it asks you for the name of your dialup connection, that you name it ``provider''.

Hopefully, the pppconfig program will walk you through a pain-free PPP connection setup. However, if it does not work for you, see below for detailed instructions.

In order to setup PPP, you'll need to know the basics of file viewing and editing in Linux. To view files, you should use more, and zmore for compressed files with a .gz extension. For example, to view README.debian.gz, type zmore README.debian.gz. The base system comes with two editors: ae, which is very simple to use, but does not have a lot of features, and elvis-tiny, a limited clone of vi. You will probably want to install more full-featured editors and viewers later, such as nvi, less, and emacs.

Edit /etc/ppp/peers/provider and replace ``/dev/modem'' with ``/dev/ttyS#'' where # stands for the number of your serial port. In Linux, serial ports are counted from 0; your first serial port (i.e., COM1) is /dev/ttyS0 under Linux. The next step is to edit /etc/chatscripts/provider and insert your provider's phone number, your user-name and password. Please do not delete the ``\q'' that precedes the password. It hides the password from appearing in your log files.

Many providers use PAP or CHAP for login sequence instead of text mode authentication. Others use both. If your provider requires PAP or CHAP, you'll need to follow a different procedure. Comment out everything below the dialing string (the one that starts with ``ATDT'') in /etc/chatscripts/provider, modify /etc/ppp/peers/provider as described above, and add user name where name stands for your user-name for the provider you are trying to connect to. Next, edit /etc/ppp/pap-secrets or /etc/ppp/chap-secrets and enter your password there.

You will also need to edit /etc/resolv.conf and add your provider's name server (DNS) IP addresses. The lines in /etc/resolv.conf are in the following format: nameserver xxx.xxx.xxx.xxx where the xs stand for numbers in your IP address. Optionally, you could add the usepeerdns option to the /etc/ppp/peers/provider file, which will enable automatic choosing of appropriate DNS servers, using settings the remote host usually provides.

Unless your provider has a login sequence different from the majority of ISPs, you are done! Start the PPP connection by typing pon as root, and monitor the process using plog command. To disconnect, use poff, again, as root.

Read /usr/share/doc/ppp/README.Debian.gz file for more information on using PPP on Debian.


7.26 Removing PCMCIA

If you have no use for PCMCIA, you can choose to remove it at this point. This will make your startup cleaner; also, it will make it easier to replace your kernel (PCMCIA requires a lot of correlation between the version of the PCMCIA drivers, the kernel modules, and the kernel itself).


7.27 Configuring APT

The main means that people use to install packages on their system is via a program called apt-get, from the apt package.[5] APT must be configured, however, so that it knows where to retrieve packages from. The helper application which assists in this task is called apt-setup.

The next step in your configuration process is to tell APT where other Debian packages can be found. Note that you can re-run this tool at any point after installation by running apt-setup, or by manually editing /etc/apt/sources.list.

If you are booting from an official CD-ROM, then that CD-ROM should automatically be configured as an apt source without prompting. You will notice this because you will see the CD-ROM being scanned, and then asked if you want to configure another CD-ROM. If you have a multiple CD-ROM set — and most people will — then you should go ahead and scan each of them one by one.

For users without an official CD-ROM, you will be offered an array of choices for how Debian packages are accessed: FTP, HTTP, CD-ROM, or a local filesystem. For CD-ROM users, you can get to this step by specifically asking to add another source.

You should know that it's perfectly acceptable to have a number of different APT sources, even for the same Debian archive. apt-get will automatically pick the package with the highest version number given all the available versions. Or, for instance, if you have both an HTTP and a CD-ROM APT source, apt-get should automatically use the local CD-ROM when possible, and only resort to HTTP if a newer version is available there. However, it is not a good idea to add unnecessary APT sources, since this will tend to slow down the process of checking the network archives for new versions.


7.27.1 Configuring Network Package Sources

If you plan on installing the rest of your system via the network, the most common option is to select the ``http'' source. The ``ftp'' source is also acceptable, but tends to be a little slower making connections.

For any of the network package sources, you will be prompted whether you wish to use ``non-US software''. You will generally wish to say ``yes'', because otherwise you won't be able to install cryptographically secure software, such as the popular ssh program.

Next you will be asked whether you wish to have any non-free software. That refers to commercial software or any other software whose licensing does not comply with the Debian Free Software Guidelines. It's fine to say ``yes'', but be careful when installing such software, because you will need to ensure that you are using the software in compliance with its license.

The next step during the configuration of network packages sources is to tell apt-setup which country you live in. This configures which of the official Debian Internet mirror network you connect to. Depending on which country you select, you will be given a list of possible machines. Its generally fine to pick the one on the top of the list, but any of them should work.

If you are installing via HTTP, you will be asked to configure your proxy server. This is sometimes required by people behind firewalls, on corporate networks, etc.

Finally, your new network package source will be tested. If all goes well, you will be prompted whether you want to do it all over again with another network source.


7.28 Package Installation: Simple or Advanced

You will next be prompted whether you wish to install packages the simple way, or the more fine-grained, advanced way. We recommend you start with the simple way, since you can always run the more advanced way at any time.

You should know that for simple installation, base-config is merely invoking the tasksel program. For advanced package installation, the dselect program is being run. Either of these can be run at any time after installation to install more packages. If you are looking for a specific single package, after installation is complete, simply run apt-get install package, where package is the name of the package you are looking for.


7.29 Simple Package Selection -- The Task Installer

If you chose ``simple'' installation, you will next be thrown into the Task Installer (tasksel). This technique offers you a number of pre-rolled software configurations offered by Debian. You could always choose, package by package, what do you want to install on your new machine. This is the purpose of the dselect program, described below. But this can be a long task with around 3900 packages available in Debian!

So, you have the ability to choose tasks instead. These loosely represent a number of different jobs or things you want to do with your computer, such as ``Samba'' for SAMBA servers, or ``Gnome Desktop'' for the GNOME desktop environment.

For each task, you can highlight that task and select ``Task Info'' to see more information on that task. This will show you an extended description and the list of packages included for that task.

Once you've selected your tasks, select ``Finish''. At this point, apt-get will be run to install the packages you've selected. You will be shown the number of packages to be installed, and how many kilobytes of packages, if any, need to be downloaded.

There are two caveats to be mentioned at this point. Firstly, of the 3900 packages available in Debian, only a small minority of those are covered by tasks offered in the Task Installer. To see information on more packages, either use apt-cache search search-string for some given search string (see the apt-cache(8) man page), or run dselect as described below.

The second caveat is that some so-called ``standard'' packages are not installed by default. Thus, some software, which we consider basic to any Linux system, may not be installed.[6] In order to install that software, simply run tasksel -s, without selecting any packages, then select ``Finish''.


7.30 Advanced Package Selection with dselect

If you selected ``advanced'' packge selection, you'll be dropped into the dselect program. The dselect Tutorial is required reading before you run dselect. dselect allows you to select packages to be installed on your system. If you have a CD-ROM or hard disk containing the additional Debian packages that you want to install on your system, or you are connected to the Internet, this will be useful to you right away. Otherwise, you may want to quit dselect and start it later, once you have transported the Debian package files to your system. You must be the super-user (root) when you run dselect.


7.31 Log In

After you've installed packages, you'll be presented with the login prompt. Log in using the personal login and password you selected. Your system is now ready to use.


[ previous ] [ Abstract ] [ Copyright Notice ] [ Contents ] [ next ]
Installing Debian GNU/Linux 2.2 For Intel x86
version 2.2.26, 12 June, 2001
Bruce Perens
Sven Rudolph
Igor Grobman
James Treacy
Adam Di Carlo