53
Harald Maaßen LPIC-1 Sicher zur erfolgreichen Linux-Zertifizierung

LPIC-1 Sicher zur erfolgreichen Linux-Zertifizierung · Inhalt 6 Nachdem Sie über die korrekte Konfiguration der Hardware bestens Bescheid wissen, kann nun mit der Planung der Partitionen

Embed Size (px)

Citation preview

Harald Maaßen

LPIC-1Sicher zur erfolgreichen Linux-Zertifizierung

Auf einen Blick

LPI 101 .................................................................................. 19

Topic 101: Systemarchitektur ..................................................... 21

Topic 102: Linux-Installation und -Paketverwaltung ................... 57

Topic 103: GNU- und Unix-Kommandos .................................... 87

Topic 104: Geräte, Linux-Dateisysteme, Filesystem Hierarchy Standard ................................... 157

Übungsfragen zu LPI 117-101 ..................................................... 207

LPI 102 .................................................................................. 281

Topic 105: Shells, Skripte und Datenverwaltung ......................... 283

Topic 106: Oberflächen und Desktops ........................................ 325

Topic 107: Administrative Aufgaben ........................................... 355

Topic 108: Grundlegende Systemdienste .................................... 389

Topic 109: Netz-Grundlagen ...................................................... 411

Topic 110: Sicherheit .................................................................. 439

Übungsfragen zu LPI 117-102 ..................................................... 465

Inhalt

Vorwort ....................................................................................................... 15Hinweise zum Buch .............................................................................. 15Hinweise zur Prüfung ........................................................................... 17

LPI 101Power On! Die Hardware wird initialisiert und die Daemonen geweckt. Grundlegende Fertigkeiten in der Konfiguration von Massenspeichern, Peripheriegeräten und BIOS-Einstellungen sind für die erste Prüfung unbedingt erforderlich. 21

Topic 101: Systemarchitektur ..................................................... 21

101.1 Hardware-Einstellungen ermitteln und konfigurieren ................. 21Allgemeines ................................................................................... 22Module zur Laufzeit beeinflussen und konfigurieren ...................... 22Modulkonfigurationsdateien .......................................................... 28Zum Kernel gehörende Dateien und Verzeichnisse ......................... 29Die Gerätedateien für Festplatten und CD-ROMs ........................... 30Die Gerätedateien für Partitionen .................................................. 31Ressourcen für Hardwarekomponenten .......................................... 32Der PCI-Bus ................................................................................... 33USB – Universal Serial Bus .............................................................. 34USB-Host-Controller-Typen ........................................................... 34USB-Klassen .................................................................................. 35USB-Module automatisch laden ..................................................... 36Coldplug und Hotplug ................................................................... 37Das virtuelle Dateisystem sysfs ....................................................... 37udev, hald und dbus ...................................................................... 38

101.2 Das System starten ...................................................................... 38Allgemeines ................................................................................... 39Boot-Strap-Loader ......................................................................... 41Kernel-Parameter ........................................................................... 42Startprotokollierung ....................................................................... 43

101.3 Runlevel wechseln und das System anhalten oder neu starten ................................................................................... 45Allgemeines ................................................................................... 46Die Runlevel und ihre Funktion ...................................................... 46Die Konfigurationsdatei inittab ...................................................... 47Verzeichnisse und Dateien des init-Prozesses ................................. 49Runlevel-Wechsel, Herunterfahren, Neustart ................................. 52Upstart .......................................................................................... 53Systemd ......................................................................................... 54

5

Inhalt

Nachdem Sie über die korrekte Konfiguration der Hardware bestens Bescheid wissen, kann nun mit der Planung der Partitionen und der Konfiguration eines Bootloaders fortgefahren werden. 57

Topic 102: Linux-Installation und -Paketverwaltung ................. 57

102.1 Festplattenaufteilung planen ....................................................... 57Allgemeines ................................................................................... 57Planung im Detail .......................................................................... 58Logical Volume Manager ............................................................... 59LVM-Komponenten und Zusammenhänge ..................................... 60

102.2 Einen Bootmanager installieren ................................................... 61Allgemeines ................................................................................... 61GRUB-Legacy ................................................................................. 62GRUB 2 ......................................................................................... 63

102.3 Shared Librarys verwalten ............................................................ 64Allgemeines ................................................................................... 64Verwaltung von Shared Librarys ..................................................... 65

102.4 Debian-Paketverwaltung verwenden ........................................... 66Allgemeines ................................................................................... 67Konfigurationsdateien und Verzeichnisse ....................................... 67DPKG-Programme ......................................................................... 69

102.5 RPM und YUM-Paketverwaltung verwenden .............................. 76Allgemeines ................................................................................... 76Konfigurationsdateien .................................................................... 77RPM aktiv verwenden .................................................................... 78Abfragen der RPM-Datenbank ....................................................... 79Überprüfung installierter Pakete .................................................... 81Pakete umwandeln ........................................................................ 82yum und der yumdownloader ........................................................ 82

Ein großer Teil dessen, was ganz selbstverständlich als Linux bezeichnet wird, entspringt in Wirklichkeit dem GNU-Projekt. In dem nun folgenden Kapitel geht es um einen kleinen Teil von GNU. GNU is Not Unix. GNU is Not Unix. GNU is Not U... 87

Topic 103: GNU- und Unix-Kommandos .................................... 87

103.1 Auf der Kommandozeile arbeiten ................................................. 87Allgemeines ................................................................................... 88Aufbau eines Shell-Kommandos ..................................................... 88Übergabe der Optionen ................................................................. 89Umgebungsvariablen und Shellvariablen ........................................ 90Beliebte Variablen für die Prüfung ................................................. 93Bash-Befehls-History und automatisches Vervollständigen von Befehlen .................................................................................. 94Befehlseingabe ............................................................................... 95PATH-Variable ............................................................................... 95Rekursive Befehlsausführung .......................................................... 96Das Kommando uname .................................................................. 97Die Manpages im Allgemeinen ...................................................... 97

6

Inhalt

Funktionsweise der Manpages ....................................................... 97$MANPATH und die Datei manpath.config .................................... 97Die Sektionen des Mansystems ...................................................... 98Aufbau von Manpages ................................................................... 99Verwandte Befehle ........................................................................ 99

103.2 Textströme mit Filtern verarbeiten .............................................. 101Allgemeines ................................................................................... 102cat .............................................................................................. 102tac .............................................................................................. 102head .............................................................................................. 103tail .............................................................................................. 103expand/unexpand .......................................................................... 104fmt .............................................................................................. 104nl .............................................................................................. 104pr .............................................................................................. 105wc .............................................................................................. 105hexdump ....................................................................................... 106od .............................................................................................. 106sort .............................................................................................. 106uniq .............................................................................................. 107split .............................................................................................. 107cut, paste und join ......................................................................... 108tr .............................................................................................. 110

103.3 Grundlegende Dateiverwaltung ................................................... 111Allgemeines ................................................................................... 112Kommandos für Dateioperationen ................................................. 112Verwendung von Wildcards ........................................................... 118

103.4 Ströme, Pipes und Umleitungen verwenden ................................ 124Allgemeines ................................................................................... 125stdin, stdout und stderr ................................................................. 125Umleitungen (Redirects) ................................................................ 126Pipes ............................................................................................. 127tee und xargs ................................................................................. 128

103.5 Prozesse erzeugen, überwachen und beenden ............................. 128Allgemeines ................................................................................... 129Überwachen von Prozessen ........................................................... 129Signale an Prozesse senden ............................................................ 133Jobs im Vorder- und im Hintergrund .............................................. 135Prozesse unabhängig von einem Terminal laufen lassen ................. 138

103.6 Prozess-Ausführungsprioritäten ändern ...................................... 139Allgemeines ................................................................................... 139nice .............................................................................................. 140

7

Inhalt

renice ............................................................................................ 140top und ps zur Überprüfung von Prioritäten ................................... 141

103.7 Textdateien mit regulären Ausdrücken durchsuchen ................... 142Allgemeines ................................................................................... 142Reguläre Ausdrücke ....................................................................... 143Die Verwendung von grep ............................................................. 144egrep und fgrep ............................................................................. 148Die Verwendung von sed ............................................................... 148

103.8 Grundlegendes Editieren von Dateien mit dem vi ....................... 152Allgemeines ................................................................................... 152Bedienungsgrundlagen ................................................................... 153Navigation in einem Dokument ..................................................... 154Einfügen, Löschen, Kopieren und Auffinden von Text .................... 155Befehlszeilenoptionen für vi ........................................................... 156

Im nächsten Themenkomplex soll dargestellt werden, was alles nötig ist, um Daten sicher auf einem Medium speichern zu können und die Zugriffsrechte auf diese Dateien professionell zu handhaben. 157

Topic 104: Geräte, Linux-Dateisysteme, Filesystem Hierarchy Standard .................................. 157

104.1 Partitionen und Dateisysteme anlegen ........................................ 157Allgemeines ................................................................................... 157Erzeugen der Partitionen ................................................................ 158Formatieren der Dateisysteme ....................................................... 161Erstellen einer Swap-Datei ............................................................. 165

104.2 Die Integrität von Dateisystemen sichern ................................... 166Allgemeines ................................................................................... 166Sicherstellen der Integrität des Dateisystems und Problembehebung ......................................................................... 167XFS-Werkzeuge ............................................................................. 170Überwachen des freien Platzes und der freien Inodes ..................... 171

104.3 Das Ein- und Aushängen von Dateisystemen steuern ................. 174Allgemeines ................................................................................... 174Manuelles Mounten und Unmounten ............................................ 174Automatisches Mounten über die Datei /etc/fstab ......................... 178

104.4 Platten-Quotas verwalten ............................................................ 180Allgemeines ................................................................................... 181Möglichkeiten der Quotierung ....................................................... 181Vorbereiten von Quota .................................................................. 182Aktivieren von Quota ..................................................................... 183Ändern und Überprüfen von Quota ............................................... 184

104.5 Dateizugriffsrechte und -eigentümerschaft verwalten ................ 186Allgemeines ................................................................................... 186Vergabe der Berechtigungen .......................................................... 187

8

Inhalt

Verwendung von SUID, SGID und Sticky Bit .................................. 189chown ........................................................................................... 191chgrp ............................................................................................. 192Verwendung von umask ................................................................. 192Dateiattribute der ext2-, ext3- und ext4-Dateisysteme .................. 193

104.6 Harte und symbolische Links anlegen und ändern ...................... 195Allgemeines ................................................................................... 195Softlinks ......................................................................................... 195Hardlinks ....................................................................................... 198

104.7 Systemdateien finden und Dateien am richtigen Ort platzieren ............................................................................... 200Allgemeines ................................................................................... 200FHS – Filesystem Hierarchy Standard .............................................. 200Programme zum Auffinden von Dateien ......................................... 202

207

Übungsfragen zu LPI 117-101 ...................................................... 207

Fragen ......................................................................................................... 207Antworten und Erklärungen zu den Prüfungsfragen ..................................... 247

LPI 102Was eine Shell ist und wie man sie benutzt, wissen Sie ja bereits. Jetzt werden Sie lernen, an der Shell einige individuelle Anpassungen vorzunehmen und Skripte zu schreiben, welche die alltägliche Arbeit erleichtern. Optimieren Sie Ihre Arbeitsumgebung! 283

Topic 105: Shells, Skripte und Datenverwaltung ........................ 283

105.1 Die Shell-Umgebung anpassen und verwenden ........................... 283Allgemeines ................................................................................... 284Verwendung von Shells .................................................................. 284Umgebungsvariablen und Shellvariablen ........................................ 285Aliase und Funktionen ................................................................... 287Konfigurationsdateien der Bash ..................................................... 290Systemweite Konfigurationsdateien ............................................... 291Konfigurationsdateien für den Benutzer ......................................... 291Das Skeleton Verzeichnis /etc/skel ................................................. 292

105.2 Einfache Skripte anpassen oder schreiben ................................... 292Allgemeines ................................................................................... 293Ausführen eines Skripts .................................................................. 293Ausführungsberechtigung .............................................................. 295Position eines Skripts ..................................................................... 296Übergabevariablen und Rückgabewerte ......................................... 296Schleifen und Bedingungen ............................................................ 297

105.3 SQL-Datenverwaltung .................................................................. 304Allgemeines ................................................................................... 305SQL – Die Befehle .......................................................................... 305

9

Inhalt

Die ersten Schritte ......................................................................... 306Eine erste Datenbank ..................................................................... 309Abfragen mit SELECT und WHERE ................................................. 311Aktualisieren von Datensätzen ....................................................... 314Sortieren und Gruppieren .............................................................. 314Erweitern von Datenbanken ........................................................... 316Arbeiten mit mehreren Tabellen .................................................... 318Destruktive Kommandos ................................................................ 323

In diesem Kapitel lernen Sie die prüfungsgerechte Konfiguration von X11, von Displaymanagern und Windowmanagern. Es wird also zur Abwechslung ausnahmsweise einmal grafisch. 325

Topic 106: Oberflächen und Desktops ........................................ 325

106.1 X11 installieren und konfigurieren ............................................... 325Allgemeines ................................................................................... 325Der Aufbau von X .......................................................................... 326Der Startvorgang von X .................................................................. 328X-Terminals ................................................................................... 329X-Librarys ...................................................................................... 329Konfigurationsdateien .................................................................... 329X-Fontserver .................................................................................. 333X-Display exportieren .................................................................... 335xwininfo ........................................................................................ 336xdpyinfo ........................................................................................ 337

