LINUX - die Open-Source-Variante von UNIX

Freies Betriebssystem von Linus Torvalds

LINUX ist ein «Opensource-Betriebssystem» für PCs, Server, Workstations und Macintosh-Rechner, das kostenlos von jedermann / jederfrau benutzt werden kann. Das Konzept von Opensource umfasst einen transparenten Quellcode, der von den Entwicklern eingesehen werden kann. Somit kann das Betriebssystem keine «Geheimnisse» für sich behalten.  Einzige rechtliche Voraussetzung für die Nutzung in Unternehmen oder als Privatperson ist, dass die Software-Lizenz von GNU akzeptiert wird.

Ursprünglich wurde LINUX vom schwedischsprachigen, finnischen Studenten Linus Torvalds entwickelt. Die Basis dazu bildete das legendäre Minimum UNIX mit dem Namen MINIX, es wird an vielen Hochschulen im Informatik-Unterricht verwendet (während der Studienzeit des Autors auch an der TBZ TS).

Mittlerweile hat sich LINUX von einem «Hackerspielzeug» zu einem ausgereiften Betriebssystem für unternehmenskritische Anwendungen (ERPCRM und Cloud-Services) entwickelt. 

Die Idee von Linux Torvalds war grundsätzlich einfach: Er wollte ein Betriebssystem entwickeln, das auf «normalen» PC's läuft, schliesslich hat nicht jeder eine Sun-Workstation unter dem Tisch. Das faszinierende an LINUX ist der Gedanke der «Opensource» bzw. der freien Software: Zahllose Entwickler arbeiten kostenlos bzw. aus reinem Goodwill in der Szene für LINUX, am Quellcode mit. Die Produkte stellen Sie auf Web-Servern zum Download zur Verfügung.

Aufgabe von so genannten Distributoren ist es dann aus dem reichhaltigen Angebot an Opensource-Software regelmässig jeweils attraktive und passende Konfigurationen als LINUX-Distributionen zusammenzustellen.

Das LINUX-Maskottchen

Das Maskottchen von LINUX ist der Pinguin «TUX». Warum Linus für LINUX einen Pinguin gewählt hat, lässt sich dadurch erklären, dass er auf einem Trip in Australien von einem eigenwilligen Pinguin gebissen wurde. Das eigenwillige Zoo-Tier hat ihn beeindruckt.

Installation und Anwendung

Wer mit LINUX echte Erfahrungen sammeln und dies selbst installieren will, brauchte zumindest in der Anfangsphase der breiten Nutzung von LINUX noch fortgeschrittene PC- und Peripherie-Kenntnisse. Natürlich gibt es mittlerweile startfertige LINUX-Distributionen, die ab CD gebootet werden können - dies ist dann aber sehr mit Windows vergleichbar und keine «echte UNIX-Erfahrung». Auf dem Markt erhältlich sind zahlreiche LINUX-Distributionen. Das sind spezielle Zusammenstellungen des LINUX-Basissystems (Kernel) mit verschiedenen Anwendungen. Persönlich bekannt sind dem Autor dieser Website:
  • redhat LINUX
  • SuSE LINUX
  • Caldera OpenLINUX

Die besten Erfahrungen habe ich bisher mit SuSE LINUX gemacht. Die Installation war einigermassen benutzerfreundlich und in den neuen Versionen sogar «optisch attraktiv». Die Konfiguration von LINUX über das YaST-Tool («Yet another Setup Tool») funktioniert zuverlässig. Verschiedene Installationsverfahren können eingesetzt werden:
  • Installation ab CD-ROM (mit Boot-CD-ROM des Distributoren)
  • Download als Boot-Image ab FTP-Server
  • Installation über ein lokales Laufwerk oder Netzwerk-Verzeichnis

Wichtig zu wissen ist, dass LINUX grundsätzlich zwei Betriebsmodi kennt:
  • einer Kommandozeilen-Ebene, ähnlich dem Betriebssystem MS-DOS, allerdings einiges leistungsfähiger und vor allem mit Unterstützung für Multi-User-Betrieb
  • eine X-Window-Umgebung (basierend auf den Konzepten von XFree86), ein Server für den Betrieb der grafischen Benutzeroberfläche, im Hintergrund ist natürlich auch der Multi-User-Betrieb verfügbar

