Linux Grundlage

Linux Grundlagen

Linux ist ein freies, mehrbenutzerfähiges Betriebssystem, das auf Unix basiert und unter der GNU GPL steht.

Warum Linux lernen? Weil es auf den meisten Servern läuft und du als IT-ler früher oder später damit konfrontiert wirst. Plus: Es ist kostenlos! 😉

Was ist Linux?

Die drei wichtigsten Eigenschaften:

Open source

  • Quellcode ist offen zugänglich
  • Jeder kann sein eigenes Linux basteln
  • Community-Entwicklung möglich

Mehrbenutzersystem

  • Mehrere User können gleichzeitig arbeiten
  • Im Gegensatz zu Windows (zumindest früher)
  • Perfekt für Server-Umgebungen

Kostenlos

  • Keine Lizenzkosten für das OS selbst
  • Support, Handbücher etc. können Geld kosten
  • Ideal für Unternehmen = weniger Ausgaben

GNU GPL - General Public License

Die GPL sorgt dafür, dass Linux frei bleibt.

GNU steht für: "GNU's not Unix"

  • Sammlung von über 380 freien Tools
  • Alternative zu proprietärem Unix
  • Tools sind Unix-ähnlich aber frei von Unix-Code

Die 4 Freiheiten der GPL:

  1. Nutzen des Programms
  2. Untersuchen/Studieren des Codes
  3. Teilen/Weitergeben des Programms
  4. Ändern des Programms
Copyleft-Prinzip Wenn du das Programm änderst, musst du es unter den gleichen Bedingungen weitergeben!

Geschichte von Linux

Der Weg zu Linux:

Unix (1970er)BSD (1980er)MINIX (1987)Linux (1991)

Die berühmte erste E-Mail von Linus Torvalds (1991): "Ich arbeite an einem (freien) Betriebssystem (nur ein Hobby, wird nicht groß und professionell sein wie GNU) für 386(486)AT-kompatible Rechner..."

Spoiler: Es wurde doch etwas größer 😄

Interessante Facts:

Name-Entstehung

  • Ursprünglich sollte es FREAX heißen (Freak + Free + Unix)
  • Der Server-Admin fand den Namen doof
  • Nannte den Upload-Bereich einfach "Linux" (Arbeitstitel)
  • So blieb es dabei

Maskottchen: Tux der Pinguin Linus wollte einen Pinguin, der aussieht "als hätte er gerade eine Maß Bier genossen und den besten Sex seines Lebens gehabt" 🐧

Die wichtigsten Linux-Distributionen

Eine Distribution = Linux-Kernel + Software-Paket + Paketmanager + GUI

Für Einsteiger:

Distribution Eigenschaften Einsatzgebiet
Ubuntu Benutzerfreundlich, viel Software Desktop + Server
Linux Mint Sehr Windows-ähnlich Desktop für Umsteiger
openSUSE Früher sehr beliebt Enterprise

Für Profis:

Distribution Eigenschaften Einsatzgebiet
Debian Sehr stabil, Basis für viele andere Server, Professional
Arch Linux Minimalistisch, für Experten Enthusiasten
LFS (Linux from Scratch) Hardcore-Version aus Quellcode Lernzwecke
Empfehlung für den Anfang

  • Desktop: Linux Mint (Windows-ähnlich)
  • Server: Ubuntu Server (gut dokumentiert)
  • Lernen: Debian (stabil, weit verbreitet)

Arch Linux Arch ist wie ein Sportwagen - sehr mächtig, aber nur für erfahrene Fahrer. Die Wahrscheinlichkeit einer Ansteckung mit dem "BTW, I use Arch"-Virus liegt bei 95% 😏

Shell & Navigation

Die Shell ist deine Kommandozentrale - hier passiert die echte Linux-Magie!

Grundlegende Befehle:

pwd                    # Wo bin ich? (print working directory)
cd /pfad/zum/ziel     # Wechsle Verzeichnis (absolut)
cd ordner             # Wechsle Verzeichnis (relativ)
cd ~                  # Zurück ins Home-Verzeichnis
cd ..                 # Eine Ebene hoch
ls                    # Was ist hier? (list)
su                    # Wechsle User (substitute user)
sudo                  # Führe als root aus
Pfade verstehen

  • Absolut: /home/user/dokumente (beginnt mit /)
  • Relativ: dokumente/projekt (von aktueller Position)
  • ~ = Home-Verzeichnis
  • / = Root (Wurzel des Systems)