106.2 Einen Displaymanager einrichten ................................................. 339Allgemeines ................................................................................... 339Starten und Beenden eines Displaymanagers .................................. 339Konfigurationsdateien der Displaymanager .................................... 340

106.3 Hilfen für Behinderte .................................................................... 340Allgemeines ................................................................................... 341Sehbehinderte und Blinde .............................................................. 341Barrierefreiheit ............................................................................... 342Orca .............................................................................................. 347GOK .............................................................................................. 352emacspeak ..................................................................................... 353

Nun geht es um eine der wichtigsten Tätigkeiten eines Administrators: das Verwalten von Benutzerkonten, Gruppenkonten und das Schaffen einer anfänglichen Umgebung, in der die Benutzer arbeiten können. 355

Topic 107: Administrative Aufgaben ........................................... 355

107.1 Benutzer- und Gruppenkonten und dazugehörige Systemdateien verwalten ...................................... 355Allgemeines ................................................................................... 356passwd, shadow, group, gshadow .................................................. 357Befehle zur Verwaltung von Benutzern ........................................... 361

10

Inhalt

Befehle zur Verwaltung von Gruppen ............................................. 365Befehle zur Verwaltung des Shadow-Systems ................................. 368

107.2 Systemadministrationsaufgaben durch Einplanen von Jobs automatisieren .............................................................. 369Allgemeines ................................................................................... 369Die Verwendung von cron ............................................................. 370Die Verwendung von at ................................................................. 373Grundlegendes zu anacron ............................................................. 374Zugriffssteuerung auf cron und at ................................................... 374

107.3 Lokalisierung und Internationalisierung ...................................... 375Allgemeines ................................................................................... 376Zeitzoneneinstellung ...................................................................... 376Umgebungsvariablen für die Lokalisation ....................................... 379Historische Zeichensätze ................................................................ 381ASCII – American Standard Code for Information Interchange ................................................................................... 382ISO 8859 ....................................................................................... 385Unicode und UTF-8 ....................................................................... 386Konvertierung von Zeichensätzen .................................................. 386

Die Dienste eines Systems müssen kontrolliert und gepflegt werden. Um sich die Arbeit so weit wie möglich zu erleichtern, können Sie hier einiges automatisieren. Zur Vereinfachung der Kontrolle können Sie die Protokollierung auf die eigenen Bedürfnisse zuschneiden. 389

Topic 108: Grundlegende Systemdienste .................................... 389

108.1 Die Systemzeit verwalten ............................................................. 389Allgemeines ................................................................................... 390Manuelle Konfiguration der Systemzeit .......................................... 390Die RTC-Uhr einstellen .................................................................. 391Zeitzonen ...................................................................................... 391Zeitsynchronisation über das Netzwerk .......................................... 392Automatische Zeitsynchronisation .................................................. 392NTP Diagnose ................................................................................ 393pool.ntp.org .................................................................................. 394

108.2 Systemprotokollierung ................................................................. 394Allgemeines ................................................................................... 395syslogd und syslog-ng .................................................................... 395Die Konfigurationsdateien ............................................................. 395Einsatz von Log-Dateien zur Fehlersuche ....................................... 397Selbst Ereignisse loggen ................................................................. 398Der Kernellog ................................................................................ 399

108.3 Grundlagen von Mail Transfer Agents (MTAs) ............................. 399Allgemeines ................................................................................... 400MUA, MDA und MTA .................................................................... 400

11

Inhalt

Mail – Aliase .................................................................................. 401Weiterleitung von Mail .................................................................. 402Wichtige Dateien und Verzeichnisse .............................................. 402sendmail-Konfigurationsdateien ..................................................... 403postfix-Konfigurationsdateien ........................................................ 403Smarthost und SMTP-Relay ............................................................ 404exim und qmail .............................................................................. 405

108.4 Drucker und Druckvorgänge verwalten ....................................... 405Allgemeines ................................................................................... 405Verwalten der Druckerwarteschlangen ........................................... 406Befehle zur Kontrolle von Druckvorgängen .................................... 407lpc – Line Printer Control ............................................................... 408Drucken mit CUPS ......................................................................... 409

TCP/IP ist das Netzwerkprotokoll, das sich im Laufe der Jahrzehnte weltweit, sowohl im Internet, als auch in Intranets, absolut durchgesetzt hat. Grund genug, hier ein paar Worte darüber zu verlieren. 411

Topic 109: Netz-Grundlagen ....................................................... 411

109.1 Grundlagen von Internet-Protokollen .......................................... 411Allgemeines ................................................................................... 412TCP/IP-Geschichte kurz gefasst ...................................................... 412Das DoD-Modell ........................................................................... 413Die Protokolle der dritten Schicht .................................................. 413Die Protokolle der zweiten Schicht ................................................ 415Das Internetprotokoll IPv4 ............................................................. 416IP-Klassen ...................................................................................... 417Die Verwendung der Subnetzmaske und CIDR ............................... 418Die Broadcast-Adressen ................................................................. 420Standardgateway ........................................................................... 421Das Internetprotokoll IPv6 ............................................................. 421TCP/IP Werkzeuge ......................................................................... 423

109.2 Grundlegende Netz-Konfiguration .............................................. 429Allgemeines ................................................................................... 430Konfigurationsdateien eines Netzwerk-Clients ............................... 430Konfigurationsprogramme für Netzwerk-Clients ............................. 433

109.3 Grundlegende Netz-Fehlersuche .................................................. 435Allgemeines ................................................................................... 436netstat ........................................................................................... 436

109.4 Client-seitiges DNS konfigurieren ............................................... 437Allgemeines ................................................................................... 438

12

Inhalt

Ein Administrator muss natürlich auch in der Lage sein, Sicherheitsbedrohungen in seinem Netzwerk aufzufinden und zu beseitigen. Die folgenden Themen bieten dazu eine gute Grundlage. 439

Topic 110: Sicherheit ................................................................... 439

110.1 Administrationsaufgaben für Sicherheit durchführen .................. 439Allgemeines ................................................................................... 440Auffinden von Dateien mit gesetztem SUID/SGID-Bit .................... 440Setzen oder Löschen von Passwörtern und Passwort-Verfallszeiten .................................................................. 440nmap, netstat und socket ............................................................... 440Ressourcenverwendung kontrollieren ............................................. 441Offene Dateien .............................................................................. 442Arbeiten mit erhöhten Rechten ...................................................... 444

110.2 Einen Rechner absichern .............................................................. 445Allgemeines ................................................................................... 446Superdaemons ............................................................................... 446TCP-Wrapper konfigurieren ........................................................... 448Die Datei /etc/nologin ................................................................... 449

110.3 Daten durch Verschlüsselung schützen ....................................... 449Allgemeines ................................................................................... 450SSH verwenden .............................................................................. 450SSH-Client-Verbindung .................................................................. 451SSH-Konfigurationsdateien ............................................................ 452Authentifizierung der Server mit Schlüsseln .................................... 453Generieren von Schlüsseln ............................................................. 454Benutzerauthentifizierung mit Schlüsseln ....................................... 455Der Authentifizierungsagent .......................................................... 457GnuPG ........................................................................................... 457Schlüsselerstellung mit GnuPG ....................................................... 458GnuPG-Dateien ............................................................................. 461GnuPG verwenden ......................................................................... 461GnuPG-Zertifikat widerrufen .......................................................... 463

465

Übungsfragen zu LPI 117-102 ...................................................... 465

Fragen ......................................................................................................... 465Antworten und Erklärungen zu den Prüfungsfragen ..................................... 502

Index ........................................................................................................... 535

13

Vorwort

Herzlich willkommen!

Dieses Buch bietet Ihnen eine optimale Möglichkeit, Ihr Wissen über Linux zuverbessern und sich auf die ersten beiden Prüfungen des Linux Professional Insti-tute (LPI) vorzubereiten. Die vorliegende Auflage berücksichtigt bereits die letz-ten Änderungen des LPI zum 01. April 2012.

Das Zertifikat, das Sie nach dem Bestehen dieser Prüfungen erwerben, wirdIhnen erhebliche Vorteile bei der Suche nach einem Arbeitsplatz bringen. Auchfür Arbeitgeber ist es wünschenswert, die Fachkompetenz der eigenen Mitarbei-ter schriftlich belegen zu können. Eine vollständige und aktuelle Auflistung dermöglichen Zertifizierungen mit LPI finden Sie unter:

http://www.lpi.org/linux-certifications/programs

Hinweise zum Buch

Für wen ist dieses Buch?

Dieses Buch richtet sich an all diejenigen, die zur Förderung ihrer beruflichenLaufbahn Fachwissen erlangen und dieses zertifizieren lassen wollen. Das Buchist ausdrücklich nicht als Nachschlagewerk gedacht, sondern bereitet gezielt aufdie Prüfungen LPIC 101 und LPIC 102 vor. Um die Level-1-Zertifikation des LinuxProfessional Institute zu erwerben, müssen Sie diese beiden Prüfungen ablegenund bestehen.

Voraussetzungen

Sie sollten bereits gute Vorkenntnisse aus dem Bereich der EDV mitbringen. AuchFachwissen im Bereich Unix oder Linux ist absolut von Vorteil, wenn auch nichtVoraussetzung. Wenn in diesem Buch Themen behandelt werden, die aus demBereich Linux für Einsteiger zu sein scheinen, dann hat dies den Hintergrund,dass diese Themen für Sie prüfungsfähig aufgearbeitet werden sollen.

Damit die vorgestellten Themen auch praktisch angewendet werden können,benötigen Sie einen Computer, auf dem eine beliebige Linux-Distribution instal-liert ist. Da die Prüfungen des LPI unabhängig von einem bestimmten Hersteller

15

Vorwort

bzw. einer bestimmten Distribution erstellt wurden, sind Sie hier in Ihrer Aus-wahl eigentlich nicht eingeschränkt. Praktischer ist es allerdings, wenn Sie min-destens zwei Linux-Distributionen in virtuellen Maschinen einsetzen. Sie könnendann einfach die distributionsspezifischen Unterschiede selbst sehen und gege-benenfalls testen. Das ist z.B. beim Thema Paketmanagement besonders interes-sant. Sollten Sie sich für den Einsatz mehrerer Distributionen entscheiden, dannempfehle ich Ihnen die Auswahl eines eher Debian-basierten (z.B. Debian,Ubuntu, Mint) und eines Red Hat-basierten Systems (z.B. CentOS, Fedora). Sokönnen Sie gleichzeitig die Vor- und Nachteile dieser beiden Welten einmalselbst (hoffentlich vorurteilsfrei) unter die Lupe nehmen.

Der Aufbau des Buches

Das Buch ist in vier Abschnitte unterteilt. Für beide Prüfungen, die zum Erwerbdes ersten LPI-Zertifikates notwendig sind, gibt es jeweils eine Sektion, die zumSelbststudium der jeweiligen Prüfungsinhalte geeignet ist. Außerdem gibt es fürbeide Prüfungen einen Bereich mit realistischen Fragen, wie sie auch in der Prü-fung gestellt werden könnten. Zum besseren Verständnis sind die Antworten zuden Fragen genau erläutert. Sie sollten nicht versuchen, die Fragen auswendig zulernen, weil Sie in der Prüfung mit völlig anderen Fragen konfrontiert werden.Die im Buch verwendeten Fragen sind keine Prüfungsfragen.

Die Kapitel in diesem Buch sind genauso angeordnet und benannt, wie die soge-nannten Objectives des LPI. Jedem Kapitel ist eine Wichtung (im Original alsWeight bezeichnet) zugeordnet. Die Wichtung gibt einen klaren Hinweis auf dieAnzahl der Fragen, die zu dem jeweiligen Thema gestellt werden. Sie entsprichtnämlich seit April 2009 der genauen Fragenanzahl in der Prüfung von 60 mögli-chen Fragen.

Wie man mit diesem Buch arbeitet

In den ersten beiden LPI-Prüfungen werden Sie mit sehr vielen Fragen konfron-tiert, die sich mit Kommandos und deren (u.U. selten verwendeten) Optionenbeschäftigen. Es wurde beim Erstellen dieses Buches sehr sorgfältig darauf geach-tet, genau die Parameter und Optionen eines Kommandos niederzuschreiben, diefür die Prüfungen auch relevant sind. Das ist aber leider keine Garantie dafür,dass keine anderen Optionen in der Prüfung abgefragt werden. Sie sollten sichalso zusätzlich zu den dokumentierten Beispielen auch mit den Manpages derentsprechenden Kommandos beschäftigen. Gerade in den ersten beiden Prüfun-gen kommen Sie allein mit Berufserfahrung nicht weiter. Es ist hier auch notwen-dig, Parameter zu kennen, die man in der Praxis eher selten benötigt und beiBedarf in den Manpages nachlesen würde.

16

Vorwort

Die Prüfungssimulation

Die dem Buch beiliegende Prüfungssimulation basiert auf XML und kann z.B. mitdem Webbrowser Firefox ausgeführt werden. Öffnen Sie zu diesem Zweck ein-fach die Datei pruefungssimulator_starten.html. Sie sollten dieses Programm abererst dann verwenden, wenn Sie sich gründlich mit den Themen des Buchesbeschäftigt haben. Sie können mit dem Programm Ihren Kenntnisstand überprü-fen, aber die Aussagekraft des erzielten Ergebnisses sinkt umgekehrt proportio-nal mit der Anzahl der Durchgänge durch die Prüfungssimulation.

Hinweise zur Prüfung

Onlineprüfung

Es gibt zwei verschiedene Organisationen, bei denen Sie die Prüfungen in soge-nannten Prüfungszentren online ablegen können. In Bezug auf die gestellten Fra-gen macht es keinen Unterschied, für welche der beiden Sie sich entscheiden.

