Computerhilfe
Presentation Linux (Rev #12)

Linux, ein alternatives Betriebssystem

Was ist Linux

TUX

  • Linux ist oft bekannt als ein alternatives Betriebssystem für der Computer.
  • Statt Windows 10 oder Mac OS benutzen wir Linux

Was ist Linux wirklich ?

Linux umfasst im Gründe nur der Kernel (Der Kern vom Betriebssystem). Meistens wird der Kernel zusammen mit dem GNU System benutzt um ein wirksam Betriebssystem zu bekommen.

GNU kann man vergleichen mit das frühere DOS System. Es gibt dort viele keine Programme die auf der Kommandozeile eingegeben werden können, damit das Betriebssystem benutzbar wird.

<!-- Created with SVG-edit - https://github.com/SVG-Edit/svgedit--> Layer 1 GNU System Linux Betriebssystem Linux Kernel GNU System

Ein Linux - Distribution

Sinn einer Distribution ist es, ein Paket aufeinander abgestimmter Software zu bilden.

Linux-Distributionen halten in der Regel eine große Anzahl an Programmen zur Installation bereit.

Dies steht im konzeptuellen Gegensatz zu anderen Betriebssystemen wie Windows und macOS, die neben dem Betriebssystem selbst nur wenige Anwendungen enthalten, dafür auf die Integration von Programmen von externen Anbietern setzen

Über ein Paketverwaltungs-System werden die Programme installiert und aktualisiert. Standardmäßig umfasst ein Linux - Distribution schon viele vorinstallierte Programmen.

Debian

Ubuntu

Linux Mint

Fedora

Arten von Linux - Distributionen

Es gibt sehr viele Linux - Distributionen. Sie sind haben allen verschiedene Verwendungen. Von daher kann man folgende Arten underschieden:

  • Smartphone-Distributionen: für Smartphones gibt es einige Linux Distributionen. Was wenig Menschen nicht wissen ist das Android basiert ist auf der Linux Kernel, allerdings ohne das GNU System.

  • Desktop-Distributionen: für der normale Benutzer gibt es einige bekannte Desktop Distributionen für Linux. Beispiele sind: Debian, Ubuntu, Linux Mint, Fedora, Suse. Desktop Distributionen sind extra ausgestattet mit ein Window Manager und ein grafische Oberfläche.

  • Server-Distributionen: als Server wird Linux häufig verwendet und hat ein Marktanteil von mehr dann 50%. Oft werden Linux Servers benutzt als Webserver. Die Verwendung ist Stabil und Sicher.

  • Live-Distributionen: damit es für Windows oder Mac benutzer einfach ist Linux einmal auszuprobieren gibt es viele Distributionen die man direkt vom CD oder USB Disk ausprobieren kann ohne das man der Distribution erst installieren muss. Damit bekommt man Niederigschwellig ein Zugang zu Linux. Live-Systeme eignen sich auch hervorragend zur Datenrettung und Systemanalyse, da sie von der Konfiguration des bereits bestehenden Systems unabhängig sind und so auch von möglichen Infektionen durch Würmer und Viren nicht betroffen werden können.

Arten von weitere Linux - Distributionen

  • Embedded-Distributionen: die werden oft benutzt für industrielle Verwendungen. z.B in der Prozessleittechnik, in Motorsteuerungen, in der Satellitensystemtechnik, in Signal- und Weichenstellanlagen, in der Robotik und in weiteren Bereichen. Oft müssen Ergebnisse innerhalb ein fest definierte Zeitintervall garantiert sein. Dort sind diese Distributionen auf ausgerichtet.

  • Distributionen in dem Bildungsbereich: Diese haben oft ein zentrale Terminalserver wo die Klients auf einloggen und arbeiten. Beispiele hier für sind Edubuntu oder DebianEdu.

  • Distributionen für veraltete Rechner: Ebenso gibt es Systeme speziell für veraltete Rechner, die einen geringeren Funktionsumfang haben und geringe Systemanforderungen stellen. Beispiele sind etwa Damn Small Linux oder Puppy Linux, die einen Umfang von nur 50 beziehungsweise 100 MB haben. Auch Alpine Linux ist ein Beispiel von ein Linux Distribution die schnell und relative klein ist. Alpine Linux ist nicht basiert auf GNU aber auf vereinfachte Version von GNU (Busybox) und darum ist der Basis der Distribution schon kleiner und schneller.

Das Starten einer Linux Distribution

Wenn ein Linux Distribution gestartet wird gibt es die folgende Reihenfolge beim starten:

  1. Der Linux-Kernel wird geladen.
  2. Der Kernel start der Initialisierung des Systems. Das findet bei die meiste Distributionen mit Systemd statt.
  3. Systemd start Tätigkeiten beim Systemstart ( Sockets anlegen, Hardware einrichten, Datenträger einbinden, Hintergrunddienste starten und so weiter ) Die Tätigkeiten sind in sogenannten Units organisiert.
  4. Durch Systemd werden verschiedene Hintergrunddienste gestartet. Bei Server Distributionen sind das z.B. ein Webserver, ein Datenbank. Bei ein Desktop Distribution wird meistens ein grafische Umgebung gestartet.
<!-- Created with SVG-edit - https://github.com/SVG-Edit/svgedit--> Start Layer 1 Kernel Systemd Hardware Einrichten Datenträger einbinden Hintergrunddienste starten

Die Kommandozeile

So wie es bei Windows bekannt ist kann man Windows nur mit eine grafische Umgebung starten. Unter Linux kann man auswählen ob man der Linux-Distribution mit oder ohne grafische Umgebung start.

Server Distributionen werden oft ohne grafische Umgebung gestartet und bedient von der Kommandozeile aus.

Vielleicht gibt es einige die die Kommandozeile noch kennen aus alte Zeiten. Bevor Microsoft Windows auf der markt bracht, gab es MS Dos. Das ist ein Kommandozeile wo man Programme mit ausführen kann.

In vergleich zu MS Dos stehen für Linux viel ausführlichere Kommandozeilen zur Verführung. Man mit diese Linux/Unix Shells kompliziertere Skripte programmieren als in MS Dos und diese Skripte werden z.B. benutzt um das Linux System zu starten.

Die Kommandozeile - Die Entwicklung

Hier ein Auflistung der Entwicklung der Kommandozeile in Unix/Linux:

  • sh: der Bourne Shell aus 1979.
  • csh: der C-Shell ist entstanden am ende der Jahren 70 und ermöglichte es die C Programmiersprache zu benutzen. Der Shell war eine Verbesserung für die normale Benutzer, aber für Skripte würde immer noch der Bourne Shell benutzt, weil der C-Shell viele Fehlers enthalte.
  • tcsh: Der TC-Shell ist eine Erweiterung der C-Shell und viele Fehlers aus der C-Shell würde behoben.
  • ksh: In 1983 würde die Korn-Shell entwickelt, der Shell enthält die gleiche Befehle von der Bourne Shell, ist aber erweitert worden mit Funktionen aus der C-Shell.
  • bash: Das GNU-Projekt entwickelte in 1989 ein Open Source Shell basiert auf der Bource Shell: der Bourne Again Shell. Diese Kommandozeile ist Heutezutage Standard installiert auf die meiste Linux-Rechner.
  • ash: Der Almquish-Shell ist ein schlankere Version von der Bash-Shell und wird benutzt für schmalere Linux Distributionen. Dadurch kann es aber auch weniger. Der A-Shell ist im Busybox enthalten und dadurch in Linux-Distributionen enthalten bassiert auf Android oder Alpine Linux.
  • dash: Ist ein andere vereinfachte Bash-Shell entwickelt durch Debian und benutzt um vereinfachte Skripte in Ubuntu schneller laufen zu lassen.
  • zsh: Der Z-Shell ist ein modernere Shell aus 1990, basiert auf Bash, aber mit mehr Funktionen (spell-check, login/logout und mehr)
  • fish: Die letzte Entwicklung ist der Friendly Interactive Shell aus 2005. Es hat vereinfachte Kommandos und ist nicht bassiert auf der Bourne Shell oder C-Shell. Dadurch muss man der Syntax neu lernen.

Paketverwaltungs-Systeme

vielen Distributionen benutzen ein Paketverwaltungs-Systeme. Hier sind die meist benutzte aufgelistet:

  • dpkg (apt): das ist das Debian Paketverwaltungssystem, das große Verbreitung erlangt hat durch die Distrubitionen Ubuntu und Linux Mint.
  • rpm: das ist auch ein viel benutzt Paketverwaltungssystem und ursprunglich benutzt auf Red Hat und jetzt benutzt für OpenSUSE und Fedora

Die Pakete sind aufeinander aufgebaut und abhängig von einander. Wenn man ein Programm als Paket installiert, dann werden automatisch die davon abhängige Pakete mit installiert, damit das Programm dann auch direkt funktioniert.

auch gibt es alternative Paketformate die man eigenständig installieren kann und keine Abhängigkeiten haben. Sie sind allen abhängig von der Linux Kernel mit dem GNU System

  • Snap: Durch Ubuntu entwickelt, aber ist mittlerweile auch in andere Distributionen verfügbar. Es hat aber nur ein App Store und ist dadurch zentral organisiert.
  • Flatpak: Für Flatpak kann jeder ein App Store aufbauen und ist dadurch dezentral. Ihre Stärke ist, es hat oft die aktuelste Version zur Verführung.
  • AppImage: Dennoch stellen AppImages momentan die einfachste Variante dar: Es ist keine Konfiguration notwendig und es werden auch keine besonderen Anforderungen an das System gestellt.

Linux auf dem Smartphone

Für Smartphones und Tablets gibt es speziell optimierte Linux-Distributionen.

Sie bieten neben den Telefonie- und SMS-Funktionen diverse Navigations- und Multimedia-Funktionen.

Die Bedienung erfolgt meistens über ein Touchscreen. Linux-basierte Smartphonesysteme werden meist von Firmen entwickelt und unterscheiden sich teilweise sehr stark von den sonst klassischen Desktop-, Embedded- und Server-Distributionen.

Was vielen nicht wissen ist das Android basiert ist auf Linux. Allerdings wird von Android nur ein Teil der sonst üblichen GNU-Software-Umgebung genutzt.

Andere Smartphone-Distributionen, wie etwa Maemo Leste, Mobian, Ubuntu Touch und Sailfish OS nutzen größere Teile der klassischen GNU-Software-Umgebung, so dass diese Distributionen teilweise einfacher mit klassischen Linux-Anwendungen ergänzt werden können und somit eher Linux-Distributionen im klassischen Sinne entsprechen.

Ein andere Smartphone-Distribution ist postmarkerOS diese Distribution ist basiert auf Alpine Linux und nicht basiert auf das GNU-System und ist dadurch sehr klein und schnell.

Die Linux Smartphone-Distributionen unterstutzen nicht alle Geräte. Es ist darum sinnvoll um vorher zu schauen ob dein Gerät durch deine gewünschte Linux-Distribution unterstutzt wird.

Linux als Server

weit verbreitet sind Linux-Servers. Ein viel vorkommende Konfiguration ist die so genannte LAMP-Server.

LAMP steht für

  • Linux
  • Apache Webserver
  • Mysql / Maria DB Datenbank
  • PHP

Das ist ein Standard Kombination die benotigt sind um z.B. eine bearbeitbare Webseite laufen zu lassen, z.B. Wordpress oder Drupal

Linux Server sind bekannt für ihre Sicherheit und Stabilität

In 2017 sind 34% alle Server Linux-Server. Da nicht alle Linux-Server sich auch als solche zu erkennen geben, könnte der tatsächliche Anteil um bis zu 31 Prozentpunkte höher liegen.

Linux für das Desktop

Linux Desktop Distributionen sind in sehr viele Formen zu bekommen. Die meiste Distributionen basieren auf GNU/Linux und haben ein Paketverwaltungs-System.

Damit Linux benutzbar wird mit eine grafische Umgebung, gibt es für GNU/Linux verschiedene Desktop-Umgebungen für Linux

  • Gnome ist der bekannteste Umgebung und wird mit die meiste Distributionen Standard installiert.
  • Cinnamon ist ein abspaltung von Gnome und kombiniert Gnome 2 & 3 und ist spezial für der Linux Mint Distribution entwickelt worden.
  • KDE ist eine andere sehr bekannte Umgebung und wird auch häufig benutzt.
  • XFCE ist eine leichtere Umgebung die sich gut eignet für alte Computers.
  • LXDE ist auch eine leichtere Umgebung für langsamere Computers.

Linux für das Desktop 2

Folgende bekannte Distributionen gibt es:

  • basiert auf dpkg:
  • Debian ist eine der ältesten, einflussreichsten und am weitesten verbreiteten GNU/Linux-Distributionen. Viele Distributionen sind auf Debian basiert.
  • Ubuntu ist auf Debian basiert. Der Name Ubuntu bedeutet auf Zulu etwa „Menschlichkeit“ und bezeichnet eine afrikanische Philosophie. Ubuntu hat ein einfach zu installierendes und leicht zu bedienendes Betriebssystem mit aufeinander abgestimmter Software. Von Ubuntu gibt es verschiedene Abwanderungen: KUbuntu (bassiert auf der KDE-Desktop), XUbuntu (basiert auf der XFCE-Desktop) für altere PC’s, LUbuntu (basiert aus LXDE) für altere Computers
  • Linux Mint ist aufgebaut auf Ubuntu und kommt mit drei verschiedene Desktop Umgebungen (Cinnamon, Mate (Gnome 2 basiert) und XFCE). Es ist eine der wenigen Distributionen, die ihre bevorzugten Desktop-Umgebungen auf der Basis der eigenen Bedürfnisse und zum Erreichen der selbstgesteckten Ziele eigens entwickeln. Linux Mint enthält im Gegensatz zu Ubuntu und Debian bereits unfreie Software, z.B. Codecs für verschlüsselte DVDs, MP3 oder DivX sowie Plug-ins wie Adobe Flash und Oracle Java.

Linux für das Desktop 3

  • basiert auf rpm:

  • Fedora ist eine RPM-basierte Linux-Distribution. Ziel der Entwickler der Distribution ist es, Freie Software zu fördern und ein Betriebssystem für eine möglichst vielfältige Zielgruppe zu gestalten. Organisiert wird die Entwicklung in der Online-Community, das vom Unternehmen Red Hat angeführt wird. Fedora ist der nachfolger von Red Hat Linux. Standard ist Fedora mit Gnome 3 ausgestattet, es gibt aber auch unterstutzung für alle andere übliche Desktop Umgebungen.

  • Open SUSE ist ein Gemeinschaftsprojekt, welches den Einsatz von Linux und freier Software fördert. Neben mehreren Linux-Distributionen werden Tools zur Entwicklung und zum Test entwickelt. Die Nutzer der Distribution kommen vorwiegend aus Deutschland (knapp 26 Prozent Anteil an der weltweiten Nutzerbasis) und den USA (knapp 14 Prozent).Der Fokus der Entwickler liegt darauf, ein stabiles und benutzerfreundliches Betriebssystem mit großer Zielgruppe für Arbeitsplatzrechner und Server zu erschaffen.