August 29, 2003 Edition

By Adam "StoneTable" Israel (mailto:stone@arstechnica.com) and Jorge "whiprush" Castro (mailto:jorge@whiprush.org)

 

Corporate Linux a Two Horse Town?

Linux has continued to gain acceptance in the corporate world these past few years. This accomplishment, while notable, is not without its fair share of problems. As software vendors begin to embrace the Open Source platform, they are opting to align themselves with a particular distribution of Linux such as Redhat or SuSE, rather than with Linux as a whole. There are certainly factors that make this an attractive path to take, such as brand name recognition and support. What the industry needs to remain healthly is competition and that's where we are currently failing.

Despite critics such as Linux Today's (http://linuxtoday.com/) Brian Proffitt, who wonders when SuSE will get serious (http://linuxtoday.com/infrastructure/2003082300226OPBZSS) about the North American market, SuSE CEO Richard Seibt talks about (http://www.crn.com/sections/BreakingNews/dailyarchives.asp?ArticleID=43781) the domination of SuSE and Red Hat in the corporate space. With "Enterprise" versions of both SuSE and Redhat continuing to gain ground, what's the problem? We don't think any distributor who targets the enterprise is doing wrong. Our concern lies with the software vendors. Too many of them are releasing distribution-specific applications, and that's where the true problem lies.