Für den Betrieb der grafischen Benutzeroberfläche muss ein X-Server geladen sein, dieser setzt direkt auf der vorhandenen Grafik-Hard- und Software auf. Über dem X-Server wird ein so genannter Fenstermanager (Windowmanager) oder ein Widget-Set geladen. Dieser Fenstermanager bestimmt das Aussehen der grafischen Benutzeroberfläche.

Fedora als LINUX-Benutzeroberfläche

Aufgrund der komfortablen Bedienung sehr beliebt sind die Benutzeroberflächen Fedora und KDE das K Desktop Environment. Fedora umfasst nebst dem Fenstermanager eine vollständige LINUX-Distribution. Die Features, welche diese Benutzeroberflächen komfortabel machen entsprechen weitgehend der Funktionalität von Windows. Das Schichtenmodell eines Fenstermanagers sieht wie folgt aus:

  • Sichtbare Benutzeroberfläche (Desktop)
  • Window-Manager (KDE, Fedora, Gnome usw.) Applikationen (nutzen den Fenstermanager) X-Server
  • Hardware und Peripherie (Bildschirm, Tastatur, Maus, Drucker, weitere USB-Geräte)

Der Window-Manager ist für das Aussehen, die Verwaltung der der Fenster usw. zuständig. Da es für LINUX zahlreiche Window-Manager gibt (zahlreiche Entwickler-Teams bemühen sich, LINUX an Windows anzugleichen) ist das Layout der grafischen Benutzeroberfläche immer leicht anders - in den Grundzügen aber mit Windows oder OS-X von Apple vergleichbar.

Benutzerkonten
Da LINUX ein Multi-User-System ist, gibt es mindestens immer einen Systemverwalter oder Administrator mit allen Rechten zur Verwaltung des Computers. Der Administrator eines LINUX-Rechners hat den Namen «root». Grundsätzlich sollte - aus Sicherheitsgründen (auch aus Selbstschutz) - nicht als Administrator auf einem Rechner gearbeitet werden, es empfiehlt sich mindestens einen «normalen» Benutzer anzulegen und anschliessend mit diesem Profil bzw. Zugriffsrechten zu arbeiten.

Dateisysteme und Laufwerksbezeichnungen
Durch die laufende Entwicklung in der OpenSource-Gemeinde unterstützt(e) LINUX mittlerweile zahlreiche Dateisysteme:
  • ext2: Standard-Dateisystem unter LINUX (Vorläufer: ext)
  • affs: Amiga-Dateisystem
  • hpfs: OS/2-Dateisystem von IBM
  • iso9660: Standard für CD-ROM-Dateisystem
  • minix: Dateisystem des Minimum UNIX (wird an Schulen verwendet)
  • msdos: FAT / DOS-Dateisystem
  • smbfs: Server Message Block, für Zugriffe auf Windows NT, LAN Manager oder Windows for Workgroups

Sowie verschiedene andere - auch recht exotische - Dateisysteme. In LINUX werden Laufwerke (Festplatten, Disketten, ZIP) nicht mit Buchstaben (C:, A:, D:) bezeichnet. LINUX verwaltet jedes Laufwerk als Pfadangabe:

Bezeichnung
Gerät
/dev/fd0 = Erstes Diskettenlaufwerk
/dev/hda = Erstes Harddisk-Gerät, Master am primären Controller
/dev/hdb = Zweites IDE-Gerät, Slave am primären Controller
/dev/hdc = Drittes IDE-Gerät, Master am sekundären Controller
/dev/hdd = Viertes IDE-Gerät, Slave am sekundären Controller
/dev/sda = Erste SCSI-Festplatte
/dev/sdb = Zweite SCSI-Festplatte
/dev/scd0 = Erstes SCSI-CD-Laufwerk
/dev/scd1 = Zweites SCSI-CD-Laufwerk

Anders als Geräte werden Partitionen nicht mit Buchstaben sondern mit Zahlen nummeriert: /dev/hda1 entspricht der ersten Partition auf der ersten IDE-Festplatte. Die Pfad-Angabe /dev/sda1 zeigt auf die erste Partition auf der ersten SCSI-Festplatte.

