COMMAND LINE WARRIORS

Taking Control of your Own Technology

It is called Linux, not GNU/Linux, get over it

22 November 2007

What is the operating system that I use called? I along with 99% of the human race, call it 'Linux' when speaking. However, when writing, I often use the term "GNU/Linux" the first time in an article to appease those who use this term. Today I decided to actually think about the issue.

"What's in a name? That which we call a rose. By any other name would smell as sweet."

Juliet, Romeo and Juliet, William Shakespeare.

"We hold these truths to be self-evident," they said, "that all men are created equal." Strange as it may seem, that was the first time in history that anyone had ever bothered to write that down. Decisions are made by those who show up.

President Jed Bartlet (2000), 'What Kind of Day Has It Been?', The West Wing.

In 1983-4, in Boston, a researcher called Richard Stallman made a plan for a free operating system and started work. He and a small number of people made an amazing start. They had almost no money and no support, yet they managed to make a fantastic text editor, a C library, a C compiler, a shell and many other bits and bobs.

Stallman called this system GNU, a hacker joke for 'GNU is Not Unix', a good joke in 1984 but a crap name. An in-joke among the creators does not make a good product name that users can pick up quickly. To start with two hard consonants in a row is very ugly, making it hard to pronounce; the golden rule of branding is that if you have to explain it then you have lost already. When reading GNU ('G'-'N'-'U'), it sounds like a trade union, not like a cool new operating system.

Meanwhile, in 1991, a student in Finland called Linus Torvolds decided to write an operating system kernel for the Intel processor found on his low-end desktop PC. The first version he wrote in three months, and he called the system 'Freax'. He asked the FTP admin at his university for some space to host Freax and was given the directory 'Linux', this was the least worst name and it stuck.

As outlined in the Cathedral and the Bazaar, the difference between Richard Stallman and Linus Torvalds' projects was the Internet and the World Wide Web. While Stallman kept firm control of his project, making it very hard for outsiders to contribute, Linus accepted patches from anyone, if it worked, it went in.

The result was that Linux worked; it not only worked but went on to become the most portable operating system kernel in the world, working on everything from the vast majority of the world's 500 most powerful supercomputers, all the way down to mobile phones.

Meanwhile the GNU system went from kernel to kernel without success. The GNU project first tried to use the BSD kernel, then the Hurd, then L4, then Coyotos, who knows what else it will fiddle around with next.

At any point the GNU project could have just given up and put its weight behind the Linux kernel. However, the GNU project's "not invented here" approach meant it became marginalised in the rise and rise of Linux. It made a bet on its own ability to inspire the community to create another free kernel, but it lost. There are now three free software kernels in production use (Linux, BSD, Solaris), and there is really no appetite for any more, really, please do not bother.

So the GNU project spend at least a decade working against the Linux kernel, so it is not surprising that when GPL3 came out, the Linux kernel developers were not interested in adopting GPL3 (which on its own merits is a far better licence than GPL2). So given this lack of interest, trying to make everyone use the term GNU/Linux is more than cheeky, it is trying to revise history.

Don't get me wrong, Richard Stallman is a genius, he is one of my heroes. Even though his background was in text processing programs, he needed a C compiler, so he sat down and wrote one, a really good one; while copyleft and the GNU GPL is the constitution for the free software/open source movement.

However, its about time to stop arguing over names. Everyone calls the operating system Linux, get over it. Calling it Linux does not imply anything about software freedom or non-freedom, it is just a name.

Yes the Linux distributions contain GNU utilities, but they contain a lot of other things too. Gentoo is often used with the Xorg X server and the GNOME desktop, it is not called GNOME/X/Gentoo. Ubuntu contains a lot of Python code and utilities, yet it is not called Python/Ubuntu. C was invented by Dennis Ritchie and standardised by ANSI. The GNU's own GCC is not called Ritche/GCC or ANSI/GCC.

Let's get on with spreading software freedom, save our energy for sharing the software, not for fighting over terminology.

Discuss this post - Leave a comment

Entry on Digg.com

1 Raezel says...

