Skip to main content

Debian

Foreign packages in Debian Operating System

What do you do when a package doesn't exist in Debian? There are several options. One mentioned previously is to add non-Debian repositories to the repository configuration. After a Synaptic refresh, apt-get, or aptitude update, all of the package information in the repository will be available to the Debian package managers.

If, however, the software isn't included in any repository, there are a couple of options available.

There is actually one additional option: just install such software from its original source. This technique is not recommended because it places the software completely outside of the package management system. Future system upgrades that involve required libraries can cause the software to behave strangely or even break completely, and finding the reason can be quite frustrating. This technique should be used as a last resort only.

Configuration management of Debian OS

One of the issues frequently faced by administrators is that of having multiple, remote systems all with similar software for the most part, but with minor differences in what is installed or running. Debian provides several packages that can help manage such an environment in a unified manner. Two of the more popular packages, both available in Debian, are FAI and Puppet. While we don't have the space to go into details, both applications are described briefly here.

dpkg and dselect

These were the first package management tools for Debian. The dpkg command still does all of the work, since all the newer tools use it as a backend. As such, ithas all the functions required to install, remove, configure, and report on packages. Itis a command line tool.

One of the limitations of dpkg is that it does very little in the way of dependency checking, other than to offer an error message when there is a dependency problem. Itrequires the user to examine the dependency report and include the necessary packages during installation. Another limitation is that dpkg only works on packages that have already been downloaded. However, both of these limitations are addressed by the dselect utility.

The dselect command is a menu-driven utility that provides access to information on packages in the Debian repositories, and also checks and helps resolve software dependencies. This greatly simplifies package selection and installation. Once packages are selected and all dependencies satisfied, either automatically or with user assistance, dpkg is run automatically to perform the actual installation.

Partitioning in Debian

The next decision to be made is how to partition the available storage space. There are the following three main considerations when deciding how to partition storage for a Debian system:

  • Efficient backup and recovery
  • limiting space
  • Disk management

System logging in Debian

Another one of the system administrator's responsibilities is to manage the system logs. Debian systems by default log information that can tell an administrator how the system is being used, provide warnings and error messages that can indicate problems with software or hardware, and even provide early signs the system is being attacked or misused.

System logs are handled by the rsyslog package, and normally reside in /var/ log and its subdirectories. Various software packages and especially those that provide important services, such as DNS, FTP, E-Mail, and H1TP (Apache), often do extensive logging that may include entries that allow activity to be tracked and warn of potential problems or misconfiguration. The package documentation includes information on how to configure what is logged and where.

Debian Filesystem Layout

Some of the first decisions that must be made, even before installing Debian, involve deciding the best way to format the storage space for the installation. This includes what type of filesystem to use, how to partition it for the best effect, and whether and what to encrypt for security. The actual work of partitioning and boot code placement is handled by the Debian installer and can be altered later using standard Linux bootloader and partitioning utilities. The installation process and the utilities are covered well by the Debian installation guide mentioned in the previous chapter, and the documentations for the GRUB2, fdisk, and GNU Parted included with the appropriate software packages.

TItis chapter serves as a basic introduction to the concepts of boot loading and disk partitioning, along with some guidelines to keep in mind when installing Debian or updating your boot or partitioning schemes. Do not worry if you are still uncertain what is best for your situation when first installing Debian. As we shall see, the defaults will work just fine for most cases, and the beginner can't really go wrong while using them when in doubt.

Debian Managing SysV scripts

The update-rc. d utility has already been mentioned, and is one of the primary command line interfaces for managing init scripts. However, there are several other utilities that are essentially a frontend for update -rc . d that make the administrator's job a little easier. The primary ones are bum and sysv-rc-conf.

The Boot Up Manager, or bum, is a graphical application for managing init scripts. It requires a window manager to run, and provides a nice interface showing what services are running and what scripts are enabled. Inadvanced mode, itwill also allow you to adjust individual run levels and run order.

As mentioned for the update -rc . d start and stop commands, adjusting script ordering is not recommended.

There is also a utility called sys-rc-conf. It uses the curses library to provide a full-screen text interface. Inits default mode, itwill not modify script order, although special options on the command line will allow this ifyou really need this functionality.

Both utilities are pretty much self-explanatory. Check the services you want, uncheck those you don't, and you can set or unset check marks for different run levels on the same script.

Frequently, you will need to execute a SysV script manually, either to check the status, or to restart a service that requires it. Although the script in /etc/init. d maybe executed manually, the recommended

method is to use the invoke-rc. d command, which ensures that system policy and run level constraints are satisfied.

SLS - Softlanding Linux System

The Softlanding Linux System (SLS) distribution, which evolved into the Slackware distribution, is one of the oldest. Distributions in this branch generally made minimal or no changes to the original software packages before including them. Distributions using this format generally provided no native software management and depended on third-party utilities for package management and administration. These utilities were readily available and often included, so this was not necessarily a disadvantage.

These distributions are also known as Sorcerer/Lunar-Linux/Source Mage (SIS) distributions for the most common distributions using the format. These distributions are mostly obsolete and not often seen. However, the package format is still used by many software projects.

Desktop configuration

So far, we have been discussing server configuration. User configuration of a desktop environment is actually a little easier, as both GNOME (GNU Object Model Environment) and KDE (K Desktop Environment), as well as other desktop managers, provide a full suite of utilities gathered in one menu area that allows the user to easily configure things such as desktop appearance, behavior, window themes, login behavior, and system and session services relevant to their environment.