Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

12.11.03Einführung in Linux - 1 Einführung in Linux Holger Gollan (Axel Tombrink) Universität Duisburg-Essen Rechenzentrum Essen.

Ähnliche Präsentationen


Präsentation zum Thema: "12.11.03Einführung in Linux - 1 Einführung in Linux Holger Gollan (Axel Tombrink) Universität Duisburg-Essen Rechenzentrum Essen."—  Präsentation transkript:

1

2 Einführung in Linux - 1 Einführung in Linux Holger Gollan (Axel Tombrink) Universität Duisburg-Essen Rechenzentrum Essen

3 Einführung in Linux - 2 Übersicht I ➢ Einführung ➢ Zur Geschichte von Unix/Linux ➢ Grundlagen ➢ Installation von SuSE 8.1 ➢ Netzwerk und Dienste ➢ Dateien und Verzeichnisse

4 Einführung in Linux - 3 Übersicht II ➢ Nutzer und Rechte ➢ Die Kommando-Shell ➢ System- und Dienstprogramme ➢ Hilfe ?!? ➢ weitere Veranstaltungen

5 Einführung in Linux - 4 Geschichte ➢ Stammbaum ➢ Eigenschaften ➢ Linux ist doch kostenlos, oder?

6 Einführung in Linux - 5 Stammbaum I ➢ 1969: Multics von Ken Thompson ➢ Abkehr von Batch-Systemen ➢ 1971: uniplexed information and computing system (unics) auf einer PDP-7 ➢ geschrieben in Assembler ➢ 1973: Dennis Ritchie stellt Unix auf C um ➢ bessere Portierbarkeit ➢ 1975: Freigabe des Quelltextes

7 Einführung in Linux - 6 Stammbaum II ➢ 1991: Linus Thorvald entwickelt einen UNIX- Kern für 386er-Prozessoren (V 0.11) ➢ Nutzung des Internets zur weiteren Verbreitung ➢ 1992: Erste Distributionen (V 0.99) ➢ 1994: Kernel 1.0 ➢ 1996: Kernel 2.0 ➢ 2000: Kernel 2.4

8 Einführung in Linux - 7 Eigenschaften ➢ hierarchisches Dateisystem ➢ Prozesse können im Hintergrund laufen ➢ Multitasking, multiuser ➢ Pipelining ➢ Netzwerkmöglichkeiten

9 Einführung in Linux - 8 GPL ➢ Linux selbst unterliegt der General Public License. ➢ Linux kann frei und kostenlos verteilt, eingesetzt und erweitert werden. ➢ Der Quelltext muss immer beigefügt werden.

10 Einführung in Linux - 9 Kosten ➢ Um den eigentlichen Linux-Kern herum gibt es viele zusätzliche Software ➢ X-Window-System ➢ Office-Pakete ➢ grafische Oberflächen ➢ auch kommerzielle Software ist verfügbar ➢ Distributionen liefern außerdem Routinen zur Installation und zur Verwaltung.

11 Einführung in Linux - 10 Grundlagen ➢ Nutzerkennung und Passwort ➢ Wer bin ich? ➢ Wer sind die Anderen? ➢ Wechsel des Passworts ➢ Verlassen des Systems

12 Einführung in Linux - 11 Nutzerkennung ➢ In einem Multiusersystem muss jeder Nutzer eine eindeutige Kennung besitzen. ➢ Diese wird beim so genannten Login- Vorgang abgefragt. ➢ Aus Sicherheitsgründen sollte die Kennung durch ein Passwort geschützt sein, welches beim Login ebenfalls abgefragt wird.

13 Einführung in Linux - 12 whoami ➢ Das Kommando whoami zeigt die derzeit aktuelle Nutzerkennung an. ➢ Dieses Kommando kann nützlich sein, um sich vor der Anwendung bestimmter Befehle abzusichern.

14 Einführung in Linux - 13 who ➢ Das Kommando who zeigt eine Liste der derzeit aktiven Benutzer im System an. ➢ An der Ausgabe ist der Zeitpunkt des jeweiligen Login-Vorgangs abzulesen.

15 Einführung in Linux - 14 passwd ➢ Das Kommando passwd ermöglicht die Änderung des Passworts. ➢ Zur Sicherheit muss zunächst das alte, und danach zweimal das neue Passwort angegeben werden. ➢ Nur der Nutzer selbst kann sein Passwort ändern.