Against the advice of the article, I'm going to argue over names. It's Torvalds not Torvolds. [FIXED - Linus' Law - Given enough eyeballs, all bugs are shallow]

Posted at 6:56 a.m. on November 23, 2007


2 Phill says...

I agree with you, Zeth. I never call it 'GNU/Linux', not least because it's just cumbersome -- especially in conversation!

Posted at 8:56 a.m. on November 23, 2007


3 Bug says...

I don't really know anyone who does bother to call it GNU/Linux. Maybe 1 guy who post random Linux comments on some Israeli news site. But thats about it.

Posted at 10:51 a.m. on November 23, 2007


4 GNU says...

"Let's get on with spreading software freedom, save our energy for sharing the software, not for fighting over terminology." -Have to agree, so why the following

"To start with two hard consonants in a row is very ugly, making it hard to pronounce"

Err, no it isn't. Read GNU as in animal and system "The result was that Linux worked...Meanwhile the GNU system went from kernel to kernel without success"

You mean that when I use GNU I'm not because it isn't a success?

"So the GNU project spend at least a decade working against the Linux kernel"

Yes that familiar down with Linux campaign run by GNU users, on recollection it has a similar tone to the down with Microsoft campaign run by Linux fanboys.

Posted at 12:10 p.m. on November 23, 2007


5 GNU says...

"Let's get on with spreading software freedom, save our energy for sharing the software, not for fighting over terminology." -Have to agree, so why the following

"To start with two hard consonants in a row is very ugly, making it hard to pronounce"

Err, no it isn't. Read GNU as in animal and system "The result was that Linux worked...Meanwhile the GNU system went from kernel to kernel without success"

You mean that when I use GNU I'm not because it isn't a success?

"So the GNU project spend at least a decade working against the Linux kernel"

Yes that familiar down with Linux campaign run by GNU users, on recollection it has a similar tone to the down with Microsoft campaign run by Linux fanboys.

Posted at 12:10 p.m. on November 23, 2007


6 GNU says...

"Let's get on with spreading software freedom, save our energy for sharing the software, not for fighting over terminology." -Have to agree, so why the following

"To start with two hard consonants in a row is very ugly, making it hard to pronounce"

Err, no it isn't. Read GNU as in animal and system "The result was that Linux worked...Meanwhile the GNU system went from kernel to kernel without success"

You mean that when I use GNU I'm not because it isn't a success?

"So the GNU project spend at least a decade working against the Linux kernel"

Yes that familiar down with Linux campaign run by GNU users, on recollection it has a similar tone to the down with Microsoft campaign run by Linux fanboys.

Posted at 12:11 p.m. on November 23, 2007


7 gregf says...

Nah, it's GNU/Linux just like windows is DOS/Windows!

Posted at 3:10 p.m. on November 23, 2007


8 chep says...

"To start with two hard consonants in a row is very ugly"

While it's true for English language. In other languages it might sound pretty normal. For example in Russian GNU (гну) means "to bend" and sounds just right... =)

Posted at 2:38 a.m. on November 24, 2007


9 linux says...

Come on guys...

Posted at 5:41 p.m. on November 26, 2007


10 chep says...

"To start with two hard consonants in a row is very ugly"

While it's true for English language. In other languages it might sound pretty normal. For example in Russian GNU (гну) means "to bend" and sounds just right... =)

Posted at 8:30 p.m. on November 26, 2007


11 chep says...

oops... sorry for dup

Posted at 8:32 p.m. on November 26, 2007


12 Scott says...

Without the GNU you lose much of what is the Command Line. I never understand the Linux folks that seem to have a hatred of UNIX and claim it is inferior in some way. The proprietary Unices (Mac included) have much to offer, the LVM on AIX is a perfect example of amazing.

This website has some interesting posts, many pointing out GNU tools ( I do realize GNU is not UNIX ). I would suggest though focusing on the awesomeness that is UNIX and Unix-like operating systems. Someday you might even find you want to work with or mess around with one or more of the proprietary Unices.

Posted at 1:04 a.m. on January 15, 2008


13 chanux says...

Please reconsider your opinion. http://chanux.wordpress.com/2008/01/20/rms-cleared-doubts/

Posted at 1:11 p.m. on January 20, 2008


What do you have to say?


About

Hello, my name is Zeth, I'll be your host here.

Command Line Warriors is about taking control of your own technology, it looks at our experiences of computing; especially using GNU/Linux, the Python programming language, the command-line and issues such as techno-ethics, best practices and whatever is cool now. If you take control of your technology then you are a Warrior too!

This site is your site too which means that you can contribute and get involved. You can leave comments using the facility provided. For me, the comments and discussions are by far the best part of the site. So please do have your say!

Latest Discussions

Zeth

May 16, 2008
To Anonymous, I tried your script with some old SSH keys and it did not manage to break into an apparently vulnerable system. 1. The script requires a known username. My system did not allow root logins. 2. After failed three logins, the script's IP address got added to deny hosts.
Swap out your ssh keys

Zeth

May 16, 2008
To Anonymous, I said to do three things: 1. Accept the update. 2. Replace your keys. 3. Don't *have a panic attack about it.* And I still stand by that. Most non-technical users won't even be using openssh-server. While the update, blacklists and instructions on how to regenerate comes down automatically for those that do. Indeed, I think this episode shows how fast the free/open source community can move. Everytime the open source software has a panic attack over an in-theory, technically possible, but not actually being used, 'exploit', then proprietary software people say "Look their software is no better, it is just as insecure as ours". However, that is not true. There is a range of exploits, from theoretically possible with some serious preparation and knowledge about the target system, through to automated attacks that will work against any machine without the need for knowledge about it.
Swap out your ssh keys

Anonymous

May 15, 2008
Like stefano says, you are being VERY irresponsible by downplaying this as only "theoretically possible with a supercomputer". Linked on the page stefano mentioned is this: http://milw0rm.com/exploits/5622 That will break into your computer in a couple hours is you're using public-key logins, which are considered the safest kind, and are used on many, many machines that are supposed to be extra secure. This is a horrible, horrible problem, and dismissing it does nobody any favours. I'd really suggest you re-write this article to accurately portray how serious the problem is.
Swap out your ssh keys

Ryan

May 15, 2008
Yeah, good layout too. Very clear. :) Better than the last, in fact! I'm another python/django nerd, so I'll be listening even more now. I guess one of the things that's inspiring about Django is they're concerned pretty hardcore with security fixes. Just this week, an email came out and they released new sub-versions for each major Django release to include the fix. Very awesome. For your blog post model, what did you do for entering posts? Do you still use the default admin interface, or did you make your own views for posting and whatnot? I haven't looked into it much, but does django automatically include much in the way of wysiwyg text editors for text fields?
How not to program WSGI

