Debian 1.1

November 1st, 1996 by Phil Hughes and Jonathan Gross in

The Debian packaging system makes it possible to do add, remove and upgrade automatically.
Your rating: None Average: 1 (1 vote)

With Linux 2.0 out, commercial vendors are offering new products based on the 2.0 kernel. We want to keep everyone up to date, so we will be reviewing the various distributions. An updated chart (based on the one that appeared in Issue 29 of LJ) and new descriptive text will be made available on the Linux Journal web page at http://www.ssc.com/lj/distable.html.

by Phil Hughes and Jonathan Gross

The first distribution made available with the 2.0 kernel was Debian, and thus it is the first we will review. We would like to thank iConnect for making the CD available to us. iConnect's web page is located at http://www.i-connect.net/i-connect/services/cdrom.html.

Some Background...

From the Debian FAQ:

Debian GNU/Linux is the result of a volunteer effort to create a free, high-quality Unix-compatible operating system, complete with a suite of applications. The idea of a free Unix-like system originates from the GNU project, and many of the applications that make Debian GNU/Linux so useful were developed by the GNU project. Debian was created by Ian Murdock in 1993, initially under the sponsorship of the Free Software Foundation's GNU project. Today, Debian's developers think of it as a direct descendent of the GNU project.

Installing Debian

