Kapitel 1. Linux, Debian, Freie Software?

Inhaltsverzeichnis
Was ist GNU/Linux?
Was ist Debian GNU/Linux?
Debian GNU/Hurd
Freie Software / Open Source
SPI – Software in the Public Interest
Wie und wo bekomme ich Debian GNU/Linux?

Dieser Abschnitt soll einige Begriffe erläutern die im Zusammengang mit Linux immer wieder fallen und für Verwirrung sorgen.

Was ist GNU/Linux?

GNU/Linux ist ein Unix-ähnliches, multiuser/multitasking Betriebssystem. Es wurde ursprünglich für x86 und kompatible Architekturen entwickelt. Im Laufe der Zeit wurde GNU/Linux aber auch auf viele andere Prozessor-Architekturen portiert.

Ein Betriebssystem ist eine Menge von grundlegenden Programmen, die Ihr Rechner zum Arbeiten benötigt. Der Kern (kernel) ist das Stück Software, welches für alle Basisaufgaben (Zugriffe auf die Hardware usw.) von anderen Programmen zuständig ist. Debian verwendet den Linux-Betriebssystemkern, eine freie Software, die von Linus Torvalds ins Leben gerufen wurde und heute von über 1000 Programmierern auf der ganzen Welt weiterentwickelt wird. Ein großer Teil der grundlegenden Anwendungen stammt aus dem Projekt und ist ebenfalls frei. GNU steht für „GNU is not Unix“ und wurde von Richard Stallman ins Leben gerufen.

Das GNU Projekt

Das GNU Projekt wurde 1984 gestartet, um ein vollständig freies Unix-artiges Betriebssystem zu entwickeln - das GNU System. Varianten des GNU Systems, die den Linux Kernel verwenden, sind weit verbreitet; obwohl diese System oft als „Linux“ bezeichnet werden, werden sie korrekter als GNU/Linux Systeme bezeichnet.

Um die juristischen und organisatorischen Aspekte des GNU-Projektes zu betreuen sowie um die Verbreitung von und das Verständnis für Freie Software zu fördern, gründete sich die Free Software Foundation. Über die Free Software Foundation entstand die GNU General Public License (GPL) und die GNU Lesser General Public License (LGPL, ursprünglich GNU Library General Public License genannt), die sich weltweit als die meistverwandten Lizenzen für Freie Software etablieren konnten.

Neben der GPL gibt es noch etliche andere Lizenzen, die diese Freiheiten gewähren und sich somit als Lizenzen für Freie Software qualifizieren. Von diesen sollte speziell die FreeBSD-Lizenz erwähnt werden, deren Hauptunterschied zur GPL ist, daß sie die Freiheit nicht zu schützen sucht.

Das GNU-Projekt setzt sich zusammen aus Unterprojekten, die von Freiwilligen oder Unternehmen betreut werden und zumeist der Erstellung und Pflege einer funktionalen Komponente dienen. Diese Unterprojekte werden wiederum als „GNU Projekte“ oder „offizielle GNU Projekte“ bezeichnet.

Der Name des GNU-Projektes leitet sich von dem rekursiven Akronym „GNU's Not Unix“, also „GNU ist nicht Unix“ ab. Da Unix ursprünglich nicht nur eine Art von Systemen sondern auch ein kommerzielles Produkt bezeichnete, war dies dazu gedacht, klar zu machen, daß das GNU-Projekt ein System schaffen soll, welches zwar kompatibel zu aber nicht identisch mit Unix ist.

Free Software Foundation (Europe)