16 Einführung in Linux - 15 exit ➢ Mit einem Logout wird die aktuelle Sitzung im System beendet. Möglichkeiten: ➢ exit ➢ quit ➢ + D ➢ Sollten noch Programme in der aktuellen Sitzung laufen, so wird der Nutzer darauf hingewiesen.

17 Einführung in Linux - 16 Shutdown ➢ Das gesamte System wird durch den Befehl shutdown beendet. ➢ shutdown -h now ➢ shutdown -r now

18 Einführung in Linux - 17 Installation SuSE 8.1

19 Einführung in Linux - 18 Netzwerk und Dienste ➢ IP-Adressen ➢ Netzbereiche und Netzmasken ➢ Dienstprogramme ➢ ping, traceroute ➢ telnet, ftp ➢ die r-tools ➢ ssh

20 Einführung in Linux - 19 IP-Adressen ➢ In einem IP-Netzwerk ist jeder IP-Knoten durch seine IP-Adresse identifiziert. ➢ Eine IP-Adresse besteht aus 4 Bytes, also Zahlen zwischen 0 und 255, die durch Punkte miteinander verbunden sind. ➢ Die Adresse bezieht sich immer auf localhost, also den Rechner selbst.

21 Einführung in Linux - 20 hostname ➢ Der IP-Adresse ist in der Regel ein so genannter hostname zugeordnet. ➢ Die Zuordnung erfolgt über ➢ die Datei /etc/hosts ➢ NIS (Network Information Services) ➢ DNS (Domain Name Server)

22 Einführung in Linux - 21 Netz-Klassen ➢ Klasse A ➢ 1.x.x.x x.x.x ➢ Klasse B ➢ x.x x.x ➢ z.B. Standort Essen x.x ➢ Klasse C ➢ x x

23 Einführung in Linux - 22 reservierte Bereiche ➢ In jeder Klasse von IP-Adressen sind gewisse Bereiche reserviert, die für private Netze genutzt werden können, also nicht nach außen geroutet werden. ➢ 10.x.y.z ➢ x.y x.y ➢ x x

24 Einführung in Linux - 23 Netzmasken ➢ Netzmasken dienen der Unterteilung größerer Nutze in Subnetze. ➢ Binäres UND auf Netzmaske und IP-Adresse liefert die Netzwerkadresse, z.B. ➢ = ➢ = ➢ Alle Rechner mit gleicher Netzwerkadresse liegen in einem Subnetz.

25 Einführung in Linux - 24 ping ➢ stellt fest, ob die Route zum angegebenen Ziel funktioniert. ➢ entweder mit hostname ➢ oder mit IP-Adresse

26 Einführung in Linux - 25 traceroute ➢ verfolgt die Route bis zum Ziel ➢ zeigt die Zwischenstationen der IP-Pakete auf dem Weg zum Ziel ➢ kommt die Verbindung zum Ziel nicht zustande, so kann man die "Bruchstelle" ablesen

27 Einführung in Linux - 26 telnet ➢ dient zur Anmeldung auf einem entfernten Rechner ➢ gültige Nutzerkennung wird benötigt ➢ auf dem entfernten Rechner muss der telnetd laufen ➢ Vorsicht: Der gesamte Verkehr, inklusive der Passwörter, wird im Klartext übertragen

28 Einführung in Linux - 27 ftp I ➢ dient zum Austausch von Dateien zwischen zwei Rechnern ➢ gültige Nutzerkennung wird benötigt, es sei denn, anonymous ftp ist zugelassen. ➢ auf dem entfernten Rechner muss der ftpd laufen ➢ Vorsicht: Der gesamte Verkehr, inklusive der Passwörter, wird im Klartext übertragen

29 Einführung in Linux - 28 ftp II ➢ Aufruf: ➢ ftp bzw. ftp ➢ Wichtige Befehle: ➢ ls : zeigt Verzeichnisinhalt an ➢ cd : wechselt remote das Verzeichnis ➢ lcd : wechselt lokal das Verzeichnis ➢ get : holt Datei vom entfernten Rechner ➢ put : schiebt Datei auf entfernten Rechner

30 Einführung in Linux - 29 r-Tools I ➢ ermöglichen das remote-Arbeiten auf einem entfernten Rechner, ohne sich explizit anzumelden ➢ umgeht die Sicherheitsprobleme von telnet und ftp, setzt dabei aber auf die Sicherheit des entfernten Systems ➢ benötigt einen entsprechenden Dämonen und eine Authorisierungsdatei auf dem entfernten System

