• Shuffle
    Toggle On
    Toggle Off
  • Alphabetize
    Toggle On
    Toggle Off
  • Front First
    Toggle On
    Toggle Off
  • Both Sides
    Toggle On
    Toggle Off
  • Read
    Toggle On
    Toggle Off
Reading...
Front

Card Range To Study

through

image

Play button

image

Play button

image

Progress

1/68

Click to flip

Use LEFT and RIGHT arrow keys to navigate between flashcards;

Use UP and DOWN arrow keys to flip the card;

H to show hint;

A reads text to speech;

68 Cards in this Set

  • Front
  • Back
Welche Signale kann man an einen Prozess senden und was machen sie?
SIGHUP, Nummer 1, HUP: hang up , wird an alle Kinderprozesse gesendet, wenn der Vaterprozess beendet wird.
SIGINT, Nummer 2, INT: interrupt, unterbricht den Prozess (ähnlich STRG+C)
SIGQUIT, Nummer 3, wie INT, aber mit Core Dump
SIGFPT, Nummer 8, Floating Point expression, ??
SIGKILL, Nummer 9, beendet den Prozess abrupt
SIGTERM, Nummer 15, beendet den Prozess "sanft"
SIGTSTP, Nummer 20, hält den Prozess an (ähnlich STRG+Z)
Was macht der Kernel?
Er verwaltet die Hardware
Was ist ein Befehlsinterpreter?
Eine Schnittstelle zwischen dem Benutzer, Software und Hardware.
Was sind die Aufgaben eines Betriebsystems?
Kernel
Befehlsinterpreter
Verwaltung von Ressourcen (RAM, etc)
Bereitstellen von Dienstprogrammen zur Verwaltung der verfügbaren Ressourcen und Administration.
Gewährung des reibungslosen Ablaufs konkurrierender Prozesse
Eigenschaften von Unix
Portabilität
Hierarchisches Dateisystem
Mehrbenutzerbetrieb
Schutzmechanismen
Kommandointerpretation
Ein- und Ausgabe-Konzept
Prozesse
Filter und Pipelines
Dienstprogramme (Shellkomandos)
Kommandointerpreter (Ringmodell aus Folien)
Drei Ringe, innerster "Hardware", mittlerer "Kernel", äußerer "Shell".
Welche Shells gibt es?
sh -> Bourne Shell
csh -> C-Shell
ksh -> Korn-Shell
bash -> Bash
Prompt, was für "Signal-Symbole" gibt es?
$ bei normalem Benutzer: gregor@denkbrett:~$

# bei Root: root@denkbrett:~#

