1.1 Lektion 1
Zertifikat: |
Linux Essentials |
---|---|
Version: |
1.6 |
Thema: |
1 Die Linux-Community und Karriere im Open-Source-Umfeld |
Lernziel: |
1.1 Die Entwicklung von Linux und gängige Betriebssysteme |
Lektion: |
1 von 1 |
Einführung
Linux ist eines der beliebtesten Betriebssysteme. Linus Torvalds begann mit der Entwicklung 1991. Es ist von Unix inspiriert, einem weiteren Betriebssystem, das in den 1970er Jahren von AT&T Laboratories entwickelt wurde. Unix war auf Kleincomputer ausgerichtet: Damals galten “kleine” Computer als Maschinen, die keine ganze Halle mit Klimaanlage benötigten und weniger als eine Million Dollar kosteten. Später verstand man darunter Maschinen, die von zwei Personen angehoben werden konnten. Zu dieser Zeit war ein erschwingliches Unix-System auf Rechnern wie Bürocomputern, die in der Regel auf der x86-Plattform basierten, nicht ohne weiteres verfügbar. So begann Linus, damals noch Student, mit der Implementierung eines Unix-ähnlichen Betriebssystems für diese Plattform.
Meist folgt Linux denselben Grundideen wie Unix, aber Linux selbst enthält keinen Unix-Code — es ist ein unabhängiges Projekt. Linux wird nicht von einem einzelnen Unternehmen, sondern von einer internationalen Gemeinschaft von Programmierern getragen, ist frei verfügbar und von jedermann uneingeschränkt zu nutzen.
Distributionen
Eine Linux-Distribution ist eine Sammlung, die aus einem Linux-Kern (dem Kernel) und einer Auswahl von Anwendungen besteht und die von einem Unternehmen oder einer Benutzergemeinschaft gepflegt wird. Ziel ist es, den Kernel und die Anwendungen, die auf dem Betriebssystem laufen, für einen bestimmten Anwendungsfall oder eine bestimmte Benutzergruppe zu optimieren, weshalb einige Distributionen oft spezifische Werkzeuge für die Softwareinstallation und Systemadministration umfassen. So werden einige Distributionen hauptsächlich für Desktop-Umgebungen verwendet, die einfach zu bedienen sein müssen, während andere vor allem auf Servern laufen, um die verfügbaren Ressourcen so effizient wie möglich zu nutzen.
Eine weitere Möglichkeit, Distributionen zu klassifizieren, besteht in der Zuordnung zu einer Distributionsfamilie: Distributionen der Debian-Familie nutzen den Paketmanager dpkg
, um die auf dem Betriebssystem ausgeführte Software zu verwalten. Pakete, die dieser Paketmanager verwaltet, werden von Mitgliedern der Community der Distribution gepflegt. Diese Maintainer verwenden das Paketformat deb
und legen damit fest, wie die Software auf dem Betriebssystem installiert wird und wie sie standardmäßig konfiguriert ist. Genau wie eine Distribution ist ein Paket eine Software-Sammlung mit entsprechender Konfiguration und Dokumentation, die es dem Benutzer erleichtert, die Software zu installieren, zu aktualisieren und zu nutzen.
Debian GNU/Linux ist die größte Distribution der Debian-Distributionsfamilie. 1993 startete Ian Murdock das Debian GNU/Linux-Projekt, das heute Tausende von Freiwilligen unterstützen. Ziel von Debian GNU/Linux ist ein sehr zuverlässiges Betriebssystem. Zugleich steht es für Richard Stallmans Vision eines Betriebssystems, das die Freiheiten des Benutzers zum Ausführen, Studieren, Verteilen und Verbessern der Software respektiert.
Ubuntu ist eine weitere erwähnenswerte Debian-basierte Distribution. 2004 wurde Ubuntu von Mark Shuttleworth und seinem Team gegründet, mit dem Ziel, eine einfach zu bedienende Linux-Desktop-Umgebung zu schaffen. Ubuntu hat die Mission, auf der ganzen Welt freie Software bereitzustellen und die Kosten für professionelle Dienstleistungen zu senken. Ein neues Release der Distribution erscheint planmäßig alle sechs Monate und in einer Version mit längerfristigem Support alle zwei Jahre.
Red Hat ist eine Linux-Distribution, die von dem gleichnamigen Softwareunternehmen entwickelt und gepflegt wird, das 2019 von IBM übernommen wurde. 1994 wurde die Red Hat Linux-Distribution gestartet und 2003 in Red Hat Enterprise Linux (RHEL) umbenannt. Es dient Unternehmen als zuverlässige Enterprise-Lösung, die von Red Hat unterstützt wird und Software umfasst, die den Einsatz von Linux in professionellen Serverumgebungen erleichtert. Einige Komponenten erfordern kostenpflichtige Subskriptionen oder Lizenzen. Das CentOS-Projekt nutzt den frei verfügbaren Quellcode von Red Hat Enterprise Linux und fügt ihn zu einer Distribution zusammen, die kostenlos bereitsteht, dafür aber keinen kommerziellen Support bietet.
Sowohl RHEL als auch CentOS sind für den Einsatz in Serverumgebungen optimiert. Das Projekt Fedora wurde 2003 gegründet und erstellt eine Linux-Distribution für Desktop-Computer. Red Hat hat die Fedora-Distribution initiiert und pflegt sie seitdem. Fedora ist sehr fortschrittlich und übernimmt neue Technologien sehr schnell; sie gilt darum oft als Test für neue Technologien, die später möglicherweise in RHEL aufgenommen werden. Alle Red Hat-basierten Distributionen verwenden das Paketformat rpm
.
Das Unternehmen SUSE wurde 1992 in Deutschland als Unix-Service-Provider gegründet. 1994 veröffentlichte es die erste Version von SUSE Linux, bekannt vor allem für sein Konfigurationstool YaST, mit dem Administratoren Soft- und Hardware installieren und konfigurieren sowie Server und Netzwerke einrichten. Ähnlich wie bei RHEL gibt es bei SUSE den SUSE Linux Enterprise Server als kommerzielle Variante. Mit selteneren Releases wendet es sich vor allem an Unternehmen. Es wird sowohl als Server- wie auch als Desktop-Umgebung mit entsprechenden Paketen angeboten. 2004 startete SUSE das Projekt openSUSE, mit dem Entwickler und Anwender künftige Technologien für das System testen und weiterentwickeln können. Die openSUSE-Distribution steht zum kostenlosen Download zur Verfügung.
Im Laufe der Jahre entstanden weitere unabhängige Distributionen. Einige basieren auf Red Hat oder Ubuntu, andere wollen bestimmte System- oder Hardwareeigenschaften verbessern. Es gibt Distributionen mit ganz spezifischen Funktionalitäten wie QubesOS, eine sehr sichere Desktop-Umgebung, oder Kali Linux zur Ermittlung von Software-Schwachstellen, das insbesondere Penetration-Tester nutzen. Zuletzt entstanden zahlreiche sehr kleine Linux-Distributionen für den Betrieb in Linux-Containern wie Docker. Es gibt auch Distributionen, die speziell für Komponenten von Embedded Systemen und sogar Smart Devices entwickelt wurden.
Embedded Systeme
Embedded Systeme sind eine Kombination aus Computer-Hardware und -Software mit sehr spezifischen Aufgaben innerhalb eines größeren Systems. In der Regel sind sie Teil anderer Geräte und dienen deren Steuerung. Embedded Systeme finden sich in Automobil-, Medizin- und sogar Militäranwendungen. Aufgrund seiner vielfältigen Einsatzmöglichkeiten entstanden zahlreiche Betriebssysteme auf Basis des Linux-Kernels für den Einsatz in Embedded Systemen. Ein großer Teil der Smart Devices verfügt über ein Betriebssystem auf Basis des Linux-Kerns.
Daher sind Embedded Systeme auch mit Embedded Software verbunden. Zweck dieser Software ist es, auf die Hardware zuzugreifen und sie nutzbar zu machen. Die Hauptvorteile von Linux gegenüber anderer, proprietärer Embedded Software sind die Kompatibilität mit herstellerübergreifenden Plattformen, Entwicklung, Support und fehlende Lizenzgebühren. Zwei der beliebtesten Embedded Softwareprojekte sind Android, das hauptsächlich auf Mobiltelefonen verschiedener Hersteller zum Einsatz kommt, und Raspbian, das vor allem auf dem Raspberry Pi verwendet wird.
Android
Android ist ein von Google entwickeltes mobiles Betriebssystem. 2003 wurde Android Inc. in Palo Alto, Kalifornien, gegründet. Das Unternehmen schuf zunächst ein Betriebssystem für Digitalkameras. 2005 kaufte Google Android Inc. und entwickelte eines der größten mobilen Betriebssysteme.
Die Basis von Android ist eine modifizierte Version des Linux-Kernels mit zusätzlicher Open-Source-Software. Das Betriebssystem ist hauptsächlich für Touchscreen-Geräte gedacht, aber Google hat auch Versionen für TV und Armbanduhren entwickelt. Weitere Varianten von Android gibt es für Spielekonsolen, Digitalkameras sowie PCs.
Android ist im Rahmen des Android Open Source Project (AOSP) frei verfügbar. Google bietet neben dem Open-Source-Kern von Android eine Reihe proprietärer Komponenten an, darunter Anwendungen wie Google Calendar, Google Maps, Google Mail, den Browser Chrome sowie den Google Play Store, der die einfache Installation von Apps ermöglicht. Die meisten Nutzer betrachten diese Tools als integrale Bestandteile von Android, und fast alle mobilen Geräte, die mit Android in Europa und Amerika ausgeliefert werden, enthalten proprietäre Google-Software.
Android auf Embedded Geräten hat viele Vorteile: Das Betriebssystem ist mit einer grafischen Benutzeroberfläche intuitiv zu bedienen, und es hat eine sehr große Entwicklergemeinschaft, so dass man leicht Hilfe bei der Entwicklung findet. Zudem wird es von der Mehrheit der Hardwareanbieter mit Android-Treibern unterstützt, so dass sich Prototypen von Systemen einfach und kostengünstig entwickeln lassen.
Raspbian und der Raspberry Pi
Raspberry Pi ist ein preiswerter, scheckkartengroßer Computer, der als vollwertiger Desktop-Rechner, aber auch innerhalb eines Embedded-Linux-Systems fungieren kann. Entwickelt wird er von der Raspberry Pi Foundation, einer gemeinnützigen Organisation mit Sitz in Großbritannien, die vor allem jungen Menschen das Programmieren und die Funktionsweise von Computern nahebringt. Der Raspberry Pi lässt sich so einrichten und programmieren, dass er die gewünschten Aufgaben oder Operationen innerhalb eines deutlich komplexeren Systems erfüllt.
Zu den Besonderheiten des Raspberry Pi gehört ein Satz von General Purpose Input-Output (GPIO)-Pins, über die man elektronische Geräte und Erweiterungsboards anschließt, so dass der Raspberry Pi zur Plattform für Hardwareentwicklung wird. Obwohl ursprünglich für Bildungszwecke gedacht, werden Raspberry Pis heute in verschiedenen DIY-Projekten sowie für Industrial Prototyping bei der Entwicklung von Embedded Systemen eingesetzt.
Der Raspberry Pi verwendet ARM-Prozessoren. Verschiedene Betriebssysteme, darunter Linux, laufen auf dem Raspberry Pi. Da er keine Festplatte hat, startet das Betriebssystem von einer SD-Speicherkarte. Eine der bekanntesten Linux-Distributionen für den Raspberry Pi ist Raspbian. Wie der Name schon verrät, gehört es zur Debian-Distributionsfamilie, ist für die Installation auf der Raspberry Pi-Hardware angepasst und bietet mehr als 35000 für diese Umgebung optimierte Pakete. Neben Raspbian gibt es für den Raspberry Pi zahlreiche andere Linux-Distributionen, wie z.B. Kodi, das den Raspberry Pi in ein Media Center verwandelt.
Linux und die Cloud
Der Begriff Cloud Computing beschreibt eine standardisierte Methode zur Nutzung von Rechenleistung, entweder durch Einkauf bei einem Public-Cloud-Anbieter oder durch den Betrieb einer privaten Cloud. Studien besagen, dass 2017 über 90% der Public-Cloud-Arbeitslast von Linux-Systemen verarbeitet wurden. Jeder Cloud-Anbieter, von Amazon Web Services (AWS) bis Google Cloud Platform (GCP), bietet verschiedene Linux-Varianten an. Sogar Microsoft hat heute in seiner Azure Cloud Linux-basierte virtuelle Maschinen im Angebot.
Linux wird häufig im Rahmen von Infrastructure as a Service (IaaS) angeboten. IaaS-Instanzen sind virtuelle Maschinen, die innerhalb weniger Minuten in der Cloud bereitgestellt werden. Beim Start einer IaaS-Instanz wird ein Image ausgewählt, das in der neuen Instanz sämtliche Daten bereitstellt. Cloud-Provider bieten verschiedene Images an — sowohl betriebsbereite Installationen gängiger Linux-Distributionen als auch eigene Linux-Versionen. Der Cloud-Benutzer wählt ein Image mit seiner bevorzugten Distribution aus und kann kurz darauf auf eine Cloud-Instanz mit dieser Distribution zugreifen. Die meisten Cloud-Anbieter fügen ihren Images Tools hinzu, um die Installation an eine bestimmte Cloud-Instanz anzupassen. Diese Tools können beispielsweise die Dateisysteme des Images auf die aktuelle Festplatte der virtuellen Maschine erweitern.
Geführte Übungen
-
Inwiefern unterscheidet sich Debian GNU/Linux von Ubuntu? Nennen Sie zwei Aspekte.
-
Welche sind die gängigsten Umgebungen/Plattformen, in denen Linux eingesetzt wird? Nennen Sie drei verschiedene Umgebungen/Plattformen und nennen Sie eine Distribution, die sich für alle eignet.
-
Sie planen die Installation einer Linux-Distribution in einer neuen Umgebung. Nennen Sie vier Dinge, die Sie bei der Auswahl der Distribution berücksichtigen sollten.
-
Nennen Sie — abgesehen von Smartphones — drei Geräte, auf denen das Android-Betriebssystem läuft.
-
Erklären Sie drei wesentliche Vorteile von Cloud Computing.
Offene Übungen
-
Welche Distributionen sind in Bezug auf Kosten und Leistung am besten für ein Unternehmen geeignet, das darauf abzielt, die Lizenzkosten zu senken und gleichzeitig die Leistung auf dem höchsten Niveau zu halten? Erklären Sie, warum.
-
Was sind die Hauptvorteile des Raspberry Pi und welche Funktionen kann er in Unternehmen erfüllen?
-
Welche Distributionen bieten Amazon Cloud Services und Google Cloud an? Nennen Sie mindestens drei gemeinsame und zwei verschiedene.
Zusammenfassung
In dieser Lektion haben Sie gelernt:
-
Welche Linux-Distributionen gibt es?
-
Was sind Linux Embedded Systeme?
-
Wie werden Linux Embedded Systeme eingesetzt?
-
Verschiedene Einsatzmöglichkeiten von Android
-
Verschiedene Einsatzmöglichkeiten des Raspberry Pi
-
Was ist Cloud Computing?
-
Welche Rolle spielt Linux beim Cloud Computing?
Lösungen zu den geführten Übungen
-
Inwiefern unterscheidet sich Debian GNU/Linux von Ubuntu? Nennen Sie zwei Aspekte.
Ubuntu basiert auf einer Momentaufnahme (einem sogenannten Snapshot) von Debian, daher gibt es viele Ähnlichkeiten. Allerdings gibt es auch erhebliche Unterschiede: Der erste ist die Eignung für Anfänger. Ubuntu wird besonders Anfängern wegen seiner Benutzerfreundlichkeit empfohlen, Debian hingegen eher fortgeschritteneren Benutzern. Der größte Unterschied liegt in der Komplexität der Benutzerkonfiguration, die Ubuntu während des Installationsprozesses nicht hat.
Ein weiterer Unterschied liegt in der Stabilität. Debian gilt im Vergleich zu Ubuntu als stabiler. Dies liegt daran, dass Debian weniger Updates erhält und diese intensiv getestet werden. Auf der anderen Seite ermöglicht Ubuntu dem Benutzer, die neuesten Versionen von Software und neue Technologien zu verwenden.
-
Welche sind die gängigsten Umgebungen/Plattformen, in denen Linux eingesetzt wird? Nennen Sie drei verschiedene Umgebungen/Plattformen und nennen Sie eine Distribution, die sich für alle eignet.
Gängigen Umgebungen/Plattformen sind Smartphone, Desktop und Server. Smartphones nutzen Distributionen wie Android. Auf Desktop und Server kommen alle Distributionen zum Einsatz, die sich am besten für Typ und Funktion der jeweiligen Maschine eignen, von Debian und Ubuntu bis CentOS und Red Hat Enterprise Linux.
-
Sie planen die Installation einer Linux-Distribution in einer neuen Umgebung. Nennen Sie vier Dinge, die Sie bei der Auswahl der Distribution berücksichtigen sollten.
Bei der Auswahl einer Distribution sollten vor allem Kosten, Leistung, Skalierbarkeit, Stabilität und der Hardwarebedarf des Systems berücksichtigt werden.
-
Nennen Sie — abgesehen von Smartphones — drei Geräte, auf denen das Android-Betriebssystem läuft.
Andere Geräte, auf denen Android läuft, sind Smart TVs, Tablet-Computer, Android Auto und Smartwatches.
-
Erklären Sie drei wesentliche Vorteile von Cloud Computing.
Die Hauptvorteile von Cloud Computing sind Flexibilität, einfache Wiederherstellung und niedrige Nutzungskosten. Cloud-basierte Services sind je nach Geschäftsanforderungen einfach zu implementieren und zu skalieren. Es hat einen großen Vorteil bei Backup- und Wiederherstellungslösungen, da es Unternehmen ermöglicht, Vorfälle schneller und mit geringeren Auswirkungen zu beheben. Darüber hinaus reduziert es die Betriebskosten, da es ermöglicht, nur für die Ressourcen zu zahlen, die ein Unternehmen in einem subskriptionsbasierten Modell verwendet.
Lösungen zu den offenen Übungen
-
Welche Distributionen sind in Bezug auf Kosten und Leistung am besten für ein Unternehmen geeignet, das darauf abzielt, die Lizenzkosten zu senken und gleichzeitig die Leistung auf dem höchsten Niveau zu halten? Erklären Sie, warum.
Eine der am besten geeigneten Distributionen für Unternehmen ist CentOS. Es umfasst alle Red Hat-Produkte der kommerziellen Variante des Betriebssystems, steht aber frei zur Verfügung. Ebenso garantieren Ubuntu LTS-Releases den Support für einen längeren Zeitraum. Die stabilen Versionen von Debian GNU/Linux werden auch häufig in Unternehmensumgebungen verwendet.
-
Was sind die Hauptvorteile des Raspberry Pi und welche Funktionen kann er in Unternehmen erfüllen?
Raspberry Pi ist klein, arbeitet aber wie ein normaler Computer. Darüber hinaus ist er kostengünstig und bewältigt Web-Traffic und viele andere Aufgaben. Er kann als Server, Firewall und als Mainboard für Roboter und viele andere kleine Geräte dienen.
-
Welche Distributionen bieten Amazon Cloud Services und Google Cloud an? Nennen Sie mindestens drei gemeinsame und zwei verschiedene.
Amazon und Google Cloud Services gemeinsame Dsitributionen sind Ubuntu, CentOS und Red Hat Enterprise Linux. Jeder Cloud-Provider bietet auch spezifische Distributionen an, die der andere nicht anbietet. Amazon hat Amazon Linux und Kali Linux, während Google etwa FreeBSD und Windows Server anbietet.