Root-User vs. normale User:

Root hat ALLE Rechte!

  • UID: 0 (User-ID Null)
  • Kann alles ändern/löschen
  • Nicht für normale Arbeit gedacht!
  • Daher: lieber sudo verwenden


Linux-Ordnerstruktur (FHS - Filesystem Hierarchy Standard)

Alles in Linux ist eine Datei. Auch Hardware-Geräte!

Die wichtigsten Verzeichnisse:

Ordner Zweck Inhalt
/ Root - die Wurzel Alles beginnt hier
/bin Binaries Programme für alle User (ls, cat, apt)
/sbin System Binaries Programme nur für Admins
/etc Configuration Alle Konfigurationsdateien
/home User-Daten Persönliche Ordner der Benutzer
/var Variable Daten Logs, temporäre Dateien
/usr Unix System Resources Geteilte Programme & Daten

Besondere Ordner:

/dev - Device Files Hier werden Hardware-Geräte als Dateien dargestellt:

  • /dev/null = Mülleimer (alles verschwindet)
  • /dev/zero = Unendliche Nullen
  • /dev/random = Zufallsdaten
  • /dev/lp0 = Drucker (einfach Text reinschreiben = drucken!)

/proc - Process Information

  • Virtuelle Dateien über laufende Prozesse
  • Einblick ins laufende System
  • /proc/sys = Systemeinstellungen ändern

/tmp - Temporary Files

  • Hier dürfen alle User schreiben
  • Wird bei Neustart oft geleert
  • Perfekt für temporäre Dateien

Mount-Points:

Ordner Zweck
/media USB-Sticks, CDs (permanent)
/mnt Temporäres Mounten für Admins
Mounting erklärt In Linux werden Laufwerke nicht als C:, D: angezeigt, sondern in Ordner "eingehängt" (gemountet). Ein USB-Stick erscheint z.B. unter /media/usb-stick/

Wichtige Konzepte

Symbolische Links (Symlinks)

  • /bin/usr/bin (Verknüpfung)
  • Wie Windows-Verknüpfungen, nur besser
  • Ermöglichen Kompatibilität mit alten Unix-Programmen

Dateisystem-Philosophie:

"Everything is a file" In Unix/Linux ist alles eine Datei:

  • Hardware-Geräte
  • Prozesse
  • Netzwerk-Verbindungen
  • Konfiguration

Das macht das System sehr einheitlich und vorhersagbar!


Linux heute

Vorteile von Linux

  • Stabilität (Server laufen monatelang ohne Neustart)
  • Sicherheit (weniger Malware, bessere Rechteverwaltung)
  • Erweiterbarkeit (offener Quellcode)
  • Keine Lizenzkosten
  • Performance (läuft auch auf alter Hardware)

Desktop-Komfort

  • GUIs wie KDE und GNOME bieten Windows-ähnlichen Komfort
  • Wine ermöglicht Windows-Programme
  • Je neuer/komplexer die Software, desto mehr Probleme möglich

Einsatzgebiete

  • Server: Dominiert den Markt (Apache, Nginx, Datenbanken)
  • Embedded Systems: Router, Smart-TVs, Android
  • Supercomputer: Fast alle laufen Linux
  • Desktop: Wächst langsam aber stetig


Zusammenfassung

Das Wichtigste auf einen Blick:

  • Linux = freies, mehrbenutzerfähiges OS
  • GPL sorgt für Freiheit der Software
  • Distributionen = Linux + Software-Pakete
  • Shell = mächtiges Kommando-Interface
  • FHS = strukturierte Ordner-Hierarchie
  • "Everything is a file" = Unix-Philosophie

Für die Praxis merken:

  • Ubuntu/Mint für Einsteiger
  • Debian für Server
  • Shell-Befehle: pwd, cd, ls, sudo
  • Wichtige Ordner: /, /etc, /home, /var

Du kennst jetzt die Grundlagen! Als nächstes solltest du Linux Kommandos und Linux Benutzerrechte lernen.