Archive for the ‘Linux’ Category

Why this Linux veteran runs Ubuntu

August 12, 2010 79 comments

I keep hearing Ubuntu described as merely a noob’s distro lately. However, Ubuntu has around 50% of the Linux desktop market share, give or take, but Linux as a whole has only gained a tenth of a percent or so since Ubuntu’s introduction. So either noobs adopted Ubuntu in such numbers that half of Linux veterans switched to Windows in protest, or there are quite a few veterans out there running Ubuntu, but who apparently don’t think it’s cool to admit it.

Well, it’s about time people either come clean or switch already. I’ll start the ball rolling. My name is Karl (Hi, Karl), and I’m a Linux veteran who runs Ubuntu. I switched from Windows 98 to Red Hat, then Mandrake, Suse, Linuxfromscratch, a customized Knoppix for a year when my laptop hard drive crashed and I couldn’t afford to replace it, then Gentoo for about 5 years, and have been running Ubuntu exclusively since Jaunty. I’ve maintained a custom set of conflicting kernel patches, I grep the source before asking on forums, have contributed patches and documentation for various projects here and there, have gone weeks at a time without any GUI at all, and once cross-compiled a bare bones installation for a 486 I had laying around, just to see if it could still be done (it could, and was quite usable without X).

I tell you this to put my Linux experience in context, and hopefully establish my credentials as a veteran. According to the buzz, Ubuntu is the last distro I should be comfortable running, but here I am. So why did I switch, and why did I stay?

When my wife ordered a Dell netbook preloaded with Ubuntu, I decided to create a Ubuntu partition on my laptop so I could advise her on “the Ubuntu way.” Right away I was impressed that my wireless interface “just worked,” and I discovered a number of other bits of UI polish that I didn’t know existed. Additionally, all the binary package dependency issues which pushed me to LFS then Gentoo in the first place were no longer a problem.

I also discovered that my wife wasn’t needing my advice. She bought an external optical drive and was watching DVDs without asking me more than what software she should use. The next time I was facing a major Gnome upgrade on my Gentoo desktop, I installed Ubuntu instead and never looked back.

Does Ubuntu get in the way of the “advanced” things I want to do? Not at all. I have cron jobs set up to do automatic backups. I get an email when one of the disks in my RAID is starting to look iffy. I have intrusion detection with rules updated daily from multiple sources. I have a rather intricate set of firewall rules, that only logs the important events. I recently set up my desktop as a full-fledged wireless router, complete with my own DNS, DHCP, and traffic shaping and prioritization. Ubuntu didn’t provide me with nice graphical widgets to set all that up, but they didn’t stand in my way either, and in many cases their documentation was quite helpful.

Does Ubuntu have its issues? Of course, but nothing I have felt the need to dwell on. When the buttons got moved to the left, I spent 30 seconds on google to fix it and moved on with my life. I’ve had a couple of upgrade issues which were just as quick to fix, then I hopped onto the forums or launchpad for a while to make sure others with the same issue but less experience were taken care of.

The Ubuntu community doesn’t seem to have a “divide” between noobs and veterans. For example, people like me who dealt with wifi on Linux before ndiswrapper even existed, but who are just learning hostapd, recognize the contributions of someone who just started using Linux a year ago, but has been working out the kinks in their hostapd setup the whole time. It is very easy to contribute at any level.

Note that I’m not disparaging any other distributions in order to build up Ubuntu. I don’t have to. Ubuntu stands on its own merits, and if something else fits your style better, more power to you. I can guarantee I won’t stick with Ubuntu forever, but I also guarantee it’s not a distro only a noob can love.

Categories: Linux, Ubuntu

Why setting up my access point was harder than it had to be

July 26, 2010 2 comments

One reason I always try to be nice to newbies is that there are two different kinds:  people new to everything, and very experienced people who happen to be new to one area.  Everyone was the first kind at one point, and could find themselves being the second kind at any time.

This last weekend I found myself in the second category.  My wireless router died on me again.  I seem to go through about one per year (I suspect inadequate heat dissipation), and was sick of replacing them, so I decided to incorporate its functions into my desktop computer.

I’m about as qualified as you can get for undertaking such a task.  I’ve been using Linux extensively since the late 90’s, and write embedded software for network equipment for a living.  I knew all the pieces needed in generic terms, it was just a matter of finding, installing, and configuring the specific implementations on Ubuntu.

First step:  purchase new hardware.  I needed a second gigabit ethernet NIC for the wired side of the network, and an 802.11g interface for the wireless side.  Complicating matters, since my wife depends so heavily on wireless for her netbook, Nook, and Roku, I wanted to purchase the parts from my local Best Buy instead of my usual online sources so it could be up and running faster.

The gigabit ethernet NIC I didn’t even bother looking up hardware compatibility.  There may be some incompatible ones out there, but I have never seen one.  The 802.11g interface is more complicated.  There is wide support on the client side, but I knew using it as an access point has specific driver requirements.

I did some research on, cross referenced it with the inventory on Best Buy’s website, and came up with one possibility.  Only one?  That threw up a red flag, but Best Buy isn’t exactly known for their stellar Linux support, so I let it go.

I picked it up the next day after work, plugged it in, and it turned out to be v3 of that product, which used a different chipset than I was expecting.  I tried a command I had seen on a few HOWTOs anyway:  iwconfig wlan2 mode master.  Didn’t work.  Made sure I was using the best driver, and did some digging to see if there was a development version I could use, and eventually gave up.

Installing the wired side of the network with DNS, DHCP, NAT, and firewall went smoothly.  At least I knew those pieces would be working when I got the wireless up.

The next day, I returned the wireless interface to Best Buy, did some more research to make absolutely sure I was getting a compatible card, and ordered one online overnight delivery.  Plugged it in the next day, and the “mode master” command still didn’t work.

Now I knew something was up.  After some considerable google-fu, I discovered there is an easy new userspace way of handling all the access point management, but the easiest to find documentation all documented the old, more limited way.  In other words, the “mode master” command doesn’t work on purpose now.  Aside from a short issue with hostapd looking like it starts, but not really because of a setting in /etc/defaults/hostapd, I had it up and running fairly quickly.

So what’s the underlying software engineering principle here?  Outdated documents can sometimes be worse than no documents.  Here is this great new feature that makes it easier to do what I want, but because the docs for it are so obscure, it actually made it harder.

I intend to do more about it than rant on my blog.  Ubuntu will soon be getting some updated documentation courtesy one experienced newbie who just figured it out the hard way.  I consider it my way of “paying” for all the great software I use for free, and encourage all of you who solve similar problems to do the same.

Categories: Documentation, Linux