> falls ein Befehl nicht vollständig ist. (z.B. if ' eingeben)
Wie lautet die Kommandosyntax?
befehl optionen argument

find -name '*.txt'
Welche "eingebaute" Hilfen gibt es?
man

info

whatis

apropos

which
Wie kann man einem anderen Benutzer eine Nachricht senden?
mit dem write Befehl (steinalt!)

write user2 <ENTER>

<STRG> + <D>
Wie kann man Nachrichtenempfang aktivieren/deaktivieren?
mesg (y/n)

mesg alleine: gibt status an
Wie kann man eine Mail versenden?
echo "Voll toller Text" | mail -s "Betreff" chuck@norr.is
Besonderheiten bei Verzeichnissen unter UNIX?
Das Hauptverzeichnis ist /, darunter liegt alles andere.
Was für Dateiarten gibt es? Hier ist der erste Buchstabe bei "ls -l" gemeint.

WICHTIG!
Datei: -
Verzeichnis: d
Blockdevice, gepuffert: b
zeichenorientierte Gerätedatei, ungepuffert: c
Symbolische LInks: l <- "ELL", wie Link
Named Pipes: p
sockets: s
Besonderheiten Dateinamen?
Dateinamen kann aus allem außer "/" bestehen.
Länge maximal 256.
Endungen spielen keine Rolle.
Groß und Kleinschreibung IST relevant.
Versteckte Dateien beginnen mit "." <--- PUNKT
Was für Informationen sind in einer INODE gespeichert?
► Besitzer der Datei
► bevorrechtigte Gruppe
► Zugriffsrechte der Datei
► Typ der Datei (einfache Datei, Verzeichnis, Link ...)
► Größe der Datei (in Bytes)
► Referenzzähler (Anzahl der Hardlinks = Namen der Datei, d.h. Zahl der
Verweise aus den Verzeichnissen auf die Datei)
► Datum der letzten Inode-Änderung, des letzten Zugriffs auf die Datei
Inode-
(letzte Dateiöffnung) und der letzten Modifikation der Datei
► Verweis/Verweise auf die eigentlichen Cluster der Datei.
Was für Zeitstempel weist eine Datei auf?
atime: Zugriffszeit
mtime: Änderungszeit (m für modified")
ctime: Change-Zeit == Letzte Änderung des Inode.
Was macht stat?
Zeicht Inode Informationen einer Datei an.
Manipulation der Inodes?
Geht mit "touch".
Was macht pwd?
Print working directory,

gibt den pfad zum aktuellen Verzeichnis aus.
Befehle auf Verzeichnissen?
cd : change dir

mkdir: make dir

rmdir: remove dir

ls: list dir
Welche Zugriffsrechte gibt es?
Gibt drei Zeichen für USER, Gruppe, Andere in den Ausgaben.

0 --- kann nix
1 --x kann ausführen (wie exe)
2 -w- kann schreiben
3 -wx kann schreiben + ausführen
4 r-- Leserecht gesetzt
5 r-x lesen + ausführen
6 rw- lesen + schreiben
7 rwx kann alles
Was sind die Standardzugriffsrechte?
Datei: 644
Verzeichnis: 755
Wie ändert man die Verzeichnisrechte?
chmod 754 datei.txt
chmod a+x datei.txt <-- alle bekommen ausführen

chmod u+rwx,g-w,o-w <-- user kann alles, gruppe und andere dürfe nicht (mehr) schreiben
Wie ändert man die Gruppenzugehörigkeit einer Datei/eines Verzeichnisses?
chgrp andere_gruppe sinnlos.txt
Wie bekommt man Informationen zu den aktuellen Benutzergruppen?
mit id

GIbt alle Gruppen aus in denen der User zur Zeit ist.
Was für Linktypen gibt es ?
Hardlinks und symbolische Links.

Hardlink: zwei Namen für die gleiche Datei, geht nur auf einer Partition und nicht für Verzeichnisse!

Symbolische links:
Kann alles, hat eine eigene inode.
Wie macht man nen symbolischen Link?
ln -s /die/datei/ist/alt /die/datei/ist/neu.cool

DIe Datei neu.cool zeigt nun auf alt.
Befehle für Dateioperationen?
rm: remove

rm /mega/gut -rf <- löscht Verzeichnis gut mit allem drin

cp: kopieren

cp alt neu <- kopiert alt nach neu

mv: verschieben

mv alter_name neuer_name <- umbennenen

find: findet :D

find -name ".txt" <- alles mit endung .txt
Was für Komprimierungsprogramme gibt es?
zip
compress
pack
bzip2

tar macht gzip und bzip2 mit parameter (z bzw j)

tar -cvfz archiv.tar.gz /home/user/verzeichnis1
Nennen Sie die Standard I/Os
Standardeingabe: stdin
Standardausgabe: stdout
Standarderror: stderr
Welche Umlenkmechanismen gibt es?
► Standardausgabe umlenken:
programm > ausgabedatei
► Standardeingabe umlenken:
programm < eingabedatei
► Fehlerausgabe umlenken:
programm 2> datei
► Standard- und Fehlerausgabe umlenken:
programm > datei 2>&1
Was ist eine Pipeline?

WICHTIG
ein Strich :D

| lenkt die ausgabe von programm 1 in programm 2

beispiel:
programm1 | programm2
ls | sort | less
Wofür steht grep?

WICHTIG
global search for a regular expression and print all lines containing it

dieses Programm durchsucht Dateien zeilenweise nach bestimmten Suchmustern
Wie lautet der reguläre Ausdruck für ein beliebiges Zeichen?
In der Shell: ? <-- ein Fragezeichen, ja!

Regulärer Ausdruck: . <-- ein Punkt
Wie lautet der reguläre Ausdruck für 0 bis unendlich viele Zeichen?
In der Shell: *

Regulärer Ausdruck: .*
Wie lautet der reguläre Ausdruck für beliebig viele n?
Shell: geht lt. Trautwein nicht.

Regulärer Ausdruck: n*
Wie sieht ein Menge von Zeichen für reguläre Ausdrücke aus?
[abc] --> a oder b oder c
[abc]* --> a aa aba abbabbbac -> alles mögliche ;)
Wie sieht die negierte Menge von Zeichen für reguläre Ausdrücke aus?
In der Shell: [!abc] --> z.B. d oder e oder f
[abc]* --> a aa aba abbabbbac -> alles mögliche ;)
Wie lautet der reguläre Ausdruck für beginnt mit "bla" aus und wie der mit blub endet aus?
start: ^bla