Pearson Vue: http://www.vue.com

Thomson Prometric: http://www.prometric.com

Besuchen Sie einfach eine dieser beiden Webseiten, und registrieren Sie sich. Diegenauen Vorgehensweisen sind auf den jeweiligen Webseiten erklärt. Wenn einKonto für Sie eingerichtet wurde, werden Sie per E-Mail informiert. Es ist dannsofort möglich, Prüfungen verschiedenster Hersteller bzw. Organisationen onlinezu buchen. Sie können den Zeitpunkt selbst bestimmen und ein Prüfungszent-rum in Ihrer Nähe aus der Datenbank auswählen. Die Bezahlung erfolgt bequemper Kreditkarte, und Sie werden per E-Mail benachrichtigt, sobald der Termin fürSie reserviert wurde. Im Augenblick benötigt Pearson Vue 24 Stunden Vorlauf fürdie Buchung einer Prüfung. Thomson Prometric benötigt sogar 48 Stunden. Siekönnen also eine Prüfung frühestens für den nächsten Tag buchen. Die LPI-Prü-fungen kosten derzeit 145 €.

Papierprüfung

Es gibt hin und wieder auch die Möglichkeit, LPI-Prüfungen auf Papier abzule-gen. Das geschieht meist auf Messen oder Kongressen. Diese Prüfungen könnennormalerweise zu einem erheblich günstigeren Preis abgelegt werden als die imvorangegangenen Abschnitt thematisierten Onlineprüfungen. Da Papierprüfun-gen nicht immer sofort ausgewertet werden können, kann es allerdings eineWeile dauern, bis Sie über das Ergebnis Ihrer Prüfung informiert werden. InDeutschland werden Papierprüfungen normalerweise auf der CeBIT in Hannover

17

Vorwort

oder auf den Linux-Tagen angeboten. Weitere Veranstaltungen, auf denen SiePapierprüfungen ablegen können, finden Sie auf dieser Webseite:

http://lpievent.lpice.eu

Hier wird Ihnen auch gleich die Möglichkeit gegeben, sich zu einer Prüfung anzu-melden.

Punktevergabe

Die Punktevergabe bei den Prüfungen sieht im Moment folgendermaßen aus:

Zum Bestehen einer beliebigen LPI-Prüfung sind 500 Punkte erforderlich. In denPrüfungen 117-101 und 117-102 müssen Sie jeweils 60 Fragen in 90 Minutenbeantworten. Hierbei können Sie jeweils 800 Punkte erreichen. Bei Prüfungen, dieauf Papier abgelegt werden, kann die Punktevergabe abweichend sein.

In den Prüfungen sind jeweils Betafragen enthalten, die Ihre Punktezahl nichtbeeinträchtigen. Da diese Fragen nicht gesondert markiert sind, müssen Sie sieebenfalls beantworten. Wegen der eingestreuten Betafragen ist eine genaueBerechnung der benötigten Punkte in Prozent auch nicht möglich.

Sprachen

In Deutschland steht die LPI-Prüfung in den Sprachen Deutsch, Englisch, Chine-sisch und brasilianisches Portugiesisch zur Verfügung. Viele Prüflinge legen diePrüfung in englischer Sprache ab, um eventuellen Übersetzungsfehlern aus demWeg zu gehen. Das ist bei einigen Prüfungen, die ich aus eigener Erfahrungkenne, auch absolut angebracht. Die Fragen in den LPI-Prüfungen sind allerdingsim Verhältnis zu den gängigen Herstellerprüfungen kurz gefasst und bieten des-halb wenig Stoff für Übersetzungsfehler. Wenn Ihr Englisch nicht erstklassig ist,sollten Sie die Prüfung lieber in Ihrer Muttersprache ablegen.

Ich wünsche Ihnen viel Spaß und Erfolg beim Bestehen der Prüfungen!

Harald Maaßen

18

Die Dienste eines Systems müssen kontrolliert und gepflegt werden. Um sich die Arbeit so weit wie möglich zu erleichtern, können Sie hier einiges automatisieren. Zur Vereinfachung der Kontrolle können Sie die Proto-kollierung auf die eigenen Bedürfnisse zuschneiden.

Topic 108: Grundlegende Systemdienste

108.1 Die Systemzeit verwalten

Wichtung: 3

Beschreibung: Kandidaten sollten in der Lage sein, die Systemzeit korrekt zu hal-ten und die Uhr mittels NTP zu synchronisieren.

Wichtigste Wissensgebiete:

� Systemzeit und -datum setzen

� die Hardware-Uhr auf die korrekte Zeit in UTC setzen

� die korrekte Zeitzone einstellen

� grundlegende NTP-Konfiguration

� Wissen über den Gebrauch von pool.ntp.org

Liste wichtiger Dateien, Verzeichnisse und Anwendungen:

� /usr/share/zoneinfo

� /etc/timezone

� /etc/localtime

� /etc/ntp.conf

� date

� hwclock

� ntpd

� ntpdate

� pool.ntp.org

389

Grundlegende Systemdienste108

Allgemeines

Für viele Abläufe auf einem Computer ist es wichtig, dass die Systemzeit korrekteingestellt ist. Vergleichsweise harmlos ist hier noch der Umstand, dass beiabweichender Systemzeit Wartungsarbeiten, die durch cron oder anacron ausge-führt werden, möglicherweise zu Zeiten mit Spitzenbelastung laufen und so dieProduktionsumgebung negativ beeinflussen. Unangenehm ist dann schon, dassProtokollierungen mit einer falschen Uhrzeit oder gar mit einem falschen Datumversehen werden. Verwirrend kann es auch werden, wenn Mails anscheinendeintreffen, bevor Sie überhaupt geschrieben wurden. All diese Unannehmlichkei-ten lassen sich durch eine richtig eingestellte Systemzeit vermeiden. Eine Auto-matisierung der Zeitkorrektur macht bei Servern, die unbeaufsichtigt in einemKeller ihre Arbeit verrichten, also absolut Sinn.

Manuelle Konfiguration der Systemzeit

Die manuelle Konfiguration der Systemzeit erfolgt über das Kommando date.Wenn Sie date ohne Parameter starten, werden das aktuelle Datum und die Uhr-zeit ausgegeben.

[root@fedora10 ~]# dateDi 28. Apr 17:54:52 CEST 2009

Hierbei ist zu beachten, dass es sich tatsächlich um die Systemzeit handelt. Dieseist unter Umständen nicht synchron mit der Hardware-Uhr (RTC bzw. Real-Time-Clock). Wenn Sie die Uhrzeit mittels date ändern wollen, dann gehen Sie folgen-dermaßen vor:

archangel:~ # date -s 1755Di 28. Apr 17:55:00 CEST 2009

Die Uhr wird auf 17.55 Uhr eingestellt. Es ist aber auch möglich, date zu verwen-den, um recht elegante Uhrzeitausgaben zu generieren. Das kann etwa in eigenenSkripten verwendet werden. Wenn date auf ein + trifft, wird die darauf folgendeZeichenkette von date ausgegeben und die enthaltenen Variablen entsprechendergänzt. Das sieht z.B. so aus:

# date "+Heute ist der %d.%m.%Y. Das ist der %j. Tag des Jahres."Heute ist der 28.04.2009. Das ist der 118. Tag des Jahres.

Das Programm unterstützt zahlreiche weitere Variablen. Diese können Sie sichmit date –help anzeigen lassen.

390

Die Systemzeit verwalten 108.1

Die RTC-Uhr einstellen

Mit dem Kommando hwclock können Sie die Systemzeit in die Hardware-Uhrschreiben oder umgekehrt. Sie müssen beide Verfahren für die Prüfung kennen.Das sollte aber nicht weiter problematisch sein, weil Sie die benötigten Optionenleicht wiedererkennen können. Folgendes Kommando schreibt die Systemzeit indie Echtzeituhr:

archangel:~ # hwclock –-systohc

Umgekehrt holt folgender Befehl die Zeit bei der RTC ab und stellt danach dieSystemzeit ein:

archangel:~ # hwclock –-hctosys

Interessant ist es auch, zu beobachten, wie die Uhrzeiten zwischen der Hardware-Uhr und der Systemzeit driften. Die Differenz lässt sich mit hwclock ermitteln,indem Sie folgendes Kommando verwenden:

archangel:~ # hwclock --showDi 28 Apr 2009 17:58:13 CEST –0.020712 Sekunden

Die Genauigkeit, mit der die Abweichung ermittelt wird, ist eine MillionstelSekunde. Das sollte für die meisten Anwendungsgebiete ausreichen.

Zeitzonen

Es gibt grundsätzlich zwei Arten, wie eine Linux-Uhr eingestellt werden kann.Entweder Sie stellen sie der Einfachheit halber auf die Zeit der Zone ein, in derSie sich befinden, oder Sie verwenden UTC. Heutzutage geben die meisten Admi-nistratoren der zweiten Methode den Vorzug, was im Zuge internationaler Kom-munikation auch nur vernünftig ist. Das Kürzel UTC leitet sich ursprünglich vonCoordinated Universal Time ab. Im Lauf der Jahre ist der Buchstabe C aus irgend-welchen Gründen, die heute niemand mehr kennt, an den Schluss gestellt wor-den. Die UTC löst die MEZ inzwischen auch in Europa weitestgehend ab. UTC+1entspricht der MEZ.

Damit der Computer dem Benutzer die lokale Zeit anzeigt, muss dem Systemnoch mitgeteilt werden, dass die BIOS-Uhr (RTC) auf UTC eingestellt ist. Daskann über folgende Konfigurationsdateien geschehen:

� /usr/share/zoneinfo – In diesem Verzeichnis befinden sich Binärdateien, diemit allen existierenden Zeitzonen korrespondieren.

� /etc/localtime – Diese Datei ist die mit der aktuellen Zeitzone übereinstim-mende Binärdatei aus /usr/share/zoneinfo. Es kann sich hier um eine Kopieoder einen Softlink zur Originaldatei handeln.

391

Grundlegende Systemdienste108

� /etc/timezone ist eine textbasierte Konfigurationsdatei. Sie können die richtigeZeitzone in dieser Datei einfach eintragen.

Um einen Überblick über die verfügbaren Zeitzonen zu bekommen, können Sietzselect verwenden, wie Sie ja bereits aus dem vorangegangenen Kapitel wis-sen. Dieses nützliche Werkzeug ist in den meisten aktuellen Distributionen ent-halten.

Zeitsynchronisation über das Netzwerk

Zeitsynchronisation über das Netzwerk heißt in den meisten Fällen natürlichSynchronisation über das Internet. Zu diesem Zweck kommt das Network TimeProtocol (NTP) zum Einsatz. Es handelt sich hier um ein relativ altes Protokoll,das schon 1985 in RFC 958 definiert wurde. Wegen der geringen zu übertragen-den Datenmengen nutzt NTP das UDP. Der verwendete UDP-Port ist 123. Vieleinteressante Informationen und aktuelle NTP-Programmpakete erhalten Sie aufhttp://www.ntp.org. Hier finden Sie auch Listen mit öffentlichen Servern, vondenen Sie synchronisieren können. Interessant ist in diesem Zusammenhangauch ein Projekt, in dem ganze NTP-Pools mittels Round Robin zur Verfügunggestellt werden. Es folgt ein Beispiel mit einem Zugriff auf eben diese Server:

root@archangel:~# ntpdate pool.ntp.org28 Apr 18:03:14 ntpdate[30836]: adjust time server 131.234.137.24offset –0.000341 sec

Wie Sie sehen, können Sie mit ntpdate einfach durch Angabe eines Zeitserversdie Uhrzeit des Systems aktualisieren. Es wird allerdings empfohlen, bei der Syn-chronisation mehrere Server gleichzeitig zurate zu ziehen, damit die Richtigkeitder übermittelten Uhrzeit gegengeprüft werden kann.

Automatische Zeitsynchronisation

Wenn die Systemzeit automatisch synchronisiert werden soll, könnten Sie natür-lich einfach ntpdate regelmäßig von cron ausführen lassen. Das ist sogar in einigenPrüfungsfragen so vorgesehen. Komfortabler und genauer funktioniert dies aller-dings mit dem Daemon ntpd. Die Verwendung von ntpd hat vor allem den Vorteil,dass der Computer selbst als Zeitserver fungieren kann. Sie können ohne Schwie-rigkeiten einen Windows XP-Computer von einem Linux-Host synchronisieren.Dazu müssen Sie auf dem Windows XP-Computer lediglich einen Doppelklick mitder seriellen Zeigereinheit (Maus o. Ä.) auf die Uhr ausführen. Auf der Register-karte Internetzeit können Sie den Zeitserver festlegen. Diese Methode funktio-niert nicht, wenn der Windows-Computer Mitglied einer Domäne ist.

392

Die Systemzeit verwalten 108.1

Die Hauptkonfigurationsdatei für den ntpd ist /etc/ntp.conf. Hier findet der Dae-mon vor allem die Adressen mit den zur Aktualisierung vorgesehenen Servernund einen Verweis auf den Driftfile. Dieser liegt, zumindest offiziell (und somitfür die Prüfung), unter /etc/ntp.drift. Der tatsächliche Speicherort hängt von derverwendeten Distribution ab. Die Mindestausstattung der ntp.conf könnte etwaso aussehen:

server de.pool.ntp.orgserver ptbtime1.ptb.dedriftfile /var/lib/ntp/drift/ntp.drift

