Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Teil II : Benutzerebene eines Rechners

Ähnliche Präsentationen


Präsentation zum Thema: "Teil II : Benutzerebene eines Rechners"—  Präsentation transkript:

1 Teil II : Benutzerebene eines Rechners
Das Betriebssystem UNIX Internet Texteditor  Pierre Bayerl, Klaus Murmann & Heiko Neumann, Fakultät für Informatik, Universität Ulm, 2002/03

2 Das Betriebssystem UNIX
Kurzeinführung: Was ist UNIX Rechnersitzungen – An- und Abmeldung Dateien und Dateisystem Kommando-Interpreterebene (Shell) und Prozesse Datei

3 Aufgaben eines Betriebssystems
UNIX Aufgaben eines Betriebssystems Generell: Verwaltung und Zuteilung der Ressourcen eines Rechners Kontrolle und Verwaltung der Betriebsmittel Ausführen von Benutzerprogrammen (Rechenzeit und Speicher) Speicherung von Daten (Plattenplatz) Drucken von Dokumenten (Drucker) Bereitstellung einer logischen Sicht auf die Betriebsmittel Zugriff auf Dokumente, Drucker, periphere Geräte (Dateisystem) Prozesssteuerung (Prozess-Subsystem, Rechenzeit)

4 Kennzeichen von UNIX UNIX Mehrbenutzer-Betriebssystem (multi-user)
Time-sharing Betriebssystem (Verwaltung mehrerer asynchroner Prozesse) Geräteunabhängiges, hierarchisches Dateikonzept Gute Portabilität (hohe Verfügbarkeit von Software) Dialogorientierung (Kommandointerpreter) Fließband-Technik (pipelining) Datei

5 Aktuelle UNIX-Derivate
Erste UNIX Version (AT&T 1969) Linux BSD/FreeBSD Sun Solaris Darwin/Mac OS X Im Pool: Sun Solaris Zuhause: z.B. Linux

6 Strukturierung von UNIX: Schalen-/Schichtenkonzept
Hardware Betriebssystem-Kern (kernel) (Prozessverwaltung und –kommunikation, Speicherverwaltung, Ein-/Ausgabe-Verwaltung, Gerätetreiber, ...) Dienst- und Anwenderprogramme (Bibliothek mit Standardfunktionen (in C), Compiler, Editoren, ...) Kommandointerpreter (shell) Hardware Betriebssystem-Kern (kernel) Dienst- und Anwenderprogramme Kommandointerpreter (shell) shell

7 Was ist eine „Shell“ (Kommandointerpreter) ?
UNIX Was ist eine „Shell“ (Kommandointerpreter) ? Ausgabe Befehl Textuelle Eingabe von Befehlen Textuelle Ausgabe von Befehlsergebnissen Dialog/Kommunikation mit dem System Eingabe von Kommandos am Prompt Prompt Rechnername + evtl. weitere Informationen Variable visuelle Darstellung von Shells Basisfunktionalität ist in jedem Fall identisch: Eingabe: Kommando(s) Ausgabe: Ergebnis

8 Anmeldung an ein UNIX-System (1)
Benutzer-Account Zugang über Benutzername (login) + Passwort Ermöglicht Zugriff auf Ressourcen (Plattenplatz, Drucker, ...) Graphisches Login an einem X-Terminal (im WiMa-Pool) Eröffnet eine UNIX-Sitzung an einem graphischen UNIX-Computerarbeitsplatz Graphische Oberfläche ermöglicht das Öffnen verschiedener Fenster RECHNERNAME Beispiel Login: pierre Password: *******

9 Anmeldung an ein UNIX-System (2)
„Remote Login“ von einem anderen Rechner Möglich von UNIX-Rechnern und Windows-Rechnern Die Verwendung von graphischen Programmen hängt davon ab ob der Verwendete Arbeitplatz dies ermöglicht Am besten und am sichersten ist die Verwendung der Secure Shell Von einem beliebigen UNIX-Rechner (z.B. im E-Techniker Pool) ssh -l loginname turing.mathematik.uni-ulm.de (Statt des Rechners turing kann auch thales oder theseus verwendet werden)

