Zu Hauptinhalt springen

52803 Linux: Grundlagen, Konzepte, Anwendungen (2SWSt, 3LP)


Der Kurs bietet eine grundlegende Einführung und ist an den ersten beiden Tagen auch für absolute Linux-Neulinge geeignet. Dann geht's allerdings etwas in die Tiefe ...

Das freie Betriebssystem Linux ist inzwischen gut 30 Jahre alt. Es hat sich in weiten Bereichen der IT durchgesetzt:

Tux

(Foto: Wikipedia)

Im wissenschaftlichen Umfeld (nicht nur in der Mathematik und Physik) ist Linux als Client-Betriebssystem allerdings sehr verbreitet. Wesentliche Gründe sind:

  • Linux ist kostenlos erhältlich.
  • sehr viele Anwendersoftware ist auch kostenlos, es gibt eine riesige Community von freiwilligen Programmierern.
  • alles ist (zumindest im Prinzip) durchschaubar - der Quellcode von Linux ist frei zugänglich, auch der von vielen kostenlos erhältlichen Software-Paketen.
  • Linux ist ein sehr effizientes Multitasking - Betriebssystem. Im Hintergrund können Jobs zur Auswertung von Daten laufen, trotzdem kann man noch interaktiv an der Konsole arbeiten.
  • Linux ist sehr stabil. Es wird gepflegt durch eine große Gruppe von Fachleuten weltweit (auch von Leuten, die von Firmen dafür bezahlt werden!), die Mechanismen zur Qualitätssicherung sind sehr effizient.
  • Linux hat von Anfang an sichere Konzepte implementiert. Der normale User hat immer nur eingeschränkte Rechte, somit wird von vorn herein der Einfluß von Schadsoftware begrenzt. Andere Betriebssysteme haben da inzwischen nachgezogen, auch Windows. Werden Sicherheitslücken in Linux bekannt, erfolgt ein Update oft viel schneller als bei proprietären Systemen.
  • Linux besitzt sehr effiziente Kommandozeilentools. Microsoft hat inzwischen für Windows10 ein Linux-Subsystem entwickelt, mit dem Linux-Programme direkt auf der Windows-Kommandozeile ausgeführt werden können...


Gliederung des Kurses

Arbeitsmaterial von innerhalb der Uni Regensburg aus abrufbar bzw. mit VPN. Die Übungen finden vor Ort im Linux-Pool PHY 1.0.02 statt.

  1. Erster Kontakt mit Linux
    1. Unix 
    2. was ist Linux? 
    3. Die Oberflächen KDE und Gnome 
    4. Das Linux-Filesystem 
    5. Ganz wichtige Linux-Befehle 
    6. Alias; grundlegende Prozessverwaltung 
    7. Drucken unter Unix; IO-Redirection und die Pipe 
    8. df und du
    9. Zugriffe auf Unix-Files und Directories steuern mit Access Control Lists 
    10. Linux-Distributionen 
    11. ReX: Linux an der Uni Regensburg 
    12. Professionelles Backup und Restore an der Uni Regensburg 
  2. Für Umsteiger: Überblick Software unter Linux (Auswahl! Softwareentwicklung in Block 5)
    1. Anpassungen der Oberfläche Gnome 3 Classic 
    2. Office und Publishing, TeX, Postscript und PDF:
      OpenOffice (LibreOffice), LaTeX mit LyX, Ghostview, PDF-Toolkit
    3. Graphik mit Utilities: Inkscape, Gimp, ImageMagick mit convert
    4. Mathematik: Maple, Mathematica, Matlab
    5. Tools für Naturwissenschaftler: gnuplot, qtiplot, imageJ und einige Molekül-Viewer
    6. Internet-Umfeld (Mailing, Browser): thunderbird, firefox, chromium
    7. Video und Audio: vlc, audacity
    8. Editoren: vi, emacs, gedit, nano
    9. System-Utilities  
  3. Wir installieren uns unser eigenes Linux...
    1. Installation von Debian:
    2. Windows und dann (Debian-)Linux auf einem Rechner  
    3. Die VirtualBox: ein Rechner im Rechner, z.B. Windows auf einem Debian-System
    4. Ausflug: Container und Docker
    5. Übungen:
      • Inbetriebnahme eines virtuellen Rechners
      • Hier installieren wir Windows
      • und außerdem noch Debian-Linux frisch von www.debian.org
      • Arbeiten als Root auf der geraden installierten virtuellen Maschine
  4. Ein paar Themen (nicht nur) für Administratoren
    1. Der Bootvorgang eines Linux-Rechners (klassisch sowie mit UEFI und GPT, mit SystemV-Init und systemd)
    2. Paketverwaltung  
    3. Linux-Filesysteme, speziell ext  (von ubuntuusers.de )
    4. WLAN (RZ-Doku), VPN (RZ-Doku)
    5. Shell-Programmierung mit der bash 
       
  5. Nun sind wir keine Anfänger mehr!
    1. Zugang zu fremden Rechnern, auch mit Schlüssel 
    2. Kerberos 
    3. Reguläre Ausdrücke (Datendatei stars)
    4. find, grep, sed, awk (Datendatei Data4.asc - danke, Joe!)
    5. Software-Entwicklung unter Linux: von Utilities (make, gdb etc.) hin zu Entwicklungsumgebungen wie Eclipse
    6. Zukünftige Entwicklungen bei Linux 
    7. Übungen:
      • Einrichtung von ssh-Schlüsseln
      • Aufgaben zu sed und awk
      • Software-Entwicklung mit dem Qt-Creator (→ Programmdatei primsieb.cpp)
  6. Etwas tiefer im System
    1. Geräte und Prozesse: /proc, /dev, /sys 
    2. Netzwerk-Grundlagen und -Dienste 
    3. Der Linux-Kernel 
    4. Logging 
    5. Benutzerverwaltung, LDAP, PAM 
    6. Das Linux-Drucksystem 
    7. Serverdienste (von ubuntuusers.de
    8. Ein wenig Linux-Security 


Fakultät Physik - Studium

Universitätsstrasse 31
93053 Regensburg


Tel. +49 941 943 2023