Vorlesung Unix-Praktikum

Ähnliche Dokumente
Vorlesung Unix-Praktikum

Vorlesung Unix-Praktikum

Wiederholung. Texteditoren Textverarbeitung. Das seht Ihr in Wordpad! Das steht wirklich in der Datei! Dr. Carsten Gnörlich Tag 3 / 1

Wiederholung. Texteditoren Textverarbeitung. Das seht Ihr in Wordpad! Das steht wirklich in der Datei! Dr. Carsten Gnörlich Tag 3 / 1

Vorlesung Unix-Praktikum

UNIX Die wichtigsten Befehle

Material zum Grundlagenpraktikum ITS. eine kleine Linux-Befehlsreferenz. Stand: Oktober 2007 zusammengestellt von: Cornelia Menzel Version 1.

Vorkurs Linux Grundlagen

Linux-Befehlsreferenz

Praktikum RO1 Einführung Linux / Ubuntu / Bash

Vorlesung Unix-Praktikum

Computer & GNU/Linux Einführung Teil 3

Grundlagen der Programmierung

Debian GNU/Linux. Unix Grundlagen und Betrieb. Christian T. Steigies

pwd mkdir Zeigt das aktuelle Verzeichnis an Beispiel: pwd

LINUX Gesamtmitschrift

Basiskonzepte des Rechnerbetriebs

SCI Linux Einführung

1 Linux-Befehlsübersicht

Dateisystem. Heimo Schön 4/2002 Seite 1/31

Benutzer und Rechte Teil 3

Hochschule Harz Vorlesung Grundlagen der Informatik 2 vi-editor Dipl.-Inf., Dipl.-Ing. (FH) M. Wilhelm Nils Nause (Student Informatik)

Tutorium 1 Systemadministration 2 - Linux Universität Hildesheim

Vorlesung Unix-Praktikum

2 2. Tag. 2.1 Das Dateisystem. das Dateisystem organisiert die Speicherung von Daten. viele Betriebssysteme haben verschiedene Dateisysteme

Shell. Oder Konsole suchen im Application Finder. Auch Terminal, Bash oder Kommandozeile genannt. Bash nimmt Befehle entgegen und führt diese aus

Gibt Daten im erweiterten Format aus. Dies beinhaltet die Angabe von Zugriffsrechten, Besitzer, Länge, Zeitpunkt der letzten Änderung und mehr.

Wiederholung Dinge zum Arbeiten mit dem Computer: Auto Fahrer Paket. Dr. Carsten Gnörlich Tag 2 / 1

2.Übung Systemsoftware (SYS) Hochschule Mannheim

Unix Grundlagen (Teil 1.b)

Archivieren und Komprimieren, Globs

Archivieren und Komprimieren, Globs

Archivieren und Komprimieren, SSH

Prozesse, Logs und Systemverwaltung

Arbeiten mit der Shell in Linux

Vorlesung Unix-Praktikum

UNIX/Linux Lösung. Mär 14, 17 20:40 Seite 1/6. Prozeßsynchronisation (was ist das?, wo kommt es vor?, Beispiel?):

Vorlesung Unix-Praktikum

Unix/Linux Grundlagen für Einsteiger

Kommandos im Unix-Grundkurs Digicomp-UXE. Inhalt

13. Anhang B: Linux-Grundbefehle

Einführung in das Arbeiten an Unix-Rechnern

Grafische Oberfläche, Shell Teil 4 Linux-Kurs der Unix-AG

FH Frankfurt am Main WS 2007/2008. Unix-Praktikum

Benutzer- und Rechte-Verwaltung Teil 1

Das CIP der Mathematik

Linux I II III Res WN/TT NLTK XML Weka E Rechte Encoding. Linux III. 3 Linux III. Rechte Encoding. Ressourcen-Vorkurs

Archivieren und Komprimieren, Globs

Linux Kommandozeile: Einfache Skripte. 1 Wiederhohlung. 2 Einfache Skripte

Archivieren und Komprimieren, Globs

Linux I II III Res WN/TT Rechte Encoding. Linux III. 3 Linux III. Rechte Encoding. Ressourcen-Vorkurs