Mit diesen Einträgen ist der Server schon lauffähig. Starten Sie den Server wieüblich mit /etc/init.d/ntpd start. Er wird sofort eine erste Synchronisationdurchführen. In Abhängigkeit von der verwendeten Distribution wurde ntpdbereits durch xntpd ersetzt. Die Konfigurationsdateien sind jedoch identisch.

Die Driftdatei wird von ntpd verwendet, um Ungenauigkeiten der Systemuhrfestzuhalten. Die Abweichung von der tatsächlichen Zeit wird auf eine Millions-tel Sekunde ermittelt und in die Driftdatei geschrieben.

NTP Diagnose

Es gibt mehrere Bordwerkzeuge, um den ntpd oder auch xntpd zu untersuchen.Die beiden wichtigsten sind wohl ntpq und ntpdc. Beide Programme unterstüt-zen einen interaktiven Modus, der nach Eingabe eines Fragezeichens Aufschlussüber die Möglichkeiten der beiden Programme liefert. Das Beispiel zeigt eineAbfrage nach sysinfo mit ntpdc im interaktiven Modus:

archangel:/ # ntpdcntpdc> sysinfosystem peer: ptbtime1.ptb.desystem peer mode: clientleap indicator: 00stratum: 2precision: –18root distance: 0.02992 sroot dispersion: 0.02531 sreference ID: [192.53.103.108]reference time: cab10cf1.fd8090b4 Fri, Oct 5 2007 21:20:17.990system flags: auth monitor ntp kernel statsjitter: 0.004898 sstability: 236.358 ppmbroadcastdelay: 0.003998 sauthdelay: 0.000000 sntpdc>

393

Grundlegende Systemdienste108

Beide Diagnoseprogramme geben große Informationsmengen aus, weshalb eshier auch bei diesem einen Beispiel bleiben soll. Sehr interessant sind sicherlichnoch die Abfragen nach peers und monlist. Probieren Sie diese doch einfach ein-mal aus.

pool.ntp.org

Eine beliebte Quelle zur Synchronisation ist pool.ntp.org. Hierbei handelt es sichum einen sehr großen virtuellen Cluster, der über die ganze Welt verteilt ist.Europa ist hier übrigens mit etwas über 1.000 Nodes vertreten. Die Verteilung andie Clients wird über DNS mittels Round Robin abgewickelt. Das ist auch derGrund, warum Sie in der Datei /etc/ntp.conf mehrere Zeitserver eintragen sollten.Round Robin kümmert sich nämlich bei der Herausgabe einer IP-Adresse nichtdarum, ob der Zielserver auch wirklich erreichbar ist. Bei Windows-Clients (egal,ob XP oder Vista) können Sie nur einen Zeitserver eintragen. Hier tragen Sie ein-fach pool.ntp.org ein und hoffen, per Round Robin immer einen funktionstüch-tigen Server anzutreffen. Bei Linux-Clients schreibt man gerne in die /etc/ntp.conf:

server 0.pool.ntp.orgserver 1.pool.ntp.orgserver 2.pool.ntp.org

So haben Sie trotz Round Robin eine realistische Chance auf einen Treffer.

108.2 Systemprotokollierung

Wichtung: 2

Beschreibung: Kandidaten sollten in der Lage sein, den Syslog-Daemon zu konfi-gurieren. Dieses Lernziel umfasst auch die Konfiguration des Syslog-Daemons fürden Versand von Logmeldungen an einen zentralen Protokollserver oder dasAnnehmen von Logmeldungen als zentraler Protokollserver.

Wichtigste Wissensgebiete:

� Syslog-Konfigurationsdateien

� syslog

� Standard-Facilities, -Prioritäten und -Aktionen

Prüfungstipp

Das Thema pool.ntp.org ist in den LPI-Prüfungen neu. Die Wahrscheinlichkeit ist alsorecht hoch, dass zu diesem Thema Fragen kommen.

394

Systemprotokollierung 108.2

Liste wichtiger Dateien, Verzeichnisse und Anwendungen:

� syslog.conf

� syslogd

� klogd

� logger

Allgemeines

Viele Programme und natürlich auch Linux selbst protokollieren zur Laufzeit Ereig-nisse, die sich in den jeweiligen Programmabläufen ergeben. Diese Protokollekann sich ein Administrator zunutze machen, um Fehler zu diagnostizieren oderEngpässe frühzeitig zu erkennen. Dazu ist es wichtig, die Speicherorte dieser Pro-tokolldateien zu kennen und gegebenenfalls Anpassungen am Verhalten der fürdie Protokollierung zuständigen Konfigurationsdateien vornehmen zu können.

syslogd und syslog-ng

Damit überhaupt eine Protokollierung von Ereignissen stattfindet, brauchen Siezunächst einmal ein Programm, das diese Protokollierung durchführt. Auf Linux-Systemen finden Sie momentan zwei verschiedene Produkte, die für das Loggingzuständig sind. Das neuere Produkt ist der syslog-ng, den man inzwischen in vie-len modernen Distributionen vorfindet. So verwenden Fedora 10 und Debian 4immer noch den alten syslogd, während SuSE bereits ab Version 9.3 den syslog-ng einsetzt. Solche Kriterien sollten allerdings niemals einen Qualitätsvergleich derDistributionen nach sich ziehen. Die meisten Distributionen haben unterschiedli-che Vor- und Nachteile. Letztendlich ist es auch Ansichtssache, ob man auf solide,altbewährte Methoden setzen will oder ob man mit neuen, verbesserten Techno-logien neue Kinderkrankheiten in Kauf nehmen möchte.

Die Konfigurationsdateien

Zunächst einmal muss festgelegt werden, was wohin von wem protokolliert wird.Normalerweise sind die Voreinstellungen brauchbar und müssen nicht sofortmodifiziert werden. Da Protokolldateien ohne regelmäßige Überprüfung sehrstark anwachsen können, muss auch noch ein Mechanismus verwendet werden,der ein Überlaufen der Festplatte verhindert.

Prüfungstipp

Für die Prüfung sollten Sie sich unbedingt auf den alten syslog konzentrieren. Fragenzu syslog-ng sind bis dato nicht aufgetaucht und vorläufig nicht zu erwarten. SuSE-Benutzer sollten also den alten syslogd nachinstallieren. Das benötigte Paket ist auf derSuSE-CD enthalten (/suse/i586/syslogd-1.4.1-537.i586.rpm).

395

Grundlegende Systemdienste108

/etc/syslog.conf

Das Protokollierungsverhalten des syslogd wird mit der Datei /etc/syslog.confgesteuert. Achtung bei der Prüfung: Es gibt keine /etc/syslogd.conf! Das kleine dgibt es nur bei dem entsprechenden Daemon! Der Aufbau dieser Datei ist rechteinfach organisiert. Jede Zeile enthält jeweils Felder, die immer folgendermaßengegliedert sind: facility.level action

� facility ist hierbei der Prozess, der den zu protokollierenden Eintrag erstellt.Es kommen folgende Prozesse in Frage:

� auth (ehemals security), authpriv, cron, daemon, kern, lpr, mail, mark, news,syslog, user, uucp, local0 bis local7

� Ein Stern (engl. asterisk) bezeichnet alle Facilities.

� Wenn Sie für eigene Programme den Syslog verwenden möchten, dannkönnen Sie hierfür auf die Facilities local0 bis local7 zurückgreifen, diefür eben diesen Zweck bestimmt sind.

� level legt den jeweiligen Protokollierungsgrad fest. Wenn Sie einen Fehlergenauer untersuchen wollen, kann es sinnvoll sein, den Protokollierungsgradrecht hoch einzustellen. In einigen Fällen können aber auch die Erfolgsmel-dungen einiger Facilities das Verzeichnis /var überschwemmen. Für die Prü-fung müssen Sie die Reihenfolge der Loglevel kennen:

� debug – extremer, in der Regel unnötiger Protokollierungsgrad

� info – harmlose Informationen

� notice – ungefährlicher Hinweis

� warning, warn – normalerweise harmlos, je nach Facility

� err, error – z.B. Authentifizierungsfehler, I/O Fehler

� crit – ein kritischer Fehler, sorgt immer für Probleme

� alert – ein Alarm, weist immer auf schwerwiegende Probleme hin

� emerg panic – wird (wenn überhaupt noch) als letzter Eintrag vor dem Sys-temcrash geschrieben. Das gilt natürlich nicht, wenn ein unwichtiges Pro-gramm abstürzt, bei dem die Ansteuerung des Syslog völlig übertriebenwurde.

Die Level error, warn und panic sind veraltet, und es sollten stattdessen jeweilserr, warning und emerg verwendet werden.

� action ist von der Bezeichnung her irreführend. In diesem Feld wird das Zielspezifiziert, in die das Facility protokollieren soll. Hierbei wird es sich norma-lerweise um eine Datei handeln. Die Benachrichtigung kann aber auch aneinen anderen Computer oder an eine kommagetrennte Liste von Benutzerngesendet werden.

396

Systemprotokollierung 108.2

Es folgt ein Auszug aus einer typischen Debian-syslog.conf:

auth,authpriv.* /var/log/auth.logcron.* /var/log/cron.logkern.* -/var/log/kern.loglpr.* -/var/log/lpr.logmail.* -/var/log/mail.log

Wie Sie gleich sehen, verwendet Debian für jedes Facility seine eigene Log-Datei.Das ist eher außergewöhnlich, kann aber bei der Fehlersuche angenehm sein,wenn Sie kleinere Logfiles gezielt durchsuchen. Bei den meisten anderen Distri-butionen können Sie davon ausgehen, dass der Löwenanteil der protokolliertenInformationen in der Datei /var/log/messages abgelegt werden.

/etc/logrotate.conf

Damit die Log-Dateien auf einem unbeobachteten System nicht unkontrolliertanwachsen und das Dateisystem fluten, werden diese mit dem Programmlogrotate überwacht. Wie logrotate diese Dateien behandelt, hängt von denEinstellungen in der Konfigurationsdatei /etc/logrotate.conf ab. Normalerweisewerden nach Ablauf einer voreingestellten Zeit die im Verzeichnis /var/logbefindlichen Dateien komprimiert und dann im leeren Zustand neu erstellt. Es istheute der Übersichtlichkeit halber üblich, die Konfiguration mit Include-Dateienzu versehen. Deshalb sollten Sie auf Ihrem System auch nach einem Verzeichnismit der Bezeichnung /etc/logrotate.d Ausschau halten. Logrotate sollte täglichvon cron ausgeführt werden.

Einsatz von Log-Dateien zur Fehlersuche

Wenn auf einem Linux-System ein unerklärlicher Fehler auftritt, ist es immereine gute Idee, das Verzeichnis /var/log zu konsultieren und die mit dem Problemin Zusammenhang stehenden Log-Dateien zu untersuchen. Die einfachsteMethode ist wohl die Anzeige einer Log-Datei mit einem Pager:

archangel:/ # less /var/log/messagesAug 17 09:07:42 archangel named[6801]: client 172.16.0.2#2509:updating zone '0.16.172.in-addr.arpa/IN': adding an RR at'2.0.16.172.in-addr.arpa' PTRAug 17 09:45:39 archangel sshd[31158]: Accepted password for rootfrom ::ffff:192.168.0.10 port 4345

Prüfungstipp

Detaillierte Kenntnisse über die Konfiguration der logrotate.conf sind für die Prüfungnicht erforderlich. Sie sollten aber auf jeden Fall wissen, wozu logrotate eingesetzt wird.

397

Grundlegende Systemdienste108

Aug 17 10:00:32 archangel syslog-ng[6389]: STATS: dropped 0Aug 17 11:00:33 archangel syslog-ng[6389]: STATS: dropped 0

Scheinbar ist nichts Aufregendes passiert. Der DNS-Server hat einen Reverse-Lookup-Eintrag aktualisiert, und der Root hat sich via SSH eingeloggt. Danachgeschah zwei Stunden lang nichts!

Eine völlig andere Methode, sich Log-Dateien zunutze zu machen, ist das Kom-mando tail. Standardmäßig gibt tail die letzten zehn Zeilen einer Textdatei aufdem Bildschirm aus. Wenn Sie aber die Option –f übergeben, wird das Anzeigender betreffenden Log-Datei fortgesetzt. Das bedeutet, dass der Computer keinenEingabe-Prompt anzeigt, sondern die Datei samt Änderungen im laufenden Betriebanzeigt und aktualisiert. Das ist besonders nützlich, wenn Sie beabsichtigen, einenFehler zu provozieren und dessen Auswirkungen gleichzeitig auf einem anderenTerminal zu beobachten. Die vollständige Kommandozeile ist also folgende:

archangel:~ # tail /var/log/messages -f

Wenn Sie nach der Ausgabe eines bestimmten Programms in einer umfangrei-chen Protokolldatei oder nach einem bestimmten Ereignistyp suchen, empfiehltes sich, die Anzeige der Log-Datei mit grep zu filtern. Bei umfangreicheren Ergeb-nissen kann die Ausgabe natürlich nach less umgeleitet werden.

archangel:~ # grep sshd /var/log/messages | grep invalid | less

In diesem Beispiel sucht grep zunächst alle Einträge, die der sshd protokollierthat. Die anschließende Filterung nach invalid sucht fehlgeschlagene Anmel-deereignisse. Zum Schluss wird die Ausgabe an less übergeben und auf demBildschirm dargestellt:

Sep 17 13:04:47 archangel sshd[310]: Failed none for invalid userrooot from ::ffff:87.187.104.63 port 64960 ssh2Sep 25 16:58:55 archangel sshd[1774]: Failed none for invalid usermartin from ::ffff:192.168.0.53 port 55380 ssh2

