1 / 35

UNIX Grundlagen

UNIX Grundlagen. Adi Kriegisch <adi@vrvis.at>. UNIX Grundlagen - Überblick. Ablauf - Überblick. Geschichte von UNIX UNIX-Konzepte Grundlagen im Umgang mit UNIX Verwenden einer Shell einfache Befehle bewegen im Netzwerk Fragen, Antworten und noch mehr Beispiele.

zenia-chan
Download Presentation

UNIX Grundlagen

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. UNIX Grundlagen Adi Kriegisch <adi@vrvis.at>

  2. UNIX Grundlagen - Überblick Ablauf - Überblick • Geschichte von UNIX • UNIX-Konzepte • Grundlagen im Umgang mit UNIX • Verwenden einer Shell • einfache Befehle • bewegen im Netzwerk • Fragen, Antworten und noch mehr Beispiele Adi Kriegisch <adi@vrvis.at> Adi Kriegisch <adi@vrvis.at>

  3. UNIX Grundlagen - Geschichte 1 von 3 Geschichte - Ein kurzer Abriss • Vor UNIX: • Batchsysteme • Operator-Betrieb • Vielstufige „Pipeline“ bis zu Ergebnissen • Ziel I: Computer effizient nutzen • Ziel II: Schnelles Abarbeiten der „Jobs“ • => Nicht optimal Adi Kriegisch <adi@vrvis.at> Adi Kriegisch <adi@vrvis.at>

  4. UNIX Grundlagen - Geschichte 2 von 3 Geschichte - Ein kurzer Abriss • 1969 - nicht nur eine sexuelle Revolution: • Ken Thompson entwickelt erstes UNIX: • Multi-User / Multi-Tasking • Intelligente Speicherverwaltung • Sicherheit auf Benutzerebene • Benutzer arbeiten via Terminal • Portierbarkeit eingeschränkt (PDP-7) Adi Kriegisch <adi@vrvis.at> Adi Kriegisch <adi@vrvis.at>

  5. UNIX Grundlagen - Geschichte 3 von 3 Geschichte - Ein kurzer Abriss • 1971 - Der Beginn einer Erfolgsstory: • Dennis Ritchie entwickelt C: • UNIX vollständig in C • Portierung auf PDP-11 • User entwickeln Tools • Open Source • Community entsteht Adi Kriegisch <adi@vrvis.at> Adi Kriegisch <adi@vrvis.at>

  6. UNIX Grundlagen - UNIX Konzepte 1 von 4 Konzepte • Kriterien zur Einteilung von Betriebssystemen • Management der Hardware • Ressourcenverwaltung • Dateisystem • Verwaltung und Administration • ... Adi Kriegisch <adi@vrvis.at> Adi Kriegisch <adi@vrvis.at>

  7. UNIX Grundlagen - UNIX Konzepte 2 von 4 Konzepte - Hardware • HAL - Hardware Abstraction Layer: • Low-Level Treiber Hardware-spezifisch • High-Level Management transparent • Ladbare Kernelmodule (kext*) • Gerätedateien (/dev) • => Abstraktion und Transparenz Adi Kriegisch <adi@vrvis.at> Adi Kriegisch <adi@vrvis.at>

  8. UNIX Grundlagen - UNIX Konzepte 3 von 4 Konzepte - Ressourcenteilung • Hardware intelligent nutzbar machen • Umgang mit Prozessen (Multitasking) • Prioritäten bei der Ausführung • Speichermanagement • Benutzerverwaltung (Multiuser) • Dämonen verwalten die Hardware (CUPS) Adi Kriegisch <adi@vrvis.at> Adi Kriegisch <adi@vrvis.at>

  9. UNIX Grundlagen - UNIX Konzepte 4 von 4 Konzepte - Administration • Wartung von Betriebssystemen • UNIX verlangt wenig Wartung • Fehler sind rekonstruierbar (Lösung!) • Diagnose mittels Log-Dateien und Tools • Wartbar über Netzwerk (Secure Shell) • Benutzer- und Netzwerkwartung: • durch NetInfo und LDAP • sowohl graphisch als auch CLI Adi Kriegisch <adi@vrvis.at> Adi Kriegisch <adi@vrvis.at>

  10. UNIX Grundlagen - Dateisystem 1 von 4 Dateisystem • Sicherheit und Zugriffskontrolle • „drwxr-xr-x“ - Permissions • Reflektiert Benutzer/Gruppensicherheit • Gegensatz: Access Control Lists (M$) • Organisation der Daten und Programme • UNIX-spezifisches • Applespezifisches • Internationalisierung • Spezielle Features (Journaling) Adi Kriegisch <adi@vrvis.at> Adi Kriegisch <adi@vrvis.at>

  11. UNIX Grundlagen - Dateisystem 2 von 4 Dateisystem - Sicherheit „drwxr-xr-x“ - Permissions • Zerlegung: d rwx r-x r-x • Typ der Datei: • „d“ - Directory • „-“ - normale Datei • „b“/„c“- Block/Character Device • „l“ - (Sym-)Link „Verknüpfung“ • Zugriffsberechtigungen für: • Besitzer, Gruppe und alle Anderen Adi Kriegisch <adi@vrvis.at> Adi Kriegisch <adi@vrvis.at>

  12. UNIX Grundlagen - Dateisystem 3 von 4 Dateisystem - Struktur • UNIX-Pfade: (vor Usern „versteckt“) • usr, bin, etc, dev, opt, ... • Apple-Pfade: • Applications, Users, System, Library, ... • Internationalisierung: • Übersetzung von Verzeichnisnamen: • Users: Benutzer, Applications: Programme Adi Kriegisch <adi@vrvis.at> Adi Kriegisch <adi@vrvis.at>

  13. UNIX Grundlagen - Dateisystem 4 von 4 Dateisystem - Features • Vereinheitlichtes Schema: Alles unter „/“ • Mount-Points für alles (meist /Volumes) • Auch über Netzwerk (/Network/Servers) • Dateisysteme transparent (hfs, iso, afs,...) • Einbinden mittels „mount“ • Journaling (ab 10.2.2) • Konsistenz des Dateisystems sicherstellen Adi Kriegisch <adi@vrvis.at> Adi Kriegisch <adi@vrvis.at>

  14. UNIX Grundlagen - Shell 1 von 4 Die Shell • Interaktiver Befehlsempfänger • Terminal, das Fenster - Shell, das Programm • „Netzwerkfähig“ • Eingabeaufforderung - Der „Prompt“: • Last login: Sat Mar 7 15:02:03 on ttyp1 • Welcome to Darwin • [equinox:~] adi% • Rechnername • Pfad („~“ = Homeverzeichnis) • Benutzername Adi Kriegisch <adi@vrvis.at> Adi Kriegisch <adi@vrvis.at>

  15. UNIX Grundlagen - Shell 2 von 4 Die Shell - Navigation (ls) • ls - Inhalt von Verzeichnissen: • [equinox:~] adi% ls • Desktop Movies Public • Documents Music Send Registration • Library Pictures Sites • [equinox:~] adi% • Optionen zu ls: • -l long; Langes Format: • drwx------ 4 adi users 136 Oct 4 2002 Desktop • -a all; alle Dateien, auch versteckte (.) Adi Kriegisch <adi@vrvis.at> Adi Kriegisch <adi@vrvis.at>

  16. UNIX Grundlagen - Shell 3 von 4 Die Shell - Navigation (cd) • cd - Verzeichnis wechseln: • [equinox:~] adi% cd /Users • [equinox:/Users] adi% • Absolute Pfade: /Users • Relative Pfade: • „.“ = aktuelles Verzeichnis • „..“ = nächsthöheres Verzeichnis: • [equinox:~] adi% cd .. • [equinox:/Users] adi% Adi Kriegisch <adi@vrvis.at> Adi Kriegisch <adi@vrvis.at>

  17. UNIX Grundlagen - Shell 4 von 4 Die Shell - Hilfe! • „apropos“ - Befehle finden: • [equinox:~] adi% apropos firewall • ipfirewall(4) - IP packet filter and ... • ipfw(8) - IP firewall and traffic ... • [equinox:~] adi% • „man“ - Hilfe zu Befehlen: • [equinox:~] adi% man ipfw • oder mit Angabe der Kategorie: • [equinox:~] adi% man 8 ipfw Adi Kriegisch <adi@vrvis.at> Adi Kriegisch <adi@vrvis.at>

  18. UNIX Grundlagen - UNIX und Apple UNIX und Apple • Unterschiedliche Ansätze: • UNIX ist schweigsam! • „Keine Nachrichten sind gute Nachrichten!“ • Zuhören lernen! • Wegschmeißen ist keine Lösung... • Unix-Community vs Apple-Community • Nutzen der vorhandenen Ressourcen • „Andere Sprache“ • „Gefühl“ für Unix entwickeln Adi Kriegisch <adi@vrvis.at> Adi Kriegisch <adi@vrvis.at>

  19. UNIX Grundlagen Fragen? Adi Kriegisch <adi@vrvis.at> Adi Kriegisch <adi@vrvis.at>

  20. UNIX Grundlagen Pause! Adi Kriegisch <adi@vrvis.at> Adi Kriegisch <adi@vrvis.at>

  21. UNIX Grundlagen - UNIX im Netzwerk 1 von 5 UNIX im Netzwerk • Volle Netzwerkfähigkeit • Serverdienste im Netzwerk (apache, sshd, ...) • Diagnosetools: ping / traceroute • Konfigurationstools: ifconfig / route • Firewall: ipfw • Anwendungen: Secure Shell (ssh), ftp, ... Adi Kriegisch <adi@vrvis.at> Adi Kriegisch <adi@vrvis.at>

  22. UNIX Grundlagen - UNIX im Netzwerk 2 von 5 UNIX im Netzwerk - Server • Alle Dienste laufen als Daemon • z.B: apache (httpd), sshd, cupsd, inetd, ... • Konfiguration: (Textdateien) • /etc/httpd/httpd.conf • /etc/inetd.conf • /etc/sshd_config • /etc/cups/cupsd.conf • Nach Änderungen Dienst neu starten! • => Einfache Wartung Adi Kriegisch <adi@vrvis.at> Adi Kriegisch <adi@vrvis.at>

  23. UNIX Grundlagen - UNIX im Netzwerk 3 von 5 UNIX im Netzwerk - Diagnose • Hat Computer Verbindung zum Netzwerk? • ping rechner / traceroute rechner • Funktioniert Namensauflösung (DNS/hosts)? • Rechner im internen Netzwerk in /etc/hosts • Verbindungen zum eigenen Computer: • netstat (-n) • IP Adresse und Gateway feststellen • ifconfig / route Adi Kriegisch <adi@vrvis.at> Adi Kriegisch <adi@vrvis.at>

  24. UNIX Grundlagen - UNIX im Netzwerk 4 von 5 UNIX im Netzwerk - Konfiguration • Einfache Konfiguration: • IP-Adresse mit ifconfig • Gateway mit route • ifconfig en0 192.168.1.2 netmask 255.255.255.0 • Gibt „en0“ die Adresse 192.168.1.2 • route add default 192.168.1.1 • Setzt das Gateway auf 192.168.1.1 • netstat -r (-n) • Zeigt die Routing-Tabellen Adi Kriegisch <adi@vrvis.at> Adi Kriegisch <adi@vrvis.at>

  25. UNIX Grundlagen - UNIX im Netzwerk 5 von 5 UNIX im Netzwerk - Advanced • IP-Firewalling mit ipfw • Verwendung: • ipfw list (Status anzeigen) • ipfw add „rule“ (Regeln hinzufügen) • ipfw del „nr“ (Regeln löschen) • Beispiel: Sperren von Port 2222/UDP • ipfw add deny udp from me to any 2222 Adi Kriegisch <adi@vrvis.at> Adi Kriegisch <adi@vrvis.at>

  26. UNIX Grundlagen - UNIX und Apple II UNIX und Apple II • Keine Angst vor vielen Zeilen Text! • Informationsquellen: • Befehle (netstat, ifconfig, ipfw, dmesg, ...) • man/apropos! • Log-Dateien /var/log/* • Internet: BSD-Newsgroups • Unix bietet Freiheit! Adi Kriegisch <adi@vrvis.at> Adi Kriegisch <adi@vrvis.at>

  27. UNIX Grundlagen - Advanced UNIX 1 von 3 Advanced UNIX • Pipelines - Befehle hintereinander • Ausgabe in Datei umleiten • Cron - Periodische Tasks automatisieren • Suchen von Dateien (find/locate) • In Dateien suchen (grep/cat) Adi Kriegisch <adi@vrvis.at> Adi Kriegisch <adi@vrvis.at>

  28. UNIX Grundlagen - Advanced UNIX 2 von 3 Advanced UNIX - Pipelines • Ausgabe eines Befehls als Eingabe: • cat /var/log/system.log • davon nur alle Zeilen mit „sudo“: • | grep sudo • dann noch die Ausgabe seitenweise: • | more • stdin, stdout, stderr umleiten • <, >, >>, 2> Ausgabe in Datei (bash!) Adi Kriegisch <adi@vrvis.at> Adi Kriegisch <adi@vrvis.at>

  29. UNIX Grundlagen - Advanced UNIX 3 von 3 Advanced UNIX - Crontab • crontab -l (crontab anzeigen) • crontab -e (crontab bearbeiten: Editor vi) • Crontabeintrag: • * * * * * /bin/Befehl • Minute: 0-59 • Stunde: 0-23 • Tag: 0-31 • Monat: 1-12 (auch Namen möglich) • Wochentag: 0-7 (auch Namen möglich) Adi Kriegisch <adi@vrvis.at> Adi Kriegisch <adi@vrvis.at>

  30. UNIX Grundlagen Fragen? Adi Kriegisch <adi@vrvis.at> Adi Kriegisch <adi@vrvis.at>

  31. UNIX Grundlagen - Themen • Prozessmanagement (ps, kill, top) • Netzwerktools (ssh, ftp, telnet, rsh) • Dateisysteme einbinden (mount, umount) • Links - Verknüpfungen (ln -s) • Beispiele: • Traffic-Zähler • chmod/chown von Public-Verzeichnis • Sperren von Ports; erweitertes Firewalling • Shellscripts Adi Kriegisch <adi@vrvis.at> Adi Kriegisch <adi@vrvis.at>

  32. UNIX Grundlagen Fragen? Adi Kriegisch <adi@vrvis.at> Adi Kriegisch <adi@vrvis.at>

  33. UNIX Grundlagen Danke! Adi Kriegisch <adi@vrvis.at> Adi Kriegisch <adi@vrvis.at>

  34. UNIX Grundlagen Pause! Adi Kriegisch <adi@vrvis.at> Adi Kriegisch <adi@vrvis.at>

  35. UNIX Grundlagen Adi Kriegisch <adi@vrvis.at> Adi Kriegisch <adi@vrvis.at>

More Related