31 Einführung in Linux - 30 r-Tools II ➢ rsh (remote shell) ➢ dient zum Ausführen von Programmen auf dem entfernten Rechner ➢ rlogin (remote login) ➢ dient zum Starten einer interaktiven Sitzung ➢ rcp (remote copy) ➢ dient zum Kopieren von Dateien zwischen zwei Rechnern

32 Einführung in Linux - 31 ssh ➢ Bei Programmen aus der ssh-Familie findet die gesamte Kommunikation verschlüsselt statt. ➢ Dadurch werden Passwörter nicht mehr im Klartext übermittelt. ➢ benötigt den sshd.

33 Einführung in Linux - 32 Übung 1 ➢ Testen Sie die Netzverbindung zu einem anderen Gerät im Pool. ➢ per IP-Adresse ( x) ➢ per Hostnamen (linux(x).hrz.uni-essen.de)

34 Einführung in Linux - 33 Übung 2 ➢ Stellen Sie eine ftp-Verbindung zum Rechner her. ➢ userid: xhrz ➢ passwd: xhrz123 ➢ Laden Sie die folgenden drei Dateien herunter: ➢ lesbar ➢ unlesbar ➢ gruppe

35 Einführung in Linux - 34 Dateien und Verzeichnisse ➢ Dateiarten ➢ Struktur des Dateisystems ➢ Dateiverwaltung

36 Einführung in Linux - 35 Dateiarten ➢ Unter Unix/Linux gibt es vier Dateiarten: ➢ normale Dateien ➢ Verzeichnisse ➢ Gerätedateien (devices) ➢ pipes

37 Einführung in Linux - 36 Verzeichnisbaum ➢ Unter Linux gibt es, anders als unter Windows-Systemen, nur einen einzigen Verzeichnisbaum. ➢ Hier sind alle Partitionen an so genannten Mount-Points aufgehängt. ➢ Auch externe Geräte finden sich an einer Stelle in diesem Verzeichnisbaum ( /dev )

38 Einführung in Linux - 37 Verzeichnisse I ➢ Der Inhalt eines Verzeichnisses besteht aus Dateien sowie weiteren Verzeichnissen. ➢ Zwei besondere Verzeichnisse gehören standardmäßig zu jedem Verzeichnis: ➢. Das Verzeichnis selbst ➢.. Das übergeordnete Verzeichnis im Verzeichnisbaum

39 Einführung in Linux - 38 Verzeichnisse II ➢ Zum Wechsel zwischen Verzeichnissen gibt es das Kommando cd (change directory) ➢ Neue Verzeichnisse werden mit dem Kommando mkdir (make directory) angelegt. ➢ Zum Löschen von Verzeichnissen kann das Kommando rmdir (remove directory) benutzt werden.

40 Einführung in Linux - 39 Pfade ➢ Dateien und Verzeichnisse sind auf zwei unterschiedlichen Wegen ansprechbar. ➢ absoluter Pfad: Ausgehend von der eindeutigen Wurzel / des Dateisystems ➢ Relativer Pfad: Ausgehend vom aktuellen Verzeichnis ➢ Das aktuelle Verzeichnis kann mit dem Befehl pwd (present working directory) ermittelt werden.

41 Einführung in Linux - 40 Links I ➢ Durch so genannte Links kann man Dateien unter mehreren Namen ansprechen. ➢ Syntax: ln [-s] ➢ Die Option -s schafft einen symbolischen Link. ➢ Bei einem symbolischen Link wird ein Verweis auf das Original erzeugt, welcher gesondert im Dateisystem abgelegt wird.

42 Einführung in Linux - 41 Links II ➢ Im Gegensatz zu symbolischen Links verweisen so genannte Hard Links auf die gleiche Stelle im Dateisystem. ➢ Ein einziger Eintrag im Filesystem ist damit unter zwei verschiedenen Namen erreichbar; eine Unterscheidung zwischen Original und Link ist nicht möglich. ➢ Hard Links können nicht über Partitionen hinweg gebildet werden.

43 Einführung in Linux - 42 Dateiverwaltung ➢ ls ➢ cp ➢ mv ➢ rm ➢ cat ➢ head ➢ tail

