Einführung in Linux vom Hobby-Projekt zum professionellen Betriebssystem 14.10.14 FB 20 Informatik Jannik Vieten 1
Was ist das? Als Linux oder GNU/Linux bezeichnet man in der Regel freie, unix-ähnliche MehrbenutzerBetriebssysteme, die auf dem Linux-Kernel und wesentlich auf GNU-Software basieren. 14.10.14 FB 20 Informatik Jannik Vieten 2
Motivation Warum mit Linux beschäftigen? gerade Informatikern begegnet Linux des öfteren cooles und mächtiges System, das sich zu benutzen lohnt Warum Vortrag statt Workshop? erstmal Hintergrundwissen vermitteln vieles ist neu und noch unbekannt (Einstieg erleichtern) Programme öffnen und rumklicken kann jeder selbst 14.10.14 FB 20 Informatik Jannik Vieten 3
Wer hats erfunden? in den 80er Jahren waren unfreie UNIX Systeme weit verbreitet, insb. bei Universitäten 1991 begann der finnische Student Linus Torvalds einen Terminal-Emulator zum Zugriff auf die Universitätsserver zu programmieren nach einiger Zeit bemerkte Torvalds, dass er mehr ein Betriebssystem als nur eine Terminalemulation geschrieben hatte gehostet auf den FTP-Servern der Universität von Helsinki, vergab der dortige Admin den Projektnamen Linux 14.10.14 FB 20 Informatik Jannik Vieten 4 Linus Torvalds
Die Ankündigung Hello everybody out there using minix I'm doing a (free) operating system (just a hobby, won't be big and professional like gnu) [...] I'll get something practical within a few months, and I'd like to know what features most people would want. [...] it's free of any minix code, [...] 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 :-(. - Torvalds in der comp.os.minix Newsgroup, 1991 14.10.14 FB 20 Informatik Jannik Vieten 5
Open Source der Quelltext ist öffentlich Programm daher i.d.r. kostenlos Code darf verändert und weiterverbreitet werden Programm steht unter Open Source Lizenz z.b. GNU General Public License (GPL) oft große Beteiligung der Community 14.10.14 FB 20 Informatik Jannik Vieten 6
Open Source Vorteile Fehler und Sicherheitslücken durch viele-augen-prinzip finden Vertrauen in den Code; keine versteckten Backdoors seltener kommerzielle Interessen, Technik im Vordergrund Möglichkeit selbst etwas zu verändern und den Code zu nutzen Making Linux GPL'd was definitely the best thing I ever did. - Torvalds 14.10.14 FB 20 Informatik Jannik Vieten 7
Der Linux Kernel Ein modularer monolithischer Betriebssystemkern die Software ganz unten im System, zwischen Hardware und Anwendung enthält Treiber für Hardware und bietet Schnittstellen für Anwendungen u.a. Speicherverwaltung, Prozessverwaltung, Input/Output... Unter abschließender Kontrolle durch Linus Torvalds wird der Linux Kernel heute von vielen Kernel Hackern weiterentwickelt. www.kernel.org 14.10.14 FB 20 Informatik Jannik Vieten 8
Kernel: Schematischer Aufbau 14.10.14 FB 20 Informatik Jannik Vieten 9
GNU/Linux 1984 begann Richard Stallman mit dem GNU-Projekt (GNU's Not Unix) Ziel: vollständig freies Betriebssystem schaffen brachte einige nützliche Programme hervor (gcc, gdb, bash,...) aber kein brauchbarer Kernel vorhanden! 1991/1992 wurde der Linux Kernel veröffentlicht Kombination von Linux Kernel und GNU Software Richard Stallman www.gnu.org 14.10.14 FB 20 Informatik Jannik Vieten 10
Organisationen Free Software Foundation gegründet von Richard Stallman fördert das GNU-Projekt beschäftigt Entwickler für freie Software kümmert sich auch um juristische Belange veröffentlicht u.a. GPL www.fsf.org The Linux Foundation Rechtsschutz für Entwickler Standardisierung von Linux Bezahlung wichtiger Entwickler finanziell unterstützt von großen Unternehmen Google, IBM, Intel... 14.10.14 FB 20 Informatik Jannik Vieten 11 www.linux-foundation.org
Tux Tux, das Linux Maskottchen Torvalds Unix 14.10.14 FB 20 Informatik Jannik Vieten 12
Distributionen Gesamtpaket aus Kernel, Anwendungen und zusätzlicher Software spezifische Anpassungen (proprietäre Bibliotheken, Paketverwaltung...) User kann installierbares Image runterladen fertiges Betriebssystem dann einsatzbereit bereitgestellt durch Distributor Community oder Unternehmen 14.10.14 FB 20 Informatik Jannik Vieten 13
Distributionen (Auswahl) www.ubuntu.com www.fedoraproject.org www.opensuse.org www.debian.org www.linuxmint.com und viele mehr... 14.10.14 FB 20 Informatik Jannik Vieten 14
Desktop-Umgebungen Unterschiedliche Desktop-Umgebungen bestimmen: Aussehen der Benutzeroberfläche Bedienkonzept für den User Standardprogramme (Dateimanager, Taschenrechner...) 14.10.14 FB 20 Informatik Jannik Vieten 15
Desktop: GNOME 14.10.14 FB 20 Informatik Jannik Vieten 16
Desktop: KDE 14.10.14 FB 20 Informatik Jannik Vieten 17
Desktop: Cinnamon 14.10.14 FB 20 Informatik Jannik Vieten 18
Desktop: MATE 14.10.14 FB 20 Informatik Jannik Vieten 19
Desktop: Xfce 14.10.14 FB 20 Informatik Jannik Vieten 20
Die Konsole Die Konsole (auch Terminal) nimmt Eingaben vom User entgegen macht textuelle Ausgaben Die Shell (bei Linux bash) ist essentielles Systemprogramm führt Eingaben (Befehle) aus 14.10.14 FB 20 Informatik Jannik Vieten 21
Das Dateisystem übliche Dateisysteme unter Linux: ext2, ext3, ext4, btrfs... swap Partition als Erweiterung für den Arbeitsspeicher verstecke Dateien tragen Punkt vor dem Namen (wie.config) Jede Datei hat Attribute Berechtigung für: lesen, schreiben, ausführen jeweils für: User (Eigentümer), Group (Gruppe des Users), Other (alle anderen) 14.10.14 FB 20 Informatik Jannik Vieten 22
Die Ordnerstruktur / oberstes Verzeichnis; root-verzeichnis /boot beim Start benötigte Dateien /etc globale Einstellungen /home Dateien und Einstellungen der User /tmp Temporäre Dateien /usr Systembestandteile, Software, Bibliotheken und weitere... 14.10.14 FB 20 Informatik Jannik Vieten 23
Admin? root! der Administrator unter Linux heißt root nicht zu verwechseln mit Verzeichnissen / oder /root Benutzer standardmäßig ohne höhere Rechte angemeldet Zugriff hauptsächlich auf /home/username für Aktionen die das System beeinflussen werden root-rechte benötigt z.b. neue Software installieren, Firewalleinstellungen entweder sudo Befehl ausführen (super-user-do...) oder su ausführen (switch user) um als root anzumelden 14.10.14 FB 20 Informatik Jannik Vieten 24
Paketverwaltung 14.10.14 FB 20 Informatik Jannik Vieten 25
Paketverwaltung (Vorteile) Download der Software aus zentraler Quelle; kein Suchen im Internet einfacher Zugriff auf aktuelle oder stabil getestete Versionen intelligentes System mit Abhängigkeiten zwischen Softwarekomponenten Update des gesamten Systems inkl. Anwendungen mit einem Klick 14.10.14 FB 20 Informatik Jannik Vieten 26
Sicherheitskonzept Linux gilt allgemein als relativ sicher geringe Verbreitung auf Desktops, uninteressant für Virenschreiber hauptsächlich Open Sorce Software aktuelle Software aus Repositories gute Rechteverwaltung Sicherheitserweiterungen verfügbar, wie SELinux 14.10.14 FB 20 Informatik Jannik Vieten 27
Windowsprogramme für Windows kompilierte Programme sind nicht direkt unter Linux lauffähig! Zocker kommen meist nicht um Windows herum Windows und Linux auf zwei Partitionen installieren kein Ersatz für Windowsprogramm gefunden? Windows in virtueller Maschine installieren Programm unter Wine (Wine Is Not an Emulator) laufen lassen 14.10.14 FB 20 Informatik Jannik Vieten 28
Verbreitung PC noch schwach Embedded Systems sehr stark Server sehr stark Smartphones sehr stark 14.10.14 FB 20 Informatik Jannik Vieten 29 Supercomputer dominant
Warum Linux nutzen? es ist Open Source! es hat eine Paketverwaltung! man hat die Wahl! (Distributionen, grafische Oberflächen...) es gibt eine professionelle Community! man lernt (wahrscheinlich) mehr über Betriebssysteme! es ist etwas sicherer! 14.10.14 FB 20 Informatik Jannik Vieten 30
Fragen, Kritik, Anmerkungen?! 14.10.14 FB 20 Informatik Jannik Vieten 31