Offensichtlich ist beim ersten Eintrag der Benutzername Root falsch geschriebenworden. Der zweite Eintrag ist ein Anmeldeversuch von einem Benutzer, den esauf diesem System gar nicht gibt.

Selbst Ereignisse loggen

Eine einfache Methode, ein Ereignis selbst zu generieren, bietet das Programmlogger. Dieses Tool kann natürlich auch in eigenen Skripten eingesetzt werden.Wenn z.B. ein selbst geschriebenes Skript verwendet wird, das eigenständig eineDatensicherung durchführt, ist am Ende des Skripts folgende Zeile denkbar:

398

Grundlagen von Mail Transfer Agents (MTAs) 108.3

logger -t Backup "Datensicherung ausgeführt"

Zu Testzwecken können Sie den Befehl auch einfach auf der Kommandozeile ein-geben. Ein Blick in den Syslog zeigt das Ergebnis:

archangel:~ # tail –1 /var/log/messagesSep 25 17:20:42 archangel Backup: Datensicherung ausgeführt

So haben Sie in Zukunft jederzeit die Möglichkeit, zu überprüfen, wann diesesSkript ausgeführt wurde.

Der Kernellog

Der Daemon mit dem Namen klogd fängt Meldungen des Kernels ab und proto-kolliert diese. Normalerweise wird er vom init-Prozess gestartet und läuft sinn-vollerweise in jedem Runlevel, den ein System nutzt. Die Ausgabe erfolgt in derRegel auf dem Syslog. Man kann (am besten im zugehörigen init-Skript) einigeOptionen an den klogd übergeben. Einige wichtige Optionen sind:

� -c n setzt den Loglevel für Konsolenmeldungen auf n.

� -d aktiviert den Debugging Modus.

� -f datei ändert die Ausgabe vom Syslog auf die angegebene datei.

Als Eingabedatei verwendet klogd /proc/kmsg. Auch das lässt sich mit einemSchalter (nämlich -p path) ändern. Allerdings gibt es dazu normalerweise keineVeranlassung.

108.3 Grundlagen von Mail Transfer Agents (MTAs)

Wichtung: 3

Beschreibung: Kandidaten sollten wissen, welche gebräuchlichen MTA-Pro-gramme existieren und einfache Weiterleitungs- und Alias-Konfigurationen aufeinem Client-Rechner einstellen können. Weitere Konfigurationsdateien werdennicht abgedeckt.

Wichtigste Wissensgebiete:

� Mail-Aliase anlegen

� Mail-Weiterleitung konfigurieren

� Wissen von allgemein verfügbaren MTA-Programmen (postfix, sendmail,qmail, exim) (keine Konfiguration)

399

Grundlegende Systemdienste108

Liste wichtiger Dateien, Verzeichnisse und Anwendungen:

� ~/.forward

� Kommandos in der Sendmail-Emulationsschicht

� newaliases

� mail

� mailq

� postfix

� sendmail

� exim

� qmail

Allgemeines

MUA, MDA und MTA

Die Verarbeitung und Übermittlung von Mail-Nachrichten wird in der Hauptsa-che von drei Softwarekomponenten durchgeführt:

� MUA – Der Mail User Agent ist ein Mail-Clientprogramm, mit dem Mailsgeschrieben, gelesen und versendet werden. (z.B. kmail, Evolution, Thunder-bird, Outlook usw.)

� MDA – Der Mail Delivery Agent verarbeitet E-Mails auf einem Server. Er ent-scheidet, wie mit den E-Mails weiter zu verfahren ist. Handelt es sich umlokale Mail-Adressen, stellt er die E-Mail im entsprechenden Mail-Verzeichnisdes Adressaten zu. Ansonsten übergibt er die Nachricht an den MTA, der dannfür die Weiterleitung sorgt. (MDAs sind z.B. procmail, maildrop, cyrus)

� MTA – Der Mail Transfer Agent nimmt die E-Mail vom Client entgegen. Er istfür die Zustellung einer Nachricht an den richtigen Zielserver verantwortlich.Hierbei wird normalerweise das Protokoll SMTP verwendet. Auf dem Zielser-ver übernimmt dann wieder der MDA die Nachrichten und verteilt sie in dieentsprechenden Mail-Verzeichnisse. (MTAs sind z.B. sendmail, postfix, qmail,exim.)

Prüfungstipp

Für die anstehende Prüfung müssen Sie mit den Grundfertigkeiten der Konfigurationeines Mail Transfer Agents vertraut sein. Komplexere Administrationsaufgaben erwartenSie allerdings erst in der LPI-Prüfung 117-201.

400

Grundlagen von Mail Transfer Agents (MTAs) 108.3

Für die endgültige Auslieferung einer Mail-Nachricht an ein Clientprogrammbenötigen Sie letztendlich noch mindestens einen weiteren Serverdienst, wieIMAP oder POP.

Das Starten und Stoppen eines Mail Transfer Agents funktioniert genau so, wiebei den meisten anderen Netzwerkdiensten auch, wenn diese nicht gerade voninetd oder xinetd gesteuert werden. Das bedeutet zum Beispiel für postfix:

root@ubuntu-server:/# /etc/init.d/postfix start* Starting Postfix Mail Transport Agent postfix [ OK ]

Mail – Aliase

Die Datei /etc/aliases

In der Datei /etc/aliases können Sie Mail-Nachrichten umleiten. Hierbei sind vierverschiedene Verfahren möglich. Das gängigste ist dieses:

willi: wilhelmroot: wilhelm

Mit dem ersten Eintrag werden Mails, die an willi adressiert sind, dem real exis-tierenden Benutzerkonto wilhelm zugeordnet. Da Wilhelm ein Systemverwalterist, der sich äußerst selten als Root anmeldet, werden Mails, die an den Rootadressiert sind, ebenfalls Wilhelms Benutzerkonto zugewiesen.

Eine andere Methode ist die Zuweisung eines Alias zu einer Datei. So könnte manTätigkeitsberichte, automatisch mit Datum und Uhrzeit versehen, per Mail-Pro-gramm schreiben:

taetigkeiten: "/home/harald/taetigkeitsbericht"

Die Berichte müssen dann einfach an das Konto taetigkeiten gesendet werden,und die Aufzeichnung geschieht automatisch in der angegebenen Datei. Für die-ses Konto muss ebenfalls kein reales Benutzerkonto auf dem Server existieren.

freunde: :include:/home/harald/meinefreunde

Der voranstehende Eintrag macht tatsächlich das, wonach er aussieht: Wenn eineMail an Freunde gesendet wird, wird diese Nachricht an alle Mail-Adressen ver-sendet, die in der Textdatei /home/harald/meinefreunde zeilensepariert aufgeführtsind.

Die letzte, nicht selten genutzte Möglichkeit ist die Übergabe einer Nachricht anein Programm. Mit dieser Methode arbeitet etwa das MailinglistenprogrammMajordomo:

401

Grundlegende Systemdienste108

majordomo: "|/usr/lib/majordomo/wrapper majordomo"

Der Unterschied zur Umleitung in eine Datei ist das führende Pipe-Zeichen.

newaliases

Nach dem Anlegen eines neuen Alias in der Datei /etc/aliases müssen Sie denBefehl newaliases eingeben, damit Sendmail den neuen Alias auch verwendet.Alternativ können Sie auch sendmail -bi ausführen. Selbst die Antwort der bei-den Kommandos ist identisch:

[root@fedora10 home]# sendmail -bi/etc/aliases: 77 aliases, longest 10 bytes, 777 bytes total

Weiterleitung von Mail

Ein Benutzer kann für sich selbst eine Mail-Weiterleitung einrichten. Das wird oftmit einem Nachsendeauftrag bei der Post verglichen. Ein gern genannter Verwen-dungszweck ist die Weiterleitung geschäftlicher Mails an eine Urlaubsvertretung.Dazu muss der Benutzer nichts weiter tun, als eine Datei mit dem Namen .for-ward (der Punkt muss sein) in seinem Heimatverzeichnis zu erstellen, welche dieWeiterleitungsadresse in einer einzelnen Zeile enthält. Die Weiterleitung greiftsofort. Es muss nichts weiter unternommen werden.

Wichtige Dateien und Verzeichnisse

� /var/spool/mail – in diesem Verzeichnis liegen Dateien mit den Namen derBenutzerkonten, die auf diesem System Mails empfangen. Der MDA lieferthier Nachrichten für die lokalen Benutzer aus.

� /var/spool/mqueue – das ist die Mail-Queue oder auch Warteschlange. Hier holtder MDA Nachrichten ab und entscheidet dann, ob sie lokal ausgeliefert wer-den oder an den MTA zur weiteren Verarbeitung übergeben werden müssen.

� /var/spool/postfix – hier liegt die Datenverzeichnisstruktur von postfix.

� /var/mail ist ein typischer Link auf /var/spool/mail.

� /etc/postfix beherbergt die Konfigurationsdateien von postfix.

� /etc/mail enthält die meisten Konfigurationsdateien für sendmail.

Prüfungstipp

Für die Prüfung müssen Sie die Verzeichnisse, die von den gängigen MTAs (hauptsäch-lich postfix und sendmail) verwendet werden, kennen.

402

Grundlagen von Mail Transfer Agents (MTAs) 108.3

Um den Inhalt einer Mail-Queue im laufenden Betrieb sehen zu können, verwen-den Sie das Programm mailq ohne Parameter:

archangel:/var/spool/mqueue # mailq/var/spool/mqueue (2 requests)

--Q-ID---- --Size-- --Q-Time---- ----Sender/Recipient-l9HH2A016576* 816 Wed Oct 17 19:02 <[email protected]>

<[email protected]>l929jC016576* 931 Wed Oct 17 19:02 <[email protected]>

<[email protected]>Total requests: 2

In der Regel ist hier aber nichts zu sehen, weil bei einem normal frequentiertenServer die Verarbeitung der Mails sehr schnell geschieht.

sendmail-Konfigurationsdateien

Die Hauptkonfigurationsdatei von sendmail ist die Datei sendmail.cf. WeitereKonfigurationsdateien befinden sich normalerweise in /etc/mail. Die Datei send-mail.cf selbst finden Sie z.B. bei SuSE direkt unter /etc, während sie bei Fedora 10unter /etc/mail residiert. Das ist schon ein erster Hinweis darauf, dass die Konfi-guration von sendmail stark variiert. Die Datei sendmail.cf könnte man durchausals kompliziertes Konstrukt bezeichnen. Deshalb wird sie auch normalerweisenicht von Hand erstellt. Stattdessen schreibt man M4-Makros, die dann durcheinen M4-Präprozessor verarbeitet werden. Die LPI-Prüfungen sind aber weitdavon entfernt, sich mit dieser Thematik auseinanderzusetzen.

postfix-Konfigurationsdateien

Der MTA postfix wird mit Konfigurationsdateien konfiguriert, die sich im Ver-zeichnis /etc/postfix befinden. Die Datei main.cf ist die globale Konfigurationsda-tei für postfix. Hier werden wichtige Grundeinstellungen festgelegt. Um eventu-elle Pfadangaben zu irgendwelchen Arbeitsverzeichnissen müssen Sie sichnormalerweise nicht kümmern, weil diese distributionsspezifisch schon immerrichtig eingestellt sind. Es sollte aber natürlich festgelegt werden, unter welchemNamen der Computer aus der Sicht des Internets angesprochen wird und für wel-che Domänen er verantwortlich ist:

myhostname = echtername.meinedomain.commyhostname = virtuellername.meinedomain.commydomain = meinedomain.com

Wie in dieser Datei die Smarthost-Einstellungen u.Ä. konfiguriert werden, erfah-ren Sie auf der nächsten Seite.

403

Grundlegende Systemdienste108

Eine weitere Konfigurationsdatei, die postfix verwendet, heißt master.cf. Hierbeihandelt es sich um die Konfiguration für die postfix-internen Prozesse. In dieserDatei müssen in den seltensten Fällen Änderungen vorgenommen werden.

Smarthost und SMTP-Relay

Ein Smarthost ist ein Mailserver, der als SMTP-Relay fungiert. Normalerweisewerden Sie Ihre zu versendenden Mails nicht direkt zustellen, sondern durch denSMTP-Server Ihres Internet Service Providers ausliefern lassen. Anderenfalls wür-den viele Mailserver Ihre Mail nicht entgegennehmen, weil Ihr SMTP-Server imInternet nicht bekannt ist. Daraus schließen diese Zielserver, dass Ihr Server einmögliches Relay für Spam ist, und verwerfen Ihre Mail.

Smarthost mit sendmail

Wenn Sie einen externen Smarthost für sendmail angeben wollen, ist das eine derwenigen Situationen, in denen Sie die sendmail.cf bearbeiten müssen. Suchen Sienach einem DS am Zeilenanfang (möglicherweise auskommentiert), und schrei-ben Sie dahinter lückenlos den FQDN des Relayservers.

# "Smart" relay host (may be null)DSmailrelay.myisp.org.

So sieht der Eintrag also aus, wenn der Server mailrelay.myisp.org heißt.

Soll Ihr Server selbst als SMTP-Relay fungieren, dann müssen Sie die Dateien /etc/mail/access und /etc/mail/relay-domains modifizieren und anschließend in ebendiesem Verzeichnis einmal das Kommando make ausführen, um die korrespon-dierenden db-Files zu generieren.

Smarthost mit postfix

Sollten Sie postfix als MTA verwenden, dann muss der Smarthost entsprechendin der Datei /etc/postfix/main.cf eingetragen werden. Dieser Eintrag sieht wiefolgt aus:

