Linux Today: Linux News On Internet Time.
Search Linux Today
search.internet.com
Linux News Sections:  Blog -  Developer -  High Performance -  Infrastructure -  IT Management -  Security -  Storage -
Linux Today Blog
Linux Today Navigation
LT Home
Preferences
Contribute
Link to Us
Search
Linux Jobs

Marketplace Partners

internet.commerce
Be a Commerce Partner

The Linux Channel at internet.com
Linux Today
Enterprise Linux Today
Apache Today
JustLinux.com
Linux Planet
PHPBuilder
All Linux Devices
Technology Jobs

searchcats.jpg

January 2010
Sun Mon Tue Wed Thu Fri Sat
          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31            

Linux Succumbs to Creeping Windows-Itis

| | Comments (3) | TrackBacks (0)
I've been using Linux since 1995, and while that doesn't quite elevate me to grizzled geekbeard status, it's long enough to have observed a whole lot of growth and changes. Most of them are good; but some of them are rather alarming. The changes that bother me the most are the ones that make it harder to understand and control your own system by adding needless complexity and layers of obscurity.

In the olden days most applications and services could be controlled with a single plain-text configuration file, so once you learned your way around it changes were fast and easy, and simple to replicate across multiple machines. But somewhere along the way a trend emerged that split these nice, useful single files into giant herds of files. So what was once simple, elegant, and useful became a big fat headache.

I want to blame Red Hat for this, because as I remember they were always the Linux distribution with the most needlessly-complex filesystem hierarchy. For example, they split network interface configuration files into a giant scattered mess of individual files-- to configure a single interface you need to muck with both /etc/sysconfig/network and /etc/sysconfig/network-scripts/ifcfg-<interface-name>. each interface has its own configuration file. Like we have nothing better to do than navigate among multiple files just to do something as simple as configure an Ethernet card. I always liked how Debian handled it in a single file, /etc/network/interfaces. You could stuff as many interfaces as you liked into this file, and each one configured as individually as you wanted. You also had the option to call other config files if you preferred.

But now as I dig into my Kubuntu system I realize I don't even know how my desktop interface is configured. /etc/network/interfaces contains only this:

auto lo
iface lo inet loopback

Somehow Network Manager crept into my system and took over my wired Ethernet card, and it is set at "Roaming mode enabled." I install and remove all kinds of software, so it's not surprising to find unexpected "gifts" like this. Probably a dependency of some Solitaire game. I called on all of my mighty geekbeard powers, and I could not find anything resembling a sane, normal text configuration file. I checked out the file lists in all the relevant packages, I read the man pages and READMEs and Googled, and could not find anything really useful, because apparently the Network Manager maintainers feel that Network Manager needs little explaining.

That's just one example. Who else remembers when PAM was controlled by a single, comprehensible file, /etc/pam.conf? Then it was exploded into a giant wad of separate files for each application that used it, a tangled mess of redundant and inter-dependent includes. Adding to the fun, Red Hat and Debian each have their own special, different ways of configuring PAM.

udev, hotplug, Avahi, arrggh!

I've long been a fan of letting the computer do the work. Ordinary, mundane,repetitive tasks should be handled by the computer so we can do the brainy stuff, like winning in TuxKart. I'm also a fan of keeping it all transparent so that the average sysadmin or power user can dig into the guts and understand what's happening without needing a PhD. But transparency seems to longer be a design goal-- now we have all these "helpful" daemons that do all right as long as you do not try to deviate from what the daemons think you should do. But deity help you if you want to change anything-- does avahi-daemon actually do anything? If it does, what? udev is supposed to better than the old static /dev system. Call me old and grouchy, but it's a heck of a lot easier to run the mknod command than it is to decipher the huge spaghetti tangle of udev scripts that infest Linux now. These control all kinds of functions, including permissions on devices and mountpoints, which causes all kinds of fun if you need to fix something yourself.

Final whine: I want my /etc/inittab back. One nice clean file, easy to understand and edit. Now we have the horrid /etc/event.d and its giant glob of individual files, most of them a mysterious little script instead of a nice, self-contained, well-commented configuration. What benefit have we gained from this? The new Upstart init system is a needed improvement in this era of hot-pluggable everything, but was it necessary to make administering it so convoluted?

Progress is always good, and Linux has evolved at warp speed in a short time. But if the price of all that wonderful progress is taking control away from users, and forcing an increased dependency on distribution maintainers and other outside parties, that is an awfully high price to pay.


0 TrackBacks

Listed below are links to blogs that reference this entry: Linux Succumbs to Creeping Windows-Itis.

TrackBack URL for this entry: https://swarm.jupitermedia.com/mt-tb.cgi/6360


3 Comments

rbhkamal Author Profile Page said:

I couldn't agree more... it's sad but true. I've had my share of "config" files when I wanted to configure sendmail.


Square said:

I understand that this is a (very) late comment, but I hope you see it as I see no other comment addressing this.

Most of what you've mentioned seems to be more of a flaw in the distribution rather than Linux itself. Linux is just a kernel afterall, to repeat something that's come from many mouths (fingers?) before mine.

Currently I'm using Arch Linux, and at the risk of sounding like a pusher, I honestly haven't run into the issue of dealing with tangled, needlessly complex configurations. The configurations are simplified, plain text centered around a single (again, plain text) file, thoroughly documented with an abundance of help elsewhere. It doesn't get any easier. inittab is still here as well!

I'm sure Arch isn't the only distribution to try and keep it this way either. The KISS principle preceeds it, as well as the general techy's laziness (or frustration) towards system administration.

Software can also be to blame for other complexities, but hopefully this can be resolved. (I'm looking at you, HAL/Policykit.)

Good luck in finding a solution!


geekbeard said:

This late comment came via Google.

A great rant. So true.

There is something seriously wrong with the current state of Linux. It is a start of an end when old power users, programmers and system engineers have great difficulties in understanding a system that once was elegant and easily understood.

Somehow I feel sorrowful and... well, betrayed. After over a decade of development around Linux, I must confess that the current state is not what I imagined when I started. It is not my dream. Not anymore.



Leave a comment








All times are recorded in UTC.
Linux is a trademark of Linus Torvalds.
Powered by Linux, Apache and PHP


The Network for Technology Professionals

Search:

About Internet.com

Legal Notices, Licensing, Permissions, Privacy Policy.
Advertise | Newsletters | E-mail Offers