22
DV-Fachseminar Hirschegg 23.10. bis 30.10.1996 1 Einführung in Unix Gerhard Rathmann Einführung in Unix Gerhard Rathmann Mail: [email protected] Hirschegg, 1996

Einführung in Unix - Universitaetsrechenzentrum · -rwxr-xr-x 1 daemon system 1776 Jan 22 18:49 profile.etc ... chmod o+rx sample.script In diesem Beispiel wird allen Benutzern (other)

Embed Size (px)

Citation preview

DV-Fachseminar Hirschegg 23.10. bis 30.10.1996 1

Einführung in Unix Gerhard Rathmann

Einführung

in

Unix

Gerhard Rathmann

Mail: [email protected]

Hirschegg, 1996

DV-Fachseminar Hirschegg 23.10. bis 30.10.1996 2

Einführung in Unix Gerhard Rathmann

DV-Fachseminar Hirschegg 23.10. bis 30.10.1996 3

Einführung in Unix Gerhard Rathmann

DV-Fachseminar Hirschegg 23.10. bis 30.10.1996 4

Einführung in Unix Gerhard Rathmann

Übersicht

— Unix-Shell

— Benutzerkennungen

— Benutzerrechte

— Dateisystem

— Zugriffsrechte im Dateisystem

DV-Fachseminar Hirschegg 23.10. bis 30.10.1996 5

Einführung in Unix Gerhard Rathmann

Die Unix-SHell

Kernel

Shell

Kommandos

Unter anderem gibt es folgende Shells:

Kommando

Name der Shell

/bin/sh Bourne-Shell/bin/csh C-Shell/bin/ksh Korn-Shell/bin/tcsh tcsh-Shell/bin/bash Bash-Shell

DV-Fachseminar Hirschegg 23.10. bis 30.10.1996 6

Einführung in Unix Gerhard Rathmann

Benutzerdefinition im Unix

— Benutzername

— Kennwort

— User Identification (UID)

— Group Identification (GID)

— Hinweistext (Name des Benutzers)

— Heimverzeichnis

DV-Fachseminar Hirschegg 23.10. bis 30.10.1996 7

Einführung in Unix Gerhard Rathmann

Dateihierarchie

Dateien werden im UNIX in einer hierarchischen Strukturverwaltet.

Alle Dateien befinden sich an irgendeiner Stelle in einemmehr oder weniger umfangreichen Verzeichnisbaum.

Der Anfang eines solchen Baumes ist die Wurzel (root) ,der unter UNIX mit / bezeichnet ist.

Die Wurzel selbst ist ein Dateiverzeichnis (directory), indem Verweise auf weitere Dateien stehen.

Diese können ihrerseits wieder Verzeichnisse sein.

Dies wird in den darunterliegenden Verzeichnissenentsprechend fortgesetzt, sodaß die erwähnteBaumstruktur entsteht.

DV-Fachseminar Hirschegg 23.10. bis 30.10.1996 8

Einführung in Unix Gerhard Rathmann

Ausschnitt aus dem Dateibaum von UNIX

/

bin/ etc/ tmp/ afs/ usr/ lib/ dev/

urz.uni-heidelberg.de/ bin/ etc/

usr/ common/rs_aix31/utl/ rs_aix32/

DV-Fachseminar Hirschegg 23.10. bis 30.10.1996 9

Einführung in Unix Gerhard Rathmann

Dateiattribute

— Dateiname

— Dateizugriffspfad (Pfadname)

— Dateityp

— Zugriffsrechte (protection bits)

— Dateilänge

— Anzahl der Links (Aliasnamen) auf die Datei

— Datum der Erstellung, der letzten Änderung und des letzten Zugriffs

— Benutzernummer des Eigentümers und seiner Gruppe

Man kann sich über die Attribute umfassend informierenmit dem ls -Kommando.

DV-Fachseminar Hirschegg 23.10. bis 30.10.1996 10

Einführung in Unix Gerhard Rathmann

Dateiattribute

Beispiel:

ls -l

total 139

drwxrwxrwx 5 x18 system 2048 Mar26 15:59 .