stefano

May 15, 2008
Apparently the bug makes a brute-force attack much easier than "theoretically possible with a supercomputer". http://metasploit.com/users/hdm/tools/debian-openssl/ It looks that the buggy code used the process ID as seed for generating the key, and there might only be 32,768 process IDs. Furthermore not all process ID are equally possible and one could use a range of 1000-3000 seeds and having a very high chance of producing a valid key.
Swap out your ssh keys

Bug

May 15, 2008
@txwikinger: Thing is, I don't use Ubuntu and I can't remember where did I generate my key [I'm using Archlinux]. @Zeth: You should add the number of comments to the front page.
Swap out your ssh keys

Kennon

May 15, 2008
The openssh-blacklist debian package (now available, and required for the latest version of openssh-client and openssh-server) is now available. You should: apt-get update apt-get install openssh-blacklist apt-get upgrade After that you'll have the ssh-vulnkey utility and can check.
Swap out your ssh keys

Krispy

May 15, 2008
mkc: debian only provided blacklists for 2048 bit RSA keys and 1024 bit DSA keys. If your key isn't one of those two types, then the blacklist isn't provided in the package. You can download one here: http://metasploit.com/users/hdm/tools/debian-openssl/ but it is nearly 100MB
Swap out your ssh keys

Ed

May 15, 2008
@Cristian: it applies to keys. If you generated a key on Ubuntu and then put it in authorized_keys on Fedora, it's possible that someone could brute force their way in to the Fedora server.
Swap out your ssh keys

Cristian

May 14, 2008
This vulnerability only applies to ssh servers, right? Aren't they the ones that generate the keys? So if my client is Ubuntu and the server is Fedora everything's okay?
Swap out your ssh keys