Archivieren und Komprimieren, Globs

Befehl Beispiel Beschreibung An- und Abmelden: es geht aber auch einfach: reboot. es geht aber auch einfach. halt. Strg + l (kleines L) mkdir --help

Die Architektur von UNIX/Linux- Betriebssystemen. Mag. Lukas Feiler, SSCP

Einführung in die Kommandozeile

Okt 02, 17 12:28 UNIX/Linux Lösung

Vorlesung Unix-Praktikum

Arbeiten mit der Shell Teil 3

Vorlesung Unix-Praktikum

Betriebssysteme UNIX/Linux Übungsthema 3 Zugriffsrechte und Werkzeuge zum Dateihandling. Dirk Wenzel Dr. Jörg Gruner

Technische Praxis der Computersysteme

Arbeiten mit der Shell Teil 1

Einführung in die Kommandozeile

Literatur zu Linux. im Internet Teil der Installation: man, info O'Reilly Verlag: Addison-Wesley: noch viele weitere Bücher und Online-Dokumente

Benutzer- und Rechtevergabe

ÜBUNG Regeln für die Hausaufgaben. Was gibt es im UNIX-Pool zu beachten? Der erste Besuch im UNIX-Pool

Archivieren und Komprimieren, Globs

Unix-Dateirechte. Mark Heisterkamp 18. Juni Mark Heisterkamp, Unix-Dateirechte, 18. Juni 2008 Seite 1/39

UNIX Dateirechte. Michael Hartmann. 7. Oktober Linux User Group Augsburg

Okt 10, 16 17:29 UNIX/Linux Lösung

Einführung in das wissenschaftliche Rechnen

Linux Kurs Vorlesung 2 - Terminal

Computernutzung für Experimentalphysiker Frei progammierbare Rechner als Werkzeuge in der Experimentalphysik Teil 2

Linux-Einführung WS 2010/2011

Da einige Befehle gerne in Vergessenheit geraten werden hier einige essentielle und nützliche Befehle aufgelistet.

Benutzer- und Rechte-Verwaltung Teil 3

Arbeiten in der Unix-Kommandozeile

cat more less tail head

Inhaltsverzeichnis Erste Schritte Grundprinzipien in Linux

Grundlegende Kommandos unter UNIX / LINUX

UNIX/Linux-Minikurs. Ralf Seidler, Daniel Walther, Torsten Bosse. Institut für Informatik Friedrich-Schiller-Universität Jena

Grundbefehle. LPI Zertifizierung. Auf dem Weg: Certified Linux

Arbeiten in der Unix-Kommandozeile

Linux Grundlagen Tutorium

Systeme I: Betriebssysteme Kapitel 3 Dateisysteme. Wolfram Burgard

Informatik I - Einstiegskurs

Technische Praxis der Computersysteme. Technische Praxis der Computersysteme

Arbeiten mit der Shell Teil 1

Arbeiten mit der Shell Teil 1

Terminal & Shell-Skripte

Linux Prinzipien und Programmierung

Einführung in die Angewandte Bioinformatik

SelfLinux Dateien unter Linux

Vorlesung Unix-Praktikum

Benutzerverwaltung unter Linux

Linux Tutorium I IT-SICHERHEIT WS1617 BENJAMIN KUHNERT

Linux Systemadministration

Hochschule Für Angewandte Wissenschaften FH München Sommersemester Thomas Kolarz. Folie 1.

Transkript:

Vorlesung 4. und Folien: Carsten Gnörlich Technische Fakultät Universität Bielefeld 8. November 2017 1 / 37

Willkommen zur vierten Vorlesung Was gab es beim letzten Mal? Dateitypen: Text- und Dokumentdateien Ein-/Ausgabe umleiten (<, >, >>) Ein-/Ausgabe verketten ( ) Befehle verketten (; ( )) 2 / 37

Willkommen zur vierten Vorlesung Was machen wir heute? 3 / 37