Tastatur-Kommandos
Die Bedienung von LINUX auf Ebene der Kommandozeile ist wie bei jedem Betriebssystem zu Beginn etwas gewöhnungsbedürftig. LINUX ist ein Multi-User und Multi-Tasking-System:

  • Alt-F1 bis Alt-F6: wechselt zwischen virtuellen Terminals (auf jedem Terminal kann eine separate Benutzer-Session betrieben werden)
  • Ctrl-Alt-F1 bis Ctrl-Alt-F6: Terminalwechsel bei aktivem X-Server (GUI-Modus)
  • Alt-F7: Zurück zur X11-Umgebung (aus Kommando-Ebene)
  • Ctrl-Alt-Backspace: beendet X11-Umgebung (GUI)

Mounten von Laufwerken und Geräten
Anders als bei Windows oder DOS stehen Geräte nach dem Laden von Treibern üblicherweise nicht einfach zur Verfügung, eine Festplatte oder ein CD-ROM muss zuerst «gemountet» werden, anschliessend steht es zur Verfügung. Die aktuellen Distributionen übernehmen das Mounten aber mittlerweile automatisch.

Mounten eines CD-ROM = mount -t iso9660 /dev/scd9 /mnt/cdrom
Dis- / Un-Mount eines CD-ROM = umount cdrom

LINUX-Befehle
Die folgende Beschreibung basiert auf Erfahrungen mit einer LINUX-Distribution von SuSE (die Firma SuSE wurde mittlerweile von Novell übernommen).

Eine sehr wertvolle Hilfe sind die sogenannten «Manpages», eine Art elektronische Handbücher (Manuals). Mit der Eingabe von «man -k cp» wird die Manpage zum Kopierbefehl (cp) von Dateien angezeigt. Eine weitere Option ist die Suche nach Querverweisen: «man -f cp» sucht in allen Abschnitten der Manpages nach dem Kommando cp.

Die einfachste Art der Benutzung dieser Online-Hilfe ist aber bestimmt man.

Allgemeine Konsolen-Befehle
  • Kontrollzentrum für Systemkonfiguration starten yast
  • Linux-Konfiguration bearbeiten linuxconf
  • X-Server konfigurieren (SuSE Adv. X-Server Conf.Tool) sax
  • X-Server für grafische Benutzeroberfläche starten startx
  • Tastaturlayout laden (Beispiel Schweiz) loadkeys sg_latin1

Booten und Verzeichnis-Struktur
  • Boot-Manager starten (LINUX Loader) LILO
  • Herunterfahren und Neustart des Systems (Reboot) shutdown -r now
  • Herunterfahren und Ausschalten (Halt) shutdown -h now
  • Dateien und Datei-System Verzeichnisse anzeigen ls oder dir
  • Verzeichnis wechseln cd
  • Verzeichnisse anlegen mkdir
  • Symbolischen Link erstellen (Shortcut) ln

Datei-Management
  • Dateien anzeigen cat oder less
  • Dateien kopieren cp
  • Dateien verschieben mv
  • Dateien suchen find
  • Datei-Inhalte suchen grep
  • Dateien / Verzeichnisse löschen rm
  • Dateien archivieren / komprimieren tar .tgz
  • Zugriffsrechte ändern chmod
  • Benutzter Plattenspeicherplatz df
  • Bildschirm löschen clear oder cls

Benutzer-Kontext / Benutzer-Verwaltung
  • Anmelden am System login
  • Abmelden logout
  • Passwort eines Benutzers ändern: passwd
  • Info zum aktuellen Benutzerkontext who oder whoami oder id
  • Benutzer hinzufügen useradd

Prozess-Kontext
  • Prozesse auflisten ps
  • Prozess-Struktur komplett anzeigen pstree
  • Prozesse beenden kill

Datei-Editor VI
  • Editor starten vi
  • Wechsel in den Befehlsmodus
  • Zeichen löschen x
  • Zeichen einfügen i
  • Editor beenden, Änderungen speichern :wq
  • Editor beenden :q!