relayhost = mail.myisp.org

Um postfix selbst als Relay einzusetzen, gibt es verschiedene Möglichkeiten. Einesehr einfache (wenn auch umstrittene) Methode ist es, einfach mit der Angabeder eigenen Netzwerke für bestimmte Subnetze Relaying zuzulassen:

mynetworks = 127.0.0.0/8 192.168.50.0/24 172.16.0.0/28

Das setzt natürlich voraus, dass die Mitarbeiter, die sich in diesen Subnetzseg-menten aufhalten, vertrauenswürdig sind und nicht auf die Idee kommen, dieAbsender ihrer Mails zu fälschen.

404

Drucker und Druckvorgänge verwalten 108.4

Wesentlich sicherer ist es natürlich, eine Authentifizierung des Benutzers zu ver-langen. Als Mechanismus kommt hier am ehesten SASL (Simple Authenticationand Security Layer) infrage. Sollte ein authentifizierter Benutzer eine Mail mitgefälschtem Absender verschicken, ist dieser Vorgang zumindest in den Protokol-len (/var/log/mail) nachvollziehbar.

exim und qmail

Weniger bekannt sind die MTAs exim und qmail. Exim ist weitgehend ähnlich zukonfigurieren wie sendmail, die Konfiguration ist aber etwas einfacher. Debianverwendet exim sogar als Standard-MTA. Der MTA qmail wurde hauptsächlichentwickelt, um die Sicherheit gegenüber sendmail zu erhöhen. Auch qmail isterheblich leichter zu konfigurieren als sendmail.

108.4 Drucker und Druckvorgänge verwalten

Wichtung: 2

Beschreibung: Kandidaten sollten in der Lage sein, Druckerwarteschlangen undDruckaufträge von Benutzern mit CUPS und der LPD-Kompatibilitätsschnittstellezu verwalten.

Wichtigste Wissensgebiete:

� grundlegende CUPS-Konfiguration (für lokale und entfernte Drucker)

� Benutzer-Druckerwarteschlangen verwalten

� allgemeine Druckprobleme lösen

� Druckaufträge zu eingerichteten Druckerwarteschlangen hinzufügen und dar-aus löschen

Liste wichtiger Dateien, Verzeichnisse und Anwendungen:

� CUPS-Konfigurationsdateien, -Werkzeuge und -Hilfsprogramme

� /etc/cups

� LPD-Kompatibilitätsschnittstelle (lpr, lprm, lpq)

Allgemeines

Drucken funktioniert unter Linux praktisch genauso wie unter Unix. Das ist auchnicht weiter verwunderlich, weil die beiden Drucksysteme, die unter Linux ver-wendet werden, Portierungen aus der Unix-Welt sind. Die ältere der beiden Vari-

405

Grundlegende Systemdienste108

anten ist an BSD-Unix angelehnt, das in Kalifornien an der Universität in Berkeleyentwickelt wurde (BSD steht für Berkeley Software Distribution). Das BSD-Druck-system wurde allerdings später für Linux komplett neu geschrieben, weil es eineSicherheitslücke aufwies, die man unter Linux nicht akzeptieren wollte. Diesesneu entwickelte System finden Sie heute unter der Bezeichnung LPRng in prak-tisch allen Linux-Distributionen wieder.

Das zweite große Drucksystem unter Linux heißt CUPS (Common Unix PrintingSolution oder auch Common Unix Printing System). CUPS wurde ursprünglich ent-wickelt, um das Internet Printing Protocol (IPP) zu unterstützen, löste aber auf vie-len Systemen BSD und LPRng ab. Auch wenn CUPS intern völlig anders arbeitetund zudem ein webbasiertes Konfigurationsfrontend anbietet, so ist bei seinerEntwicklung an Abwärtskompatibilität gedacht worden. CUPS unterstützt nichtnur die Kommandos von BSD bzw. LPRng, sondern zusätzlich auch die von Sys-tem-V, einer verbreiteten Unix-Version.

Verwalten der Druckerwarteschlangen

Ein Druckauftrag durchläuft bei den meisten Betriebssystemen, bevor er ausge-druckt wird, eine sogenannte Warteschlange. In diesem Zusammenhang wirdauch häufig der Begriff Queue verwendet. Das Wort Queue kommt ursprünglichaus der französischen Sprache und bedeutet Schlange. Billard wird also, wennman es auf gut Deutsch ausdrücken will, nicht mit einem Stock, sondern miteiner (offensichtlich erstarrten) Schlange gespielt. Einen weiteren gängigen Fach-begriff, nämlich Spooler, kann man beinahe phonetisch aus dem Englischen mitSpule übersetzen. Druckaufträge reihen sich also in eine Schlange ein oder wer-den aufgespult.

Die zu druckenden Aufträge werden unter Linux zunächst von einem Druck-Cli-ent-Programm (z.B. lpr) in die entsprechende Warteschlange gestellt. Um dasgenaue Verzeichnis zu ermitteln, in das der Druckauftrag hingespoolt werdenmuss, wird die Konfigurationsdatei /etc/printcap ausgewertet. Normalerweisebefinden sich die Warteschlangen unterhalb von /var/spool. Ein Druckauftragbesteht immer aus zwei Dateien, nämlich einem Control-File mit der Dateierwei-terung cf und einem in der Regel erheblich größeren Data-File mit der Extensiondf. Der Spool-Vorgang ist nun abgeschlossen, und die beiden Dateien bleibenjetzt so lange liegen, bis sie jemand bearbeitet. Diese Aufgabe übernimmt derLine Printer Daemon (lpd) nun, vorausgesetzt, er wurde gestartet. lpd prüftzyklisch das Vorhandensein von Dateien in allen Druckerwarteschlangen. Wirder fündig, so übergibt er die momentan noch in einem sehr rohen, RAW genann-ten Format vorliegenden, Daten an einen Druckfilter. Dieser wandelt dann dieDaten in Abhängigkeit vom verwendeten Druckermodell in einen geeigneten

406

Drucker und Druckvorgänge verwalten 108.4

Datenstrom und sendet diesen an den Drucker. Wenn der Auftrag ausgedrucktwurde, werden die Kontroll- und die Datendatei aus der Warteschlange gelöscht.

Die Verarbeitung der Dateien ist bei der Verwendung von CUPS geringfügiganders. So sind z.B. die Konventionen für die Benennung der Dateien innerhalbeiner Warteschlange different, aber das Druckprinzip ist weitestgehend gleich.

Den Line Printer Daemon startet man mit dem Befehl:

/etc/init.d/lpd start

Alternativ startet man CUPS mit:

/etc/init.d/cups start

Man beachte die Besonderheit, dass der Daemon CUPS nicht, wie die meistenanderen, auf d endet! Nach Änderungen an den Konfigurationsdateien, insbeson-dere /etc/printcap, muss der jeweilige Druckdaemon neu gestartet werden.

Befehle zur Kontrolle von Druckvorgängen

� lp und lpr senden Druckaufträge an einen angegebenen Drucker. Das Kom-mando lp entstammt dem System-V und versteht andere Optionen als lpr.Machen Sie sich für die LPI-Prüfung mit den Optionen von lpr vertraut. Mit–P wird die zu verwendende Warteschlange angegeben.

archangel:~ # lpr -Plaserjet1300 /etc/printcap

druckt die Datei /etc/printcap auf dem Printer Laserjet1300 aus.

� lpq zeigt den Inhalt von Warteschlangen an. Es kann auch hier mit der Option–P eine bestimmte Warteschlange angegeben werden:

archangel:~ # lpq -Plaserjet1300laserjet1300 is ready and printingRank Owner Job File(s) Total Sizeactive root 450 printcap 1024 bytes1st michaela 451 haushaltplan 9216 bytes2nd michaela 452 haushaltplan 9216 bytes3rd dominik 453 kinderprogramm.html 1024 bytes

� lprm löscht Aufträge aus der Warteschlange. Bereits im Druck befindliche Auf-träge können nicht mehr entfernt werden.

archangel:~ # lprm -Plaserjet1300 451

entfernt den versehentlich doppelt abgesendeten Druckauftrag aus dem Bei-spiel für lpq.

407

Grundlegende Systemdienste108

Ein Benutzer ohne administrative Rechte kann ohne Weiteres selbst alle eige-nen Aufträge löschen, indem er den Befehl lprm – eingibt. Wenn derselbeBefehl aber vom Benutzer Root ausgeführt wird, dann werden sämtlicheDruckaufträge aller Benutzer aus der Warteschlange entfernt.

lpc – Line Printer Control

lpc ist ein Programm, das man als gewöhnlichen Konsolenbefehl oder interaktivverwenden kann. Es bietet umfangreiche Funktionen, weshalb ihm auch ein eige-ner Abschnitt zusteht. Der interaktive Modus bietet einen Eingabe-Prompt undmacht vor allem dann Sinn, wenn Sie beabsichtigen, dem Druckdaemon mehrereBefehle hintereinander zu geben. Wenn lpc mit CUPS verwendet wird, sind nureinige wenige Befehle innerhalb von lpc verfügbar. Genau genommen ist dannlediglich eine Statusabfrage möglich.

lpc> statuslaserjet1300:

printer is on device 'parallel' speed –1queuing is enabledprinting is enabled4 entriesdaemon present

Unter BSD bzw. LPRng sind deutlich mehr Optionen verfügbar, wobei dieBefehlsstruktur bis auf die Ausnahmen topq und status immer die gleiche ist. Inden Beispielen wird davon ausgegangen, dass lpc im interaktiven Modus gestar-tet wurde.

lpc> up laserjet1300

startet und aktiviert den Laserjet 1300, während

lpc> up all

alle Drucker gleichzeitig startet und aktiviert. Also werden immer lpc, gefolgtvom lpc-Kommando (up) und von dem anzusteuernden Drucker (Laserjet1300bzw. all) angegeben. Die lpc-Kommandos sind im Einzelnen:

� start startet den Druckprozess als solchen, so dass jetzt Aufträge aus der War-teschlange abgearbeitet und ausgedruckt werden können.

� stop beendet den Druckprozess. Ein laufender Auftrag wird noch bis zumEnde abgearbeitet. Die Druckerwarteschlange nimmt aber weiterhin Aufträgeentgegen.

� enable aktiviert die Druckerwarteschlange.

408

Drucker und Druckvorgänge verwalten 108.4

� disable deaktiviert die Druckerwarteschlange. Bereits in der Warteschlangebefindliche Aufträge werden noch fertig abgearbeitet. Neue Jobs werdenjedoch abgelehnt.

� up kombiniert die Kommandos enable und start.

� down kombiniert die Kommandos disable und stop.

� abort beendet den Druckprozess sofort. Auch ein bereits in Arbeit befindli-cher Druckauftrag wird sofort abgebrochen. Sollte der Drucker seine Tätigkeitnicht sofort einstellen, ist dies auf Restdaten im Druckerspeicher zurückzufüh-ren.

� topq stellt einen bereits gespoolten Druckauftrag an die erste Position in derWarteschlange. Hier sieht die Befehlssyntax etwas anders aus als bei den ande-ren Kommandos:

� lpc> topq Laserjet1300 453 verschiebt den Druckjob mit der Nummer 453 andie erste Position der Druckerwarteschlange. Ein bereits in Arbeit befindlicherDruckauftrag wird hierdurch nicht abgebrochen.

� quit beendet letztendlich den interaktiven Modus des lpc und kehrt zur nor-malen Shell zurück.

Drucken mit CUPS

CUPS ist ein Drucksystem, das von Anfang an auf das Drucken im Netzwerk aus-gelegt wurde. Deshalb modifiziert CUPS auch gleich nach seiner Installation diealtbekannte /etc/printcap, in der er sich selbst als Netzwerkdrucker deklariert:

# This file was automatically generated by cupsd(8) from the# /etc/cups/printers.conf file. All changes to this file# will be lost.laserjet1300|laserjet1300:rm=archangel:rp=laserjet1300:

Abgesehen vom Namen des Druckers und seinem Alias, findet man hier alsonoch einen remote printer an einer remote machine und das, obwohl der Druckerlokal angeschlossen ist. Die Konfigurationsdateien für CUPS befinden sich alleunterhalb von /etc/cups. Aber selbst diese müssen Sie nur selten modifizieren,weil die komplette Konfiguration über Frontends durchgeführt werden kann. Ameinfachsten ist die Konfiguration mit einem Webbrowser. CUPS horcht am TCP-Port 631 und kann somit über http://localhost:631 angesprochen werden. Aufdiesem Weg können nicht nur Wartungsaufgaben wie das Löschen von Druckauf-trägen u.Ä. durchgeführt, sondern dem System auch neue Drucker hinzugefügtwerden. Der TCP-Port für die Konfiguration lässt sich übrigens in der Datei /etc/cups/cupsd.conf ändern. CUPS kennt von sich aus sehr viele verschiedene Drucker

409

Grundlegende Systemdienste108

und bringt die nötigen Filter alle mit. Die normalen Befehle zur Verwaltung vonWarteschlangen, wie lpr, lprm, lpq und lpc, stehen genauso zur Verfügung wieunter BSD. Einzig der lpc ist in seiner Funktionsweise stark eingeschränkt. Zurkonsolenbasierten Konfiguration dient das Tool lpadmin, was Sie sich auch unbe-dingt für die Prüfung merken sollten. In der Praxis werden Sie nach kurzer Ein-gewöhnungszeit auf die angenehme HTML-Oberfläche von CUPS nicht mehr ver-zichten wollen.

410

Übungsfragen zu LPI 117-102