Enter. Enter. Enter. Enter. Enter. Enter. You could pretty much train a chicken to install Debian: “Peck the enter key. Wait....okay, peck enter again...wait...okay, now peck enter...” I had time to think about this as I was installing Debian for the first time on an old 386 with no math co-processor. By the time I had installed it on my P60, I had an entire training session for my chickens, with plans to take over entire networks. (“Now it's upgrade time! Select FTP from the Access menu and peck enter....now peck enter again...”)

Debian installation begins with a set of floppies. I needed six: a base system spans three of them, a root, a boot and a sixth to make a backup boot disk.

The base system is installed, and from there, you go through the package selection process.

I've installed a fair number of Linux distributions, built a couple from scratch (no chicken pun intended) and bollixed up more than one installation—Slackware, Red Hat, SLS (shudder) and others. I've noticed that one of the things I do that causes problems is deciding to not install package foobar. It's big, I don't like the package name, the version number is 13, so I don't install it. Then I run Idependonfoobar, and it complains, “...can't find library libfoobar.” Phooey. So I waste a lot of time only to discover that the packages I left out contain files that other programs depend on.

Debian solves this problem for me, or at least warns me that I am making a mistake. Debian's package dependencies are very, very cool, and will be discussed at length.

Installation was self-explanatory until I came to the package selection screens, where I stumbled a bit, forging ahead without any documentation. I found I had to rethink my chicken training regime. The selection process reminds me of reading mail with trn: there are a couple of different screens that do different things, and a slew of keyboard controls for doing them. Is this part of the cost of having dependencies? I don't know, but I think that part could have been clearer. Once you figure out how things work, it is very helpful, but it is certainly not intuitive, like the rest of the installation.

For example: I decided not to install Tex. It's big, and I would rather have used that disk space for my large collection of gifs. So I left Tex unselected. Later, I chose apsfilter, a print filter that needs dvips to work its magic. Debian's package selection tool, dselect, told me that apsfilter depends, among other things, on dvips. That's cool. But even cooler is the fact that all these dependencies are presented in a list form that allows me to select packages from the list during the install, solving the dependency problems as they arise and without losing my place in the installation. Very cool.

Another example: I initially chose the Debian default mail transfer agent, smail, but then decided I really wanted sendmail in all its glory. I went back into dselect, and selected sendmail.

dselect complained that smail conflicted with sendmail, but I ignored it and tried to install it anyway. deselect wouldn't do it because of the conflicts with smail. You may consider it a blessing or a curse when software makes decisions like this for you. I admit it was slightly irritating that deselect wouldn't let me hang myself. Nevertheless, this sort of thing prevents damage to innocent hardware when people cannot get their new systems to work because of software conflicts and heave the machines out windows.

When I went back and heeded the warning messages, deselected (dselected?) smail, and tried again, smail was removed, and sendmail was installed and configured. During installation, you are prompted to configure sendmail to send mail to a hub, or run as a host. This option is nice for people who have simple mail needs.

Another of the best features of this distribution is the upgrade method—truly the most impressive feature of Debian. After you have the system basics installed and running, you can fire up dselect and do upgrades to your system. If you are connected to the Internet, you can do this via FTP. dselect allows you to select where you are getting your new packages—so you point it at ftp.debian.org. The upgrade acts just like the installation, the system updates the packages database, and gets all the newest packages from the FTP site, and continues with the install.

No more guessing which parts of the distribution you need to upgrade to run the new version of foobar—you just point dselect at the Debian FTP site and let the system worry about it—this is what computers are for—keeping track of all the “this package depends on this stuff, and you'll need to get the new version of blah-blah-blah.” Debian does all that for you—very impressive.

Debian allows you to install (and update) from CD-ROM, NFS, hard drive, previously mounted partition, floppy, or via FTP. I installed from the CD-ROM obtained from iConnect.

However, there are problems with the system. Apparently the installation procedure doesn't install LILO correctly. Unless you run LILO by hand before rebooting, it won't re-boot from the hard drive at all, even if you told the installation scripts that was what you wanted. Also, the modules do not load into the kernel. All these problems need to be dealt with before Debian is ready for the Big Time.

I also tried to get and install the kernel sources for 2.0.6 (the latest package as of this writing). The kernel building procedure is a little different for Debian than for other distributions, and I still don't have it working properly. The kernel builds, then some scripts run to make sure that if you upgrade your kernel packages, you don't overwrite your custom kernel configuration. These scripts don't seem to work correctly—the kernel building procedure aborted and I had to finish it manually, which is not a big deal if you know what you are doing. But these bugs are not trivial and should be fixed (and may be, by the time this article is printed).

More on the Debian Packaging System

The Debian packaging system makes it possible to do add, remove and upgrade automatically. You may have noticed that I said “makes it possible”, not that it always works. If the package is properly constructed, it will automate all these tasks for you. But it's up to the person or vendor building the package to ensure it works. The scripts in the package are also very important to help you with package management. In addition to the pre-install and post-install scripts mentioned earlier, there are also pre-remove and post-remove scripts.

Commercial Debian?

Debian remains an “almost-commercial” distribution. By this I mean that you can buy it on a CD, but there is no company that sells and supports it, and as far as I know, no commercial software packages are available in the Debian format.

Sidebar: More Debian Information

This situation could change. As I write, InfoMagic is considering making Motif available in Debian format. Also, as the official keeper of Matt Welsh's Linux Installation and Getting Started, we are considering writing an installation chapter for Debian.

Only time will tell if the Debian format will make serious inroads into the commercial Linux market. I hope it does.

Phil Hughes is the publisher of Linux Journal and Jonathan Gross is a technical editor at Seattle Software Labs.

Phil Hughes is the publisher of Linux Journal

Jonathan Gross is a technical editor at Seattle Software Labs.

__________________________

Phil Hughes


Special Magazine Offer -- Free Gift with Subscription
Receive a free digital copy of Linux Journal's System Administration Special Edition as well as instant online access to current and past issues. CLICK HERE for offer

Linux Journal: delivering readers the advice and inspiration they need to get the most out of their Linux systems since 1994.

Post new comment

Please note that comments may not appear immediately, so there is no need to repost your comment.
The content of this field is kept private and will not be shown publicly.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <pre> <ul> <ol> <li> <dl> <dt> <dd> <i> <b>
  • Lines and paragraphs break automatically.

More information about formatting options

Newsletter

Each week Linux Journal editors will tell you what's hot in the world of Linux. You will receive late breaking news, technical tips and tricks, and links to in-depth stories featured on www.linuxjournal.com.
Sign up for our Email Newsletter

Tech Tip Videos

From the Magazine

July 2009, #183

News Flash: Linux Kernel 3.0 to include an on-the-go Expresso machine interface! Ok, maybe not, but Linux is definitely going mobile, from phones to e-readers. Find out more inside about Android, the Kindle 2, the Western Digital MyBook II, The Bug, and Indamixx (a portable recording studio). And if you've gone mobile and you been wanting more Emacs in your life then check out Conkeror.


To compliment the mobile we've got the stationary: parsing command line options with getopt, checking your Ruby code with metric_fu, and building a secure Squid proxy. How is this stationary you ask? What can we say? It's not. We just wanted to see if anybody actually read this part of the page :) .


All this and more, and all you have to do is get your hot sweaty hands on the latest copy of Linux Journal.





Read this issue