44 Einführung in Linux - 43 Vorbemerkungen ➢ Die Kommandos besitzen in der Regel eine größere Anzahl von Optionen, die i.a. mit einem Minus nach dem Kommandonamen eingeleitet werden. ➢ Nähere Infos erhält man über die man -Pages (Aufruf: man ). ➢ Vorsicht: Die Auswirkungen eines Kommandos sind in der Regel nicht mehr rückgängig zu machen.

45 Einführung in Linux - 44 ls ➢ Das Kommando ls (list) zeigt den Inhalt eines (des aktuellen) Verzeichnisses an. ➢ Syntax: ls [ ] ➢ Wichtige Optionen: ➢ -l: long listing ➢ -a: listet alle, auch versteckte Dateien ➢ -t: sortiert nach Änderungsdatum ➢ -r: dreht die Sortierreihenfolge um

46 Einführung in Linux - 45 cp ➢ Das Kommando cp (copy) kopiert eine oder mehrere Dateien an einen anderen Ort. ➢ Syntax: cp [...] dest ➢ Vorsicht: Die Zieldatei wird eventuell ohne Nachfrage überschrieben. ➢ Wichtige Optionen: ➢ -i: interaktiver Modus -> Nachfrage ➢ -r: rekursives Kopieren

47 Einführung in Linux - 46 mv ➢ Das Kommando mv (move) benennt Dateien oder Verzeichnisse um. ➢ Syntax: mv ➢ Vorsicht: Die Zieldatei wird eventuell ohne Nachfrage überschrieben. ➢ Wichtige Optionen: ➢ -i: interaktiver Modus -> Nachfrage ➢ -b: legt eine Sicherheitskopie an

48 Einführung in Linux - 47 rm ➢ Das Kommando rm (remove) löscht Dateien oder Verzeichnisse. ➢ Syntax: rm ➢ Wichtige Optionen: ➢ -r: rekursives Löschen ➢ -i: interaktiver Modus -> Nachfrage

49 Einführung in Linux - 48 cat ➢ Das Kommando cat (concatenate) zeigt Dateiinhalte an. ➢ Syntax: cat ➢ Wichtige Optionen: ➢ -n: gibt Zeilennummern aus ➢ -A: Darstellung von Steuerzeichen

50 Einführung in Linux - 49 head ➢ Das Kommando head gibt den Anfang einer Datei aus. ➢ Syntax: head ➢ Wichtige Optionen: ➢ - #: Anzahl der auszugebenden Zeilen

51 Einführung in Linux - 50 tail ➢ Das Kommando tail gibt das Ende einer Datei aus. ➢ Syntax: tail ➢ Wichtige Optionen: ➢ - #: Anzahl der auszugebenden Zeilen

52 Einführung in Linux - 51 Editoren ➢ Unter Linux gibt es verschiedene Editoren, um Dateien zu erstellen bzw. zu verändern: ➢ auf der Kommandozeile ➢ vi ➢ joe ➢ pico ➢ im grafischen Modus ➢ nedit ➢ kedit ➢ emacs

53 Einführung in Linux - 52 Übung 3 ➢ Erstellen Sie eine Kopie der Datei /etc/passwd in Ihrem Heimatverzeichnis. ➢ Erzeugen Sie einen symbolischen und einen Hard Link zu dieser Kopie. ➢ Studieren Sie das unterschiedliche Verhalten der beiden Link-Varianten. ➢ ls -l ➢ rm ➢...

54 Einführung in Linux - 53 Übung 4 ➢ Erzeugen Sie mehrere Verzeichnisse unterhalb Ihres Heimatverzeichnisses. ➢ Kopieren Sie verschiedene Dateien in diese neuen Verzeichnisse und benutzen Sie dabei sowohl absolute als auch relative Pfade. ➢ Benutzen Sie die Befehle rmdir bzw. rm, um die neuen Verzeichnisse wieder zu löschen.

55 Einführung in Linux - 54 Nutzer und Rechte ➢ Nutzer und Gruppen ➢ /etc/passwd, /etc/shadow, /etc/group ➢ Zugriffsrechte ➢ suid, sgid, T-Modus

56 Einführung in Linux - 55 Nutzer ➢ Jeder Benutzer wird intern durch eine eindeutige Kennzahl, die so genannte uid, identifiziert. ➢ Der uid sind login-Name und Passwort zugeordnet. ➢ Die uid 0 gehört dem Super-User root.