Kommandos zum Bearbeiten von Textdateien Abkoppeln von der Kommandozeile Normale Kommandozeilen-Programme benötigen Kommandozeilenfenster für Ein-/Ausgabe Beispiel: bc blockiert das Fenster solange es läuft Graphische Programme haben eigene Fenster $ xclock blockiert Kommandozeile bis xclock beendet wird $ xclock & Abkoppeln von der Kommandozeile Kommandozeile kann weiter benutzt werden während xclock läuft 4 / 37

Kommandos zum Bearbeiten von Textdateien Nachträgliches Abkoppeln von der Kommandozeile Falls ein graphisches Programm bereits aufgerufen worden ist: $ xclock Z $ bg Erklärung: Strg-Z koppelt das Programm ab und hält es an bg lässt das Programm im Hintergrund (abgekoppelt) weiter laufen fg würde das Programm wieder angekoppelt laufen lassen 5 / 37

Freien Speicherplatz feststellen df (freien Plattenplatz ) $ cd $ df -h. Filesystem Size Used Avail Use% Mounted on fileserver.rbg.techfak.uni-bielefeld.de:/export/rbg/homes/cg 591G 294G 297G 50% /homes/cg $ cd /tmp $ df -h. Filesystem Size Used Avail Use% Mounted on /dev/mapper/system-tmp 1008M 34M 924M 4% /tmp Verfügbarer Speicher hängt vom Gerät unter dem Verzeichnis (genauer: mount point) ab! 6 / 37

Alle Nutzer teilen sich freien Speicherplatz $ df -h. Filesystem Size Used Avail Use% Mounted on fileserver.rbg.techfak.uni-bielefeld.de:/export/rbg/homes/cg 591G 294G 297G 50% /homes/cg Gesamtplatz (z.b. 297G) steht allen Nutzern zur Verfügung bitte Rücksicht nehmen! max. Verbrauch pro Nutzer begrenzt (z.zt. 25G) (G heißt hier Gib, also 2 30 = 1024 3 Byte, und nicht GB = 1000 3 Byte) 7 / 37

Eigener Speicherverbrauch du (disc usage) \$ cd # wechselt ins Home-Verzeichnis \$ du -hs. # mein gesamter Speicherverbrauch 198M. \$ du -hs * # Verbrauch in Unterverzeichnissen 6.5M Vorlesung01 1.8M Vorlesung02 2.7M Vorlesung03... weitere Dateien und Unterverzeichnisse... 8 / 37

Einzelne Dateien komprimieren Komprimieren $ gzip datei.txt datei.txt.gz Keine Sorge: verlustlose Kompression! Auspacken $ gunzip datei.txt.gz datei.txt 9 / 37

Mehrere Dateien komprimieren $ tar czf archiv.tar.gz *.txt Fotos packt Dateien und Verzeichnisse in ein Archiv $ tar tvzf archiv.tar.gz zeigt Inhalt des Archivs $ tar xzf archiv.tar.gz alles wieder auspacken $ tar xzf archiv.tar.gz eins.txt nur die angegebenen Dateien wieder auspacken 10 / 37

Die Logik der tar-kürzel tar tvzf archiv.tar.gz... Nach "f" folgt der Name des Archivs Kompression: "z" gzip "j" bzip2 Verbose ("v") ausführlichere Ausgabe Auszuführende Aktion, z.b.: "t" Testen/Listen des Archiv Inhalts "c" Create: Neues Archiv erzeugen "x" extract: Auspacken des Archivs 11 / 37

tar und Kompression Warum die seltsame Dateiendung.tar.gz? $ tar czf archiv.tar.gz *.txt Fotos ist das gleiche wie: $ tar cf archiv.tar *.txt Fotos $ gzip archiv.tar 12 / 37

bzip2: noch stärkere Kompression Für einzelne Dateien: $ bzip2 datei.txt datei.txt.bz2 $ bunzip2 datei.txt.bz2 datei.txt Für tar-archive: $ tar cjf archiv.tar.bz2... $ tar tvjf archiv.tar.bz2 $ tar xjf archiv.tar.bz2... Nachteil: bzip2 ist deutlich langsamer als gzip 13 / 37