Die folgenden Fragen sollen Ihnen helfen, sich an die Art der Fragestellung inder wirklichen Prüfung zu gewöhnen. Es macht keinen Sinn, die Fragen einfachauswendig zu lernen, denn es sind keine Prüfungsfragen. Sie sollten stattdessenversuchen, die Antworten zu jeder einzelnen Frage zu verstehen. Deshalb wer-den sowohl die richtigen als auch die falschen Antworten im Lösungsteil desBuches detailliert besprochen. Das Üben mit diesen Fragen soll Ihnen auch dieHerangehensweise an eventuell Ihnen unbekannte Themen nahe bringen. Einunbekanntes Kommando in einer Frage ist nämlich noch längst kein Grund, eineFrage einfach nicht zu beantworten. Oft führt ein wenig Logik oder das Aus-schlussverfahren dennoch zum Ziel.

Fragen

Frage 1:

Während Ihrer täglichen administrativen Arbeit verwenden Sie häufig das Kom-mando ps -aux. Sie bemerken, dass Sie das Programm ps eigentlich nie ohnediese Schalter verwenden. Wie können Sie erreichen, dass in Zukunft durch dieeinfache Eingabe von ps automatisch das Kommando ps -aux ausgeführt wird?

A: ps = "ps -aux"

B: let ps = "ps -aux"

C: alias ps= "ps -aux"

D: set ps = "ps -aux"

E: alias ps -aux = ps

465

Übungsfragen zu LPI 117-102

Frage 2:

Sie müssen ein Programm ausführen und dabei verhindern, dass dieses Pro-gramm auf Ihre gesetzten Umgebungsvariablen zurückgreift. Welches Kom-mando können Sie dem Programm voranstellen, damit es in einer »leeren Umge-bung« läuft?

A: export

B: env -i

C: set -i

D: unset

E: clear

Frage 3:

Sie haben die Variable http_proxy gesetzt. Während der Arbeit in einer Subshellstellen Sie fest, dass Ihnen die Variable nicht zur Verfügung steht. Welches Kom-mando können Sie auf der übergeordneten Shell ausführen, damit die Variableund ihr Inhalt für Subshells verfügbar wird?

A: set http_proxy

B: env -u http_proxy

C: let http_proxy

D: export http_proxy

E: unset http_proxy

Frage 4:

Die Variablen a und b enthalten jeweils einen numerischen Wert. Sie wollen diebeiden Werte addieren und in der Variablen c zusammenführen. Welches Kom-mando können Sie verwenden?

A: let c=$a+$b

B: c=$a+$b

C: $c=$a+$b

D: let $c=$a+$b

E: let c=a$+b$

466

Fragen

Frage 5:

Sie wollen der Variablen a den Wert 102 zuordnen und für Subshells verfügbarmachen. Welches Kommando werden Sie verwenden?

Frage 6:

Sie haben zu Ihrer Arbeitserleichterung durch die Eingabe des folgenden Kom-mandos einen Alias erstellt:

alias ps="ps -aux"

Nun benötigen Sie den Befehl ps in seiner ursprünglichen Form. Aber immer,wenn Sie ps eingeben, wird der Alias anstatt des Originalbefehls ausgeführt. Wiekönnen Sie das Originalkommando ausführen?

A: set ps

B: let ps

C: do ps

D: sudo ps

E: builtin ps

Frage 7:

Während Ihrer täglichen Arbeit kommt es häufiger vor, dass Sie bestimmte Kom-mandos in immer der gleichen Reihenfolge ausführen müssen. Sie wollen dieseKommandos zusammenfassen, ohne ein Skript zu schreiben. Welchen Befehlkönnen Sie hier zum Einsatz bringen?

A: alias

B: env

C: set

D: function

E: unset

467

Übungsfragen zu LPI 117-102

Antworten und Erklärungen zu den Prüfungsfragen

Hier finden Sie die Erläuterungen zu allen Fragen des zweiten Teils. Sie solltenunbedingt auch die Kommentare zu den falschen Antworten lesen. Einige Faktenwerden hier nicht zufällig mehrfach erwähnt, sondern weil wesentliche Prüfungs-inhalte auf diese Weise besser in Ihrem Gedächtnis haften bleiben.

Frage 1:

C: alias ps="ps -aux" legt den alias ps an. Bei der Eingabe des Kommandos pswird dann stattdessen ps -aux ausgeführt. Es macht natürlich Sinn, dieses Kom-mando in ein Anmeldeskript (z.B. .profile) aufzunehmen.

zu A und B: ps = "ps -aux" und let ps = "ps -aux" sorgen beide dafür, dass dieVariable ps definiert und mit dem Wert »ps -aux« gefüllt wird.

zu D: set ps = "ps -aux" ist falsch. Das Programm set zeigt lediglich die Shell-variablen an.

zu E: alias ps -aux = ps funktioniert nicht. Die Reihenfolge in der Syntax istfalsch.

Frage 2:

B: env -i startet ein Programm in einer von Umgebungsvariablen bereinigtenUmgebung.

zu A: export exportiert Variablen samt ihrem Inhalt in Subshells.

zu C: set -i ist hier das falsche Programm, weil set nur für Shellvariablen zustän-dig ist.

zu D: unset entfernt Werte aus einer angegebenen Variablen.

zu E: clear bereinigt einen Terminalbildschirm.

Frage 3:

D: export http_proxy exportiert die bereits gesetzte Variable in alle Subshells.

zu A: set http_proxy kann Variablen weder setzen, noch exportieren. Lassen Siesich durch den Namen des Kommandos nicht in die Irre führen!

zu B: env -u http_proxy würde die Umgebung für ein Programm um die Variablehttp_proxy reduzieren, wenn es sich um eine Umgebungsvariable handelnwürde.

zu C: let http_proxy ruft lediglich eine Fehlermeldung hervor.

zu E: unset http_proxy setzt die Variable wieder zurück.

502

Antworten und Erklärungen zu den Prüfungsfragen

Frage 4:

A: let c=$a+$b addiert die Werte der Variablen a und b und übergibt das Ergebnisder Addition an die Variable c.

zu B: c=$a+$b übergibt nicht das Ergebnis der Addition an die Variable c, sonderndie Addition als solche. Wenn a=5 und b=7 wären, dann würde c=5+7. Das ist abernicht die Aufgabe.

zu C: $c=$a+$b wird versuchen, den Inhalt der Variablen auszuführen. Es gibt alsolediglich eine Fehlermeldung.

zu D: let $c=$a+$b wird versuchen, dem Inhalt der Variablen c das Ergebnis derAddition von a und b zuzuweisen. Es gibt also auch hier eine Fehlermeldung.

zu E: let c=a$+b$ verursacht auf jeden Fall eine Fehlermeldung, weil die Shellhier die aufeinander folgenden Zeichen $+ als einen fehlerhaften Operator inter-pretieren wird. Die $-Zeichen müssen immer vor die Variable gesetzt werden.

Frage 5:

export a=102 weist der Variablen a den Wert 102 zu und exportiert diese für dieVerwendung in Subshells.

Frage 6:

E: builtin ps sorgt dafür, dass der eingebaute Originalbefehl verwendet wird.

zu A, B und C: set ps, let ps und do ps ergeben in diesem Zusammenhang über-haupt keinen Sinn und können deshalb sofort ausgeschlossen werden.

zu D: sudo ps führt das Kommando als sudo aus, aber eben immer noch den Aliasund nicht den Originalbefehl.

Frage 7:

D: function ist hier das Mittel der Wahl. Mit einer Shellfunktion können Siemehrere Kommandos zu einem Befehl zusammenfassen und auch Parameterübergeben.

zu A: alias hat einen ähnlichen Verwendungszweck, dient aber hauptsächlichdem Abkürzen von langen Kommandos (auch mit Optionen und Parametern).

zu B: env zeigt hauptsächlich die Umgebungsvariablen an.

zu C: set zeigt gesetzte Shellvariablen an.

zu E: unset setzt Variablen zurück.

503

Index

#!/bin/bash 294$? 93, 296$0 296$1 93, 296$2 93, 296$HISTSIZE 93$PS1 93* 144./ 96.bash_history 94.bash_login 291.bash_profile 91, 192, 291.bashrc 90, 291.forward 402.rpmrc 77.Xdefaults 328.xinitrc 328.Xresources 328.xserverrc 328/bin/bash 295/bin/login 48/boot 29, 159/boot/grub/ 62/boot/grub/grub.conf 42/boot/grub/stage2 62/boot/grub2 63/dev 30/dev/cdrom 30/dev/ft0 32/dev/hd 30/dev/hda 30/dev/hda1 31/dev/hda2 31/dev/hda3 31/dev/hda5 31/dev/hdb 30/dev/hdc 30/dev/hdd 30/dev/sd 30/dev/sda 30, 32/dev/sdb 30, 32/dev/st0 32/dev/zero 165/etc/.bashrc 290/etc/aliases 401, 402

/etc/anacron 374/etc/apt/apt.conf 69/etc/apt/sources.list 69/etc/bashrc 90, 291/etc/crontab 370/etc/cups 409/etc/cups/cupsd.conf 409/etc/default/grub 64/etc/default/useradd 362, 365/etc/event.d 53/etc/false 358/etc/fstab 88, 164, 174, 175, 176, 182/etc/group 360, 368, 432/etc/grub.d 64/etc/gshadow 361, 368/etc/host.conf 432/etc/HOSTNAME 430/etc/hostname 430/etc/hosts 431, 432/etc/hosts.allow 448, 453/etc/hosts.deny 448, 453/etc/hotplug 37/etc/inetd.conf 446, 447/etc/init 53/etc/init.d 49, 51, 95/etc/inittab 47, 49, 340/etc/inputrc 292/etc/known_hosts 454/etc/ld.so.cache 65/etc/ld.so.conf 65/etc/localtime 378, 391/etc/logrotate.conf 397/etc/mail 402, 403/etc/mail/access 404/etc/mail/relay-domains 404/etc/manpath.config 98/etc/modprobe.conf 42/etc/modules.conf 42/etc/mtab 179/etc/network/interfaces 434/etc/networks 431/etc/nologin 449, 453/etc/nsswitch.conf 432/etc/ntp.conf 393/etc/ntp.drift 393

535

Index

/etc/passwd 357, 359, 368, 432/etc/printcap 406, 409/etc/profile 90, 94, 192, 291/etc/rc.d 49, 51/etc/rc.d/xfs 334/etc/resolv.conf 431/etc/rpmrc 77/etc/services 414/etc/shadow 189, 359, 368/etc/skel 292, 362/etc/ssh/ssh_config 452/etc/ssh/ssh_host_dsa_key 454/etc/ssh/ssh_host_dsa_key.pub 454/etc/ssh/ssh_host_key 455/etc/ssh/ssh_host_key.pub 455/etc/ssh/ssh_host_rsa_key 455/etc/ssh/ssh_host_rsa_key.pub 455/etc/ssh_known_hosts 453/etc/sshrc 453/etc/sudoers 445/etc/syslog.conf 396/etc/timezone 378, 392/etc/updatedb.conf 206/etc/usbmgr/host 37/etc/usbmgr/preload.conf 36/etc/usbmgr/usbmgr.conf 36/etc/X11/fs/config 334/etc/xinetd.conf 448/etc/xinetd.d 448/etc/yum.conf 82/etc/yum.repos.d 82/home 59/lib/modules 23, 29/proc 33, 158/proc/bus/pci 34/proc/dma 32/proc/interrupts 32/proc/ioports 32/proc/kmsg 399/proc/modules 24, 25/proc/partitions 158/proc/pci 32/proc/scsi 33/proc/swaps 165/sbin/mingetty 48/tmp 59/usl/lib/locale 380/usr 59/usr/bin 296

/usr/lib/rpm 77/usr/lib/rpm/rpmrc 77/usr/lib/rpmrc 77/usr/lib/X11/app-defaults/XTerm 329/usr/sbin 296/usr/share/i18n/SUPPORTED 380/usr/share/zoneinfo 391/usr/src 29/usr/src/ 23/usr/src/linux 29/var 59/var/cache/man 98/var/lib/dpkg/available 68/var/lib/dpkg/info 67/var/lib/dpkg/status 68/var/lib/rpm 77/var/log 397/var/log/mail 405/var/log/messages 44, 397/var/mail 402/var/spool 406/var/spool/cron 372/var/spool/mail 402/var/spool/mqueue 402? 144~./ssh/known_hosts 453~/.bash_login 91, 291~/.bash_logout 292~/.bash_profile 291~/.bashrc 292~/.gnupg 461~/.inputrc 292~/.profile 291~/.ssh/authorized_keys 455~/.ssh/id_dsa 456~/.ssh/id_dsa.pub 456~/.ssh/id_rsa 455~/.ssh/id_rsa.pub 455~/.ssh/ssh_know_hosts 453~/.xinitrc 328

A

Absolute Pfadangaben 113ACL 198Aktive Partition 160Akzent Circumflex 146alias 288Aliase 287

536

Index

alien 75ALTER TABLE 306, 317anacron 374AND 323Änderungszeit 117Anwendungsschicht 413apache2 50append only 194apropos 99, 100, 204apt-cache 74apt-get 69, 71aptitude 73aquota.group 182aquota.user 182Argumente 88ARP 416ARPA 412ARPANET 412Assistive Techniken 341at 373at.allow 374at.deny 375atd 373aterm 329authorized_keys 456auto 179awk 143

B

