Inhaltsverzeichnis
... Vorwort zur 5. Auflage ... 15
... Einleitung ... 17
1 ... Die Grundlagen ... 23
1.1 ... Der Aufbau von Mac OS X ... 23
1.2 ... Neuerungen in Mac OS X 10.6 ... 26
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: Synopsis ... 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 ... 43
2.4.10 ... Terminal zurücksetzen ... 44
2.4.11 ... Einstellungen vornehmen und speichern ... 44
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 ... 60
3.3 ... Das GNU-Info-System ... 61
3.4 ... Manchmal vorhanden: HTML-Dokumentation ... 62
4 ... Das BSD-Subsystem ... 65
4.1 ... Die Verzeichnisstruktur ... 66
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 ... 103
5.5.5 ... Prüfsummen mit md5 erstellen ... 104
5.6 ... Dateien und Ordner komprimieren ... 104
5.6.1 ... Komprimieren mit zip ... 104
5.6.2 ... Bündeln und Komprimieren mit tar ... 107
5.6.3 ... Kopieren und Komprimieren mit ditto ... 108
5.7 ... Dateien teilen und zusammenfügen ... 111
5.7.1 ... Teilen mit split ... 111
5.7.2 ... Zusammenführen mit cat ... 112
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 ... 127
6.6 ... Prioritäten setzen ... 129
6.7 ... Signale mit nohup ignorieren ... 131
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 ... 165
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 ... 171
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 ... 180
8.8 ... Die Shell konfigurieren ... 181
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 beispielhafte Voreinstellungsdatei ... 189
8.9 ... Weitere nützliche Befehle ... 190
8.9.1 ... Fenster mit clear löschen ... 190
8.9.2 ... Text mit echo ausgeben ... 190
8.9.3 ... Sprachausgabe mit say ... 190
8.9.4 ... Text mit read eingeben ... 191
8.9.5 ... date ... 192
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 ... 218
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 ... 227
9.4 ... Audio-Dateien abspielen und konvertieren ... 231
10 ... Suchen und Finden mit Spotlight ... 235
10.1 ... Funktionsweise von Spotlight ... 235
10.2 ... Suchen mit mdfind ... 237
10.2.1 ... Optionen von mdfind ... 237
10.2.2 ... Suchergebnisse weiterverarbeiten ... 238
10.2.3 ... Suchkriterien definieren ... 240
10.2.4 ... Metadaten gezielt durchsuchen ... 241
10.2.5 ... Intelligente Ordner und mdfind ... 247
10.3 ... Metadaten mit mdls anzeigen ... 247
10.4 ... Index verwalten ... 252
10.4.1 ... Index löschen und Indexierung unterbinden ... 252
10.4.2 ... Die Importer mit mdimport überblicken ... 254
10.5 ... Dateien mit find suchen ... 257
11 ... Dateisysteme ... 261
11.1 ... Einführung und Grundlagen ... 261
11.1.1 ... Mount Points und Gerätedateien ... 261
11.1.2 ... Partitionsschemata ... 264
11.1.3 ... Einige Besonderheiten von Mac OS X ... 265
11.1.4 ... Unterstützte Dateisysteme ... 267
11.2 ... Informationen über Dateisysteme ... 268
11.2.1 ... Freie Kapazitäten und Platzbedarf ermitteln ... 268
11.2.2 ... Dateizugriffe verfolgen ... 270
11.3 ... Mit Dateisystemen arbeiten ... 273
11.3.1 ... Das Programm diskutil ... 273
11.3.2 ... Unter Mac OS X kaum gebräuchlich: mount ... 283
11.3.3 ... Disk Images und hdiutil ... 284
11.3.4 ... Apple Software Restore (asr) ... 286
11.3.5 ... CDs und DVDs brennen ... 291
11.3.6 ... Dateisysteme reparieren ... 291
11.4 ... Dateisysteme konfigurieren ... 293
11.4.1 ... Eigene Mount Points mit /etc/fstab ... 293
11.4.2 ... Speicherplatz mit quota begrenzen ... 295
12 ... Mac OS X administrieren ... 299
12.1 ... Informationen erhalten: System-Profiler ... 299
12.2 ... Problemen und Vorkommnissen auf der Spur ... 301
12.2.1 ... Protokolle und syslogd ... 301
12.2.2 ... Das Dienstprogramm Konsole und der Befehl syslog ... 303
12.3 ... Programme und Applikationen im Griff ... 305
12.3.1 ... Preferences und /etc ... 305
12.3.2 ... Property-Listen ... 307
12.3.3 ... Die Befehle defaults und PlistBuddy ... 311
12.4 ... Programme installieren und aktualisieren ... 319
12.4.1 ... Packages installieren ... 319
12.4.2 ... Updates am Terminal vornehmen ... 321
12.4.3 ... Quittungen und Protokolle der Installationen ... 324
12.5 ... Systemeinstellungen am Terminal vornehmen ... 326
12.5.1 ... Der Befehl systemsetup ... 327
12.5.2 ... Energie sparen mit pmset ... 329
12.6 ... Startmodus festlegen ... 332
12.7 ... Kernel Extensions ... 334
12.8 ... Exkurs:
DTrace ... 338
13 ... Die Benutzerverwaltung von Mac OS X 10.6 ... 341
13.1 ... Einführung und Überblick ... 341
13.1.1 ... Aufbau eines Benutzerkontos ... 343
13.1.2 ... Benutzergruppen ... 348
13.2 ... DSLocal verwalten ... 351
13.2.1 ... Die Schnittstelle: dscl ... 351
13.2.2 ... Gruppen überblicken und verwalten ... 354
13.2.3 ... Datensätze exportieren und importieren ... 356
13.2.4 ... Den Superuser root aktivieren und deaktivieren ... 357
13.3 ... Anbindung an Verzeichnisdienste ... 358
13.3.1 ... Verzeichnisdienste konfigurieren ... 359
13.3.2 ... Einige weitere Anmerkungen ... 360
14 ... Der Super-Daemon: launchd ... 363
14.1 ... Aufgaben und Konzepte von launchd ... 363
14.2 ... Fehlersuche und -vermeidung ... 366
14.3 ... LaunchAgents und LaunchDaemons erstellen ... 368
14.3.1 ... Programm immer aktiv halten ... 370
14.3.2 ... Programm in Intervallen starten ... 372
14.3.3 ... Programm zu einem Zeitpunkt starten ... 373
14.3.4 ... Verzeichnisse überwachen ... 374
14.3.5 ... Weitere Konfigurationen ... 376
14.3.6 ... Verwaltung mit launchctl ... 378
14.3.7 ... Fortgeschrittene Konzepte und weitere Optionen ... 379
14.4 ... Der SystemStarter und die StartupItems ... 381
15 ... Netzwerke konfigurieren ... 385
15.1 ... Einführung und Grundlagen ... 385
15.1.1 ... Protokolle und Verfahren im Hintergrund:
TCP/IP ... 386
15.1.2 ... Domain-Namen und DNS ... 394
15.1.3 ... Ports und Server ... 395
15.1.4 ... Die Aufgaben von Bonjour ... 396
15.2 ... Netzwerke konfigurieren ... 397
15.2.1 ... Umgebungen wählen ... 398
15.2.2 ... Schnittstellen mit networksetup konfigurieren ... 399
15.2.3 ... Weitere Konfigurationen mit systemsetup ... 403
15.2.4 ... AirPort konfigurieren ... 403
15.3 ... Hilfsmittel im Netzwerk ... 405
15.3.1 ... Einen Rechner anpingen ... 405
15.3.2 ... Daten mit whois abfragen ... 406
15.3.3 ... Den Weg mit traceroute verfolgen ... 407
15.3.4 ... Aktuelle Verbindungen einsehen ... 408
15.3.5 ... Verkehr mit tcpdump anzeigen ... 410
15.3.6 ... Portscan mit stroke ... 411
15.3.7 ... Bonjour mit dns-sd ... 412
16 ... Anwendungen im Netzwerk ... 415
16.1 ... Die Secure Shell (SSH) ... 415
16.1.1 ... Rechner fernsteuern ... 416
16.1.2 ... Mit Schlüsseln arbeiten ... 418
16.1.3 ... Verbindungen tunneln ... 423
16.2 ... Dateien übertragen ... 424
16.2.1 ... Downloads mit curl ... 424
16.2.2 ... Dateien über das Netzwerk kopieren ... 427
16.2.3 ... Verzeichnisse im Netzwerk synchronisieren ... 428
16.2.4 ... ftp und sftp am Terminal ... 430
16.3 ... Mit Freigaben arbeiten ... 432
16.3.1 ... Freigaben über das Apple Filing Protocol ... 433
16.3.2 ... Windows-Freigaben über SMB ... 434
16.3.3 ... Freigaben über WebDAV ... 435
16.3.4 ... Freigaben mit dem Network File System ... 436
16.3.5 ... Dateisysteme automatisch einbinden ... 438
16.3.6 ... Erweiterte Dateiattribute und dot_clean ... 443
16.4 ... Simple Network Management Protocol ... 444
16.5 ... Zwei Firewalls ... 448
16.5.1 ... Die Application-Level-Firewall ... 449
16.5.2 ... Der Paketfilter ipfw ... 452
17 ... Server konfigurieren ... 457
17.1 ... Feste IP-Nummern ... 457
17.2 ... Der eigene Mailserver mit Postfix ... 458
17.2.1 ... Postfix mit einem SMTP-Relay einrichten ... 459
17.2.2 ... Postfix mit einer Domain einrichten ... 462
17.3 ... Der Apache Webserver ... 463
17.3.1 ... Grundlegende Konfiguration und Protokolle ... 463
17.3.2 ... Die Seiten der einzelnen Benutzer ... 466
17.3.3 ... Bonjour einsetzen und konfigurieren ... 467
17.3.4 ... PHP aktivieren und konfigurieren ... 468
17.3.5 ... CGI-Skripte aktivieren ... 470
17.4 ... Der MySQL-Datenbankserver ... 471
17.4.1 ... MySQL installieren und einrichten ... 471
17.4.2 ... PHP und MySQL ... 474
17.5 ... Eigene NFS-Freigaben erstellen ... 475
17.6 ... Den FTP-Server eingrenzen ... 477
18 ... CUPS produktiv nutzen ... 481
18.1 ... Konzepte von CUPS ... 481
18.2 ... CUPS einrichten und administrieren ... 483
18.2.1 ... Das Drucksystem konfigurieren ... 483
18.2.2 ... Angeschlossene Drucker verwalten ... 487
18.2.3 ... Dateien ausgeben ... 488
18.2.4 ... PDF-Dateien erzeugen ... 489
19 ... Shell-Skripte ... 493
19.1 ... Erste Schritte: Hallo Welt! ... 494
19.2 ... Shell-Skripte integrieren ... 495
19.3 ... Werte in Variablen ... 496
19.3.1 ... Werte an ein Skript übergeben ... 497
19.3.2 ... Mit Pfadangaben arbeiten ... 498
19.3.3 ... Auf Umgebungsvariablen zugreifen ... 499
19.4 ... Bedingungen und Schleifen ... 500
19.4.1 ... Variablen und Dateien überprüfen ... 500
19.4.2 ... for-Schleifen verwenden ... 504
19.4.3 ... Skript in Funktionen einteilen ... 506
19.5 ... Weitere nützliche Befehle ... 507
19.5.1 ... Auswahl mit select ... 507
19.5.2 ... Pause mit sleep ... 508
19.5.3 ... Protokollieren mit logger ... 508
20 ... Shell-Skripte integrieren ... 509
20.1 ... Shell-Skripte und AppleScript ... 509
20.1.1 ... Die Schnittstelle: do shell script ... 510
20.1.2 ... AppleScript an der Shell ... 512
20.2 ... Shell-Skripte und der Automator ... 512
20.3 ... Shell-Skripte und launchd ... 514
20.4 ... Shell-Skripte beim An- und Abmelden ... 515
21 ... Mac OS X und Open Source ... 521
21.1 ... Einführung ... 521
21.2 ... Programme kompilieren und installieren ... 524
21.2.1 ... configure, make und make install ... 525
21.2.2 ... Pakete mit den MacPorts installieren ... 527
21.3 ... Der X11-Server ... 534
21.3.1 ... X11
nutzen ... 535
21.3.2 ... Fernzugriff über ssh ... 535
... Anhang ... 537
... A Glossar ... 539
... Index ... 545
- Anmelden oder Registrieren um Kommentare zu schreiben