Motivation Ressourcenverteilung auf shell, compute,... shell, compute, etc. haben viele gleichzeitige Nutzer Wie verteilt man Ressourcen gerecht? Rechenzeit Speicherplatz... Wie schützt man Ressourcen? wer darf auf meine Daten zugreifen und wer nicht? 14 / 37

Zeitscheibenprinzip ablaufende Programme = Jeder Prozess wird reihum ein Stück abgearbeitet (Zeitscheibenprinzip) xclock ls emacs CPU less diff 15 / 37

Typische Operationen auf n xclock ls emacs CPU less laufende (ungewünschte) Priorität bei Ausführung ändern diff 16 / 37

auflisten ps (process summary) $ ps zeigt alle dieses Kommandozeilen-Fensters $ ps ux alle meine $ ps aux alle (auch anderer Nutzer; Systemprozesse) 17 / 37

Hilfsprogramm: Zeilen/Worte zählen wc (word count) wc wc -l Beispiel: zählt Zeilen, Worte und Bytes zählt nur die Zeilen # Anzahl der laufenden $ ps aux tail -n +2 wc -l # Anzahl meiner bash- $ ps ux grep bash wc -l 18 / 37

Abbruch aus der Kommandozeile Strg-c oder Strg-d (bzw. Ctrl-c oder Ctrl-d auf US-Tastaturen) hilft aber nicht immer 19 / 37

kill (Prozess ) Prozess-ID (pid) mit Hilfe von ps ermitteln $ kill pid freundliche Version $ kill -9 pid unfreundliche Version Unix räumt vollständig auf - kein Neustart notwendig 20 / 37

Prozesshierarchie Programme können weitere Programme starten typisches Beispiel: Die Shell (bash) $ ps -f Prozesshierarchie der aktuellen Kommandozeile $ ps -efx Prozesshierarchie systemweit kill des Prozessvaters beendet typischerweise die Kinder! kill auf die bash oder das Fenstersystem löst Kettenreaktion aus kann gewünscht sein (oder auch nicht!) 21 / 37

Zombie- Wie entstehen Zombie -? Kind-Prozess wurde beendet Vater-Prozess hat das noch nicht quittiert erkennbar am Z -Flag bzw. <defunct> Eigenschaften des Zombies: ist nur noch Eintrag in der Prozesstabelle (verbraucht keine Rechenzeit oder sonstigen Ressourcen) unkillbar, da schon tot verschwindet, wenn Vater-Prozess reagiert oder sich beendet 22 / 37

Prozess-Waisen (Orphans) Wie entstehen Orphan -? Vater-Prozess hat abgekoppeltes Kind erzeugt Vater-Prozess ist danach (fehlerhaft) beendet worden Kind bekommt den Prozess mit pid 1 als neuen Vater (init oder systemd oder launchd oder...) 23 / 37

Laufende beobachten top (zeigt Anfang der Prozess-Warteschlange) $ top Verlassen mit Taste q laufenden Prozess mit Taste k, dann pid und signal: 15 für freundlichen Abbruch 9 für harten Abbruch 24 / 37