ende: blub$
Mit welchem Befehl kann man die Ausgabe sortieren?
mit "sort".

Optionen:
-c
check; kontrolliert ob die Eingebedatei bereits sortiert ist.
-n numeric; anhand des numerischen Wertes sortieren
-r reverse; Sortierreihenfolge umdrehen
-f ignoriert Groß- und Kleinschreibung
Groß-
-u unique; nur die erste von mehreren gleichen Zeilen ausgeben
Info... in den Vorlesungsfolien kommt "vi" vor. Da dies ein Texteditor ist, behandle ich ihn in den Karteikarten nicht.
verstanden?
Wie kann man sich den Kalendar für 2012 angucken?
Wie den September in diesem Jahr?
cal 2012

cal 9 2012
Mit welchem Befehl kann man sich den Dateiinhalt ausgeben lassen?
cat dateiname.txt
Wie kann man mehrere Dateien in eine zusammenkopieren?
cat a b c d > gesamt
Was macht der echo Befehl?
GIbt die Parameter als stdout aus.

echo 4242 gibt 4242 aus..
Wie kann man das Passwort für den aktuellen Benutzer ändern?
mit "passwd".
Mit welchen Befehlen kann man Chars/Strings in Dateien manipulieren?
tr
cut
Was ist ein Prozess?
Ein Programm während der Ausführung.
Wie entstehen neue Prozesse?
Laut Folie: Der Prozess erzeugt einen fork. Dieser Child Prozess halt dann eine "ppid", die der pid des Vaterprozesses entspricht.

shell proc ==> fork ==========> wait ==> shell proc
|| A
V ||
executive proc ====> exit
Weche Eigenschaften haben alle Prozesse?
Prozess ID : pid
user id, group id
exakt einen Parentprozess, der "höchste" ist 0
Priorität (-20 bis 20, -20 ist MAXIMALE prio)
Ein aktuelles Verzeichnis
Wozu dient Prozess-Management?
Ermöglicht die Steuerung von Prozessen in der Shell.

einige Möglichkeiten:
Prozess im Hintergrund starten
mehrere Prozesse gleichzeitig/parallel starten
Prozesse beenden (im Hintergrund wie im Vordergrund)
Prozesse während der Ausführung anhalten
Auflisten von laufenden/angehaltenen Prozessen
Prozesse vom Vordergrund in den Hintergrund schicken
etc.
Welche Prozesszustände gibt es?
3:
im Vordergrund:
-> wartend auf Tastatureingabe
-> laufende Bildschirmausgabe
-> shell wartet während prozess keine Ausgabe macht. (sleep 2)

