Inhaltsverzeichnis
Transcription
Inhaltsverzeichnis
INHALTSVERZEICHNIS Inhaltsverzeichnis I System-Administration 8 1 Erste Schritte 9 1.1 Lernziele . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 1.2 Anmelden am System . . . . . . . . . . . . . . . . . . . . . . . . . . 9 1.3 Online-Hilfe verwenden . . . . . . . . . . . . . . . . . . . . . . . . 11 1.3.1 Manual-Pages . . . . . . . . . . . . . . . . . . . . . . . . . . 11 1.3.2 GNU info . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 1.3.3 HOWTOS, Paketdokumentation, Kerneldokumentation . . . . 17 1.4 Tastaturfunktionen der Shell . . . . . . . . . . . . . . . . . . . . . . 19 1.5 Abmelden vom System . . . . . . . . . . . . . . . . . . . . . . . . . 19 1.6 Struktur eines UNIX-Befehls . . . . . . . . . . . . . . . . . . . . . . 20 1.7 Herunterfahren des Systems . . . . . . . . . . . . . . . . . . . . . . 21 1.8 Übungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 1.9 Lösungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 2 Einrichten von Benutzern 29 2.1 Menübasierte Benutzeradministration . . . . . . . . . . . . . . . . . 30 2.2 Die Datei /etc/passwd . . . . . . . . . . . . . . . . . . . . . . . . 31 2.3 Die Datei /etc/shadow . . . . . . . . . . . . . . . . . . . . . . . . 33 2.4 Die Datei /etc/group . . . . . . . . . . . . . . . . . . . . . . . . . 36 2.5 Kommandos zur Benutzer- und Gruppenverwaltung . . . . . . . . . 38 2.6 Die Initialisierungsdateien . . . . . . . . . . . . . . . . . . . . . . . 40 2.7 Privilegierte Kommandoausführung . . . . . . . . . . . . . . . . . . 42 2.7.1 su . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 2.7.2 sudo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 2.8 Wissensfragen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 2.9 Übungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 2.10 Lösungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 1 INHALTSVERZEICHNIS 3 Die bash-Shell 51 3.1 Lernziele . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 3.2 Allgemeines zur Shell . . . . . . . . . . . . . . . . . . . . . . . . . 51 3.2.1 Was ist eine Shell? . . . . . . . . . . . . . . . . . . . . . . . 51 3.2.2 Shell starten . . . . . . . . . . . . . . . . . . . . . . . . . . 53 3.3 Interpretation der Kommandozeile . . . . . . . . . . . . . . . . . . . 54 3.4 Expansion von Dateinamen . . . . . . . . . . . . . . . . . . . . . . . 58 3.5 Variablen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 3.5.1 Vordefinierte Variablen . . . . . . . . . . . . . . . . . . . . . 61 3.5.2 Attribute von Variablen (declare) . . . . . . . . . . . . . . . . 62 3.5.3 Integer-Arithmetik in der bash-Shell . . . . . . . . . . . . . 64 3.6 Maskierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 3.7 Alias-Mechanismus . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 3.8 Der History-Mechanismus . . . . . . . . . . . . . . . . . . . . . . . 68 3.8.1 Editieren zurückliegender Kommandos . . . . . . . . . . . . 70 Setzen von Shell-Optionen . . . . . . . . . . . . . . . . . . . . . . . 70 3.10 Die Initialisierungsdateien beim Start der Shell . . . . . . . . . . . . 71 3.11 Das Wichtigste in Kürze . . . . . . . . . . . . . . . . . . . . . . . . 73 3.12 Tips für die Praxis . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 3.13 Übungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75 3.14 Lösungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 3.9 4 Shell-Programmierung 2 77 4.1 Überblick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77 4.2 Was ist ein Shell-Skript? . . . . . . . . . . . . . . . . . . . . . . . . 77 4.3 Die Schritte zum Erstellen eines Shell-Skripts . . . . . . . . . . . . . 78 4.4 Starten von Shell-Skripts . . . . . . . . . . . . . . . . . . . . . . . . 79 4.5 Das Kommando test . . . . . . . . . . . . . . . . . . . . . . . . . 82 4.5.1 Abfrage von Dateien bzw. Verzeichnissen . . . . . . . . . . . 82 4.5.2 Tests auf Variable bzw. Zeichenketten . . . . . . . . . . . . . 83 4.5.3 Vergleiche von Zahlenwerten . . . . . . . . . . . . . . . . . . 83 4.5.4 Die Verknüpfung verschiedener Tests . . . . . . . . . . . . . 84 INHALTSVERZEICHNIS Beispiele zum Kommando test . . . . . . . . . . . . . . . 84 Schleifen und Kontrollstrukturen . . . . . . . . . . . . . . . . . . . . 86 4.6.1 Bedingte Ausführung: Die if-Anweisung . . . . . . . . . . . 86 4.6.2 Die case-Anweisung . . . . . . . . . . . . . . . . . . . . . 89 4.6.3 Die for-Schleife . . . . . . . . . . . . . . . . . . . . . . . . 91 4.6.4 Die while-Schleife . . . . . . . . . . . . . . . . . . . . . . 94 4.6.5 Die until-Schleife . . . . . . . . . . . . . . . . . . . . . . 94 4.6.6 Die Befehle continue und break . . . . . . . . . . . . . 95 4.6.7 Spezifische Arithmetik der bash-Shell . . . . . . . . . . . . 96 4.7 Temporäre Dateien, das Kommand trap . . . . . . . . . . . . . . . 97 4.8 Positionsparameter . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 4.8.1 Das Kommando set . . . . . . . . . . . . . . . . . . . . . . 99 4.8.2 set zum Setzen von Shell-Optionen . . . . . . . . . . . . . 100 4.8.3 set zum Setzen von Positionsparametern . . . . . . . . . . . 100 4.8.4 set mit Kommandosubstitution . . . . . . . . . . . . . . . . 101 4.5.5 4.6 4.9 Verschieben von Positionsparametern durch shift . . . . . . . . . . 102 4.10 Übungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105 4.11 Lösungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108 5 Starten und Anhalten des Systems 111 5.1 Überblick über den Boot-Vorgang . . . . . . . . . . . . . . . . . . . 111 5.2 Der Bootmanager LILO . . . . . . . . . . . . . . . . . . . . . . . . . 113 5.3 Der Bootmanager GRUB . . . . . . . . . . . . . . . . . . . . . . . . 120 5.4 Runlevel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126 5.5 /etc/inittab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128 5.6 Verteilter Startup-Mechanismus . . . . . . . . . . . . . . . . . . . . 130 5.7 Das Rescue-System . . . . . . . . . . . . . . . . . . . . . . . . . . . 134 5.7.1 Arbeiten mit dem Rettungssystem unter SuSE-Linux: . . . . . 134 5.7.2 Arbeiten mit dem Rettungssystem unter Fedora/RedHat-Linux: 135 5.8 Wissensfragen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136 5.9 Übungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 5.10 Lösungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138 3 INHALTSVERZEICHNIS 6 Fehlerüberwachung 6.1 Der syslog-Daemon . . . . . . . . . . . . . . . . . . . . . . . . . 141 6.2 Andere Protokolldateien . . . . . . . . . . . . . . . . . . . . . . . . 144 6.3 Remote-Logging . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144 6.4 Rotation von Logdateien . . . . . . . . . . . . . . . . . . . . . . . . 145 6.5 Wissensfragen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147 6.6 Übungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149 6.7 Lösungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150 7 Kommandos zu bestimmten Zeiten starten (at) 151 7.1 Überblick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151 7.2 Benutzung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152 7.3 Wissensfragen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155 7.4 Übungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157 7.5 Lösungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158 8 Zeitgesteuerte Arbeiten mit cron 159 8.1 cron-Daemon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159 8.2 Benutzerinterface crontab . . . . . . . . . . . . . . . . . . . . . . 162 8.3 anacron . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163 8.4 Wissensfragen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165 8.5 Übungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167 8.6 Lösungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168 9 Datensicherung 4 141 169 9.1 Lernziele . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169 9.2 Einführung in die Datensicherung . . . . . . . . . . . . . . . . . . . 169 9.3 Datensicherung mit tar . . . . . . . . . . . . . . . . . . . . . . . . 170 9.3.1 Daten archivieren . . . . . . . . . . . . . . . . . . . . . . . . 171 9.3.2 Restaurieren mit tar . . . . . . . . . . . . . . . . . . . . . . 172 9.3.3 Inhaltsverzeichnis des Archivs anzeigen . . . . . . . . . . . . 173 9.3.4 Rücksicherung von Archiven . . . . . . . . . . . . . . . . . . 173 INHALTSVERZEICHNIS 9.4 9.5 Datensicherung mit dump und restore . . . . . . . . . . . . . . . 174 9.4.1 Daten sichern, restaurieren, Archivinhalte anzeigen . . . . . . 174 9.4.2 Inkrementale Backups . . . . . . . . . . . . . . . . . . . . . 175 9.4.3 Backup-Strategien . . . . . . . . . . . . . . . . . . . . . . . 179 Datensicherung mit cpio . . . . . . . . . . . . . . . . . . . . . . . 181 9.5.1 Daten mit cpio archivieren . . . . . . . . . . . . . . . . . . 181 9.5.2 Restaurieren mit cpio 9.5.3 Directorybäume mit cpio kopieren . . . . . . . . . . . . . . 184 . . . . . . . . . . . . . . . . . . . . 182 9.6 Verzeichnisse spiegeln mit rsync . . . . . . . . . . . . . . . . . . . 185 9.7 Das Wichtigste in Kürze . . . . . . . . . . . . . . . . . . . . . . . . 187 9.8 Tips für die Praxis . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189 9.9 Übungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193 9.10 Lösungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194 10 NTP — Zeitsynchronisation übers Internet 197 10.1 Überblick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197 10.2 NTP-Modi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198 10.3 Stratum-Konzept . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200 10.4 Linux-NTP-Konfiguration . . . . . . . . . . . . . . . . . . . . . . . 201 10.4.1 Die Hauptkonfigurationsdatei /etc/ntp.conf . . . . . . . . 202 10.5 Einige Beispielszenarios . . . . . . . . . . . . . . . . . . . . . . . . 205 10.5.1 Lokaler Timeserver mit undisziplinierter Rechner-Uhr . . . . 205 10.5.2 Lokaler Timeserver mit öffentlichen NTP-Servern als Referenz 206 10.5.3 Eigener Stratum-1-Server mit DCF77 . . . . . . . . . . . . . 207 10.5.4 Timeserver mit Broadcast und authentifizierten Clients . . . . 210 10.6 Konfigurationen testen . . . . . . . . . . . . . . . . . . . . . . . . . 211 10.7 Wissensfragen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214 10.8 Übungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217 10.9 Lösungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218 10.10Querverweise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222 11 Generierung eines neuen Kernels 223 5 INHALTSVERZEICHNIS 11.1 Linux-Kernel und Versionsnummern . . . . . . . . . . . . . . . . . . 223 11.2 Methoden zur Kernelkonfiguration (bis Kernel 2.4) . . . . . . . . . . 225 11.3 Methoden zur Kernelkonfiguration (ab Kernel 2.6) . . . . . . . . . . 229 11.4 Kernel-Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230 11.4.1 Module von Hand laden/entfernen . . . . . . . . . . . . . . . 230 11.4.2 Module automatisch laden/entfernen . . . . . . . . . . . . . . 232 11.4.3 Module schon während des Bootens laden . . . . . . . . . . . 232 11.5 Kernel-Optimierung . . . . . . . . . . . . . . . . . . . . . . . . . . 234 11.6 Wissensfragen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235 11.7 Übungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237 11.8 Lösungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238 12 Druckerkonfiguration und Benutzung 239 12.1 Lernziele . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239 12.2 Drucken unter UNIX . . . . . . . . . . . . . . . . . . . . . . . . . . 240 12.3 Verwalten von Druckaufträgen . . . . . . . . . . . . . . . . . . . . . 241 12.3.1 Druckauftrag starten . . . . . . . . . . . . . . . . . . . . . . 241 12.3.2 Standarddrucker . . . . . . . . . . . . . . . . . . . . . . . . 242 12.3.3 Informationen zu Druckern und Aufträgen . . . . . . . . . . . 243 12.3.4 Löschen von Druckaufträgen . . . . . . . . . . . . . . . . . . 244 12.3.5 Druckersteuerung mit lpc (BSD) . . . . . . . . . . . . . . . 244 12.4 Druckerkonfiguration . . . . . . . . . . . . . . . . . . . . . . . . . . 246 12.4.1 Mit SuSE-Linux . . . . . . . . . . . . . . . . . . . . . . . . 246 12.4.2 Mit Fedora/RedHat . . . . . . . . . . . . . . . . . . . . . . . 249 12.4.3 Von Hand: Der Line-Printer Daemon des BSD-Drucksystems 251 12.5 Das Wichtigste in Kürze . . . . . . . . . . . . . . . . . . . . . . . . 254 12.6 Tips für die Praxis . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255 12.7 Übungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257 12.8 Lösungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258 13 Drucken im Netz 259 13.1 Konfiguration mit den Administrationstools . . . . . . . . . . . . . . 260 6 INHALTSVERZEICHNIS 13.1.1 SuSE-YaST2 . . . . . . . . . . . . . . . . . . . . . . . . . . 260 13.1.2 Fedora/RedHat Druckerkonfiguration . . . . . . . . . . . . . 262 13.2 Konfiguration von Hand . . . . . . . . . . . . . . . . . . . . . . . . 263 13.2.1 Druckerfilter . . . . . . . . . . . . . . . . . . . . . . . . . . 264 13.3 Übungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265 13.4 Lösungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266 II Anhang A Die LPI-Prüfungen – Stufe 1 267 268 A.1 Details für Prüfung 101 (Allgemeines Linux, Teil I) . . . . . . . . . . 269 A.2 Beispiels-Prüfungsaufgaben für das Examen 101 . . . . . . . . . . . 275 A.3 Details für die Prüfung 102 (Allgemeines Linux, Teil II) . . . . . . . 278 A.4 Beispiels-Prüfungsaufgaben für das Examen 102 . . . . . . . . . . . 284 B Literaturhinweise 289 C Stichwortverzeichnis 293 7