10 Anmeldung an ein UNIX-System (3)
1 2 3 Um sich von einer Windows-Maschine aus einzuwählen ist ein entsprechendes Programm nötig (z.B. PuTTY) 4 5 6

11 Arbeiten mit einem UNIX-System (Shell)
Kommandozeile (Shell) um mit dem Betriebssystem zu kommunizieren Kommando ausführen: <Befehl> <Parameter> Vorsicht: Groß/Klein-Schreibung beachten! Bei einem X-Terminal muß zuvor eine Shell geöffnet werden: Mit der rechten Maustaste auf den Hintergrund klicken Es erscheint ein Menü. Wählen Sie: Hosts - Xterm - thales Beim Remote Login (mit ssh) bekommt man automatisch eine Shell

12 Abmelden von einem UNIX-System
Abmelden zum Schutz der eigenen Daten (Texte, Mails, Ressourcen!) Abmelden von der Kommandozeile Befehl „exit“ oder „logout“ Abmelden von X-Terminal Knopf/Menüpunkt „exit“ oder „logout“ drücken NIEMALS DIE X-TERMINALS AUSSCHALTEN!!

13 Zusammenfassung: Anmelden & Abmelden
Anmelden (“login”) Am X-Terminal Per “ssh” von einem anderen UNIX System Per “ssh” von einem Windows-Rechner Abmelden “exit” an der Kommandozeile (Shell) eingeben “exit”-Knopf drücken (X-Terminal) Rechner im WiMa-Pool (X-Terminals) nie ausschalten !!

14 Demonstration DEMO

15 Dateien und Dateisystem
Dateikonzept Datei: sequentielle Folge von Datenworten (Bytes) Dateiarten: Normale Dateien (files; Texte, Programme, Daten,...) Dateiverzeichnisse (directories; auch Kataloge) Gerätedateien (special files, für physik. Geräte) Nahezu alle Ressourcen werden bei UNIX-Systemen auf Dateien abgebildet Ordner

16 Datei-Hierarchie UNIX-Dateisystem = Hierarchie von Dateien
Jede Datei besitzt eine eindeutige Adresse Verzeichnis(-Dateien) können wiederum Dateien enthalten Standard-Verzeichnisse gliedern das System auf: /dev: Physikalische Geräte (Drucker, Festplatte, ...) /usr: Anwendungen (Programme, Bibliotheken, ...) /home: Benutzerverzeichnisse Heimatverzeichnis: /home/name enthält alle persönlichen Dateien z.B. /home/pierre/datei1.txt / dev usr pierre heiko klaus datei1.txt datei2.txt home

17 Datei Adressierung Vollständiger Name (ausgehend von „ / “):
/home/pierre/datei1.txt Relativer Name (ausgehen vom aktuellen Verzeichnis) datei1.txt ./datei1.txt ../klaus/datei3.txt Besondere Verzeichnisnamen: . = Aktuelles Verzeichnis .. = Verzeichnis eine Ebene höher / = Wurzel des Dateisystems („root“) / dev usr home pierre heiko klaus Aktuelles Verzeichnis datei1.txt datei2.txt datei3.txt