57 Einführung in Linux - 56 Gruppen I ➢ Jeder Nutzer gehört mindestens einer Gruppe an. ➢ Über Gruppen kann man gemeinsame Rechte an Ressourcen vergeben. ➢ Nutzer können auch in mehreren Gruppen Mitglied sein, von denen eine die Hauptgruppe und eine die derzeit aktive Gruppe ist.

58 Einführung in Linux - 57 Gruppen II ➢ Vom Nutzer neu angelegte Dateien gehören in die aktuelle Gruppe des Nutzers. ➢ Mit Hilfe des Befehls newgrp kann die aktuelle Gruppe geändert werden. ➢ Der Befehl id liefert den derzeitigen Status.

59 Einführung in Linux - 58 /etc/passwd, /etc/shadow ➢ Wesentliche Daten des Nutzers werden in die /etc/passwd eingetragen ➢ Name ➢ uid ➢ Hauptgruppe ➢ Home-Verzeichnis ➢ Login-Shell ➢ Die verschlüsselten Passwörter werden in der Datei /etc/shadow hinterlegt.

60 Einführung in Linux - 59 /etc/group ➢ Die wesentlichen Informationen über die Gruppen sind in der Datei /etc/group hinterlegt.

61 Einführung in Linux - 60 Verwaltung ➢ Die Nutzer- und Gruppenverwaltung kann per Kommandozeile ( useradd, usermod, userdel, groupadd, groupmod, groupdel ) oder über yast bzw. yast2 erfolgen. ➢ yast ->Administration des Systems

62 Einführung in Linux - 61 Eigentümerschaft ➢ Eigentümerschaft an Ressourcen wird über die uid verwaltet. ➢ Der Eigentümer legt die Zugriffsrechte für die jeweilige Ressource fest. ➢ Der Eigentümer kann auch die Gruppe einer Datei/eines Verzeichnisses ändern, nicht jedoch den Besitzer. ➢ root ist immer zusätzlich Eigentümer aller Ressourcen.

63 Einführung in Linux - 62 Benutzerklassen ➢ Drei Benutzerklassen pro Datei/Verzeichnis ➢ u (user) - Besitzer der Datei ➢ g (group) - Mitglieder der Gruppe, zu der die Datei gehört ➢ o (other) - alle anderen Nutzer ➢ Außerdem a (all) - alle Nutzer im System

64 Einführung in Linux - 63 Rechte ➢ Drei Rechte pro Benutzerklasse ➢ r (read) ➢ w (write) ➢ x (execute) ➢ Vorsicht bei Verzeichnissen, da sich hier Lese- und Schreibrecht auf den Inhalt des Verzeichnisses bezieht. Das Ausführrecht bei Verzeichnissen bewirkt, dass der Nutzer in das Verzeichnis wechseln darf.

65 Einführung in Linux - 64 Änderung der Rechte ➢ Der Eigentümer einer Datei/eines Verzeichnisses kann die Zugriffsrechte mit Hilfe des chmod -Befehls ändern. ➢ Entweder symbolisch, z.B. ➢ chmod a+x datei ➢ oder nummerisch, z.B. ➢ chmod 640datei

66 Einführung in Linux - 65 nummerische Rechte ➢ Bei der nummerischen Beschreibung der Dateirechte stehen drei Ziffern, in dieser Reihenfolge, für die drei Nutzerklassen user, group, other. ➢ Der Wert wird durch Addition der einzelnen Werte für die gesetzten Rechte ermittelt: ➢ 4 = read ➢ 2 = write ➢ 1 = execute

67 Einführung in Linux - 66 umask ➢ Mit Hilfe des umask -Befehls kann man voreinstellen, welche Rechte bei einer neu erstellten Datei nicht gesetzt sein sollen. ➢ Oft wird das x-Recht bei nicht ausführbaren Dateien automatisch nicht gesetzt. ➢ Beim Kopieren von Dateien werden die alten Rechte übernommen, wenn sie nicht durch die umask gefiltert werden.

68 Einführung in Linux - 67 SUID ➢ Auch laufende Prozesse haben einen Eigentümer, normalerweise den Nutzer, von dem sie gestartet wurden. ➢ Dies kann hinderlich sein, wenn sie auf Systemressourcen zugreifen müssen. ➢ SUID-Programme können daher mit den Rechten des Programmeigentümers laufen. ➢ Vorsicht: Dies öffnet Sicherheitslücken!