Die Free Software Foundation ( http://www.fsf.org/ ist eine steuerfreie, gemeinnützige Organisation, die Kapital für die Arbeit am GNU Projekt aufbringt.

Die FSF Europe http://www.fsfeurope.org/, widmet sich den europäischen Aktivitäten im Bereich Freie Software. Als offizielle Schwesterorganisation der Free Software Foundation in den Vereinigten Staaten wird sie ihre Aktivitäten im Umkreis des GNU-Projekts konzentrieren, aber nicht auf diese beschränken. Die FSF Europe nahm am 10.März 2001 den Betrieb auf.

Die Hauptaufgaben der FSF Europe sind es, Initiativen Freier Software in Europa zu koordinieren, ein Kompetenzzentrum für Politiker und Journalisten bereitzustellen und Infrastruktur für Freie-Software-Projekte und speziell das GNU-Projekt zur Verfügung zu stellen.

Geschichte des Linux Kernels

Die erste Version des Linux Kernels wurde von Linus Torvalds am 17. September 1991 im Usenet angekündigt. Bereits kurz darauf fanden sich einige kompetente Helfer, die begeistert an der Entwicklung teilnahmen.

From: torvalds@klaava.Helsinki.FI (Linus Benedict Torvalds)
Newsgroups: comp.os.minix
Subject: What would you like to see most in minix?
Summary: small poll for my new operating system
Message-ID: <1991Aug25.205708.9541@klaava.Helsinki.FI>
Date: 25 Aug 91 20:57:08 GMT
Organization: University of Helsinki

Hello everybody out there using minix -
I'm doing a (free) operating system (just a hobby, won't be big and
professional like gnu) for 386(486) AT clones. This has been brewing
since april, and is starting to get ready. I'd like any feedback on
things people like/dislike in minix, as my OS resembles it somewhat
(same physical layout of the file-system (due to practical reasons)
among other things).
I've currently ported bash(1.08) and gcc(1.40), and things seem to work.
This implies that I'll get something practical within a few months, and
I'd like to know what features most people would want. Any suggestions
are welcome, but I won't promise I'll implement them :-)
Linus (torvalds@kruuna.helsinki.fi)
PS. Yes - it's free of any minix code, and it has a multi-threaded fs.
It is NOT protable (uses 386 task switching etc), and it probably never
will support anything other than AT-harddisks, as that's all I have :-(.

Einen Überblick über die Geschichte soll folgende Auflistung bieten:

Urknall

3. Juli 1991

Einige Gerätetreiber sowie der Festplattentreiber und einige User-Level Funktionen sind implementiert.

0.01

17. September 1991

Linus veröffentlicht die Version 0.01 des Kernels für einen kleinen Kreis von Leuten die Interesse an der weiteren Entwicklung bekundet haben.

0.02

05. Oktober 1991

Die erste „offizielle“ Version des Linux Kernels erscheint. Mit dieser Version laufen bereits die bash, gcc, gnu-make, gnu-sed und compress. Linus kündigt diese Version durch folgendes Posting im Usenet an:


From: torvalds@klaava.Helsinki.FI (Linus Benedict Torvalds)
Newsgroups: comp.os.minix
Subject: Free minix-like kernel sources for 386-AT
Message-ID: <1991Oct5.054106.4647@klaava.Helsinki.FI>
Date: 5 Oct 91 05:41:06 GMT
Organization: University of Helsinki
Do you pine for the nice days of minix-1.1, when men were men and wrote
their own device drivers? Are you without a nice project and just dying
to cut your teeth on a OS you can try to modify for your needs? Are you
finding it frustrating when everything works on minix? No more all-
nighters to get a nifty program working? Then this post might be just
for you :-)
As I mentioned a month(?) ago, I'm working on a free version of a
minix-lookalike for AT-386 computers. It has finally reached the stage
where it's even usable (though may not be depending on what you want),
and I am willing to put out the sources for wider distribution. It is
just version 0.02 (+1 (very small) patch already), but I've successfully
run bash/gcc/gnu-make/gnu-sed/compress etc under it.
Sources for this pet project of mine can be found at nic.funet.fi
(128.214.6.100) in the directory /pub/OS/Linux. The directory also
contains some README-file and a couple of binaries to work under linux
(bash, update and gcc, what more can you ask for :-). Full kernel
source is provided, as no minix code has been used. Library sources are
only partially free, so that cannot be distributed currently. The
system is able to compile "as-is" and has been known to work. Heh.
Sources to the binaries (bash and gcc) can be found at the same place in
/pub/gnu.
ALERT! WARNING! NOTE! These sources still need minix-386 to be compiled
(and gcc-1.40, possibly 1.37.1, haven't tested), and you need minix to
set it up if you want to run it, so it is not yet a standalone system
for those of you without minix. I'm working on it. You also need to be
something of a hacker to set it up (?), so for those hoping for an
alternative to minix-386, please ignore me. It is currently meant for
hackers interested in operating systems and 386's with access to minix.
The system needs an AT-compatible harddisk (IDE is fine) and EGA/VGA. If
you are still interested, please ftp the README/RELNOTES, and/or mail me
for additional info.
I can (well, almost) hear you asking yourselves "why?". Hurd will be
out in a year (or two, or next month, who knows), and I've already got
minix. This is a program for hackers by a hacker. I've enjouyed doing
it, and somebody might enjoy looking at it and even modifying it for
their own needs. It is still small enough to understand, use and
modify, and I'm looking forward to any comments you might have.
I'm also interested in hearing from anybody who has written any of the
utilities/library functions for minix. If your efforts are freely
distributable (under copyright or even public domain), I'd like to hear
from you, so I can add them to the system. I'm using Earl Chews estdio
right now (thanks for a nice and working system Earl), and similar works
will be very wellcome. Your (C)'s will of course be left intact. Drop me
a line if you are willing to let me use your code.
Linus
PS. to PHIL NELSON! I'm unable to get through to you, and keep getting
"forward error - strawberry unknown domain" or something.

0.03

26. Oktober 1991

Eine weitere schon benutzbare Version.

0.10

November 1991

0.11

19. Dezember 1991

Dieses war die erste Version die eigenständig, ohne zuhilfenahme eines anderen Betriebssystemes, lauffähig war. Es gab keine SCSI Support, aber einige Entwickler arbeiteten daran. Voraussetzung war also eine AT-Bus Festplatte.

Es gab weder init noch login, nach den Systemstart landete man direkt in einer bash. Es gab Ansätze für die Implementierung von Virtual Memory, es waren aber mindestens 4MB RAM (vier!) notwendig um GNU Programme, insbesondere den GCC benutzen zu können. Ein einfacher Systemstart war aber auch schon mit 2MB möglich.

0.11+VM

Dezember (Weihnachten) 1991

Da viele Leute versuchten den Kernel mit nur 2MB RAM zu übersetzen und dies fehlschlug, wurde diese Version einigen Leuten zugänglich gemacht um die virtuelle Speicherverwaltung zu testen.

0.12

05. Januar 1992

Dies war die erste Version die mehr Funktionen hatte als unbedingt benötigt werden. Mit dieser Version wurde der Kernel unter die GPL gestellt. Die ältere Lizenz unter der der Kernel stand war in vielen Punkten deutlich strenger.

0.95

März 1992

0.96

April 1992

Dies war die erste Version mit der es möglich war das X-Window System zu betreiben.

Und dieser Pinguin...?

Anfang 1996 waren einige Leute auf der Linux Kernel Mailingliste der Meinung es sei Zeit für ein Linux Logo oder ein Maskotchen. Wie viele solche mehr „phylosophischen“ Diskussionen ergab sich hieraus eine längere Diskussion.

  Tux der Linux Pinguin

Linus Torvalds setzte sich schlußendlich durch und so kam es zu einem Pinguin als Logo für Linux.


Re: Linux Logo
Linus Torvalds (torvalds@cs.helsinki.fi)
Sun, 12 May 1996 09:39:19 +0300 (EET DST)
		        
Umm.. You don't have any gap to fill in.
			            
"Linus likes penguins". That's it. There was even a headline on it in some 
Linux Journal some time ago (I was bitten by a Killer Penguin in Australia - 
I'm not kidding). Penguins are fun.
					        
As to why use a penguin as a logo? No good reason, really. But a logo doesn't 
really ave to _mean_ anything - it's the association that counts. And I can 
think of many worse things than have linux being associated with penguins.
						            
Having a penguin as a logo also gives more freedom to people wanting to use 
linux-related material: instead of being firmly fixed with a specific logo 
(the triangle, or just "Linux 2.0" or some other abstract thing), using 
something like a penguin gives people the chance to make modifications that 
are still recognizable.
								        
So you can have a real live penguin on a CD cover, for example, and people 
will get the association. Or you can have a penguin that does something 
specific (a Penguin writing on wordperfect for the WP Linux CD, whatever - 
you get the idea).
									            
Compare that to a more abstract logo (like the windows logo - it's not a 
bad logo in itself). You can't really do anything with a logo like that. 
It just "is".
									        
Anyway, go to "http://www.isc.tamu.edu/~lewing/linux/" for some nice examples..

Linus

Nun brauchte das Kind noch einen Namen. Der erste Hinweiß auf den Namen „Tux“ findet sich in folgender E-Mail:

Re: Let's name the penguin! (was: Re: Linux 2.0 really _is_ released..)
James Hughes (jamesh@interpath.com)
Mon, 10 Jun 1996 20:25:52 -0400
          
(T)orvolds (U)ni(X) --> TUX!

Dieser Name wurde dann auch von der Community akzeptiert. Es gibt noch viele nette Geschichten um das Linux Logo und den Fancult der sich darum entwickelt hat. Neben Stofftierchen und Schlüsselanhänger gibt es mittlerweile Linux Pinguine in allen nur denkbaren Erscheinungsformen.

Unter http://www.woodsoup.org/projs/tux_aqfh/doc/ finden sich weitere Linux und Informationen zu Tux.