18 Verzeichnis Kommandos (1)
Datei Verzeichnis Kommandos (1) pwd Name/Pfad des aktuellen Verzeichnisses anzeigen (print working directory) cd Ändern des Arbeitsverzeichnisses (change directory) cd Wechsel ins Heimatverzeichnis cd <name> zum angegebenen Unterverzeichnis mkdir <name> Anlegen eines neuen Unterverzeichnisses rmdir <name> Löschen eines Unterverzeichnisses (das angesprochene Verzeichnis muss leer sein) / / pierre datei1.txt datei2.txt home home pierre example1 example2 datei1.txt datei2.txt = akt. Verzeichnis) (

19 Verzeichnis Kommandos (2)
Datei Verzeichnis Kommandos (2) ls Anzeige eines Verzeichnisinhaltes ls -l Ausführliche Anzeige des Inhalts (Dateigröße...) Platzhalter für Dateinamen: „ * “ (beliebig viele Zeichen) „ ? “ (ein Zeichen) ls d* Alle Dateien deren Namen mit „d“ beginnt ls *2* Alle Dateien in deren Namen eine „2“ vorkommt Alternativ können Dateien auch einzeln aufgeführt werden: ls d* f* Listet alle Dateien die mit „d“ oder mit „f“ beginnen / pierre datei1.txt datei2.txt home file2.txt

20 Dateiausgabe Kommandos (1)
cat Ausgabe oder Konkatenation von Dateien auf Monitor more Seitenweise (formatierte) Ausgabe von Dateien auf Monitor head, tail Ausgabe der ersten/letzen Zeilen von Dateien auf Monitor grep Suchen einer gegebenen Zeichenfolge in einer Datei Format: grep “<such-string>“ datei1 datei2... Inhalt von “datei1.txt” Inhalt von “datei2.txt” / pierre datei1.txt datei2.txt home file2.txt Inhalt von “file2.txt” Suchergebnisse: Welche Dateien enthalten den Text “datei”?

21 Dateiausgabe Kommandos (2)
a2ps Ausgabe von Textdateien (ASCII-Dateien) auf dem Drucker lp Ausgabe von Postscript-Dateien auf Drucker (MIT lp NUR POSTSCRIPTDATEIEN DRUCKEN) / pierre datei1.txt datei2.txt home file2.txt Druckerausgabe auf bestimmten Druckern: lp -d<Druckername> <Datei>.ps a2ps -P<Druckername> <Datei>.txt Drucker: garamond & gutenberg Bsp.: a2ps -Pgutenberg datei1.txt

22 Kopieren / Verschieben von Dateien
cp Kopieren von Dateien (cp quelldatei zieldatei oder cp quelldatei zielordner) cp datei1.txt example2/kopie1.txt cp datei1.txt example2 mv Verschieben von Dateien mv example2/kopie1.txt datei3.txt rm Löschen von Dateien (Vorsicht: Was weg ist ist weg!) rm datei3.txt / / home home pierre pierre example1 example2 datei1.txt datei2.txt example1 example2 datei1.txt datei1.txt datei2.txt

23 Dateien - Besitzer und Rechte (1)
Dateien gehören dem Benutzer der sie angelegt hat (Benutzer teilen sich wiederum in verschiedene Gruppen auf) Der Besitzer darf sog. Rechte an seinen Dateien vergeben: Lesen (r): Wer darf diese Datei betrachten Schreiben (w): Wer darf diese Datei verändern Ausführen (x): Handelt es sich um eine Ausführbare Datei Rechte können vergeben werden an: Sich selbst Anderen Benutzern aus der selben Gruppe Allen anderen Benutzern Befehl zum Anzeigen Des aktuellen Verzeichnisses Rechte Benutzer/Gruppe Dateigröße Dateiname

24 Dateien - Besitzer und Rechte (2)
chmod Verändern der Zugriffsrechte auf Dateien Syntax: chmod <Parameter> <Datei(en)> Parameter: (siehe „man chmod“) +w oder +r (ermöglicht schreibenden bzw. lesenden Zugriff) -w oder -r (verhindert schreibenden bzw. lesenden Zugriff) Kein Zugriff ohne Lese-Recht!

25 Kommandozeile (Shell) und UNIX-Kommandos
Übersicht über einige UNIX-Befehle Was ist die Standarteingabe bzw. Standartausgabe Kombinieren von UNIX-Kommandos Umlenken der Eingabe/Ausgabe Pipes

26 Nützliche UNIX-Kommandos (1)

27 Nützliche UNIX-Kommandos (2)
Ausgabe der ersten n Zeilen Textsuche in Dateien 2 TEST ABC 3 Xxxx xxx 6 ABCD EFG 8 Allg Inf ABC theseus$ head -n 3 abc.txt 2 TEST ABC 3 Xxxx xxx theseus$ grep ABC abc.txt 2 TEST ABC 6 ABCD EFG ABC Ausgabe der letzten n Zeilen Zeilenweise sortieren theseus$ tail -n 3 abc.txt ABC theseus$ sort abc.txt ABC 2 TEST ABC 3 Xxxx xxx 6 ABCD EFG 8 Allg Inf Datei: abc.txt Bestehen aus 12 Zeilen à 12 Zeichen (11 Zeichen + Zeilenumbruch) bzw. 36 Wörter Zeilen/Wort/Zeichen-Anzahl theseus$ wc abc.txt abc.txt

28 Standarteingabe und Standartausgabe
Die Shell stellt Ein- und Ausgabekanäle für Prozesse zur Verfügung Kommandos können von der Standarteingabe lesen und schreiben ihre Ergebnisse in die Standartausgabe Fehlermeldungen werden zu Diagnoseausgabe weitergeleitet Shell- Kommando Standard- eingabe stdin Diagnoseausgabe (Fehler) ausgabe stdout stderr stdin : Eingabe von Tastatur stdout, stderr : Ausgabe auf Bildschirm

29 UNIX-Kommandos und die Standarteingabe
Bei den meißten UNIX-Befehlen kann man den Dateinamen weglassen. Statt aus einer Datei zu lesen wird von der Standarteingabe gelesen. (normalerweise Standarteingabe = Tastatureingabe) Falls nötig kann das „Dateiende“ mit CTRL-D signalisiert werden. Beispiele: [localhost:~] pi% sort Pierre Bayerl Klaus Murmann Heiko Neumann ^D [localhost:~] pi% [localhost:~] pi% tail -n 1 Pierre Bayerl ^D [localhost:~] pi%

30 Umleiten der Ein/Ausgabe in/aus eine(r) Datei
> Umlenken der Standardausgabe in eine angegebene Datei. existiert die Datei nicht, wird diese angelegt. existiert die Datei, so wird deren Inhalt überschrieben! Bsp.: ls >inhalt.txt >> hängt neuen Inhalt am Dateiende an! Bsp.: ls order1 >> inhalt.txt 2> Umlenken der Diagnoseausgabe Bsp: wc –x datei1.txt 2> err.txt (-x als Option ungültig!) < Umlenken der Eingabe aus einer Datei [localhost:~] pi% sort >out.txt Pierre Bayerl Klaus Murmann Heiko Neumann ^D [localhost:~] pi% tail -n 1 <out.txt [localhost:~] pi%

31 Verknüpfen mehrer Kommandos über Pipes
Direkte Verknüpfung der Ausgabe eines Prozesses mit der Eingabe eines anderen Prozesses Syntax: Befehl1 | Befehl2 | Befehl3 ... Bsp.: ls /usr/bin | grep „ail“ (ohne Dateiangabe ließt grep von stdin) sort tail stdin stdout [localhost:~] pi% sort | tail -n 1 Pierre Bayerl Klaus Murmann Heiko Neumann ^D [localhost:~] pi% “|” = Pipe

32 Internet Prinzip und Organisation Dienste und Adressen
WWW (‚World wide web‘)

33 Prinzip und Organisation: Nachrichten-Übermittlung
Netze von Rechnern Vermittlungsrechner (Router) Zielrechner Vermittlung und Betrieb (Paketvermittlung) Nachricht von A nach B Zerlegung in Pakete mit Zieladdresse B Versendung der Pakete über möglicherweise verschiedene Verbindungen A B =

34 Prinzip und Organisation: Protokolle
Protokolle: Konventionen und Regeln für den Austausch von Informationen zwischen Computern im Internet … …. . Ziel: vollständige, fehlerfreie und möglichst effektive Datenübertragung TCP/IP heute Standard TCP : Transmission Control Protocol IP: Internet Protocol Internet = Gesamtheit aller Netzwerke und Computer die über TCP/IP- Verbindungen erreichbar sind.

35 Prinzip und Organisation: Client-Server-Prinzip
Server (Diener, Anbieter) Programm auf einem Rechner A, das einen bestimmten Dienst anbietet und der von einem anderen Nutzer abgerufen werden kann. Client (Klient, Kunde) (Anwender-)Programm auf einem Rechner B, das den Dienst anfordert. Server z.B. allgemeine.informatik.uni-ulm.de Clients Anfrage Antwort Beispiel: Der WWW-Server der Vorlesung bieten einen speziellen Dienst zur Verwaltung der Übungspunkte an.

36 Dienste TELNET oder SSH Zugriff auf andere Rechner (Dialogzugriff).
FTP Übertragen (Kopieren) von Dateien zwischen verschieden Rechnern. Austausch von Nachrichten. NEWS Diskussion- und Informationsmedium zu vielen verschiedenen Themen. HTTP Multimediales hyperlink-basiertes Informationssystem und Schnittstelle den anderen Internet-Diensten. DNS Domain Name Service, spezieller Dienst um Internetadressen korrekt zu handhaben

37 Internet Adressen Jeder Rechner im Internet besitzt eine aus vier Bytes (Zahlen) bestehenden eindeutigen Adresse (IP-Adresse), z.B Symbolische Adressen werden von einem speziellen Dienst (DNS, Domain Name Service) in IP-Adressen umwandelt, z.B. allgemeine.informatik.uni-ulm.de  Rechner A möchte mit Rechner B in Kontakt treten allgemeine.informatik.uni-ulm.de ? “ ” ! A DNS-Server B Anfrage an Antwort Client Ziel-Rechner (Server) z.B. allgemeine.informatik.uni-ulm.de

38 Internetadressen: IP-Adressen
Länge: 32 Bit = 4 Byte à 8 Bit Format von IP-Adressen: a.b.c.d a,b,c,d  [1,254] 0 und 255 haben Sonderrolle Beispiele gültiger Internet-Adressen: Mit oder localhost kann stets der Rechner auf dem gerade gerabeitet wird angesprochen werden.

39 Internetadressen: Symbolische Adressen (1)
Jede an das Internet angeschlossene Einrichtung betreibt einen eigenen Namens-Server (DNS, Domain Name Server) In jedem Land gibt es einen Haupt-Domain-Name-Server (verteilte Rechnerdatenbank mit Namen/Adresseinträgern) Aufbau der Domain-Namen host.[subdomain.[subdomain.[...]]]domain.topleveldomain Rechnername Institute, Abteilungen, etc Einrichtungen Hauptdomain Beispiel: axon.informatik.uni-ulm.de

40 Internetadressen: Symbolische Adressen (2)
Adressierungsschema URL (Uniform Resource Locator) Beispiel: Vor dem Doppelpunkt steht das zu verwendende Protokoll (z.B. ftp, http,..).

41 Einsatz: Verschicken von Nachrichten an verschiedene Benutzer des (UNIX)-Systems. verschickte Nachrichten landen in einem Briefkasten. (MAIL-BOX) Der Inhalt ist vom jeweiligen Adressaten abrufbar. Das Vorhandensein von (neuen) Nachrichten wird nach dem Anmelden (login) angezeigt: You have mail oder You have new mail. Zum lesen der Mails wird ein spezielles Programm benötigt (z.B. pine, netscape, ...)

42 Pine (1) ASCII-orientiertes Programm zum lesen und schreiben von Mails
Wichtigste Menüpunkte: - Compose Message (neue Mail schreiben) - Folder List (zeigt Mailverzeichnisse) => INBOX (hier sind die neuen Mails drin) => sent-mail (die Mails die man selber verschickt hat) im unteren Teil des Fensters sieht man welche Tasten für welchen Befehl gedrückt werden müssen ( ^ bedeutet die ctrl-Taste) wichtige Befehle: m zum Hauptmenue q Beenden (mit y(es) bestätigen) Control + X versenden der Mail (in Compose Message)

43 Pine (2) Hauptmenü Mögliche Befehle

44 Pine (3) “Compose Message” “Folder List/INBOX”
(Mails lesen) “Compose Message” (Mail schreiben & senden)

45 Pine (4) DEMO

46 Editoren Übersicht vi pico nedit emacs

47 Übersicht Editoren dienen zum Erzeugen und Modifizieren von Dateien
Textdateien / Dokumente (z.B. ein Reisebericht) Programm-Dateien (z.B. Modula-2 Quellcode) ... Verbreitete UNIX-Editoren vi (sehr spartanisch, aber immer verfügbar und sehr mächtig) pico (wird von pine verwendet um mails zu editieren) nedit (graphischer Editor à la „Windows“. Start: nedit &) emacs (sehr mächtiger Editor, graphische Version: xemacs)

48 Editor: “vi” Auf allen UNIX-Systemen verfügbar, jedoch sehr spartanisch Sehr mächtig Auch verfügbar für Windows-Systeme Wichtige Funktionen Editor aufrufen: vi Datei Text speichern: <ESC> : w Text speichern & Editor verlassen : <ESC> : wq Editor verlassen ohne zu speichern: <ESC> : q! Alternative: vim (vi-improved) Lernen den vi oder vim zu bedienen Shell-Kommando: vimtutor

49 Editor “pico” Bedienung ähnlich „pine“ Wichtige Funktionen
Editor aufrufen: pico Datei Text speichern: ctrl-o Text speichern & Editor verlassen : ctrl-x + „y“ („y“ = „yes“ für Speichern) Editor verlassen ohne zu speichern: ctrl-x + „n“ („n“ = „no“ für Speichern) Ähnlich wie bei pine werden in der untersten Zeile stets mögliche Tastenkombinationen angezeigt.

50 Editor: “nedit” Graphischer Editor, benötigt einen graphischen Arbeitsplatz (per ssh von einem Windowsrechner steht dieser Editor unter Umständen nicht zur Verfügung) Bedienung ähnlich wie Windows-Applikationen Sehr leicht zu bedienen Alle Funktionen sind per Menü-Zeile mit der Maus erreichbar Wichtige Funktionen: Editor aufrufen: nedit Datei & („&“ startet das Programm und kehrt zur Kommandozeile zurück) Text speichern: ctrl-s Editor verlassen: ctrl-q

51 Editor: “emacs” / “xemacs”
Sehr verbreitet, auf nahezu allen UNIX-Systemen verfügbar Sehr mächtig Auch verfügbar für Windows-Systeme Wichtige Funktionen Editor aufrufen: emacs Datei oder xemacs Datei & Text speichern: ctrl-x ctrl-s (nacheinander ctrl+x und ctrl+s drücken) Editor verlassen: ctrl-x ctrl-c Editor-Befehl abbrechen: ctrl-g Zeile n anspringen: <ESC> g n Undo (Rückgänig): ctrl-x u (nacheinander ctrl+x und „u“ drücken) Lernen den emacs oder xemacs zu bedienen Editor-Kommando: ctrl-h t (nacheinander ctrl+x und „u“ drücken)


Herunterladen ppt "Teil II : Benutzerebene eines Rechners"

Ähnliche Präsentationen


Google-Anzeigen