Ressourcen schonen Unix ist ein Mehrbenutzersystem alle Benutzer konkurrieren um die Ressourcen gegenseitige Rücksichtnahme: lange, nicht interaktive (Prozess ressourcenschonend aufrufen) $ bzip2 ganz lange datei }{{} was man normalerweise eingibt 25 / 37

Datei- und Verzeichnisrechte Übersicht Dateien verwalten vieles kennen wir schon: pwd, ls, cd, cp, mv, rm Weitere typische Aufgaben Lese- / Schreibrechte verstehen... und verwalten 26 / 37

Datei- und Verzeichnisrechte 3-stufiges System von : Besitzer (Ihr!) Gruppe > ls l rw rw r cg stud rw r cg stud drwxr xr x cg stud Alle (Vorsicht!) 1973 2011 11 03 17:12 brief.odt 8457 2011 10 25 11:03 pv.csv 48 2011 08 10 09:57 ablage Grundlegende : r read Öffnen / Lesen erlaubt w write Schreibzugriff erlaubt x execute Dateien: Programmausführung erlaubt Verzeichnisse: Durchgreifen erlaubt 27 / 37

Datei- und Verzeichnisrechte Zu welchen Gruppen gehöre ich? groups $ groups user lp audio video grmbaake id (identity) $ id uid=22227(cg) gid=12000(stud) groups=... gid: primäre Gruppe Wann bekommt man zusätzliche Gruppen? Maschinenbezogen (z.b. audio bei lokalem login an PCs) Statuswechsel (HiWi werden, Bachelorarbeit schreiben) 28 / 37

Datei- und Verzeichnisrechte ändern chmod (change file mode) $ chmod g-w datei kein Schreibzugriff für Gruppe $ chmod u+w datei erlaube Schreibzugriff für sich selbst $ chmod o=r datei erlaube nur Lesezugriff für alle (w,x werden gelöscht) $ chmod go-rwx *.txt für *.txt-dateien alle Zugriffe für Gruppe und alle wegnehmen $ chmod g=rw,o= datei Gruppe darf lesen und schreiben, andere haben keinen Zugriff u : Berechtigung für Besitzer (user; erster rwx-block) g : Berechtigung für Gruppe (group; zweiter rwx-block) o : Berechtigung für Alle (other; dritter rwx-block) 29 / 37

Datei- und Verzeichnisrechte ändern chown (change owner) Im Prinzip so: $ chown juser datei.txt chown: changing ownership of scan0003.pdf : Operation not permitted Das darf nur der Superuser (su) $ sudo chown juser datei.txt 30 / 37

Datei- und Verzeichnisrechte Prioritäten auf Dateiberechtigungen Die speziellste anwendbare Berechtigung gilt: (am Beispiel jeweils aus Sicht des Nutzers cg) Berechtigung Nutzer Gruppe cg darf lesen -r-------- cg stud ja ----r--r-- cg stud nein ----r--r-- juser stud ja -------r-- juser stud nein -------r-- nn nn ja (cg sei Mitglied der Gruppe stud, aber nicht in nn) 31 / 37

Datei- und Verzeichnisrechte auf Verzeichnissen w -Berechtigung auf Verzeichnis Anlegen von Dateien / Unterverzeichnissen Löschen von Dateien / Unterverzeichnissen Zusammenspiel von Datei- und Verzeichnisberechtigungen $ ls -l dr-xr-xr-x 4 cg stud.... drwxrwxr-- 3 root root..... -rw-r--r-- 1 cg stud... brief.txt brief.txt kann verändert werden (Dateiberechtigung) brief.txt kann nicht gelöscht werden (Verzeichnisber.) Neue Dateien können nicht angelegt werden (Verzeichnisberechtigung) 32 / 37

Datei- und Verzeichnisrechte auf Verzeichnissen w auf Gruppenverzeichnis hebelt Datei-Schreibschutz aus drwxrwxr-x 4 cg projekt.... drwxrwxr-- 3 root root..... -rw-r--r-- 1 cg projekt... brief.txt Nutzer nn sei ebenfalls in der Gruppe projekt: nn kann brief.txt nicht editieren, aber nn kann brief.txt löschen und neu anlegen Folgerung: Niemals das Home-Verzeichnis gruppen-/weltschreibbar machen! 33 / 37

Datei- und Verzeichnisrechte auf Verzeichnissen r -Berechtigung auf Verzeichnis erlaubt Dateinamen zu lesen (und sonst nichts!) x -Berechtigung auf Verzeichnis erlaubt Inhalt von Dateien und Unterverzeichnissen zu lesen Typischerweise: rx zusammen setzen oder wegnehmen 34 / 37

bg, fg, &, Ctrl-Z df, du gzip, gunzip, tar ps, jobs, top wc Ctrl-C, Ctrl-D, kill chmod, chown, ls -l in bzw Hintergrund Größe von Dateien bzw Festplatten (De-)Komprimieren von Dateien bzw Archiven laufende Zeichen/Worte/Zeilen zählen abbrechen Dateirechte /ändern 35 / 37

Nächste Woche machen wir... Typischer Aufbau des Dateisystems Shell konfigurieren Aliase einfache Shellskripte 36 / 37

Ende der heutigen Vorlesung Vielen Dank fürs Zuhören! Bis nächste Woche! 37 / 37