Previous Next Table of Contents

7. The Debian Package Management Tools

7.1 What program(s) does Debian provide for managing its packages?

dselect

This program is a menu-driven interface to the Debian package management system. It is particularly useful for first-time installations and large-scale upgrades. dselect can

dselect begins by presenting the user with a menu of 7 items, each of which is a specific action. The user can select one of the actions by using the arrow keys to move the highlighter bar, then pressing the ENTER key to select the highlighted (highlit?) action.

What the user sees next depends on the action he selected. If he selects any option but Access or Select, then dselect will simply proceed to execute the specified action: e.g., if the user selected the action Remove, then dselect would proceed to remove all of the files selected for removal when the user last chose the Select action.

Both the Access menu item and the Select menu item lead to additional menus. In both cases, the menus are presented as split screens; the top screen gives a scrollable list of choices, while the bottom screen gives a brief explanation ("info") for each choice.

Extensive on-line help is available: Use the '?' key to get to a help screen, then use the '.' key to see each of the several pages of help one screen at a time.

Some users find it easier to navigate dselect when it is colorized. To see color screens in dselect, be sure that you've executed: export TERM=linux before invoking dselect.

The order in which the actions are presented in the first dselect menu represents the order in which a user would normally choose dselect to install packages. However, a user can pick any of the main menu choices as often as needed (including not at all, depending on what one wants to do).

dpkg:

This is the main package management program, dpkg can be invoked with many options. Some common uses are:

dpkg-deb

This tool manipulates Debian archive (.deb)files. Some command uses are:

More information is given in the man page dpkg-deb(1).

dpkg-split

This Perl script splits large package into smaller files (e.g., for writing onto a set of floppy disks), and can also be used to merge a set of split files back into a single file. It can only be used on a Debian system, since it calls the program dpkg-deb to parse the debian package file into its component records. For example, to split a big .deb file into N parts,

7.2 Debian claims to be able to update a running program; how is this accomplished?

Debian GNU/Linux provides a program called the start-stop-daemon which is used by installation scripts to start daemons at boot time or to stop daemons when the kernel runlevel is changed (e.g., from multi-user to single-user or to halt). The start-stop-daemon command is also used when a new package containing a daemon is installed, to stop running daemons, and restart them as necessary, e.g., when a package is being installed with an updated configuration script.

7.3 How can I tell what packages are already installed on a Debian system?

To learn the status of all the packages installed on a Debian system, execute the command: dpkg -l. This prints out a one-line summary for each package, giving a 2-letter status symbol, the package name, the version which is installed, and a very brief description.

To learn the status of packages whose names match the string any pattern beginning with 'foo' by executing the command: dpkg -l "foo*"

To get a more verbose report for a particular package, execute the command: dpkg --status foo.

7.4 How can I find out what package produced a particular file?

To identify the package that produced the file named foo execute either:


Previous Next Table of Contents