[ previous ] [ Contents ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ next ]

dselect Documentation for Beginners
Chapter 2 - Once dselect is Launched


Once in dselect you will get this screen:

     Debian `dselect' package handling frontend.
     
        0. [A]ccess    Choose the access method to use. 
        1. [U]pdate    Update list of available packages, if possible. 
        2. [S]elect    Request which packages you want on your system.
        3. [I]nstall   Install and upgrade wanted packages. 
        4. [C]onfig    Configure any packages that are unconfigured. 
        5. [R]emove    Remove unwanted software.
        6. [Q]uit      Quit dselect.
     
     [some other stuff]

Let's look at these one by one.


2.1 ``Access''

Here's the access screen:

     dselect - list of access methods
       Abbrev.        Description
       cdrom          Install from a CD-ROM.
     * multi_cd       Install from a CD-ROM set.
       nfs            Install from an NFS server (not yet mounted).
       multi_nfs      Install from an NFS server (using the CD-ROM set) (not yet mounted).
       harddisk       Install from a hard disk partition (not yet mounted).
       mounted        Install from a filesystem which is already mounted.
       multi_mount    Install from a mounted partition with changing contents.
       floppy         Install from a pile of floppy disks.
       apt            APT Acquisition [file,http,ftp]

Here we tell dselect where our packages are. Please ignore the order that these appear in. It is very important that you select the proper method for installation. You may have a few more methods listed, or a few less, or see them listed in a different order; just don't worry about it. In the following list, we describe the different methods.

apt
One of the best options for installation from a local mirror of the Debian archive, or from the network. This method uses the ``apt'' (see apt(8)) system to do complete dependency analysis and ordering, so it's most likely to install packages in the optimal order.

Configuration of this method is straight-forward; you may select any number of different locations, mixing and matching file: URLs (local disks or NFS mounted disks), http: URLs, or ftp: URLs. You can also include CD-ROM/DVD media with apt-cdrom.

Please see the sources.list(5) manual page for more information on the format of the /etc/apt/sources.list file.

If you have proxy server for either HTTP or FTP (or both), make sure you set the http_proxy or ftp_proxy environment variables, respectively. Set them from your shell before starting dselect, e.g.:

     # export http_proxy=http://gateway:3128/
     # dselect
multi_cd
Quite large and powerful, this complex method is the recommended way of installing a recent version of Debian from a set of multiple binary CDs. Each of these CDs should contain information about the packages in itself and all prior CDs (in the file Packages.cd). When you first select this method, be sure the CD-ROM you will be using is not mounted. Place the last binary disk of the set (we don't need the source CDs) in the drive and answer the questions you are asked:

Once you have updated the available list and selected the packages to be installed, the multi-cd method diverges from normal procedure. You will need to run an ``install'' step for each of the CDs you have in turn. Unfortunately due to the limitations of dselect it will not be able to prompt you for a new disk at each stage; the way to work for each disk is

It may be neccesary to run the installation step more than once to cover the order of package installation - some packages installed early may need to have later packages installed before they will configure properly.

Running a ``Configure'' step is recommended, to help fix any packages that may end up in this state.

multi_nfs, multi_mount
These are very similar to the multi_cd method above, and are refinements on the theme of coping with changing media, for example if installing off a multi-cd set exported via NFS from another machine's CD-ROM drive.
floppy
Caters for those people without CD-ROM or network access. Not recommended as a viable installation option anymore if you are using traditionally-sized floppies, but may work better for LS/120 or Zip drives. Specify the location of your floppy drive, then feed floppies. The first one should contain the Packages file. This method is slow and may be unreliable due to media problems.
nfs
DEPRECATED METHOD -- use apt or multi_nfs instead. Only try this method if all else fails.

This is a simple installation method, with simple requirements: give it the address of the NFS server, the location of the Debian distribution on the server and (maybe) the Packages file(s). Then dselect will install the various sections in turn from the server. Slow but easy; does not use proper ordering, so it will take many runs of the ``Install'' and/or ``Configure'' steps. Obviously only appropriate for NFS based installation.

harddisk
DEPRECATED METHOD -- use apt or multi_mount instead. Only try this method if all else fails!

Supply the block device of the hard drive partition to use, and the locations of the Debian files on that partition, as usual. Slow and easy. Does not use proper ordering, so it will take many runs of the ``Install'' and/or ``Configure'' steps. Not recommended, since the ``apt'' method supports this functionality, with proper ordering.

mounted
DEPRECATED METHOD -- use apt or multi_mount instead. Only try this method if all else fails!

Simply specify the location(s) of the Debian files in your filesystem. Possibly the easiest method, but slow. Does not use proper ordering, so it will take many runs of the ``Install'' and/or ``Configure'' steps.

cdrom
DEPRECATED METHOD -- use multi_cd instead. This method simply does not work with multiple CD sets, such as are included in Debian 3.0.

Designed for single-CD installations, this simple method will ask for the location of your CD-ROM drive, the location of the Debian distribution on that disk and then (if necessary) the location(s) of the Packages file(s) on the disk. Simple but quite slow. Does not use proper ordering, so it will take many runs of the ``Install'' and/or ``Configure'' steps. Not recommended, because it assumes the distribution is on a single CD-ROM, which is no longer the case. Use the ``multi_cd'' method instead.

If you run into any problems -- maybe Linux can not see your CD-ROM, your NFS mount is not working or you have forgotten which partition the packages are on -- you have a couple of options:

After you choose the access method dselect will get you to indicate the precise location of the packages. If you do not get this right the first time hit Control-C and return to the ``Access'' item.

Once you are finished here, you will be returned to the main screen.


2.2 ``Update''

dselect will read the Packages or Packages.gz files from the mirror and create a database on your system of all available packages. This may take a while as it downloads and processes the files.


2.3 ``Select''

Hang on to your hat. This is where it all happens. The purpose of this step is to select just which packages you wish to have installed.

Hit Enter. If you have a slow machine be aware that the screen will clear and can remain blank for some 15 seconds, so don't start bashing keys at this point, just be patient.

The first thing that comes up on the screen is page 1 of the Help file. You can get to this help by hitting ? at any time in the ``Select'' screens and you can page through the help screens by hitting the . (full stop) key.

Please be prepared to take an hour or so as you have to learn your way around and then get it right. When you enter the ``Select'' screen for the first time, don't make ANY selections at all -- just hit Enter and see what dependency problems there are. Try fixing them. If you find yourself back at the main screen, enter ``Select'', Section 2.3 again.

Before you dive in, note these points:

Let's look at the top two lines of the ``Select'' screen.

     dselect - main package listing (avail., priority)    mark:+/=/- verbose:v help:?
     EIOM Pri Section  Package      Inst.ver    Avail.ver   Description

This header reminds us of some of the special keys:

+
Select a package for installation.
=
Place a package on hold -- useful on a broken package. You can reinstall an older version and place it on hold while you wait for a new one to appear. (These things rarely happen with stable Debian, though.)
- Remove a package.
_
Purge a package: remove both the package and its configuration files.
i,I
Toggle/cycle display of additional information (in the bottom part of the screen).
o,O
Cycle through the sort options (in the top part of the screen).
v,V
A terse/verbose toggle. When you press this, you will find out what do the letters EIOM on the second line mean. But here's a summary:
     Flag   Meaning           Possible values 
     E      Error             Space, R, I
     I      Installed state   Space, *, -, U, C, I 
     O      Old mark          *, -, =, _, n
     M      Mark              *, -, =, _, n

(Note that upper and lower case keys are quite different in effect.)

Rather that spell all this out here, I will refer you to the Help screens where everything will be revealed to you. One example, though:

You enter dselect and find a line like this:

     EIOM Pri  Section  Package   Description 
       ** Opt  misc     loadlin   a loader (running under DOS) for LINUX kernel

This means that loadlin was selected when you last ran dselect and that it is still selected, but it is not installed. Why not? The answer must be that the loadlin package is not physically available, that is, it must be missing from your mirror.

The information which dselect uses to get all the right packages installed is buried in the Packages files (the thing you downloaded in the [U]pdate step). These files are generated from the packages themselves.

Nothing in this world is perfect and it sometimes happens that the dependencies built into a package are incorrect, which can cause a situation that dselect simply cannot resolve. However, you can get out of such a loop by using the commands Q and X.

Q
An override. Forces dselect to ignore the built-in dependencies and to do what you have specified. This could, of course, turn out to be a bad idea.
X
Use X if you get totally lost. It puts things back the way they were and exits.

Keys which help you not to get lost (!) are R, U and D.

R
Cancels all selections at this level. Does not affect selections made at the previous level.
U
If dselect had proposed changes and then you made additional changes, U will restore dselect's selections.
D
Removes the selections made by dselect, leaving only yours.

An example follows. The xmms package (chosen because it has a lot of dependencies) depends on these packages:

The following packages should also be installed. These are not, however, essential:

So, when I select xmms, I get a screen like this:

     dselect - recursive package listing                  mark:+/=/- verbose:v help:?
     EIOM Pri Section  Package      Description
       _* Opt sound    xmms         Versatile X audio player that looks like Winamp
       _* Opt libs     libglib1.2   The GLib library of C routines
       _* Opt libs     libgtk1.2    The GIMP Toolkit set of widgets for X
       _* Opt libs     libmikmod2   A portable sound library
       _* Opt libs     libogg0      Ogg Bitstream Library
       _* Opt libs     libvorbis0   The OGG Vorbis lossy audio compression codec.

(Other packages may or may not appear, depending on what is already in your system). You'll notice that all the required packages have been selected for me, along with the recommended ones.

The R key puts things back to the starting point.

     dselect - recursive package listing                  mark:+/=/- verbose:v help:?
     EIOM Pri Section  Package      Description
       __ Opt sound    xmms         Versatile X audio player that looks like Winamp
       __ Opt libs     libglib1.2   The GLib library of C routines
       __ Opt libs     libgtk1.2    The GIMP Toolkit set of widgets for X
       __ Opt libs     libmikmod2   A portable sound library
       __ Opt libs     libogg0      Ogg Bitstream Library
       __ Opt libs     libvorbis0   The OGG Vorbis lossy audio compression codec.

To decide now that you don't want xmms, just hit Enter.

The Dkey puts things the way I selected them in the first place:

     dselect - recursive package listing                  mark:+/=/- verbose:v help:?
     EIOM Pri Section  Package      Description
       _* Opt sound    xmms         Versatile X audio player that looks like Winamp
       __ Opt libs     libglib1.2   The GLib library of C routines
       __ Opt libs     libgtk1.2    The GIMP Toolkit set of widgets for X
       __ Opt libs     libmikmod2   A portable sound library
       __ Opt libs     libogg0      Ogg Bitstream Library
       __ Opt libs     libvorbis0   The OGG Vorbis lossy audio compression codec.

The U key restores dselect's selections:

     dselect - recursive package listing                  mark:+/=/- verbose:v help:?
     EIOM Pri Section  Package      Description
       _* Opt sound    xmms         Versatile X audio player that looks like Winamp
       _* Opt libs     libglib1.2   The GLib library of C routines
       _* Opt libs     libgtk1.2    The GIMP Toolkit set of widgets for X
       _* Opt libs     libmikmod2   A portable sound library
       _* Opt libs     libogg0      Ogg Bitstream Library
       _* Opt libs     libvorbis0   The OGG Vorbis lossy audio compression codec.

I suggest running with the defaults for now -- you will have ample opportunity of adding more later.

Whatever you decide, hit Enter to accept and return to the main screen. If this results in unresolved problems you will be bounced right back to another problem resolution screen.

The R, U, and D keys are very useful in ``what if'' situations. You can experiment at will and then restore everything and start again. Don't look on them as being in a glass box labelled ``Break In Emergency.''

After making your selections in the ``Select'' screen, hit the I to give you a big window, t to take you to the beginning and then use the Page-Down key to look quickly through the settings. This way you can check the results of your work and spot glaring errors. Some people have deselected whole groups of packages by mistake and didn't notice the error until it was too late. dselect is a very powerful tool, so you better not misuse it.

You should now have this situation:

     package category     status
     
     required             all selected
     important            all selected
     standard             mostly selected
     optional             mostly deselected
     extra                mostly deselected

Happy? Hit Enter to exit the ``Select'' process. You can come back and run ``Select'' again if you wish.


2.4 ``Install''

dselect runs through the entire set of 7700 packages and installs those selected. Expect to get asked to make decisions as you go.

The screen scrolls past fairly quickly on a fast machine. You can stop/start it with Control-s/Control-q and at the end of the run you will get a list of any uninstalled packages. If you want to keep a record of everything that happens, use common Unix programs for capturing output, like tee(1) or script(1).

It can happen that a package does not get installed because it depends on some other package which is listed for installation but is not yet installed. The answer to this is to run ``Install'' again. It has been reported that sometimes it was necessary to run it 4 times before everything fit into place. This will vary by your acquisistion method; with the APT method, you will almost never need to run ``Install'' again.


2.5 ``Configure''

Most packages get configured in step 3, but anything left hanging can be configured here.


2.6 ``Remove''

Removes packages that are installed but no longer required.


2.7 ``Quit''

Exits dselect.

I suggest running /etc/cron.daily/find at this point, as you have a lot of new files on your system. After this you'll be able to use locate to find any given file.


[ previous ] [ Contents ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ next ]

dselect Documentation for Beginners

Stéphane Bortzmeyer and others debian-doc@lists.debian.org