Linux-Derivate Mint: Linux-Derivate Debian, Suse, Red Hat: Linux-Derivate Yellow Dog: Linux-Derivate
Total Page:16
File Type:pdf, Size:1020Kb
Linux Alle Studiengänge Dipl.-Inf., Dipl.-Ing. (FH) Michael Wilhelm Hochschule Harz FB Automatisierung und Informatik [email protected] http://www.miwilhelm.de Raum 2.202 Tel. 03943 / 659 338 FB Automatisierung und Informatik: Linux Inhalt 1. Einführung, Literatur, Begriffe 2. Installation 3. Konsolen-Befehle, Shell, Manual 4. Komplexe Befehle (grep, find, tar, sed, cron, netcat) 5. C-Programmierung (C, IO, Thread, make) 6. Python (Sprache) 7. Python (GUI) FB Automatisierung und Informatik: Linux 2 Literatur Alexander Mayer , Shell-Programmierung in Unix; Computer & Literatur, ISBN 3-932311-78-7 Linux: Das umfassende Handbuch , 2015, Michael Kofler, 1435 Seiten, ISBN-10: 383623775X Linux-Kommandoreferenz: Shell-Befehle von A bis Z, Michael Kofler, ISBN-10: 3836225956 Linux-Server: Das umfassende Handbuch, Dirk Deimeke, Charly Kühnast, ISBN-10: 3836230208 Shell-Programmierung: Das umfassende Handbuch , Jürgen Wolf, Stefan Kania, ISBN-10: 3836223104 FB Automatisierung und Informatik: Linux Literatur LINUX – DAS UMFASSENDE HANDBUCH, 2015 14. Auflage ISBN: 978-3-8362-3775-8 Linux verstehen und anwenden , Kai Petzke ISBN 3-446-21166-7 Bash Programmierung , Christian Graiger ISBN 978-3-939084-30-3 FB Automatisierung und Informatik: Linux 4 Das Betriebssystem UNIX Historische Entwicklung Schichtenmodell von UNIX Logisches Dateisystem Physisches Dateisystem Gerätedateien Die UNIX-Kommandos als Filter FB Automatisierung und Informatik: Linux 5 Historische Entwicklung Bis 1969 wurden die EDV-Systeme im Batch-Betrieb gefahren Programm mit Lochkarten entwickeln Abgabe Programm durch den Operator Ausdruck FB Automatisierung und Informatik: Linux 6 Das Betriebssystem UNIX Ziel der Entwicklung: Multiuser System Multitask System Entwicklung im Team und im Dialog Workstation vs. Großrechner hohe Funktionalität strukturelle Einfachheit / Transparenz leichte Bedienbarkeit Unix ist von Programmierern für Programmierer FB Automatisierung und Informatik: Linux 7 Geschichte: 1969 von Ken Tompson bei Bell Laboratories für die interaktive Programmentwicklung entwickelt worden (Assembler PDP 7). Tompson entwickelt die Sprache B, Dennis Ritchie entwickelt C; 1971 wurde UNIX in C auf eine PDP 11 portiert Bis Ende der 70er Verbreitung durch akademische Institutionen mit Quellcode. Versionen nach Berkely oder AT&T wurden 1991 zu einer Version zusammengeführt: System V, Release 4 (SVR4) aber: XENIX (Microsoft), SINIX, HP/UX, AIX, SCO Unix, Minix habe eigene Bedeutung. Neueste Entwicklung ist LINUX. ca. 400 Programme gehören zum Umfang von UNIX Kein Entwicklungsauftrag Vertrieb an Hochschulen Kern des Unix-Systems ca. 20,000 Zeilen, Ubuntu heute 14 Mill. Davon 2000 Zeilen Assembler FB Automatisierung und Informatik: Linux 8 Schichtenmodell von Unix: Zugriffe zwischen den Schichten über Schnitt- stellen Shell als Kommandointerpreter Programmiersprache FB Automatisierung und Informatik: Linux 9 Unixbegriffe Daemon: Disk and Execution Monitor Root: Unix Systemadministrator Shell: Programm zur Entgegennahme von Befehlen Pipes Datentransfer zwischen Prozessen (FIFO) Konsole: Fenster mit Texteingabe tar / gz : Komprimierungsdatei vi / Emacs, pico, nano, sed: Unix-Editoren X-Windows, KDE, Gnome: Linux-Oberflächen ubunto, kubuntu, Knoppix : Linux-Derivate Mint: Linux-Derivate Debian, Suse, Red Hat: Linux-Derivate Yellow Dog: Linux-Derivate FB Automatisierung und Informatik: Linux 10 Konsole vs. Shells Kommandos werden in einem Konsolenfenster eingegeben Die Kommandos werden dann von einer Shell ausgewertet Einige Kommandos in den Shells implementiert. − Diese Kommandos heißen auch interne Shellbefehle. − Der Grund ist bessere Performance. FB Automatisierung und Informatik: Linux 11 Unix-Linux-Stammbaum: FB Automatisierung und Informatik: Linux 12 Linux-Stammbaum: besser http://www.levenez.com/unix/unix.pdf Quelle: http://www.fixmbr.de/der-linux-stammbaum/ FB Automatisierung und Informatik: Linux 13 Linux-Aufbau Linux besteht im Kern nur aus den Betriebskomponenten Die Shells, Bash, k, c-Shell, gehören nicht zum BS Auch die Oberflächen gehören nicht zum BS Die Oberflächen können auch zur Laufzeit gewechselt werden. Die Linuxderivate haben unterschiedliche Laufzeiten − Normale Version ca. 6 Monate bis 1 Jahr − LongTerm Support (LTS) − Red Hat bis zu 10 Jahre − Ubuntu ca. 5 Jahre FB Automatisierung und Informatik: Linux 14 Linux-Derivate: Oberflächen Gnome: Debian, Fedora und allen Enterprise.Distr. Unity für Ubuntu, Ableger von Gnome, aktueller Standard KDE viele Optionsmöglichkeiten, unübersichtlich Xfce für leistungsschwache Rechner LXDE für leistungsschwache Rechner Fluxbox Pantheon Für Elementary OS, Bildet OS X nach Bodhi Linux Ubuntu mit Enlightenment E17, sparsam, effektvoll FB Automatisierung und Informatik: Linux 15 Ubuntu-Versionen ■ Ubuntu mit GNOME als grafische Oberfläche oder als Server-Variante ohne grafische Oberfläche ■ Kubuntu - mit KDE als Desktopumgebung ■ Xubuntu - mit dem schlanken Xfce als grafischer Oberfläche - besonders für ältere Rechner geeignet. ■ Edubuntu - eine speziell angepasste Version für Schulen, mehr im Artikel Edubuntu. ■ Ubuntu Studio - Optimierte Ubuntu-Version für Multimedia- Produzenten, siehe Ubuntu Studio für Details. FB Automatisierung und Informatik: Linux 16 Ubuntu-Versionen 3 ■ Gobuntu - Sämtliche Komponenten dieser Version von Ubuntu stehen unter freien Lizenzen. Dies bedeutet jedoch auch, dass Hardware, die propritäre Treiber oder Firmware benötigt nicht funktionieren wird. ■ Ubuntu Server - Speziell für Server optimiert. Es wird keine graphische Oberfläche installiert. Serverdienste können bei der Installation ausgewählt werden. ■ Ubuntu JeOs - Spezielle Version um Ubuntu als virtuelle Appliance in einer virtuellen Maschine zu betreiben. Weitere Informationen findet man in den Release Notes von JeOs. FB Automatisierung und Informatik: Linux 17 Ubuntu-Versionen ■ Mint − KDE Oberfläche − Xfce Oberfläche − Chinnamon Oberfläche Mutlimedia Programme − Mate ■ Elementary OS – kanadische Linux-Distribution auf Basis von Ubuntu,à la OS X FB Automatisierung und Informatik: Linux 18 Linux-Derivate: CentOS − (Community Enterprise OS, Basis Red Hat) Damn Small Linux − basiert auf Debian Debian − Stabil, aber “veraltete” Treiber Sabayon Linux (Gentoo) − Update werden auf dem Rechner compiliert, (Portage) − Media-Center XBMC, (Core, Xfce, LXDE, Enlightnement) FB Automatisierung und Informatik: Linux 19 Linux-Derivate: Red Hat Enterprise − Servervariante stark, Desktop für Entwickler, nicht kostenlos Fedora − Aus Red Hat, nur freie Programme − Gnome, KDE, LXDE, Xfce − Nicht unbedingt für Laien Gentoo − Zielgruppe Entwickler und Netzwerkspezialisten Arch − Fortgeschrittener Anwender FB Automatisierung und Informatik: Linux 20 Linux-Derivate: Open Suse − Benutzerfreundlichkeit, YAST (Yet another Setup Tool) − Anwenderfreundlich Puppy Linux − Sehr schnell und klein Ultimate Linux Gamer − Vorinstalliertes PlayOnLInux (Wine), auch Live-CD FB Automatisierung und Informatik: Linux 21 Linux-Derivate: GParted − Live-Linux Knoppix − Live-Linux FB Automatisierung und Informatik: Linux 22 Ubuntu FB Automatisierung und Informatik: Linux 23 FB Automatisierung und Informatik: Linux 24 FB Automatisierung und Informatik: Linux 25 FB Automatisierung und Informatik: Linux 26 FB Automatisierung und Informatik: Linux 27 FB Automatisierung und Informatik: Linux 28 FB Automatisierung und Informatik: Linux 29 FB Automatisierung und Informatik: Linux 30 Oberfläche GNOME FB Automatisierung und Informatik: Linux 31 Oberfläche KDE FB Automatisierung und Informatik: Linux 32 Logisches Dateisystem Das Dateisystem unter Linux besitzt einen baumähnlichen Aufbau 5 Komponenten: Normale Dateien: entspricht den üblichen Dateien Gerätedateien: Verweise zu E/A-Geräten Verzeichnisse: speichert Dateien und Verzeichnisse Benannte Pipes Datentransfer zwischen Prozessen (FIFO) Symbolische Links: Mehrere Verweise auf eine phys. Datei FB Automatisierung und Informatik: Linux 33 Dateibaum Wurzel des Dateibaumes ist das „Root“ (/) Jeder Namen besteht aus 14 bzw. 255 Zeichen Unterscheidung zwischen Groß- und Kleinschreibung Es gibt nur einen Dateibaum Es gibt keine Laufwerke Festplatten sind in /dev eingetragen und werden mit dem mount-Befehl im Verzeichnis /mnt oder /media eingetragen Mount eines USB-Sticks mittels Namens: ■ Anlegen des USB-Verzeichnisses, mkdir /mnt/usb1 ■ mount -t vfat /mnt/usb1 -L BUFF_E BUFF_E=Name unmount mittels Verzeichnis: ■ umount /mnt/usb1 FB Automatisierung und Informatik: Linux 34 Verzeichnisbaum FB Automatisierung und Informatik: Linux 35 Verzeichnisse : root oberstes Verzeichnis bin Standardbefehle, /usr/bin, Bibliotheken sbin Systembefehle, Admin, Bibliotheken usr User (veraltet), beinhaltet weitere Kommandos etc Verwaltungsdateien home Nutzer var Spool Verzeichnis, Unix-Derivat, variable Dateien opt KDE Bereich prog Aktuelle Session boot Systemstart Infos dev Treiber für Laufwerke, Grafik, SCSI, Geräte temp temporäre Dateien lib Bibliotheken mnt Zugriff auf die Geräte media Zugriff auf die Geräte FB Automatisierung und Informatik: Linux 36 www.cygwin.com FB Automatisierung und Informatik: Linux 37 cygwin : FB Automatisierung und Informatik: Linux 38 cygwin : FB Automatisierung und Informatik: Linux 39 cygwin : FB Automatisierung und Informatik: Linux 40 cygwin : FB Automatisierung und Informatik: Linux 41 cygwin : FB Automatisierung und Informatik: Linux 42 cygwin : FB Automatisierung und Informatik: Linux 43 cygwin : FB Automatisierung und Informatik: Linux 44 FB Automatisierung und Informatik: Linux 45 cygwin Optionen: Editoren Shells System • ed • bash • ping • fzf-vim • zsh • gvim • fzf-bash • hexedit • mksh Kornshell • joe • nano • vom FB Automatisierung und Informatik: Linux 46.