drwxrwxrwx 2 root system 2048 Feb 10 11:12 ..

-rw-r--r-- 1 x18 system 11088 Feb 26 21:14 XMdeskware.orig

-rw-r--r-- 1 x18 system 7296 Feb 26 21:14 ae.job

drwxr-xr-x 2 daemon system 2048 Feb 10 11:57 bin

--rw-r--r-- 1 x18 system 0 Mar 26 15:59 ls.out

-rwxr-xr-x 1 daemon system 1776 Jan 22 18:49 profile.etc

-rw-r--r-- 1 x18 system 4996 Mar 26 12:06 ps.out

-rwxrwxr-- 1 daemon system 1171 Nov 09 1990 rc.boot4

-r-xr-xr-x 1 daemon system 2879 May 21 1990 rc.install

-rw-rwxr-- 1 daemon system 660 May 20 1990 rc.ncs

-r-xr-xr-- 1 daemon system 6876 May 20 1990 rc.net

-rwxr-xr-x 1 daemon system 1876 May 21 1990 rc.nfs

-rwxrwxr-- 1 daemon system 2018 Feb 20 1991 rc.tape1

-rwxrwxr-- 1 daemon system 2838 Feb 20 1991 rc.tape2

drwxr-xr-x 2 x18 system 2048 Feb 14 12:55 supplies

-rw-r--r-- 1 x18 system 43 Feb 26 21:14 test.nqs

drwxr-xr-x 2 x18 system 2048 Feb 14 12:55 waste

-rw-r--r-- 1 x18 system 104 Feb 14 12:55 xdefaults

-rw-r--r-- 1 x18 system 138 Feb 26 21:14 xdtinitial.xde

DV-Fachseminar Hirschegg 23.10. bis 30.10.1996 11

Einführung in Unix Gerhard Rathmann

Zugriffsrechte

Für jede Benutzerklasse user, group und other gibt esjeweils drei verschiedene Zugriffsrechte:

- Lesen (r - read)

- Schreiben (w - write)

- Ausführen (x - execute)

Insgesamt können somit neun Zugriffsrechte (protectionbits) für jede Datei gesetzt werden. Diese Zugriffsrechtegibt es für alle Dateien, also auch für special files undVerzeichnisse. Mit der Vergabe von Rechten sollte ausGründen des Datenschutzes und der Datensicherheit sehrvorsichtig vorgegangen werden.

DV-Fachseminar Hirschegg 23.10. bis 30.10.1996 12

Einführung in Unix Gerhard Rathmann

Zugriffsrechte

An der Ausgabe des ls -Kommandos (ls -l) kann man dieZugriffsrechte ablesen.

Die Zeichen 2 bis 4 zeigen die Rechte des Eigentümers,die mittleren die Rechte der Gruppenmitglieder und dieletzten drei Zeichen die Rechte aller anderen Benutzer an.

Die Zugriffsrechte auf Verzeichnisse stellen eineBesonderheit dar, sie besitzen hier eine etwas andereBedeutung.

Um ein Verzeichnis ansehen oder durchsuchen zu können,benötigt man nicht nur das Leserecht auf diesemVerzeichnis, sondern auch das Ausführungsrecht.

Ist das w-Bit eines Verzeichnisses für eine Benutzerklassegesetzt, so kann jedes Mitglied dieser Klasse eigeneDateien in dieses Verzeichnis eintragen.

Eigentümer dieser neuen Dateien ist der Benutzer, der dieDatei anlegt.

DV-Fachseminar Hirschegg 23.10. bis 30.10.1996 13

Einführung in Unix Gerhard Rathmann

Setzen der Zugriffsrechte

Mit dem Kommando chmod (change mod e) kann derEigentümer einer Datei die Zugriffsrechte dieser Dateiändern:

chmod permissionlist filename[s]

Der Benutzer gibt eine Erlaubnisliste (permissionlist) undden Namen der Datei an, deren Zugriffseigenschaftengeändert werden sollen, und zwar durch gezieltesHinzufügen oder Wegnehmen von Zugriffsrechteneinzelner Benutzerklassen.

Die Erlaubnisliste hat dabei folgende Form:

Benutzerklasse+Rechtebzw. Benutzerklasse–Rechte.

Als Benutzerklasse ist außer den drei bekannten (u, g undo) auch noch die Sammelklasse a (all) möglich. Als Rechtesind die bekannten r, w und x, auch kombiniert, möglich.

Beispiel:

chmod o+rx sample.script

In diesem Beispiel wird allen Benutzern (other) das Rechtauf Ausführung und Lesen der Datei sample.script erteilt.

DV-Fachseminar Hirschegg 23.10. bis 30.10.1996 14

Einführung in Unix Gerhard Rathmann

Prozesse in UNIX

In UNIX wird der zusammenhängende Ablauf einer Folgevon Aktionen als Prozeß bezeichnet.Es können innerhalb eines Prozesses mehrere Programmenacheinander ablaufen.Ein einzelnes Programm kann auch mehrere gleichzeitiglaufende Tochterprozesse erzeugen und kontrollieren.

Jedem Prozeß ist eine eindeutige Nummer, PID (ProcessIdentification), zugeordnet.

Einen Überblick über die laufenden Prozesse kann mitdem Kommando ps (process status) erhalten.

Beispiel:

ps

PID TTY TIME CMD4712 pts/0 0:00 ps4711 pts/0 0:01 /bin/ksh

Zwei Prozesse werden angezeigt, nämlich die login-Shellmit der PID 4711 und der dem Kommando psentsprechende Prozeß mit der PID 4712.

DV-Fachseminar Hirschegg 23.10. bis 30.10.1996 15

Einführung in Unix Gerhard Rathmann

Grundlegende Kommandos

Inhalt eines Verzeichnisses

Syntax: ls [option] [directory] [...]

Funktion: Liefert das Inhaltsverzeichnis desangegebenen Verzeichnisses (directory)

Optionen:

-a alle Einträge, auch Dateien, die mit einem Punktbeginnen, werden angezeigt.

-d ist die Datei ein Verzeichnis, so wird dessenName, jedoch nicht sein Inhaltsverzeichnisausgegeben.

-l long format

DV-Fachseminar Hirschegg 23.10. bis 30.10.1996 16

Einführung in Unix Gerhard Rathmann

Grundlegende Kommandos

Wechseln des Arbeitsverzeichnisses

Syntax: cd [directory]

Funktion: Das angegebene Verzeichnis wird zumArbeitsverzeichnis gemacht.

Bemerkung:Ohne Parameter wird das Home-Verzeichnis zumArbeitsverzeichnis.

DV-Fachseminar Hirschegg 23.10. bis 30.10.1996 17

Einführung in Unix Gerhard Rathmann

Grundlegende Kommandos

Anlegen eines neuen Verzeichnisses

Syntax: mkdir directory1 [directory2]

Funktion: Eines oder mehrere neue Verzeichnissewerden angelegt.

Bemerkung:

Es werden die Standardzugriffsrechte vergeben. Besitzerist der Anleger.

Löschen eines Verzeichnisses

Syntax: rmdir [optionen] [directory1] [directory2]

Funktion: Die angegebenen Verzeichnisse werdengelöscht, falls sie leer sind.

Optionen: -r rekursives Löschen, es wird dasVerzeichnis mitsamt seinen

Unterverzeichnissen gelöscht.Bemerkung:Das Löschen von Verzeichnissen ist nur dem Besitzer unddem Superuser erlaubt.

DV-Fachseminar Hirschegg 23.10. bis 30.10.1996 18

Einführung in Unix Gerhard Rathmann

Grundlegende Kommandos

Löschen von Dateien

Syntax: rm [optionen] datei1 [datei2]

Funktion: Alle angegebenen Dateien werden gelöscht.

Optionen:

-r Es können auch Verzeichnisses angegebenwerden. Die Verweise in dem Verzeichnis werdenrekursiv gelöscht, zum Schluß das Verzeichnisselbst.

Kopieren von Dateien

Syntax: 1. cp [optionen] datei1 datei2

2. cp [optionen] datei1 [datei2] [...] ... dir

Funktion: Die datei1 wird in datei2 kopiert.

