Back to article

.comment: Separated By a Common Operating System

From Disaster Arises . . . More Disaster

June 27, 2001

It all started with gcc-3.0.

When it was released two weeks ago, I downloaded it to take a look. I was interested, especially, because it is said to have finer granlarity in its processor optimization, actually taking advantage of features in AMD chips not available in earlier versions.

Reading the docs I learned that among the things that the new compiler is known not to do successfully is build glibc. In that my glibc-2.2 doesn't work with some things, and in that the upgrade to it from glibc-2.1 had been uneventful, I figured that I might as well go ahead and upgrade it now, while I still had gcc-2.95.2 around.

(Yes, it's possible to have both aboard, but this is slightly tricky and consumes more than slight disk space. And there's something about it that rubs me wrong, even as I never tried to use both KDE-1.x and KDE2 at the same time. In fact, I don't keep multiple desktops on my machine. I know that there are those who do, but it seems to me that these are chiefly people for whom the computer is the end unto itself rather than a tool for doing things, like the guy who spends weekends fixing up and polishing an old car that you may not touch and that he never actually drives. There are exceptions, of course, but I think the many-desktop crowd tends toward this.)

Because the kernel headers in /usr/include ought to be the ones against which glibc was compiled rather than the ones in the currently running kernel, it seemed to me that it might be a good idea to upgrade to Linux-2.4.5 as well. So I did, dutifully copying the appropriate headers -- /linux and /asm -- to /usr/include. Then I built glibc-2.2.3, which was entirely smooth and trouble-free. It passed the tests. And, though it is possible to keep multiple versions of it aboard, too, for reasons given above (and the fact that this would presumably be a fairly minor upgrade), I made install to /usr.

As the files were copied, I should have sniffled a little and said goodbye to my beloved Caldera eDesktop 2.4, heavily modified, because I was seconds away from running it for the last time. Though Caldera will supposedly release its 3.1 workstation product this Friday, it is not likely to be the kind of distribution of special appeal to non-enterprise desktop users and it will cost more than Linux distributions typically cost, now approaching Red Hat in price and exceeding Red Hat if you want any support. I had already decided that when I finally broke eDesktop 2.4, I'd switch distributions. And now I had finally broken eDesktop. Badly.

My first hint came when I tried to su root and was tole there was no user "su." I did an orderly shutdown and rebooted; all was well until I tried to login. My username and password were accepted without error -- but the login prompt returned. Likewise when I tried to login as root.

Through a succession of floppy boots and chroots I was able to move things along to the point where I encountered all kinds of library errors that I probably richly deserved but didn't get when I went from glibc-2.1 to 2.2 but surely did not expect now. I've on several occasions over the years done a floppy boot to go in and fix something I'd broken, but this time I just made things worse (to the extent that they can get worse on a machine that has been rendered unusable).

Yes, it was all dumb, dumb, dumb. I had chosen poorly. I'd really screwed up my machine, and there was no way I knew of getting out of it. It was entirely my fault, and there are lots of ways I could have avoided it.