From: www.itworld.com
March 20, 2001 —
I am writing this column using gEdit, on a Helix GNOME desktop. I installed Helix GNOME yesterday by typing apt-get install task-helix-gnome. Yes, my dw33bs, I am l33t. Ph34r my sk1llz! We are talking Potato -- potato soup, that is. It is done, installed. Behold, I run Debian 2.2.
My column from a few weeks ago, which concluded that the Debian install sucked, was based on an old release of Debian (Slink Point Five) that I picked up at the LinuxWorld Expo. So I promised to take another look at the Debian install using the latest version (Debian 2.2, the Joel "Espy" Klecker Release -- aka Potato).
It took longer than I planned to keep that promise. There seems to be
some sort of conspiracy involving me and official Debian releases on CD. LinuxMall has had me backordered for two weeks now. A Debian user burned me a set and sent it via snail mail, but after more than a week, it has still not arrived.
Finally, I bit the bullet and did the install over the Internet. While some
people actually prefer that method, I don't. It takes a very long time. CDs are easier to use; Internet installs create additional delays and frustration.
First I downloaded the boot floppies from the Debian site. (Debian uses that term for the rescue floppy, the root floppy, and the driver floppy.) OK, downloading the floppies wasn't the first thing. The first thing was finding a crib sheet for guidance. (See Resources for the URL of the Debian Install Manual.) After reviewing the cheat sheet, I decided which flavor of installation set was right for me. The choices were vanilla, udma66, compact, or idepci: I chose idepci.
You may recall that in my original Debian install, I used a machine without a floppy drive. That had to change, of course, and able to wait no longer for a set of CDs to arrive, I purchased and installed a Mitsumi drive. Except for a smaller hard drive, the rest of the system was just as it had been for the Slink-and-a-Half install: Guillemot GeForce DDR video card with 32 MB, RealTek 8139 Ethernet card, Soundblaster 16, and an Asus 50x ATAPI CD on a 300-MHz/128-MB K6-2.
I downloaded the appropriate boot floppies from the Debian site. (See Resources for a link.) The install guide gives you the URLs by platform, floppy size, and installation flavor; I used the dd utility to put the images onto floppies. I was ready for my great Debian adventure. Three diskettes in hand, install guide saved on a local machine, and with a pure heart, I began.
But my rescue floppy refused to boot. I swapped the floppy drive for the one
from my desktop box, so I could boot from the same drive I used to copy the image. No joy. Then I copied the rescue.bin image to the floppy again. Nope, that didn't help either. Finally, I replaced the floppy and all was well. As the install guide points out, my diskette woes are not unique. Section 5.5.1 of the guide begins, "The biggest problem for people installing Debian for the first time seems to be floppy disk reliability." Another reason that a CD install is the preferred approach.
At 7:40 a.m., I successfully booted from the rescue diskette. Almost immediately, it asked me to insert the root floppy. I was only too happy to oblige. Then I was sent back in time to the Slink-and-a-Half install: configure keyboard, initialize and activate swap partition, initialize and activate Linux partition. It was all very familiar -- maybe too familiar, for I made a bad mistake in the process that came back to bite me later. After formatting the partitions (hold the bad block check, please), the kernel and modules were loaded and I selected my floppy (/dev/fd0) as the Install Media.
Then Debian asked for the rescue floppy. I grabbed the next floppy, inserted it,
and pressed enter. The installer didn't like that floppy, and told me, "You
may have inserted the wrong floppy." Debian was right; I had inserted the driver
diskette instead of the rescue floppy. I corrected my error, hit enter, and
continued.
I recognized the Configure Device Driver Module screen from my previous install attempt. Since I knew that the only driver I needed to specify was for my network card, I bypassed the others and quickly moved forward. Blessed Baud! Unlike my Slink experience, this time my RealTek 8139 driver was there and installed very quickly. Network configuration was also very similar, if not exactly the same. The installer asked if I wanted to use DHCP or Bootp; when I declined to use either, it requested my IP address, netmask, gateway IP address, domain name, and DNS server.
After about 15 minutes, I was ready to install the base system. I chose the network install from the list of options, then waited. It only took 20-25 minutes on my deserted two-lane country ISDN to download the 15.2-MB image. But then the mistake I mentioned earlier came back to haunt me. As soon as the download completed, the installer complained that the content length was over 15 MB, but the file length was only 3 MB.
I asked around on IRC and found a couple of people who had suffered the same
fate. I posted a note to the debian-devel mailing list asking about the problem.
One person replied that the file might have been broken on the FTP site I got it
from, and I should try it from another site. I did, to no avail. I went back to the #debian channel on Open Projects Net, where a friendly soul asked me whether I had a FAT partition on the drive on which I was installing Debian.
I didn't, but when he asked about partitions, something clicked in my head;
I remembered that the drive I was using had previously held SuSE and three
partitions: swap, boot, and root. What if the Linux partition I had activated
at the beginning of the Debian install had been the boot partition before, and was too small to hold both the kernel and modules I'd copied to it previously and the base image? Aha! That was it. The base image was simply being truncated.
So I started over, and instead of following the defaults for initializing and activating the swap and Linux partitions, I partitioned the hard disk and created only a swap and a root partition. After going through the intervening steps and downloading the base image again, I wound up where I would have been had I paid more attention in the beginning.
Next came some tweaking prior to booting from the base system. I set the time
zone, declined the invitation to use GMT, and opted to let LILO live in the MBR
on the hard drive. Then it was time to create a backup boot floppy. I liked the fact that the installer tested the floppy drive before creating the boot floppy. It even told me which line to add to the driveprm file in the /etc directory: drive0: deviation=-3120. It also reminded me that if I ever changed the floppy drive or the controller, I would need to remove the line.
It was time for the Moment of Truth. I ejected the floppy and selected Reboot. Approximately one hour into the install, not counting time lost writing base2_2.tgz to a partition too small to hold it, the base install worked: another hurdle cleared.
The next step was the Debian System Configuration. MD5 passwords? Yes. Shadow? Yes. I entered the root password and set up a user account. Yes, PCMCIA could be
removed. PPP connection? No, thanks. Then came the apt configuration. I chose the FTP option, non-us, no non-free, ftp.us.debian.org as the mirror. The installer spent a few minutes testing the sources I had selected, and even asked if I wanted to add any more when it finished. I said no and on we went.
The installer asked me to choose between a simple and an advanced method of package selection. Fearing that advanced would send me back to Slink hell, I chose simple. Actually, the difference between the two is that simple allows you to pick predefined collections of packages based on tasks you would like to perform, while advanced lets you pick packages one by one. I tried to minimize downloading by choosing the following tasks: C development, Debug, Games, and X Window System (complete).
Before it started getting the packages, the installer asked if it could check for my video card; I gave it permission. It didn't recognize the card. Perhaps if it had, the endgame would have gone a little faster, but I'm not sure. The packages took more than 75 minutes to download.
I chose the default configuration for Debconf-tiny, which creates a consistent
dialog in configuring the packages. Then, to keep it as simple as possible, I chose not to be bothered with any noncritical configuration questions. That
meant I only had to pick Satellite System to describe my email scenario.
Then it was time to configure X Window using XF86Setup. My video card was
listed under Nvidia, but the driver I needed could not be found. I selected
Unsupported VGA instead, saved the config, and exited. After another visit to #debian on IRC, I learned that I could get the SVGA X server delivered and installed by entering apt-get install xserver-svga. I did. It worked. I've since learned that had Debian recognized my video card when I downloaded all the packages, it would have also downloaded the proper server package. Since it didn't know which X server to use, it didn't provide anything but the default VGA 16 color server.
Installing the desktop
X was now OK, but I still didn't have my preferred desktop environment. To get
Helix GNOME, I had to add Helix to my list of sources and run apt-update. Then it was as easy as typing apt-get install task-helix-gnome. To get Netscape, I needed to add non-free as a source and then apt-get it as well. Finally, I had a usable, configured Debian system. Not counting the wasted time spent downloading base2_2.tgz to the bit bucket, it took a little over four and a half hours, with a little help along the way. If I had installed from CDs and used GNOME 1.2 instead of Helix GNOME, that time would have been cut to about an hour and a half.
So do I think that the Potato install sucks like I thought Slink-and-a-Half did? No. It is head and shoulders above Slink. But depending on my mood, I would say the Potato install is somewhere between "sucks less" and "needs improvement." The Slink install was not as difficult as setting up RBBS in the early '80s; the Potato install wasn't as frustrating and didn't take as long as setting up Opus BBS and BinkleyTerm in the early '90s. But the Debian install is the most difficult Linux install I've seen. My advice is to make friends with folk on #debian on IRC or with Debian users in your local LUG. If you can, at least for the first installation, install from CDs and avoid floppy problems and long downloads. They only add to the frustration.
Many of the improvements I would suggest for the install have already been
identified and are in the works for the next Debian release. Among other things, the installer will have improved hardware detection. But Debian developers still don't share my major concern: ease of use.
Joey Hess, who is directing the redesign of the installer, explained to me that his team will likely gear the installer to the guru, not the newbie. He said,
"The goal of the Debian install is to allow Debian to be installed in as many
situations as possible ... Some users may need to ask a Local linux guru for help to install Debian, but we feel this is ok if it allows the guru to install Debian on computers that other distributions fail to install on at all ... However, ease of use is an important priority -- one common install situation involves an inexperienced user, and we do want Debian's installer to succeed in that situation as often as possible. It's a tradeoff, of course."
Others have suggested that Debian doesn't put more effort into improving the install because you may only have to do it once. The ability of apt/apt-get to keep you current with the latest stable code (kernel, security fixes, and applications) means that when the next official release comes along, you may already have it. Indeed, it looks to me as if apt/apt-get are the models for Red Hat's subscription network service.
In my opinion, the install remains a needlessly high barrier to entry. The good news is that Debian is working on it. Next week I'll take a look at Stormix, one of the commercial distributions based on Debian, to see how its install compares.
LinuxWorld.com