69 Einführung in Linux - 68 SGID ➢ Ebenso kann auch die Gruppe eines laufenden Programms von der aktuellen Gruppe des startenden Nutzers verschieden sein. ➢ Außerdem kann man auch bei Verzeichnissen das SGID-Bit setzen. ➢ Als Konsequenz gehören dann neu angelegte Dateien automatisch zur gleichen Gruppe wie das Verzeichnis selbst.

70 Einführung in Linux - 69 T-Modus ➢ Haben mehrere Nutzer Schreibrecht in einem Verzeichnis, z.B. /tmp, so sind sie in der Lage, gegenseitig Dateien zu löschen. ➢ Dieses kann durch den so genannten T- Modus verhindert werden, durch den sicher gestellt wird, dass nur noch die Rechte der Datei selbst für den Löschvorgang wichtig sind.

71 Einführung in Linux - 70 Einrichten des X-Window Systems

72 Einführung in Linux - 71 Übung 5 ➢ Richten Sie einen zweiten normalen Nutzer auf Ihrem System ein, dessen Gruppe von der des ersten Nutzers verschieden ist. ➢ Sorgen Sie als erster Nutzer dafür, dass die beiden Dateien lesbar und unlesbar sich so verhalten, wie ihr Inhalt es beschreibt.

73 Einführung in Linux - 72 Übung 6 ➢ Richten Sie einen weiteren Nutzer ein, der zur gleichen Gruppe wie der bei der Installation eingerichtete Nutzer gehört. ➢ Sorgen Sie als erster Nutzer dafür, dass sich die Datei gruppe so verhält, wie ihr Inhalt es beschreibt.

74 Einführung in Linux - 73 Die Kommando-Shell ➢ Kommandotypen ➢ Standarddateien ➢ Kommandofolgen ➢ Kommandogruppen ➢ Pipes ➢ Hintergrundprozesse ➢ Die Shell-Umgebung ➢ Expandierung, Wildcards

75 Einführung in Linux - 74 Kommandotypen ➢ Ein Kommando wird in der Regel als Kindprozess der Shell gestartet. ➢ Der Vaterprozess wartet dann, bis der Kindprozess beendet wird. ➢ Es gibt drei Arten von Kommandos ➢ eingebaute Systemkommandos (intern); laufen nicht als Kindprozess, sondern in der Shell ab ➢ sonstige Systemkommandos (extern) ➢ vom Nutzer erstellte Programme und Prozeduren

76 Einführung in Linux - 75 Standarddateien ➢ Jeder Prozess besitzt ➢ Standardeingabe - Tastatur ➢ Standardausgabe - Bildschirm ➢ Standardfehlerausgabe - Bildschirm ➢ Diese Standards lassen sich umlenken ➢ Standardeingabe: cat < datei ➢ Standardausgabe: ls > datei ➢ Standardfehlerausgabe: rm -r dir 2> error ➢ Anhängen an Datei: cat datei1 >> datei2

77 Einführung in Linux - 76 Kommandofolgen ➢ Normalerweise werden Kommandos nacheinander in getrennte Zeilen geschrieben. ➢ Sie können aber auch in eine Zeile geschrieben werden, getrennt durch ein ' ; ' ➢ cat datei1 >> datei2; rm datei1

78 Einführung in Linux - 77 Kommandogruppen I ➢ Mehrere Kommandos können auch in einer Kommandogruppe zusammengefasst werden. ➢ (pwd; ls) > datei ➢ Die Standardausgabe der Gruppe besteht aus den Ausgaben der einzelnen Kommandos.

79 Einführung in Linux - 78 Kommandogruppen II ➢ Dabei wird die Kommandogruppe immer in einem eigenen Prozess ausgeführt. ➢ Vergleiche ➢ cd verz; ls -ls ➢ pwd ➢ mit ➢ (cd verz; ls -ls) ➢ pwd

80 Einführung in Linux - 79 Pipes ➢ Man kann die Standardausgabe eines Kommandos als Eingabe eines weiteren Kommandos nutzen. ➢ cat datei | more ➢ Die so genannte Pipe wird in einem neuen Prozess ausgeführt, der Kindprozesse für jedes einzelne Teilkommando startet. ➢ Standardausgabe ist die Ausgabe des letzten Kommandos

