LJ Archive

Letters

Say a Prayer for Open Source—Literally!

I just recently finished attending a Northern Minister's Convention in Sault Ste Marie where many of the ministers were overwhelmed with costs of not just hardware, but also software that they felt necessary to purchase to maintain their congregations' technology. Upon doing some research, one particular denomination did not qualify for one of the world's largest software manufacturer's “charitable organization discount”. Upon hearing this, I piped up, “What about OpenOffice.org?” It was as if I were speaking Latin! Nobody had heard of or considered it.

I have discovered over the years many pieces of software that have saved churches thousands of dollars in software expenses, such as OpenOffice.org, OpenSong (lyrics/projection/chord charts), OpenLP (lyrics and projection), SQL-Ledger (bookkeeping) and many more. I believe that the charitable donation sector (aka churches) is a prime candidate to take the ultimate leap to open source and migrate to Linux as its OS of choice. When you consider the thousands of dollars a church could spend on software in a year, I would sooner see that money going to someone in a community that needs it rather than a large, monopoly-like company. So if you have a chance, pray for open source...and for the church! I will.


Dean Anderson

I'm a deacon at a church, and sadly, even I haven't ever heard of OpenSong or OpenLP. I'm both ashamed and now really excited to learn of them! You're right, of course. I think churches are a prime place for open-source software to fit right in. Thanks for the software advice!—Shawn

File Renaming

I enjoyed Dave Taylor's article in the November 2010 issue “Scripting Common File Rename Operations”. I did find an error in the sample, where cut is used to get the extension of a file:

f=foo.bar.txt
echo "$f" | cut -d. -f2

The above will result in “bar.txt” and not “txt”.

This works, however:

echo ${f##*.}

Second, I have had good experiences using co-processes in file rename operations. For example, I often need to convert filenames to lowercase:


paste <( ls -1 ) <( ls -1 | tr 'A-Z' 'a-z' ) | \
{ while read old new; do mv -v $old $new; done; }

Treating the lists of names as text opens up a lot of possibilities in file operations at reduced script complexity.

The following snippet using script generation works if there are spaces in the filenames without having to fiddle with IFS:


paste <( ls -1 ) <( ls -1 | tr 'A-Z' 'a-z' ) | \
gawk 'BEGIN { FS="\t"; } { printf("mv -v \"%s\" \
\"%s\"\n", $1, $2); }'

The output can be piped into bash to run the script. Generating the output before actually running the script makes it possible to see and catch errors before actually doing anything.

One also can use co-processes to output and increment a counter generating a column of numbers to use in incrementally numbering files with a common base name:


paste <(ls -1) <( let i=0; for f in *; do echo
newFileBase_$((i++)).${f##*.}; done)

I look forward to future editions of Dave's article!


Jeffrey Brendecke

Dave Taylor replies: I appreciate the feedback on my latest column, Jeffrey! I can't say I have much experience with co-processes though. Sometimes I feel like I'm too old-school Linux/UNIX, especially since I've been using it since 1980—jeez, that's a long time!

Mutt

Regarding the article on Mutt and especially the Point/Counterpoint discussion between Kyle and Bill on this (LJ, October 2010), it's a pity neither of them seems to be aware of Muttator (vimperator.org/muttator). I would've appreciated each gentleman's standpoint on that one.


Ludo

D-Bus

I can't thank Koen Vervloesem enough for his wonderful article on D-Bus (LJ, November 2010). As a Linux “old-timer”, it's been quite a learning experience for me to deal with newer methodologies of hardware detection and management. I ran into the world of D-Bus, Hal and udev about three years ago with my installation of openSUSE 11.0, and access to devices was well, not quite up to par. Thus, I began my immersion into this new world! Mostly, I concentrated on learning about Hal and udev, not thinking at all about D-Bus (what the heck is that, I thought), and trust me, that was way too much information for me at the time. However, I was able to put some PolicyKit rules in place successfully to accomplish my goal. I took Koen's advice and tracked down a graphical D-Bus app—what I could find for my current openSUSE 11.3 implementation was something called KDBus. I think this is lacking some of the features of qdbusviewer, but wow, how cool at any rate. Now that KDE 4.x (and GNOME) also uses D-Bus for session events, any time you do anything—accessing hardware or applications in your desktop environment—you can see and explore the new D-Bus events that are fired. It's very useful and informative to track issues. Since my Linux setup still uses D-Bus, Hal and udev, seeing what events get fired and are associated with which of these hardware management layers is really very useful, and in some cases, critical to “fixing” issues that arise. Again, much thanks to Koen for this great article!


Kay Schenk

Keep Trying Linux

I just renewed my annual subscription and decided to add the digital edition as well. I have to say, I am exceptionally pleased with the fine work you all do at putting out Linux Journal, and you can bet I will continue to be a customer.

I have read often about the problems people have run into using Linux to replace Windows systems, and my advice is just to keep trying Linux and open source. I have been able to replace every Windows program with a Linux program, (KMyMoney, Evolution, OpenOffice.org, and so on) with one exception—video editing. Adobe Premiere keeps me tied to a partition I have set up to run WinXP and Premeire Elements. Maybe one day Adobe will realize it can keep a lot of customers happy and port Premiere to Linux.

My distro of choice is Ubuntu. I run Mythbuntu and Xubuntu with no problems. Thanks again for the good work, and I look forward to a new year with Linux Journal.


linuxdog977

As a longtime Final Cut Pro user, I feel your video-editing pain. Kris Occhipinti (some of his videos are on our Web site) convinced me to try Kdenlive. Although I'm still not as comfortable with it as I am with Final Cut, it does seem to be a viable alternative. It's just taking some learning on my part.—Ed.

Don't Build Your Own NAS with RAID-5

Regarding Shawn Powers' “Drobo Shmobo” piece in the November 2010 Upfront section, I hope nobody builds their own NAS with RAID-5. RAID-5 has a bad failure mode when rebuilding an array due to a bad disk. When a bad disk is found, you have a nontrivial chance of finding that you actually had two bad disks during the rebuild, causing the array to be lost. RAID-6, on the other hand, is able to rebuild an array with two failed disks.

In any event, regardless of RAID-5 or RAID-6, you should make sure you run disk checks periodically. For md-raid, for example, for md0:

# echo check > /sys/block/md0/md/sync_action

You may want to put that in root's crontab or in a script in, say, /etc/cron.weekly.


David N. Lombard

Although I appreciate your worries about multiple disk failures and RAID-5, for me (I wrote the article), another drive just isn't possible. I already have my workstation-size computer maxed out with drives, and if I were to sacrifice one of the drives for RAID-6, I wouldn't have enough storage. Perhaps my huge array filled with 2TB drives isn't the norm, so I'll agree if it's feasible, RAID-6 certainly makes sense.

Oh, and your disk check is right on. It's very good practice, and something Bill Childers reminded me to set up the last time I had a hard drive failure in my server!—Ed.

A Superior Technology

Puppy Studio began as an experiment. Was it possible to have a full-featured multimedia creation suite similar to Ubuntu Studio running on Puppy Linux? Puppy was fast and ran entirely in RAM, so the real-time recording capabilities could be amazing. But, would they?

My original hypothesis was correct. Puppy gave the studio vastly improved latency, by virtue of running in RAM and its small size, unmatched by any other OS. Then, I compiled a custom real-time kernel, and performance went through the roof! 3.1 is out: www.murga-linux.com/puppy/viewtopic.php?p=458075#458075.


10wt3ch

Simple Success

I'm a physics teacher with a new toy. I've got a Tablet PC issued by my school. I GNU (ha!) the instant I got the thing what I was going to do with it: run Linux. We have nice IT guys who generously tolerate such behavior. They were frankly intrigued when I told them I created a Linux partition on my hard drive. One of my IT buddies said, “Most teachers aren't going to use even 20% of the capacity of these things. Let me know how it works out.” Here's what a simple Linux partition can do: play a DVD without taking ten minutes to detect the disc or freezing. Even better, there is absolutely no issue connecting to LCD projectors or detecting monitors. It is plug and play. Xarnal lets me write on PDF'd homework sets and save them to the class Dropbox file, so students can see what I did later from their phones, laptops and desktops. Need some extra homework problems? Not an issue. I can hop on the command line and use wget -i to download an entire MIT physics class (with PDF problem sets). Why re-invent the wheel?

Is Linux perfect? No. I don't like Linux screencasting software. I'm frankly resentful that rotating screens on my tablet PC is such a pain. I wish there were a driver for my wireless LCD connector. But, it is really hard to beat free-as-in-beer software that runs fast.

I'm really excited to continue this dual-booting experiment in the classroom. With work and time, it would be great if my entire class were run on Linux. I guess I could moan and groan that it's not totally feasible just yet, but I'm choosing to focus on the answers not the problems. It's hard not to feel grateful to Linux Journal and all the people who are way smarter than me who have shown me all these tools that I can use without having to think too much. Thanks guys!


Riaz Abdulla

It's great to hear the tablet mostly does what you need in Linux. Honestly, the cooler part for me is to hear your IT department was okay with letting you fiddle with Linux at all! I think that attitude will help get Linux into education more than all the free software alone ever could do.—Ed.

Transparent Firewalls with Linux Series

I've enjoyed the recent series of articles by Mick Bauer in Linux Journal on transparent firewalls, but unfortunately, Mr Bauer has some misunderstandings about how the hardware (Linksys WRT54GL) actually works, which leads to some erroneous conclusions.

The Linksys WRT54GL is based on a Broadcom BCM5352 SoC (System-on-Chip). The key word here is system, since part of the system includes a six-port switch. Five of these ports you can see, and one is internal to the chip.

In part IV of the series (December 2010), Mr Bauer can't understand why iptables ignores inter-VLAN traffic. The reason is simple. The kernel never sees it because it is handled by the switch, and packets never make it to the CPU. Also, port 5 (the common port) is not a virtual port but real in every sense of the word. It exists in silicon and is part of the switch that connects to the CPU.

Unfortunately, full specifications for this chip seem to be available only under a non-disclosure agreement, but generic overview pamphlets are available that show this. This is also discussed on the OpenWrt forum.


Gus Wirth

Mick Bauer replies: Thanks much for the clarifications and for confirming my suspicion that entire categories of the WRT54GL's packets are never seen by the kernel or CPU. Note that in at least one case, I'm guilty of oversimplification rather than ignorance: when I call port 5 “virtual”, I mean only that you can't plug an Ethernet cable in to it, not that it doesn't exist in some other tangible way.

It would be great if the OpenWrt team would address transparent firewalling in its official documentation, or at least in a FAQ or wiki. In my lengthy research efforts for this project, key details concerning the inner workings and interactions of WRT54G hardware, OpenWrt and relevant parts of the Linux kernel were either missing from OpenWrt documentation, mentioned only in passing in on-line forums or simply nowhere to be found.

Best Linux Vendor?

I'm just reading the Readers' Choice Awards for 2010 (see the December 2010 issue), and I notice that the best Linux vendor for both laptops and desktops is Dell. I thought things must have changed at Dell since I last looked at its offerings, so I checked out what it had to offer. With great difficulty, and after a great deal of searching, I finally was able to locate some laptops that came with Linux preloaded—with Ubuntu 9.10. So, I'm confused by how Dell got a Readers' Choice Award for being the “Best Vendor”.


lauzon

I guess you'd have to ask all the readers why they voted for Dell! In all seriousness though, my guess is the votes were based on price and compatibility, not pre-installed options. There certainly are more Linux-friendly vendors, but all too often when we order hardware anymore, we don't even bother to look at what is pre-installed. I don't think that's a good thing, but I think it happens a lot.—Ed.

PiTiVi

Just wanted to drop you guys a note and say thanks to Jono Bacon (and to LJ) for the great article on PiTiVi in the December 2010 issue. I do a video review show about comic books and graphic novels (www.youtube.com/user/The2dogknight), and I use PiTiVi to put the show together, but I never knew how to do fades. Now I do! I plan to use fades in my next episode. Love the magazine, and please keep up the great work!


Kevin Starkey

LJ Archive