Ist der letzte Name ein Verzeichnis, sowerden alle angegebenen Dateien in diesesVerzeichnis kopiert.

Optionen: -r rekursiv

-p Das letzte Änderungsdatum wird beibehalten.

DV-Fachseminar Hirschegg 23.10. bis 30.10.1996 19

Einführung in Unix Gerhard Rathmann

AFS

Der Einsatz vieler, unabhängig voneinander arbeitendenComputern setzt voraus, daß der Anwender auf jedemRechner die gleiche Datenstruktur vorfindet.

AFS (Andrew File System) wurde an der Carnegie MellonUniversität konzipiert.

Definitionen:

— Der Verbund von Fileservern und Clients, die über einengemeinsamen Datenbestand verfügen, wird als Zellebezeichnet. Der Name einer solchen Zelle wirdüblicherweise aus dem Namen der jeweiligen Internet-Domain abgeleitet.

In Heidelberg: urz.uni-heidelberg.de.

Der Name der Zelle ist gleichzeitig der Name derzweiten Verzeichnisebene:

/afs/urz.uni-heidelberg.de/.

DV-Fachseminar Hirschegg 23.10. bis 30.10.1996 20

Einführung in Unix Gerhard Rathmann

AFS

— Unabhängig von der Datenverteilung auf die Server gibtes einen einheitlichen mount point /afs für alle Datenauf allen Rechnern, die zu einer Zelle gehören.

Ein verteiltes Filesystem verknüpft also dieDateibäume verschiedener Computer und verbirgtzugleich die Struktur des zugrundeliegendenNetzwerkes.

Bei der Installation am URZ dienen die beiden Geräteaix950a und aix950b als AFS-Server und alle anderenRS/6000 Computer als Clients. Zusätzlich zu ihrer Rolle alsServer sind die beiden erwähnten 950er Modelle auch alsClients konfiguriert, da ihre Rechenleistung den Benutzernebenfalls zur Verfügung gestellt werden soll.

DV-Fachseminar Hirschegg 23.10. bis 30.10.1996 21

Einführung in Unix Gerhard Rathmann

Verwendung von Wildcard

Ein Wildcard ist ein Ersatzzeichen, das anstelle eines odermehrerer beliebiger anderer Zeichen verwendet wird. Miteinem einzigen Befehl kann so eine gewünschte Aktion aufmehrere Dateien angewandt werden.

Folgende Wildcards können verwendet werden:

* beliebige Zeichenkette? genau ein beliebiges Zeichen

z.B.: [bdz7] genau eines der Zeichen b, d, z oder7

Z.B.: [g-r] genau ein Zeichen aus dem Bereichg bis r

Beispiele:rm * löscht alle Dateien im aktuellen

Verzeichnisrm ? löscht alle Dateien, deren Name aus

genau einem Zeichen bestehtchmod * 700 ändert die Zugriffsrechte aller

Dateien im aktuellen Verzeichnisrm dat[1-3]a löscht die Dateien dat1a, dat2a und

dat3a

DV-Fachseminar Hirschegg 23.10. bis 30.10.1996 22

Einführung in Unix Gerhard Rathmann

Pipe-Mechanismus

Pipes sind namenlose, aus Benutzersicht transparenteDateien, die sich ausschließlich im Hauptspeicher befinden(RAM-Dateien). Mit Hilfe von Pipes können mehrereProgramme zu Ketten verbunden werden. DieStandardausgabe (stdout) des ersten Programmes wirdzur Standardeingabe (stdin) des zweiten Programmes usw.

Dadurch erspart man sich die Angabe von temporärenZwischendateien. Das Pipezeichen ist der senkrechteStrich (|). Mit Hilfe von Pipes lassen sich mächtige und evtl.auch langlaufende Kommandos erzeugen.

Beispiel:

ls -l | more erzeugt eine bildschirmgerechte Ausgabe

Während mit Hilfe der Zeichen > und < die Dateiausgabebzw. die Dateieingabe umgelenkt werden können, lassensich mit Hilfe des |-Zeichens verschiedene Programmedirekt verbinden, ohne daß Zwischendateien angegebenwerden müssen.