Im Hintergrund, laufend:
-> Prozess bekommt keine Eingaben
-> Kann dennoch Bildschirmausgabe machen
-> Shell gibt sofort neuen Promt aus und kann weiter genutzt werden.

Im Hintergrund, angehalten:
-> Prozess läuft nicht
-> Kann fortgesetzt werden (im vorder oder hintergrund)
Wie kann man sich die Prozessliste ausgeben lassen?
ps aux oder ps -elf
Woran kann man die Vater-Kind-Beziehung von Prozessen erkennen?
Der Kind-Prozess hat eine PPID die mit der PID des Vater-Prozesses überein stimmt.
Was macht nice bzw renice?
nice -n 10 programm <- startet programm mit nice wert 10

renice 15 -p 1337 <- setzt den nice Wert für den Prozess mit ID 1337 auf 15.
Welche Möglichkeiten zur "Inter-Prozess- Communication" gibt es?
IPC per Signal (gibt 64 verschiedene)
IPC mittels Pipes, multidirektional
IPC per Nachricht
IPC per Semaphore
IPC per gemeinsamer Speicher (shared Memory)
IPC per Stream
IPC per Socket
Wie sieht UNIX in Grobdarstellung aus (nach Trautwein)?
Schichtenmodell!

WICHTIG
4 Ringmodell,
Ringe von innen nach Außen:
Hardware, Betriebsystem-Kern, Dienstprogramme, Shell
Nennen Sie die unter UNIX üblichen Kontrollstrukturen.
Einfache Entscheidung: if
Syntax:
if BEDINGUNG
then
PROGRAMM1
else
PROGRAMM2
fi

Mehrfachauswahl: case
Syntax:
case Wert in
Muster1) Kommandofolge1;;
Muster2) Kommandofolge2;;
Muster3) Kommandofolge3;;
esac

Schleifen: for, while, until

for VARIABLE in WERTELISTE
do
echo $VARIABLE
done

while Kommandofolge1
do
Kommandofolge2
done

until Kommandofolge1
do
Kommandofolge2
done
Wie kann man eine Kontrollstruktur vorzeitig verlassen? Welchen besonderen Befehl in Schleifen gibt es noch?
mit break bricht man aus einer Kontrollstruktur aus.

continue beendet einen Schleifendurchlauf (NICHT die Schleife!)
Wie kann man in der Shell rechnen?
mit "expr"

summe=`expr 42 + 1337`
Was ist ein Cronjob?
Ein Cronjob ist ein regelmäßig wiederholt ausgeführter Prozess. Der Zeitplan ist in der "Crontab" eingestellt.
Was ist cron?
Ein Dienstprogramm, das die Crontab jede Minute auf auszuführende Prozesse überprüft und diese ggf. startet.
Was ist ein Daemon?
Ein Hintergrunddienst, z.B. ein Webserver, der ohne Benutzerinteraktion läuft und die Ausgabe in der Regel in ein Logfile (unter /var/log) schreibt.
Welche verschiedene Prozess-Stati kennen Sie?
runnable, ausführungsbereit
runniing, läuft
waiting, wartend
sleeping, schlafend im hauptspeicher
swapped (in Auslagerungsdatei, sleeping)
zombie (Parent beendet, Child aber noch nicht)
Was macht der Befehl "jobs -l"?
Zeigt alle aus der aktuell genutztem Konsole gestarteten Hintergrundprozesse mit PID (dafür das -l [Buchstabe ell]) an.
Was wissen Sie über die Jobverwaltung?
"jobs -l" zeigt alle Hintergrundprozesse mit PID aus der aktuellen Shell an.

Strg + Z hält einen Prozess an.
bg %n, wobei n die JOBNUMMER != PID ist, also z.B. 1,
wirft also bg %1 den ersten Job in den Hintergrund (läuft also weiter!)
fg %n, startet den job mit Nummer n in den Vordergrund. <- kann also wieder mit STRG + Z angehalten werden.

STRG + C bricht den aktuellen Vordergundprozess ab.