81 Einführung in Linux - 80 Hintergrundprozesse I ➢ Kommandos können durch das Zeichen ' & ' am Ende des Befehls in den Hintergrund geschickt werden. ➢ Standardeingabe ist /dev/null, Ausgaben bleiben auf dem Bildschirm. ➢ Mit Hilfe des Befehls nohup (no hang up) können Hintergrundprozesse von der Shell gelöst werden, um eine frühzeitige Beendigung zu verhindern.

82 Einführung in Linux - 81 Hintergrundprozesse II ➢ Vordergrundprozesse können durch ein + c abgebrochen werden. ➢ Für Hintergrundprozesse gibt es den Befehl kill pid, eventuell kill -9 pid. ➢ Die Prozessnummer wird beim Start eines Hintergrundprozesses mitgeteilt; ansonsten kann sie mit dem Befehl ps (process status) ermittelt werden.

83 Einführung in Linux - 82 Die Shell-Umgebung ➢ Variablen ➢ Sondervariablen ➢ Maskierung ➢ Kommandoersetzung ➢ Die Prologdatei.profile

84 Einführung in Linux - 83 Variablen ➢ In der Shell können Variablen mit Werten belegt werden. ➢ Name=Wert, z.B: a=5 ➢ Dieser Werte können durch vorangestelltes $-Zeichen abgerufen werden. ➢ b=$a; echo $b

85 Einführung in Linux - 84 Sondervariablen ➢ Einige Variablen sind bereits systemseitig definiert und haben eine besondere Bedeutung. ➢ HOME : absoluter Pfad des Heimatverzeichnisses ➢ PATH : enthält eine Liste derjenigen Verzeichnisse, die beim Aufruf eines Programms durchsucht werden ➢ PS1 : enthält den Login-Prompt