Adaptec launched a network accelerator (http://www.eweek.com/article2/0,3959,1228684,00.asp) built specifically for clusters using Gigabit Ethernet, but the announcement indicates only support for Red Hat 7 and 8. There's no word (yet) on if this functionality comes to us via a vanilla kernel (meaning, "open" for anyone to use) or some "special" binary (i.e., proprietary) driver. People using the Cisco and Nortel VPN clients have come to expect outdated, buggy clients tied down to ancient versions of the kernels and glibc. Naturally the instant there's a patch for a bug or security fix, you are left at the whim of the vendor once again. Isn't this what Linux and OSS is supposed to fix? PCHDTV, makers of a Linux-only HDTV PC card (http://www.pchdtv.com/hd_2000.html) lists "Linux Red Hat Linux 7.2, 7.3, 8.0 and 9.0 (with glibc-2.3.2-11.9)" under its requirements. To be fair, PCHDTV does release all the software under the GPL, so somebody somewhere will make it work on another distribution, but why be distribution-specific to begin with?

Some Linux users are worried about this, especially those that run less popular commercial or non-commercial distributions, so what's a Linux user to do? I'm thinking that if you can afford Oracle, Unicenter, or DB/2, then the least of your concerns is the cost of your operating system. Also, companies that do this for the sake of "unshackling" themselves from Windows or UNIX end up tied to their vendor anyway, so running Linux as part of their solution is better than nothing I suppose, or is it?

While I am glad to see all this proprietary software being ported to Linux (I certainly appreciate the work contributed by IBM and Oracle), as a user does it really affect me? I can't afford Oracle or Unicenter regardless of what platform it is on, and certainly at an enterprise level this does not become an issue, but what about the Linux Standards Base (http://www.linuxbase.org/) (LSB)? While Red Hat and SuSE have publicly committed to the LSB, it does not do you much good when Oracle tells you that it is not going to support that Oracle install under Debian, LSB be damned.

Certainly experience has taught me that dealing with too many vendors on a project does nothing but complicate support issues. If you are going to run OSS why go about it half way and end up with the same problems you are trying to eliminate in the first place? Click that discussion link and leave us a comment!

 

 

Saying Goodbye to Sendmail

Slashdot looked at O'reilly's Postfix overview (http://www.onlamp.com/lpt/a/4099), in the wake of yet another Sendmail exploit (https://gtoc.iss.net/issEn/delivery/xforce/alertdetail.jsp?oid=21950). While the vulnerability is from March, it affects all versions of Sendmail between 8.12.0 and 8.12.9. Both SuSE (http://linuxtoday.com/security/2003082602626SCSWSS) and Mandrake (http://www.securityfocus.com/archive/1/335067/2003-08-23/2003-08-29/0) didn't issue patches until this week. What features are keeping people on Sendmail in the year 2003? Have vendors given up on it too?

Do you have any plans to switch? And if not, why? Qmail (http://www.qmail.org/), Exim (http://www.exim.org/), and Postfix (http://www.postfix.org/) have excellent security records (oops, Postfix (https://rhn.redhat.com/errata/RHSA-2003-251.html)) and plenty of resources out there. How does Sendmail live on? The Qmail author will even pay you money (http://cr.yp.to/qmail/guarantee.html) if you find a security problem with his software. What are your experiences with all these MTA's? Will we ever put a nail in Sendmail's coffin, or is it "good enough"?

[Ed's note: I can say that as far as Ars is concerned, I sometimes wish we were still on Sendmail for one simple reason: everything works with it. Flawed though it may be, 95% of the time, if I want to add-on IMAP, spam filtering, and other goodies, doing it via Sendmail is super easy because that's the "standard." Sendmail wrappers be damned, move to something like QMail and you may be dancing through hoops to get everything done. I think what's needed is a kind of universal MTA architecture with a dash of Maildir universality, but I realize that this isn't likely to happen--Ken]

 

Kernel 2.6 Scheduler Improvements

Kerneltrap (http://kerneltrap.org/node/view/780) has an article on Con Kolivas' efforts of improving the scheduler in the upcoming 2.6 kernel.

"The area I concentrated on was that of tasks that it would make a noticable difference when there was sufficient delay or jitter between the time they wake up and the time they are scheduled. This makes a palpable difference in the form of audio skips in playback or jerky mouse movement. The effect of increasing loads on the system and maintaining fairness must also be addressed when tackling these."

Don't worry, that's the understandable part of the article. Con goes on to to explain his scheduler findings in great detail. If you feel like you need to benchmark your kernel, you can use his tool, contest (http://members.optusnet.com.au/ckolivas/contest/) (mmmm, punny!), to measure your kernel performance. A good technical analysis, considering he's a medical doctor (http://kerneltrap.org/node/view/465)(!) when he's not hacking on Linux.

 

./blesstivo

Meet Jim Barton, one of the founders of TiVo (one of the first companies to embrace embedded Linux). Jim gives us a brief history of TiVo and Linux (http://acmqueue.org/modules.php?name=Content&pa=showpage&pid=53&page=1), his experiences with the Open Source movement, and how he was able to capitalize and utilize Linux and ultimately contribute back to the community:

"Fortunately, we were able to perform most application development on Linux-based PCs. This was a great advantage, because the full Linux development environment was available and we could perform extensive testing quickly. On the last day of March 1999, we shipped the first TiVo boxes to retailers, the first commercial DVR ever shipped in the world. We then published our Linux kernel sources with our changes, many of which have been incorporated into new versions of the Linux kernel. "

One the most admirable features of the TiVo is its "hackability". What else would you expect from a company using Linux? Make your way over to Tivocommunity.com (http://www.tivocommunity.com/) and TiVo FAQ (http://www.tivofaq.com/) to learn more. The most common hack is probably replacing the hard drives with higher capacity units, but you can also run LinuxPPC (http://tivo.samba.org/download/tridge/) software, and slap an ethernet (or wifi) card into the unit so you can control the unit from any web browser. That sure is nice when you forget to record something and you're away from home.

We, that is Adam and Jorge, both own a DirecTiVo unit (a DirecTV receiver with TiVo built-in). The incredible community surrounding these devices is an example of a company understanding its target audience. The result? We'd rather die than give up our TiVos.

[Ed's note: here I am twice! Let's not forget though that TiVo will void your warranty quicker than you can say "record all as best quality" the minute you start hacking your TiVo. That said, they could easily run client-side software to disable units that are hacked--Ken]

 

Developer's Corner

At the recent KDE Developers' Conference 2003 (http://events.kde.org/info/kastle/) held in Nove Hrady, director of Qt development Matthias Ettrich gave a presentation (http://dot.kde.org/1061880936/) on what to expect from Qt 4 when it's released next year. There's quite a bit to digest in the way of enhancements and new features. Some of the more notable ones include:

These are some of the improvements that will be more noticeable to the end user. Faster startup times and less memory usage will be nice to see, for sure. We will be interested to see how the distribution of the new Qt libraries is handled. For the sake of confusion, it might be easier to bundle them together in one package. The Qt GUI classes will be in their own library. We're also looking at separate libraries for network i/o, XML, SQL, and OpenGL. This is cool from a developer's perspective, but I hope that it doesn't become a hassle to the end-user.

 

TTT: Tools, Tips and Tweaks

 

Finding Shit in Linux

Finding stuff. To the uninitiated, finding files and searching within Linux is an arcane art of seemingly endless expressions and commands. With no animated dog to help us on our journey, we are forced to deal with the power of the command line.

locate- Locate is extremely useful for newbies, since you really just need to do locate foo in the command line and locate will tell you where it is. Locate is extremely quick, since it runs a service during the middle of the night to keep its index updated. Unfortunately, since this index is only updated once a day, if you are looking for new files, you need to run updatedb as root to get it to update, which can be time consuming.

find - This brings us to find, which gives us a bit more flexibility as far as being able to pass certain parameters. Some basic uses for find are find / -name foo, which will look for all files with the string foo in the filename, starting at /. If you want to get very specific find / -regex pattern will let you use a regular expression. Regular expressions (http://etext.lib.virginia.edu/helpsheets/regex.html) are an important part of the command line and programming in general. The man page for find has a wealth of information on other options, and find is probably the most well rounded useful tool to learn.

which - ever wonder where a command is located? Where do they put tar and gunzip anyway? For this we have the which command. Try which gunzip, and you'll see that which tells us that the file is in /bin.

whereis - Now let's say we need to find out where more than just the binary is. For this we have whereis, a specific command used to search for the location of source, binary, and manuals of a specific package. In this example, notice how whereis shows us the location of the binary, source, and man page for the command tar:

jorge@piccolo:~$ whereis tar
tar: /bin/tar /usr/include/tar.h /usr/share/man/man1/tar.1.gz
jorge@piccolo:~$

grep - Grep is great, it searches inside files for certain patterns and regular expressions (we told you they were useful!), and then displays them for you. As a general example, grep -e Linux index.html will search for the word "Linux" in a file called index.html and spit out every line that has that word. Grep has three brothers, egrep, fgrep, and rgrep. egrep is used when you want to use a regular expression as the search parameter. fgrep is used when you want to use a list of fixed strings as the search parameter. And lastly, rgrep is used when you want to recursively search under each directory.

As you can see, grep is a powerful tool. Combined with find and regular expressions, a Linux user can use them in combinations to match any need. Caesar loves 'grep -rl "string" *', because he can use it to search all of Ars for a string, and manage broken links that way.

whoami - Our last tool is whoami. Ever get lost su'ing from user to user and then wondering why a command won't work? Run this tool from the prompt to see who you are logged in as at the moment.

 

Cool App of the Week

Mplayer (http://mplayerhq.hu/) is a long time favorite media player for Linux, capable of playing nearly every kind of video format. But how do we enjoy something like Apple's Quicktime Trailers without manually downloading the movie ahead of time? This week's application takes Mplayer and embeds it into your Gecko-based brower (Mozilla, Firebird, Epiphany, or Galeon) or Konqueror, so you can enjoy the movie right from your browser. mplayerplug-in (http://mplayerplug-in.sourceforge.net/) is the name of this application, and might already be included in your distribution.

Our second application of the week (these are so good you have to have more than one), is gDesklets (http://www.pycage.de/software_gdesklets.html), which is an application that puts informational widgets on your desktop, like your CPU Load, memory statistics, or your local weather report. Similar to Konfabulator for OSX, and SuperKaramba (http://netdragon.sourceforge.net/) for KDE, we like that gDesklets runs on ALL window managers and desktops, not just GNOME or KDE.

And lastly, you can put that nice video card to use. This week we have Really Slick X Screensavers (http://www.reallyslick.com/index.html), a collection of cross-platform OpenGL screensavers. Grab Linux and Windows builds here (http://rss-glx.sourceforge.net/). Don't worry OSX users, we got some for you too (http://s.sudre.free.fr/Software/WBSoftware.html).

 

/dev/random