Inhaltsverzeichnis

Alle Kapitel aufklappen
Alle Kapitel zuklappen
Vorwort zur 6. Auflage
15
Einleitung
17
TEIL I Eine Welt unter dem Wasser
21
1 Die Grundlagen
23
1.1 Der Aufbau von OS X 10.7
23
1.2 Neuerungen in OS X 10.7
27
1.3 Xcode installieren
27
2 Erste Schritte mit dem Terminal
29
2.1 Die Shell und der Prompt
30
2.2 Der erste Befehl
31
2.3 Hintergründe zu UNIX-Befehlen
32
2.3.1 Was sind UNIX-Befehle?
32
2.3.2 Grundlegender Befehlsaufbau
33
2.4 Effizient mit dem Terminal arbeiten
35
2.4.1 Sonderzeichen maskieren
35
2.4.2 Das Terminal und die Zwischenablage
36
2.4.3 Drag & Drop
37
2.4.4 Fenstergruppen und Tabs
38
2.4.5 Anzeige teilen
40
2.4.6 Automatische Vervollständigung
41
2.4.7 Zeilenpuffer und Befehlsverlauf
42
2.4.8 Mit Servern verbinden
43
2.4.9 Befehle abbrechen
44
2.4.10 Terminal zurücksetzen
45
2.4.11 Einstellungen vornehmen und speichern
45
3 Die Dokumentationen
53
3.1 Kurze Informationen
53
3.1.1 Für Eilige: »whatis«
53
3.1.2 Pfad ermitteln: »which«
54
3.1.3 Direkte Befehlseingabe und die Option -h
54
3.2 Im Detail: die Manpages
55
3.2.1 Gliederung und Themen
57
3.2.2 Manpages drucken
60
3.2.3 Zusammenhänge mit »apropos«
61
3.3 Das GNU-Info-System
61
3.4 Manchmal vorhanden: HTML-Dokumentation
63
4 Das BSD-Subsystem
65
4.1 Die Verzeichnisstruktur
66
TEIL II Arbeiten mit dem Terminal
69
5 Dateien und Verzeichnisse
71
5.1 Einige Dinge vorab
71
5.2 Navigation im Dateisystem
72
5.2.1 Ortsbestimmung mit »pwd«
72
5.2.2 Verzeichnisse wechseln mit »cd«
73
5.2.3 Verzeichnisse mit »ls« anzeigen
74
5.3 Grundlegende Befehle
77
5.3.1 Verzeichnisse erzeugen mit »mkdir«
77
5.3.2 Kopieren mit »cp«
78
5.3.3 Verschieben und Umbenennen mit »mv«
80
5.3.4 Löschen mit »rm«, »srm« und »rmdir«
81
5.4 Weitere Konzepte
84
5.4.1 Symbolische und feste Links
84
5.4.2 Schützen und Verstecken mit File-Flags
87
5.4.3 Erweiterte Dateiattribute
90
5.5 Tipps und Tricks
95
5.5.1 Schneller mit Joker-Zeichen
95
5.5.2 Mit »file« den Dateityp herausfinden
99
5.5.3 Statt Doppelklick: »open«
100
5.5.4 Änderungsdatum mit »touch« manipulieren
102
5.5.5 Prüfsummen mit »md5« erstellen
103
5.6 Dateien und Ordner komprimieren
104
5.6.1 Komprimieren mit »zip«
104
5.6.2 Bündeln und Komprimieren mit »tar«
106
5.6.3 Kopieren und Komprimieren mit »ditto«
108
5.7 Dateien teilen und zusammenfügen
110
5.7.1 Teilen mit »split«
110
5.7.2 Zusammenführen mit »cat«
111
6 Prozesse und ihr Management
113
6.1 Grundlagen
113
6.2 Prozesse und Dienste im Hintergrund
115
6.3 Aktive Prozesse anzeigen
121
6.4 Systemauslastung überblicken
125
6.5 Prozesse beenden
126
6.6 Prioritäten setzen
129
6.7 Signale mit »nohup« ignorieren
130
7 Benutzer und ihre Rechte
133
7.1 Einführung
133
7.2 Rechte verstehen und zuweisen
134
7.2.1 POSIX-Rechte
135
7.2.2 Besitzer und Gruppe ändern
140
7.2.3 Besonderheiten im Finder
141
7.2.4 Access Control Lists
142
7.3 Weitere Verfahren und Methoden
153
7.3.1 SUID und SGID
153
7.3.2 Das Sticky Bit
154
7.4 Benutzer am Terminal wechseln
155
7.4.1 Wer bin ich?
155
7.4.2 Dauerhafter Benutzerwechsel
155
7.4.3 Befehl als Superuser »root« ausführen
156
8 Effizient mit der Shell arbeiten
161
8.1 Ausgaben umleiten und speichern
162
8.1.1 STDIN, STDOUT und STDERR
162
8.1.2 Befehle verschachteln
164
8.1.3 Daten in und aus der Zwischenablage
165
8.2 Befehle im Hintergrund ausführen
166
8.3 Befehle verketten
168
8.4 Die History der Shell
168
8.5 Nützliche Tastenkombinationen
170
8.6 Klammernexpansion nutzen
170
8.7 Umgebungsvariablen
172
8.7.1 Aufgaben, Zweck und Einsatz
172
8.7.2 Gängige Umgebungsvariablen
176
8.7.3 Die »PATH«-Variable ändern
177
8.7.4 Umgebungsvariablen mit »environment.plist« definieren
179
8.8 Die Shell konfigurieren
180
8.8.1 Die Konfigurationsdateien
181
8.8.2 Der maßgeschneiderte Prompt
183
8.8.3 Aliasse definieren und Funktionen erklären
186
8.8.4 Farbige Anzeige mit »ls«
188
8.8.5 Eine Beispiel-Voreinstellungsdatei
188
8.9 Weitere nützliche Befehle
189
8.9.1 Fenster mit »clear« löschen
189
8.9.2 Text mit »echo« ausgeben
189
8.9.3 Sprachausgabe mit »say«
190
8.9.4 Text mit »read« eingeben
191
8.9.5 date
191
9 Produktiv am Terminal arbeiten
193
9.1 Texte bearbeiten, anzeigen und konvertieren
193
9.1.1 Texte anzeigen
194
9.1.2 Der Editor »nano«
199
9.1.3 Der Editor vi(m)
202
9.1.4 Text mit »grep« finden
205
9.1.5 Reguläre Ausdrücke
207
9.1.6 Texte konvertieren mit »textutil«
210
9.1.7 Kleine Helfer im Alltag
217
9.2 Bildbearbeitung am Terminal
220
9.2.1 Scriptable Image Processing System – SIPS
220
9.2.2 Bildschirmfotos erstellen
225
9.3 Datenbanken mit SQLite
226
9.4 Audio-Dateien abspielen und konvertieren
230
10 Suchen und Finden mit Spotlight
233
10.1 Funktionsweise von Spotlight
233
10.2 Suchen mit »mdfind«
234
10.2.1 Optionen von »mdfind«
235
10.2.2 Suchergebnisse weiterverarbeiten
236
10.2.3 Suchkriterien definieren
237
10.2.4 Metadaten gezielt durchsuchen
239
10.2.5 Intelligente Ordner und »mdfind«
244
10.3 Metadaten mit mdls anzeigen
245
10.4 Index verwalten
250
10.4.1 Index löschen und Indexierung unterbinden
250
10.4.2 Die Importer mit »mdimport« überblicken
251
10.5 Dateien mit »find« suchen
255
11 Dateisysteme
259
11.1 Einführung und Grundlagen
259
11.1.1 Mount Points und Gerätedateien
259
11.1.2 Partitionsschemata
262
11.1.3 Einige Besonderheiten von OS X 10.7
263
11.1.4 Unterstützte Dateisysteme
265
11.2 Informationen über Dateisysteme
266
11.2.1 Freie Kapazitäten und Platzbedarf ermitteln
266
11.2.2 Dateizugriffe verfolgen
268
11.3 Mit Dateisystemen arbeiten
271
11.3.1 Das Programm »diskutil«
271
11.3.2 Unter OS X 10.7 kaum gebräuchlich: »mount«
281
11.3.3 Image-Dateien und »hdiutil«
283
11.3.4 CDs und DVDs brennen
284
11.3.5 Dateisysteme prüfen und reparieren
285
11.3.6 Dateisysteme verschlüsseln
286
11.4 Dateisysteme konfigurieren
289
11.4.1 Eigene Mount Points mit /etc/fstab
289
11.4.2 Speicherplatz mit »quota« begrenzen
291
12 OS X 10.7 administrieren
295
12.1 Informationen erhalten: System-Profiler
295
12.2 Problemen und Vorkommnissen auf der Spur
297
12.2.1 Protokolle und »syslogd«
297
12.2.2 Das Dienstprogramm Konsole und der Befehl »syslog«
299
12.3 Programme und Applikationen im Griff
301
12.3.1 Preferences und »/etc«
301
12.3.2 Property-Listen
303
12.3.3 Die Befehle »defaults« und »PlistBuddy«
308
12.4 Programme installieren und aktualisieren
315
12.4.1 Packages installieren
315
12.4.2 Updates am Terminal vornehmen
317
12.4.3 Quittungen und Protokolle der Installationen
319
12.5 Systemeinstellungen am Terminal vornehmen
322
12.5.1 Der Befehl »systemsetup«
322
12.5.2 Energie sparen mit »pmset«
325
12.5.3 Time Machine mit »tmutil« administrieren
328
12.6 Startmodus festlegen
330
12.7 Kernel Extensions
332
12.8 Exkurs: DTrace
336
13 Die Benutzerverwaltung von OS X 10.7
339
13.1 Einführung und Überblick
339
13.1.1 Aufbau eines Benutzerkontos
342
13.1.2 Benutzergruppen
347
13.2 DSLocal verwalten
349
13.2.1 Die Schnittstelle: »dscl«
349
13.2.2 Gruppen überblicken und verwalten
353
13.2.3 Datensätze exportieren und importieren
355
13.2.4 Den Superuser »root« aktivieren und deaktivieren
356
13.3 Anbindung an Verzeichnisdienste
357
13.3.1 Verzeichnisdienste konfigurieren
358
13.3.2 Einige weitere Anmerkungen
359
14 Der Super-Daemon: »launchd«
361
14.1 Aufgaben und Konzepte von »launchd«
361
14.2 Fehlersuche und -vermeidung
364
14.3 LaunchAgents und LaunchDaemons erstellen
366
14.3.1 Programm immer aktiv halten
368
14.3.2 Programm in Intervallen starten
370
14.3.3 Programm zu einem Zeitpunkt starten
370
14.3.4 Verzeichnisse überwachen
372
14.3.5 Weitere Konfigurationen
373
14.3.6 Verwaltung mit »launchctl«
375
14.3.7 Fortgeschrittene Konzepte und weitere Optionen
376
14.4 Der SystemStarter und die StartupItems
378
15 CUPS produktiv nutzen
379
15.1 Konzepte von CUPS
379
15.2 CUPS einrichten und administrieren
381
15.2.1 Das Drucksystem konfigurieren
381
15.2.2 Angeschlossene Drucker verwalten
385
15.2.3 Dateien ausgeben
386
15.2.4 PDF-Dateien erzeugen
388
TEIL III Vernetztes Arbeiten
389
16 Netzwerke konfigurieren
391
16.1 Einführung und Grundlagen
391
16.1.1 Protokolle und Verfahren im Hintergrund: TCP/IP
392
16.1.2 Domain-Namen und DNS
400
16.1.3 Ports und Server
401
16.1.4 Die Aufgaben von Bonjour
402
16.2 Netzwerkschnittstellen konfigurieren
403
16.2.1 Umgebungen wählen
403
16.2.2 Schnittstellen mit »networksetup« konfigurieren
405
16.2.3 Weitere Konfigurationen mit systemsetup
409
16.2.4 AirPort konfigurieren
409
16.3 Hilfsmittel im Netzwerk
411
16.3.1 Einen Rechner anpingen
411
16.3.2 Daten mit »whois« abfragen
412
16.3.3 Den Weg mit »traceroute« verfolgen
413
16.3.4 Aktuelle Verbindungen einsehen
414
16.3.5 Verkehr mit »tcpdump« anzeigen
416
16.3.6 Portscan mit »stroke«
417
16.3.7 Bonjour mit »dns-sd«
418
17 Anwendungen im Netzwerk
421
17.1 Die Secure Shell (SSH)
421
17.1.1 Rechner fernsteuern
422
17.1.2 Mit Schlüsseln arbeiten
424
17.1.3 Verbindungen tunneln
429
17.2 Dateien übertragen
430
17.2.1 Downloads mit »curl«
430
17.2.2 Dateien über das Netzwerk kopieren
434
17.2.3 Verzeichnisse im Netzwerk synchronisieren
435
17.2.4 »ftp« und »sftp« am Terminal
436
17.3 Mit Freigaben arbeiten
439
17.3.1 Freigaben über das Apple Filing Protocol
439
17.3.2 Windows-Freigaben über SMB
440
17.3.3 Freigaben über WebDAV
442
17.3.4 Freigaben mit dem Network File System
443
17.3.5 Dateisysteme automatisch einbinden
446
17.3.6 Erweiterte Dateiattribute und »dot_clean«
450
17.4 Simple Network Management Protocol
451
17.5 Bis zu drei Firewalls
456
17.5.1 Die Application-Level-Firewall
457
17.5.2 Der Paketfilter »ipfw«
460
17.5.3 Ausblick: pf
461
18 Server konfigurieren
463
18.1 Feste IP-Adressen
463
18.2 Der eigene Mailserver mit Postfix
464
18.2.1 Postfix mit einem SMTP-Relay einrichten
465
18.2.2 Postfix mit einer Domain einrichten
468
18.3 Der Apache Webserver
469
18.3.1 Grundlegende Konfiguration und Protokolle
469
18.3.2 Die Seiten der einzelnen Benutzer
472
18.3.3 Bonjour einsetzen und konfigurieren
473
18.3.4 PHP aktivieren und konfigurieren
474
18.3.5 CGI-Skripte aktivieren
476
18.4 Der MySQL-Datenbankserver
477
18.4.1 MySQL installieren und einrichten
477
18.4.2 PHP und MySQL
481
18.5 Eigene NFS-Freigaben erstellen
482
18.6 Den FTP-Server eingrenzen
483
TEIL IV Aufgaben automatisieren
485
19 Shell-Skripte
487
19.1 Erste Schritte: Hallo Welt!
488
19.2 Shell-Skripte und die »PATH«-Variable
489
19.3 Werte in Variablen
490
19.3.1 Werte an ein Skript übergeben
491
19.3.2 Mit Pfadangaben arbeiten
492
19.3.3 Auf Umgebungsvariablen zugreifen
493
19.4 Bedingungen und Schleifen
494
19.4.1 Variablen und Dateien überprüfen
494
19.4.2 for-Schleifen verwenden
498
19.4.3 Skript in Funktionen einteilen
500
19.5 Weitere nützliche Befehle
501
19.5.1 Auswahl mit »select«
501
19.5.2 Pause mit »sleep«
501
19.5.3 Protokollieren mit »logger«
502
20 Shell-Skripte integrieren
503
20.1 Shell-Skripte und AppleScript
503
20.1.1 Die Schnittstelle: »do shell script«
504
20.1.2 AppleScript an der Shell
506
20.2 Shell-Skripte und der Automator
507
20.3 Shell-Skripte und »launchd«
508
20.4 Shell-Skripte beim An- und Abmelden
509
TEIL V Eine Welt der offenen Quellen
513
21 OS X 10.7 und Open Source
515
21.1 Einführung
515
21.2 Programme kompilieren und installieren
518
21.2.1 »configure«, »make« und »make install«
519
21.2.2 Pakete mit den MacPorts installieren
521
21.2.3 Software mit Homebrew installieren
527
21.2.4 X11 nutzen
530
21.2.5 Fernzugriff über »ssh«
531
Glossar
533
Index
539