86 Einführung in Linux - 85 Maskierung I ➢ Gewisse Zeichen haben in der Shell eine besondere Bedeutung: ➢ ; $ \ & ( ) | ➢ Um diese Sonderbedeutung zu unterdrücken, müssen diese Zeichen maskiert werden. ➢ \ maskiert nur das nächste Zeichen ➢ ' ' maskiert alles Eingeschlossene (außer ' ) ➢ " " maskiert alles außer $ \ '

87 Einführung in Linux - 86 Maskierung II ➢ d=$HOME e=\$HOME ➢ echo $d $e ➢ -> /home/user $HOME ➢ f='$HOME' g=“$HOME“ ➢ echo $f $g ➢ -> $HOME /home/user

88 Einführung in Linux - 87 Maskierung III ➢ Vorsicht bei der Berechnung des Wertes von Variablen; auch hier werden die Sonderzeichen maskiert und verlieren damit ihre Sonderbedeutung. ➢ h='ls -l | wc' ➢ $h ➢ Um den in einer Variablen enthaltenen String als Kommando auszuführen, benötigt man den Befehl eval. ➢ eval $h

89 Einführung in Linux - 88 Kommandoersetzung I ➢ Einer Variablen wird die Standardausgabe eines Kommandos zugewiesen, wenn dieses innerhalb umgekehrter Hochkommata ` ` steht. ➢ h=`ls -l | wc` ➢ echo $h

90 Einführung in Linux - 89 Kommandoersetzung II ➢ Umgekehrte Hochkommata maskieren nicht. ➢ d=/etc ➢ h=`ls -l $d | wc` ➢ echo $h ➢ Umgekehrte Hochkommata werden durch ein \ und zwischen ' ' maskiert, nicht aber zwischen " ". ➢ n=“Aktuelles Verzeichnis ist `pwd`“ ➢ echo $n

91 Einführung in Linux - 90 Die Prologdatei.profile ➢ Existiert eine Datei namens.profile im Heimatverzeichnis, so werden die darin enthaltenen Kommandos beim Login automatisch ausgeführt. ➢ Dadurch kann jeder Nutzer sich seine eigene Umgebung erstellen. ➢ Beim ls -Kommando ist diese Datei nur bei der Option -a sichtbar.

92 Einführung in Linux - 91 Expandierung, Wildcards ➢ Wildcards können benutzt werden, um aus einer Menge von Dateien nach gewissen Kriterien auszuwählen. ➢ * steht für eine beliebige, auch leere Zeichenfolge ➢ ? steht für genau ein beliebiges Zeichen ➢ [Zeichenkette] steht für genau ein Zeichen aus der angegebenen Zeichenkette ➢ [Zeichen1-Zeichen2] steht für genau ein Zeichen zwischen Zeichen1 und Zeichen2

93 Einführung in Linux - 92 Übung 7 ➢ Führen Sie den folgenden Befehl im Hintergrund aus und killen Sie ihn: ➢ find / -name "c*" -print >out 2>err ➢ Listen Sie alle Dateien im Verzeichnis /bin auf, deren Namen ➢ mit a beginnen ➢ mit c oder l beginnen, und auf s enden ➢ mit a-k beginnen und aus genau drei Zeichen bestehen

94 Einführung in Linux - 93 System- und Dienstprogramme ➢ ein Sortierprogramm ➢ ein Textsuchprogramm ➢ ein Suchkommando ➢ Plattenbelegung ➢ Datenkomprimierung

95 Einführung in Linux - 94 sort ➢ Der Befehl sort sortiert die Zeilen einer Textdatei. ➢ Syntax: sort [+pos] [-pos] ➢ Wichtige Optionen: ➢ -r: sortiert in absteigender Reihenfolge ➢ -f: Groß- und Kleinbuchstaben werden nicht unterschieden ➢ -u: entfernt doppelte Zeile in der Ausgabe

96 Einführung in Linux - 95 grep ➢ grep durchsucht die Inhalte von Dateien nach vorgegebenen Mustern ➢ Syntax: grep ➢ Im Muster können Metazeichen verwendet werden: ➢ ^ : sucht das Muster am Anfang der Zeile ➢ $ : sucht das Muster am Ende der Zeile ➢. : steht für ein beliebiges Zeichen

97 Einführung in Linux - 96 find I ➢ Mit Hilfe von find kann man Dateibäume nach Dateien durchsuchen, die gewissen vorgegebenen Kriterien entsprechen ➢ find -name -print ➢ Obiges Kommando sucht, beginnend im Verzeichnis, rekursiv nach allen Dateien, die dem angegebenen Muster entsprechen

98 Einführung in Linux - 97 find II ➢ Statt des Namens können auch andere Kriterien für die Suche angegeben werden ➢ -perm : Zugriffsrechte ➢ -ctime : letzte Änderung ➢ Außerdem kann auf die ausgewählten Dateien auch sofort ein Befehl angewendet werden ➢ -exec statt -print

99 Einführung in Linux - 98 df, du ➢ Das Kommando df gibt Informationen über die Belegung des Dateisystems. ➢ Das Kommando du zeigt den belegten Platz eines Verzeichnisses, einschließlich aller Unterverzeichnisse ➢ du -a : Information über jede Datei ➢ du -s : nur die Gesamtbelegung

100 Einführung in Linux - 99 Datenkomprimierung ➢ Mit dem Kommando compress kann man Dateien komprimieren. ➢ Dabei wird die alte Datei gelöscht, es entsteht eine neue Datei mit der Endung.Z ➢ Umkehrung durch den Befehl uncompress ➢ Mehrere Dateien können durch zip zu einer Datei zusammengefügt werden, Umkehrung durch unzip

101 Einführung in Linux Übung 8 ➢ Sortieren Sie die Ausgabe des Befehls ls -l so, dass die Dateien der Größe nach sortiert werden, beginnend mit der größten. ➢ Finden Sie rekursiv alle Dateien ab dem Verzeichnis /usr, die mit c beginnen und mit p enden. ➢ Finden Sie alle Dateien im Verzeichnis /etc, die das Textmuster " ftp " enthalten.

102 Einführung in Linux Hilfe ?!? ➢ Web-Seiten ➢ ➢ ➢ ➢ News-Groups ➢ Programmberatung des HRZ ➢ ELUG und EliSta

103 Einführung in Linux Veranstaltungen ➢ Benutzeroberfläche KDE ➢ Linux-Systemadministration ➢ Linux/Unix-Vertiefungskurs

104 Einführung in Linux ENDE! Vielen Dank für die Aufmerksamkeit


Herunterladen ppt "12.11.03Einführung in Linux - 1 Einführung in Linux Holger Gollan (Axel Tombrink) Universität Duisburg-Essen Rechenzentrum Essen."

Ähnliche Präsentationen


Google-Anzeigen