![]() |
Vorlesung "UNIX"von Prof. Jürgen Plate |
Jetzt erscheint auch die Notwendigkeit des ps-Kommandos unter anderem Licht - man kann sich so über laufende Hintergrundprozesse informieren. Bei neueren Versionen greift das ps-Kommando nicht mehr auf die Prozeßtabelle des Schedulers zu, sondern es gibt ein Pseudo-Dateisystem /proc, in dem alle Infos über die Prozesse abgelegt sind. In der Regel werden Hintergrundprozesse abgebrochen, wenn sich der Benutzer am Terminal abmeldet (Logoff), denn sie sind ja Kindprozesse des aktuellen Shell-Prozesses. Es gibt jedoch Möglichkeiten, Prozesse auch nach dem Logoff "am Leben" zu erhalten. UNIX kennt recht mächtige Möglichkeiten für Hintergrundprozesse:
find / -user markus -print &
2354
Es wird die Nummer (PID) des neu erzeugten Prozesses ausgegeben (2354) und die
Shell meldet sich sofort wieder mit dem Eingabeprompt. So wie das Kommando oben
eingegeben wurde, hat es aber noch einen Nachteil:
Alle Ausgaben von find, auch die Fehlerausgaben, gelangen nach wie vor
auf den Bildschirm, was u. U. die Arbeit im Vordergrund empfindlich stört.
Durch Ein-/Ausgabeumleitung kann der Hintergrundprozeß zum Schweigen gebracht
werden:
find / -user markus -print > liste 2> /dev/null &
2354
Weitere Kommandos für den Start von Hintergrundprozessen sind:
(No Hang Up) Dieses Kommando ermöglicht es, einen Prozeß nach dem Logoff weiterlaufen zu lassen. Wenn die Ausgaben nicht explizit umgelenkt wurden, werden Standardausgabe und Standard-Fehlerausgabe in die Datei nohup.out im zuletzt aktuellen Verzeichnis geschrieben. Sollte dies nicht möglich sein (Zugriffsrechte nicht ausreichend), wird nohup.out im Home-Directory des Benutzers angelegt. Bei einigen Anlagen gibt es das Kommando "batch" mit analogen Eigenschaften.
Neben anderen können für kill folgende Signalnummern verwendet werden:
| 0 | SIGKILL | Terminate (beim Beenden der shell) |
| 1 | SIGHUP | Hangup (beim Beenden der Verbindung zum Terminal oder Modem) |
| 2 | SIGINT | Interrupt (wie Ctrl-C-Taste am Terminal) |
| 3 | SIGQUIT | Abbrechen (Beenden von der Tastatur aus) |
| 9 | SIGKILL | Kann nicht abgefangen werden - Beendet immer den empfangenden Prozeß |
| 15 | SIGTERM | Terminate (Software-Terminate, Voreinstellung) |
Die Datei /usr/include/Signal.h enthält eine Liste aller Signale. Später wird das Kommando "trap" besprochen, mit dem man innerhalb von Shell-Skripts gezielt auf einzelne Signale reagieren kann.
at -r Auftragsnummer(n) Löscht den genannten Auftrag
at -l [Auftragsnummer(n)] Listet die noch auszuführenden Aufträge
Fehlt bei at -l die Nummer, werden alle Aufträge gelistet.
Ein Beispiel für das at-Kommando: Am 1. Oktober um 22 Uhr wird das Ausdrucken einer langen Datei gestartet.
at 2200 Oct 1
lp -m superlangedatei.txt
CTRL-D
job 545900100.a at Tue Oct 1 22:00:00 1991
Mit at -r 545900100.a könnte man den o. g. Job wieder löschen.