Backslash 143Barrierefreies Anmelden 342Barrierefreiheit 342Bash 88bash 284bash.bashrc.local 291Baudot, Jean-Maurice-Émile 381Baudot-Code 381Befehls-History 94Bevorzugte Anwendungen 342, 346bg 137Bildschirmlupe 347Bildschirmtastatur 352BIOS 39, 160BIOS-Uhr 391Bootloader 41Boot-Strap-Loader 41, 42, 61Brailledisplay 342, 348Brailleschrift 342

Braillezeile 342BRLTTY 348Broadcastadresse 420builtin 290bunzip2 119, 121bzip2 119, 121

C

case 301cat 102, 128catman 98cd 113CD-ROM 30cfdisk 158chage 365, 440chattr 193chfn 358chgrp 192chmod 187, 188, 190, 294, 295chown 191CIDR 418, 419clear 301, 302Coldplug 37COMMIT 306cp 115cpio 121cpio-Paket 82CREATE DATABASE 309CREATE TABLE 306cron 370cron.allow 374cron.deny 374crond 370crontab 370, 372csh 88, 284CSV 150CTRL-ALT-DEL 49CUPS 407, 409cut 108, 128

D

Data Control Language 306Data Definition Language 306Data Manipulation Language 306Data Query Language 306date 390Dateiattribute 193

537

Index

Dateideskriptoren 125dbus 38DCL 306dd 122, 165DDL 306debugfs 169DEC 325defaults 179DELETE 323depmod 27, 28Desktop Environment 327Device 332df 130, 171dig 425DISPLAY 336Display Manager 327, 339DISTINCT 306dmesg 44DML 306do 297DoD 412DoD Modell 413Dollarzeichen 143Donald Murray 382done 297, 298Doppelkreuz 145dosfsck 167Dotted Quad 416dpkg 67, 69, 75dpkg-reconfigure 71DQL 306DROP 323DROP DATABASE 324DROP TABLE 306, 324Druckfilter 406DSA-Schlüssel 454dselect 69, 71du 172, 173dump 58, 178dumpe2fs 170, 184DVD-Laufwerk 30Dynamic Link Library 65dynamically linked 65

E

e2fsck 167echo 90, 293, 300Echtzeituhr 391

ed 152edquota 184, 185egrep 144, 148EHCI 35Einfügemodus 153elif 301else 301elvis 152emacspeak 353Endzylinder 159env 91, 287esac 301eterm 329Ethernet 413exec 179exim 400, 405expand 104export 92, 286ext2 160, 162, 168ext3 160, 162, 168Eyetracker 344

F

FAT-32 161FDDI 413fdisk 158, 164Festplatte 30fg 137fgrep 148FHS 200fi 301file 124Filesystem Hierarchy Standard 200find 117, 204, 300finger 358Fingerprint 453Firewire 37fmt 104Fontpath 330for 300FQDN 431free 138, 165fsck 167, 168, 177, 178fsck.cramfs 167fsck.ext2 167fsck.ext3 167fsck.jfs 167fsck.minix 167

538

Index

fsck.msdos 167fsck.reiserfs 167fsck.vfat 167fsck.xfs 167fslsfonts 334ftp 428ftp.kernel.org 429function 289Funktionen 289

G

gawk 143gdm 339, 340gdm.conf 340gdmconfig 340GECOS 358Gesten 345GNOME 327, 339Gnopernicus 353GNU 88GNU Privacy Guard 457GnuPG 457GOK 352gpasswd 367GPG 457gpg.conf 461Gpg4win 458Gracetime 181GRANT 306grep 44, 126, 143, 144, 145, 146GROUP 315group 357groupadd 365groupdel 366groupmod 366grpck 369grpconv 368grpquota 179grpunconv 368GRUB 42, 62GRUB 2 63GRUB Stages 62grub.cfg 64grub.conf 63grub-mkconfig 64gshadow 357GTK 329gunzip 119, 121gzip 119

H

hald 38halt 52Hardlimit 181, 184, 441Hardlinks 198Hardware Abstracion Layer 38Hashes 145head 103Headtracker 344hexdump 106hid.o 35Hilfstechnologien 342HISTSIZE 94host 425Host zu Host 413Hostkey 453, 454hosts.allow 453hosts.deny 453Hotkeys 292Hotplug 37hotplug 37HPFS 161http

//lpievent.lpice.eu/ 18//tools.ietf.org/html/rfc791 416//www.denic.de/de/whois/index.jsp 428//www.ntp.org 392

hwclock 391

I

IBM 325ICMP 416iconv 386id_rsa 455id_rsa.pub 456if 301ifconfig 433ifdown 434ifup 434IGMP 413IMAP 401immutable 194inetd 446inetd.conf 447init 46, 47, 49, 52, 129initdefault 47inittab 47

539

Index

Inodes 172Inputdevice 331INSERT 306insmod 25, 26Internetschicht 413IP-Klassen 417IPv4 415, 416IPv6 415, 421IRIX 161ISO 8859 385ISO-8859-1 385

J

jobs 136, 137JOIN 320join 108Joker 118, 144journal 169

K

KDE 327, 339kdm 339, 340kdmrc 340Kernel 22Kernel-Parameter 42Kernel-Ring-Buffer 44KGpg 458kill 134killall 135Klebrige Tasten 342klogd 399klogin 447Kommandomodus 153ksh 88, 284

L

LANG 380LANG=C 380LC_ALL 380ldconfig 65ldd 65LEFT JOIN 320less 127let 293, 294, 297LIMIT 315Link-Layer 413

ln 196, 198, 199locale 380locate 205logger 398Logical Volume Manager 59Logische Volumen 60logrotate 369logrotate.conf 397lp 407lpadmin 410lpc 408, 410lpd 406lpq 407, 410lpr 406, 407, 410lprm 407, 410ls 112lsattr 193lsdel 169lsmod 24, 27, 35lsof 442lspci 33lsusb 35LVM 59, 161

M

mail 300Mail Transfer Agent 400Mail User Agent 400Mail-Aliase 401mailq 403Major Release 23man 99Manpages 97MANPATH 97manpath 98manpath.config 97Master Boot Record 31, 40master.cf 404Maussteuerung 342Maustasten 344MBR 41MDA 400menu.lst 63Metacity 327Metazeichen 143, 147MEZ 391mingetty 48Minor Release 23

540

Index

MIT 325mkdir 116mkdosfs 161mke2fs 162, 163, 170mkfs 161, 162mkfs.cramfs 162mkfs.ext2 161mkfs.ext3 161mkfs.jfs 162mkfs.msdos 161mkfs.ntfs 161mkfs.reiserfs 161mkfs.vfat 161mkfs.xfs 161mkswap 164, 165modinfo 24modprobe 26modprobe.conf 28modprobe.conf.local 28modules.conf 28modules.dep 27, 28Monolithische Kernel 22Morse-Code 381mount 88, 174, 176, 177Mounten 174Mountpoint 175MTA 400MUA 400Murray-Code 382mv 116

N

nano 148netstat 415, 436, 440Netzwerk-Zugriff 413Neustart 52newaliases 402newgrp 367NFS 176nfs 176nfsd 130nice 140, 141nl 104nmap 415, 440noauto 179noexec 179nohup 138nohup.out 138

nosuid 179nouser 179nslookup 425NTFS 161NTP 392ntp.conf 393ntpd 392, 393ntpdc 393ntpq 393

O

od 106OHCI 34Oktett 416Optionen 88Orca 347ORDER BY 306, 315OSPF 416

P

Partition 158, 159Partitionierung 57Partitionstabelle 31, 41, 160passwd 189, 357, 364, 440paste 155Patchlevel 23PATH 90, 287, 296PATH Variable 95PCI Bus 33PCMCIA 37Pearson Vue 17Perl 143PGP 457Physikalische Volumen 60pico 148PID 129, 134, 141PID 1 46ping 423Pipe 125Pipes 127pkg 75postfix 400poweroff 52Power-On-Self-Test 39pr 105Primärschlüssel 310Primary IDE 30

541

Index

Prozesspriorität 140ps 46, 129, 131, 134, 141pstree 46, 131pubring.gpg 461putty 452pwck 368pwconv 368pwd 96, 113pwunconv 368Python 143

Q

qmail 400, 405QT Librarys 329Quellen 29Queue 406Quota 181quota 185quota.group 182quota.user 182quotacheck 182, 183quotaoff 183quotaon 183

R

RAID 59RAW 406read 301Real-Time-Clock 390reboot 52redirect 125regex 143, 144regexp 143, 155regular expression 143Regulärer Ausdruck 149Rekursive Befehlsausführung 96Relative Pfadangaben 114renice 140, 142repquota 185Resolver 433respawn 48REVOKE 306RgbPath 330RIGHT JOIN 321RIP 415rm 117rmdir 117

rmmod 25, 26ro 179ROOLBACK 306Root-Passwort vergessen 43route 434Routing-Tabelle 435RPM 76rpm 75, 78rpm2cpio 78, 82rpmarchive 78rpmbuild 78RPM-Datenbank 79rpmdb 78rpme 78rpmgraph 78rpmheader 78rpmi 78rpmlead 78rpmlocate 78rpmqpack 78rpmquery 78rpmrc 77rpmsign 78rpmsignature 78rpmu 78rpmverify 78RSA-Key 454rsh 88RTC 390, 391Rückgabewerte 296Runlevel 46runlevel 52Runlevel-Wechsel 52rw 179rxvt 329

S

Samuel Morse 381SASL 405Sawfish 327Screen 333Screenreader 341, 347, 353SCSI 158SCSI Laufwerke 30Seahorse 458Secondary IDE 30secring.gpg 461secure deletion 194

542

Index

sed 143, 144, 148, 149SELECT 306, 311semikolonsepariert 150sendmail 400sendmail.cf 403Serverflags 331set 91, 286Setgid 189Setuid 189SGID 189, 299sh 284shadow 357shareable 201Shared Object 65she-bang! 294Shell 88, 284Shell-Variablen 90, 285shift 297shutdown 49, 52, 168SIGCONT 134, 137SIGHUP 133SIGINT 133SIGKILL 133Signale 133SIGSTOP 134SIGTERM 133, 134SIGTSTP 134Skeleton 292slp 75Smarthost 404smbfs 177SMTP-Relay 404socket 440Softlimit 181, 184, 441Softlinks 51, 195sort 106, 128source 294split 107Spooler 406SRI 412SSH 450ssh_config 452ssh_known_hosts 453ssh-add 457ssh-agent 457sshd_config 452ssh-keygen 454sshrc 453stable 23

Standardgateway 421, 435Startprotokollierung 43Startskripte 51startx 328Startzylinder 159stat 197, 199static 201statically linked 65stderr 125stdin 125stdout 125, 127Sticky Bit 190Sticky-Bit 299stream 447Stream Editor 148Stream-Editor 143su 444Subnetzmaske 418Subselects 319Subshell 92, 286Substitution 151Suchmuster 145, 147sudo 444SUID 189, 190, 295suid 179SUID-Bit 299, 440Superblocks 169Superdaemon 446swap 161Swap-Datei 165swapoff 164swapon 164Swap-Partition 164Synopsis 99sysfs 37syslog 395syslogd 395syslog-ng 395systemctl 55Systemd 54Systemzeit 390, 391

T

tac 102tail 103, 398tar 89Tastatursteuerung 342TCP 413, 414

543

Index

TCP/IP 412, 413tcpd 448tcpdchk 447TCP-Wrapper 448tcsh 88tee 128telinit 49, 52telnet 429test 297Textanker 143, 145tgz 75Thomson Prometric 17Tilde 113Timestamp 117Token Ring 413top 132, 140, 141, 142topq 408touch 117tr 110, 127traceroute 423tracetpath 425Transportlayer 413trustedb.gpg 461tsclient 452TTL 424tune2fs 163, 164, 168, 169tzselect 376, 378, 392

U

Übergabevariablen 296UCLA 412UCSB 412udev 38UDP 413, 414UHCI 34ulimit 441umask 188, 192, 193Umgebungsvariablen 90, 285umount 37, 168, 174, 177, 442uname 23, 26, 97undeletable 194unexpand 104Unicode 386uniq 107, 128unmounten 174unset 93, 287, 300unshareable 201UPDATE 306, 314

updatedb 136, 206update-grub2 64Upstart 53uptime 138USB 34USB 1.1 34USB 2.0 34usb-ehci 37usb-ehci.o 35USB-Klassen 35USB-Maus 35USB-Memory-Sticks 35usbmgr 36, 37usbmgr.conf 36usb-ohci 37usb-ohci.o 34usb-storage.o 35usb-uhci 37usb-uhci.o 34user 179useradd 362userdel 363usermod 363users 179usrquota 179UTC 391UTF-8 386

V

variable 201vi 148, 152, 153vile 152vim 152visudo 445vmlinuz 29Volumen-Gruppen 60

W

w 138Warteschlange 406wc 105, 173whatis 99, 204WHERE 311, 312whereis 100, 202which 96, 100, 203while 297whois 427

544

Index

Wildcards 118, 143, 144, 147Window Manager 327

X

X.org 326X11R6 326X11-Tunnel 451xargs 128X-Clients 326X-Consortium 326xdm 339, 340xdm-config 340xdpyinfo 337XF86Config 329X-Fontserver 333XFree86 326xfs 333xhost 335xinetd 447xinetd.conf 448xinit 328xinitrc 328X-Librarys 329

xntpd 393xorg.conf 329X-Server 326xserverrc 328Xsetup 340xterm 329xvidtune 332X-Windows 325, 328xwininfo 336

Y

yank 155yum 77, 82yumdownloader 85

Z

Zeitsynchronisation 392Zeitzone 376zsh 88, 284Zugriffsrechte 186Zugriffszeit 117

545