Statt einer expliziten Zahlenangabe sind auch folgende Angaben möglich:
| 0 0 * * * | Jeden Tag um Mitternacht |
| 0 9 * * 1 | Jeden Montag um 9 Uhr |
| 30 10 1 * 1 | Jeden Monatsersten und jeden Montag um 10 Uhr |
| 0,30 8-18 * * * | Täglich alle halbe Stunde aber nur zwischen 8 und 18 |
| 0,5,10,15,20,25,30,35,40,45,50,55 * * * * | Alle 5 Minuten |
Wie beim at-Kommando kann auch die Benutzung von crontab für bestimmte Benutzer gesperrt werden. Dazu dienen die Dateien /usr/lib/cron/cron.allow und /usr/lib/cron/cron.deny, bei denen das gleiche Schema angewendet wird, wie es schon beim at-Kommando besprochen wurde.
Die Tabellen (crontabs) stehen je nach UNIX-Variante in /etc/cron.d oder /usr/lib/cron. Beim Erstellen von cron- und at-Jobs sollte man sich nicht darauf verlassen, daß außer ein paar Standardvariablen irgendwelche Voreinstellungen verwendbar sind. Benutzen Sie entweder nur absolute Pfade oder eine explizite Pfad-Definition. Will man keinen Output per E-Mail erhalten, muß der Output (stdout und stderr) umgeleitet werden (Man kann den Job sehr schnell von E-Mail auf Dateiausgabe umstellen, indem man alle Kommandozeilen mit geschweiften Klammern einrahmt und dahinter die Ausgabeumleitung setzt: { .... } > Datei 2>&1). Will man nur wenige Kontrollausgaben erzeugen, lassen sich auch mittels echo >> logfile cron-Jobs loggen. Bei root-cron-Jobs kann dafür auch die allgemeine Logdatei /var/adm/messages (manchmal auch /var/log/messages) verwendet werden.
Natürlich gibt es noch weitere Kommandos für Dateisysteme, z. B. zum Partitionieren der Platte (bei Linux heißt es "fdisk", bei Sun-OS "format"). Eine neue Platte muß zuerst mit einem Dateisystem versehen ("formatiert") werden. Das Kommando dazu heißt "mkfs". Gebrauch und Parameter muß man der jeweiligen Dokumentation entnehmen. Zum Überpr&uum;fen der Platten gibt es das Kommando "fsck". Es wird normalerweise beim Booten automatisch ausgeführt. Für den Fall des manuellen Aufrufs sollte auch hier die Dokumentation des jeweiligen Systems konsultieren.
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME init 1 root cwd DIR 3,2 4096 2 / init 1 root rtd DIR 3,2 4096 2 / init 1 root txt REG 3,2 27844 1782394 /sbin/init init 1 root mem REG 3,2 90210 196307 /lib/ld-2.2.5.so init 1 root mem REG 3,2 1153784 196310 /lib/libc-2.2.5.so init 1 root 10u FIFO 3,2 2339761 /dev/initctl keventd 2 root cwd DIR 3,2 4096 2 / keventd 2 root rtd DIR 3,2 4096 2 / keventd 2 root 10u FIFO 3,2 2339761 /dev/initctl ksoftirqd 3 root cwd DIR 3,2 4096 2 / ksoftirqd 3 root rtd DIR 3,2 4096 2 / ksoftirqd 3 root 10u FIFO 3,2 2339761 /dev/initctl kswapd 4 root cwd DIR 3,2 4096 2 / kswapd 4 root rtd DIR 3,2 4096 2 / kswapd 4 root 10u FIFO 3,2 2339761 /dev/initctl bdflush 5 root cwd DIR 3,2 4096 2 / bdflush 5 root rtd DIR 3,2 4096 2 / bdflush 5 root 10u FIFO 3,2 2339761 /dev/initctl ... lsof 27430 root 2u CHR 136,1 3 /dev/pts/1 lsof 27430 root 3r DIR 0,3 0 1 /proc lsof 27430 root 4r DIR 0,3 0 1797652488 /proc/27430/fd lsof 27430 root 5w FIFO 0,6 7473007 pipe lsof 27430 root 6r FIFO 0,6 7473008 pipe lsof 27431 root cwd DIR 3,2 4096 3662907 /home/plate lsof 27431 root rtd DIR 3,2 4096 2 / lsof 27431 root txt REG 3,2 108956 1831546 /usr/sbin/lsof lsof 27431 root mem REG 3,2 90210 196307 /lib/ld-2.2.5.so lsof 27431 root mem REG 3,2 1153784 196310 /lib/libc-2.2.5.so lsof 27431 root 4r FIFO 0,6 7473007 pipe lsof 27431 root 7w FIFO 0,6 7473008 pipeMit den passenden Parametern kann man die Ausgabe auf die interessierenden Zeilen eingrenzen. Gibt man mehrere Filterkriterien an, so zeigt lsof diejenigen Zeilen an, die entweder mindestens eine oder (wenn man zusätzlich -a angibt) alle Bedingungen erfüllen.
Datei(en)
Zugriffe auf diese Datei(en) anzeigen.
Beispiel: Wer benutzt gerade bash?
# lsof /bin/bash
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
bash 19041 holzmann txt REG 3,2 511400 2322044 /bin/bash
bash 21620 root txt REG 3,2 511400 2322044 /bin/bash
bash 26921 plate txt REG 3,2 511400 2322044 /bin/bash
bash 26937 root txt REG 3,2 511400 2322044 /bin/bash
+D Verzeichnis
Zugriffe auf die Dateien unterhalb des Verzeichnisses anzeigen.
Beispiel: Wer arbeitet mit Dateien im /home-Verzeichnis?
# lsof +D /home
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
bash 26921 plate cwd DIR 3,2 4096 3662907 /home/plate
bash 26937 root cwd DIR 3,2 4096 3662907 /home/plate
lsof 27890 root cwd DIR 3,2 4096 3662907 /home/plate
lsof 27891 root cwd DIR 3,2 4096 3662907 /home/plate
+p PIDs
Alles anzeigen, was die Prozesse mit diesen PIDs geöffnet haben.
Um mehrere PIDs anzugeben, diese mit Komma trennen. Will man
die Prozesse namentlich angeben, verwendet man lsof -c [name].
Beispiel: Welche Dateien benötigt meine Shell?
# ps
PID TTY TIME CMD
26937 pts/1 00:00:00 bash
27899 pts/1 00:00:00 ps
# lsof +p 26937
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
bash 26937 root cwd DIR 3,2 4096 3662907 /home/plate
bash 26937 root rtd DIR 3,2 4096 2 /
bash 26937 root txt REG 3,2 511400 2322044 /bin/bash
bash 26937 root mem REG 3,2 90210 196307 /lib/ld-2.2.5.so
bash 26937 root mem REG 3,2 248132 196280 /lib/libncurses.so.5.2
bash 26937 root mem REG 3,2 8008 196313 /lib/libdl-2.2.5.so
bash 26937 root mem REG 3,2 1153784 196310 /lib/libc-2.2.5.so
bash 26937 root mem REG 3,2 40152 196316 /lib/libnss_compat-2.2.5.so
bash 26937 root mem REG 3,2 69472 196315 /lib/libnsl-2.2.5.so
bash 26937 root 0u CHR 136,1 3 /dev/pts/1
bash 26937 root 1u CHR 136,1 3 /dev/pts/1
bash 26937 root 2u CHR 136,1 3 /dev/pts/1
bash 26937 root 255u CHR 136,1 3 /dev/pts/1
-u user[,user...]
Alles anzeigen, was die Prozesse geöffnet haben, die einem der angegebenen
Usernamen oder User-ID gehören. Um mehrere User anzugeben, diese mit Komma trennen.
Beispiel: Welche Dateien werden zurzeit von Plate benutzt?
# lsof -u plate
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
bash 26921 plate cwd DIR 3,2 4096 3662907 /home/plate
bash 26921 plate rtd DIR 3,2 4096 2 /
bash 26921 plate txt REG 3,2 511400 2322044 /bin/bash
bash 26921 plate mem REG 3,2 90210 196307 /lib/ld-2.2.5.so
bash 26921 plate mem REG 3,2 248132 196280 /lib/libncurses.so.5.2
bash 26921 plate mem REG 3,2 8008 196313 /lib/libdl-2.2.5.so
bash 26921 plate mem REG 3,2 1153784 196310 /lib/libc-2.2.5.so
bash 26921 plate mem REG 3,2 40152 196316 /lib/libnss_compat-2.2.5.so
bash 26921 plate mem REG 3,2 69472 196315 /lib/libnsl-2.2.5.so
bash 26921 plate 0u CHR 136,1 3 /dev/pts/1
bash 26921 plate 1u CHR 136,1 3 /dev/pts/1
bash 26921 plate 2u CHR 136,1 3 /dev/pts/1
bash 26921 plate 255u CHR 136,1 3 /dev/pts/1
...
-i [TCP|UDP][@host][:ports]
Die Netzverbindungen des übergebenen Hosts und Ports anzeigen. Dabei kann der Host wahlweise als Hostname oder
IP-Adresse und die Ports als Portnummern oder Servicenamen angegeben werden. Um mehrere Ports zu betrachten, kann man
Listen (z.B. ssh,www) oder Bereiche (z.B. 1-1024) angeben.
Beispiel: Welche Prozesse kommunizieren da auf Port 80 miteinander?
menetekel:/home/plate# lsof -i :80
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
apache 11299 root 18u IPv4 7063707 TCP *:www (LISTEN)
apache 26057 root 18u IPv4 7063707 TCP *:www (LISTEN)
apache 26960 root 18u IPv4 7063707 TCP *:www (LISTEN)
apache 26961 root 18u IPv4 7063707 TCP *:www (LISTEN)
apache 27026 root 18u IPv4 7063707 TCP *:www (LISTEN)
apache 27037 root 18u IPv4 7063707 TCP *:www (LISTEN)
apache 27038 root 18u IPv4 7063707 TCP *:www (LISTEN)
apache 27383 root 18u IPv4 7063707 TCP *:www (LISTEN)
apache 27402 root 18u IPv4 7063707 TCP *:www (LISTEN)
apache 27427 root 18u IPv4 7063707 TCP *:www (LISTEN)
apache 27919 root 18u IPv4 7063707 TCP *:www (LISTEN)
Es ist möglich, einen einzelnen Prozeß oder eine ganze Prozeßfamilie zu verfolgen. Wenn die von einem verfolgten Prozeß erzeugten Kindprozesse auch verfolgt werden, setzt die Protokollierung erst ein, nachdem der das Kind erzeugende Systemaufruf zurückkehrt und die ProzeßID des Kindes an den Elternprozeß zurückgibt. Zu diesem Zeitpunkt kann der Kindprozeß bereits Systemaufrufe gemacht haben, die dann nicht protokolliert sind.
Wenn strace zu einem bereits laufenden Prozeß hinzugeschaltet wird, können nur solche Kindprozesse verfolgt werden, die nach dem Hinzuschalten erzeugt werden.
Sie können das Protokoll auch in eine Datei schreiben lassen. Wenn Sie die Kinder des verfolgten Prozesses auch verfolgen, werden die Protokolle für die Kindprozesse in separaten Dateien gespeichert, deren Namen mit dem für den Stammprozeß gewählten übereinstimmen und auf die ProzeßID des jeweiligen Kindes enden.
Optionen:
ltrace leistet Ähnliches wie strace in Bezug auf die Verwendung von dynamischen Bibliotheken (Libraries) durch Prozesse.
$ ldd /bin/bash
libncurses.so.5 => /lib/libncurses.so.5 (0x40017000)
libdl.so.2 => /lib/libdl.so.2 (0x40055000)
libc.so.6 => /lib/libc.so.6 (0x40059000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
$ uname -a Linux menetekel 2.4.18-bf2.4 #1 Son Apr 14 09:53:28 CEST 2002 i686 unknown
$ free
total used free shared buffers cached
Mem: 512960 506016 6944 0 51296 387396
-/+ buffers/cache: 67324 445636
Swap: 497972 1740 496232
$ uptime 17:09:18 up 143 days, 59 min, 3 users, load average: 0.07, 0.07, 0.07
Die Hardware eines Rechners ist für manchen Anwender ein Buch mit sieben Siegeln. Zwar liefert Linux eine Fülle von Informationen über die verbauten Komponenten - allerdings nicht unbedingt in einer leicht verständlichen Form. Unter /proc befinden sich beim klassischen Unix nur Informationen zu Prozessen. Bei Linux findet man jedoch noch einiges mehr. Die Informationen können ganz einfach z. B. per cat-Kommando auf der normalen Konsole angezeigt werde, da es reine (Pseudo-)Textdateien sind. Bei /proc handelt es sich nämlich um ein virtuelles Dateisystem, das der Kernel anlegt und in dem die laufenden Prozesse in Unterverzeichnisse abgebildet werden. Es beansprucht keinerlei Platz auf der Festplatte, auch wenn manche Dateien scheinbar eine enorme Größe aufweisen. Allerdings erleichtert das Proc-Verzeichnis durch eine Vielzahl von Unterverzeichnissen und teilweise auch mit vieldeutigen Verzeichnisnamen die Suche nach spezifischen Informationen nicht gerade. Auch sind nicht alle Dateien bei jeder Hardware zu finden. Unter anderem finden Sie:
| /proc/cpuinfo | Informationen zur CPU (u.a. Name, Taktfrequenz, Cache-Größe) | /proc/meminfo | Informationen über den Arbeitsspeicher (u.a. Gesamtgröße, Cache, Swap) | /proc/partitions | Informationen über Partitionen des Massenspeichers (u.a. Partitionsname, | Anzahl der Blöcke) | /proc/modules | Übersicht über die geladenen Module (u.a. Name, Speicheradresse) | /proc/devices | Übersicht über vorhandene Char- und Block-Devices | /proc/version | Informationen über die Kernelversion | /proc/loadavg | aktuelle Systemauslastung | /proc/stat | Prozesse | /proc/interrupts | Übersicht über Interrupts | /proc/net/dev | Statistik der Netzwerkgeräte (u.a. übertragene Bytes, Fehler) | /proc/bus | Informationen und Übersichten über die Busse im Rechner. | /proc/bus/*/devices | Übersichten über die jeweiligen Geräte des Bus | /proc/ide | Hier finden sich die IDE-Geräte | /proc/ide/*/model | Die Modellbezeichnung des Geräts | /proc/acpi/thermal-zone/THRG/temperature | CPU-Temperatur | /proc/acpi/battery/BAT?/state | Batteriezustand | /proc/acpi/ibm/fan | Lüfterstatus | /proc/<PID>/cmdline | Kommandozeile des Prozesses mit der Nummer PID | |
Das Programm "Hardinfo" bereit dem Durcheinander durch eine ansprechende grafische Oberfläche und eine übersichtliche Präsentation der Hardware-Informationen ein Ende. Hardinfo steht unter der GPL und kann von http://freshmeat.net/projects/hardinfo heruntergeladen werden. Danach entpacken Sie das Archiv zunächst in ein temporäres Verzeichnis:
tar xjvf hardinfo-w.x.y.z.tar.bz2beziehungsweise
tar xzvf hardinfo-w.x.y.z.tar.tar.gz(w.x.y.z steht für die gerade aktuelle Version). Dann wechseln Sie in das neu angelegte Verzeichnis und richten das Programm mit dem übliche Dreisprung
./configure && make && make installein. Versuchen Sie es vorher auf jeden Fall mit dem Paketmanager Ihrer Distribution - das geht einfacher und schneller. Bei Debian ist es beispielsweise schon verfügbar und kann mittels apt-get install hardinfo eingerichtet werden.
# iostat
Linux 2.6.32-5-686 (info) 19.09.2011 _i686_ (4 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle
0,02 0,00 0,01 0,01 0,00 99,97
Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
sda 0,26 0,45 3,97 281194 2507152
iostat besitzt zahreiche Optionen, unter anderem:
| -d | Anzeige nur der Festplatten-Daten. |
| -c | Anzeige der reinen CPU-Daten. |
| -p | Anzeige der IO-Daten je Partition. |
| -n | Anzeige der NFS-IO-Daten. |
| -x | Erweiterte Anzeige der Festplatten-Daten. |
| -t Zahl | Angabe, nach wie vielen Sekunden die Anzeige aktualisiert werden soll. |
# mpstat Linux 2.6.32-5-686 (info) 19.09.2011 _i686_ (4 CPU) 18:08:03 CPU %usr %nice %sys %iowait %irq %soft %steal %guest %idle 18:08:03 all 0,01 0,00 0,01 0,01 0,00 0,00 0,00 0,00 99,97Mit der Option -A wird die Ausgabe erweitert: die Statistiken werden pro Prozessor/Core angezeigt, ausserdem werden die Interrupts pro Sekunde pro Prozessor angezeigt. Gibt man am Ende der Kommandozeile eine Zahl N an, läft mpstat dauernd und aktualisiert die Anzeige alle N Sekunden.
# pidstat Linux 2.6.32-5-686 (info) 19.09.2011 _i686_ (4 CPU) 18:14:04 PID %usr %system %guest %CPU CPU Command 18:14:04 1 0,00 0,00 0,00 0,00 1 init 18:14:04 4 0,00 0,00 0,00 0,00 0 ksoftirqd/0 18:14:04 9 0,00 0,00 0,00 0,00 2 migration/2 18:14:04 10 0,00 0,00 0,00 0,00 2 ksoftirqd/2 18:14:04 12 0,00 0,00 0,00 0,00 3 migration/3 18:14:04 15 0,00 0,00 0,00 0,00 0 events/0 18:14:04 16 0,00 0,00 0,00 0,00 1 events/1 18:14:04 17 0,00 0,00 0,00 0,00 2 events/2 18:14:04 18 0,00 0,00 0,00 0,00 3 events/3 18:14:04 24 0,00 0,00 0,00 0,00 0 sync_supers 18:14:04 25 0,00 0,00 0,00 0,00 1 bdi-default 18:14:04 37 0,00 0,00 0,00 0,00 0 kseriod 18:14:04 46 0,00 0,00 0,00 0,00 3 khungtaskd 18:14:04 217 0,00 0,00 0,00 0,00 0 scsi_eh_1 18:14:04 306 0,00 0,00 0,00 0,00 0 kjournald 18:14:04 356 0,00 0,00 0,00 0,00 2 udevd 18:14:04 494 0,00 0,00 0,00 0,00 2 edac-poller 17:02:32 2889 0,00 0,00 0,00 0,00 0 kdeinit4 ...Die Option -C gestattet die Spezifizierung der zu untersuchenden Prozesse. Mit -p kann statt des Prozess-Namens die PID definiert werden. Beispiel:
# pidstat -C bash Linux 2.6.32-5-686 (info) 19.09.2011 _i686_ (4 CPU) 18:16:12 PID %usr %system %guest %CPU CPU Command 18:16:12 3675 0,00 0,00 0,00 0,00 2 bash 18:16:12 3726 0,00 0,00 0,00 0,00 1 bashMit der Option -d werden I/O-Statistiken zu den Prozessen angezeigt und -r verschafft einen Überblick der Speicherauslastung. Auch hier kann durch eine Zahl am Ende ein Dauerbetrieb initiiert werden.
| free | Arbeitsspeicherverwendung, s. o. |
| df | Speicherplatz auf gemounteten Geräten |
| uptime | Anzeige der Systemlast und der Uptime, s. o. |
| hostname | Anzeige des Hostname |
| date | Systemzeit anzeigen |
| uname | OS-Namen anzeigen |
| ifconfig | Informationen über Netzwerkgeräte (nur als root) |
| iwconfig | desgleichen für WLAN-Benutzer |
| top | kurze Systeminformationen (Last, Speicher, etc.) und Anzeige der Prozesse z. B. top -b -n 1 |
| htop | die noch komfortablere version von top |
| ps | Anzeige der Prozesse |
| pstree | Anzeige der Prozesse in Baumform |
| hddtemp | Zeigt die Temperatur von SMART-fähigen Festplatten an |
| acpi | Bietet eine komfortable Schnittstelle zu ACPI |
| dmesg | Alle Systemstart-Informationen des Kernels (u.a. auch die Erkennung der Hardware) |
| iptraf | Viele Möglichkeiten zur Überwachung des IP-Verkehrs |
| lsof | list open files, siehe oben |
| lsmod | Module auflisten |
| lspci | PCI-Bus auflisten |
| lsusb | USB-Devices auflisten |
| lsattr | Dateisystem-Attribute auflisten |
| netstat | Informationen über Netzwerkverbindungen, Routingtabelle, etc. z. B. netstat -nt (alle tcp-Verbindungen), netstat -nlt (alle Serverprozesse) |
| arp -nav | aktuelle ARP-Tabelle |
| nmap | Portscanner |
| route | eingetragene Routen |
| mount | eingebundene Dateisysteme |
| last | Tabelle der letzten Logins |
| lastb | Tabelle der letzten fehlgeschlagenen Logins (nur als root) |
Zum Inhaltsverzeichnis |
Zum nächsten Abschnitt |