Steffen Wendzel Johannes Plötner
Linux, Ausgabe 2011
Ein Angebot für € 5,99 €
Produktdetails
- Verlag: Galileo Press GmbH
- ISBN-13: 9783836217040
- Artikelnr.: 31176540
- Herstellerkennzeichnung Die Herstellerinformationen sind derzeit nicht verfügbar.
- Vorwort 31
- Über die Autoren 39
- Über dieses Buch 41
TEIL I Einstieg in Linux 47
1 Einleitung 49
1.1 Warum Linux? 49
1.2 Grundbegriffe: Kernel, Distributionen, Derivate 50
1.3 Die Entstehungsgeschichte von Linux 53
1.4 Linux und BSD: Unterschiede und Gemeinsamkeiten 61
1.5 Informationsquellen 66
1.6 Zusammenfassung 68
1.7 Aufgaben 68
2 Die Installation 69
2.1 Installationsvorbereitungen 69
2.2 Installation von Ubuntu 74
2.3 Installation von openSUSE (KDE-Live-CD) 78
2.4 Installation von Fedora (Live-Install) 80
2.5 Installation von Slackware-Linux 81
2.6 Installation von OpenBSD 84
2.7 Linux bzw. BSD starten 89
2.8 Zusammenfassung 89
3 Erste Schritte 91
3.1 Der Bootvorgang 91
3.2 Anmelden 92
3.3 Erste Schritte mit KDE 93
3.4 Erste Schritte mit GNOME 97
3.5 Zusammenfassung 99
3.6 Aufgaben 99
4 Linux als Workstation für Einsteiger 101
4.1 Mit Office arbeiten 101
4.2 Im Internet surfen: Browser 111
4.3 E-Mails empfangen und senden 114
4.4 Zusammenfassung 117
TEIL II Grundlagen 119
5 Der Kernel 121
5.1 Grundlagen 122
5.2 Aufgaben eines Betriebssystems 136
5.3 Prozesse, Tasks und Threads 140
5.4 Das Speichermanagement 156
5.5 Eingabe und Ausgabe 170
5.6 Zusammenfassung 181
5.7 Aufgaben 181
6 Die Grundlagen aus Anwendersicht 183
6.1 Die Unix-Philosophie 183
6.2 Der erste Kontakt mit dem System 190
6.3 Bewegen in der Shell 201
6.4 Arbeiten mit Dateien 204
6.5 Der Systemstatus 207
6.6 Hilfe 208
6.7 Zusammenfassung 212
6.8 Aufgaben 212
TEIL III Die Shell 213
7 Die Shell 215
7.1 Was ist eine Shell? 215
7.2 Welche Shells gibt es? 218
7.3 Welche Shell für dieses Buch? 220
7.4 Die Konsolen 221
7.5 screen 221
7.6 Die Shell anwenden 223
7.7 Grundlagen der Shellnutzung 225
7.8 Ein- und Ausgabeumlenkung 242
7.9 Pipes 246
7.10 Subshells und Kommandogruppen 249
7.11 Effektives Arbeiten mit der Bash 250
7.12 xargs 254
7.13 Zusammenfassung 255
7.14 Aufgaben 255 8 Reguläre Ausdrücke 257
8.1 Aufbau von regulären Ausdrücken 259
8.2 Der Stream-Editor sed 261
8.3 grep 269
8.4 awk 272
8.5 Zusammenfassung 300
8.6 Aufgaben 301
9 Konsolentools 303
9.1 head, tail und nl -- den Dateiinhalt zeigen 303
9.2 column -- Ausgaben tabellenartig formatieren 304
9.3 colrm -- Spalten entfernen 305
9.4 cut, paste, tac und tr -- den Dateiinhalt ändern 307
9.5 sort und uniq -- sortiert und einzigartig 308
9.6 wc -- Dateiinhalt zählen 309
9.7 Dateien finden mit find 310
9.8 split -- Dateien aufspalten 313
9.9 Midnight Commander (mc) 314
9.10 Spezielle Tools 316
9.11 Zusammenfassung 321
9.12 Aufgaben 321
10 Die Editoren 323
10.1 Anforderungen an Editoren 324
10.2 vi 326
10.3 vim 332
10.4 Emacs 333
10.5 Der Editor "ed" 338
10.6 Editoren in der Shell 344
10.7 Zusammenfassung 344
10.8 Aufgaben 344
11 Shellskriptprogrammierung mit der bash 345
11.1 Das erste Shellskript 346
11.2 Kommentare 347
11.3 Rechnen in der Shell 347
11.4 Arrays 349
11.5 Bedingte Anweisungen 351
11.6 Schleifen 356
11.7 Menüs mit select 361
11.8 break 362
11.9 Funktionen 363
11.10 Temporäre Dateien 367
11.11 Syslog-Meldungen via Shell 369
11.12 Zusammenfassung 369
11.13 Aufgaben 370
12 Die C-Shell 373
12.1 Einleitende Anmerkungen 373
12.2 Die C-Shell starten 374
12.3 Kommentare in der C-Shell 374
12.4 Ausgabeumlenkung und Eingabeumlenkung 375
12.5 Pipes 375
12.6 Variablen 376
12.7 Funktionen gibt es nicht 378
12.8 Bedingte Anweisungen und Schleifen 379
12.9 Benutzereingaben 384
12.10 Zusammenfassung 385
12.11 Aufgaben 385
TEIL IV System- & Netzwerkadministration 387
13 Benutzerverwaltung 389
13.1 Benutzer in Unix 389
13.2 Benutzer anlegen, ändern und löschen 394
13.3 Benutzer und Gruppen 403
13.4 Als anderer Benutzer arbeiten 409
13.5 NIS/NIS+ 412
13.6 LDAP 415
13.7 Zusammenfassung 425
13.8 Aufgaben 425
14 Grundlegende Verwaltungsaufgaben 427
14.1 Rechteverwaltung 427
14.2 Softwareinstallation 437
14.3 Tätigkeiten automatisieren 466
14.4 Logging 473
14.5 Dateisystemverwaltung 485
14.6 Kernel kompilieren 503
14.7 Kernelmodule verwalten 511
14.8 Linux' SysRq 516
14.9 Lokalisierung 518
14.10 Zusammenfassung 523
14.11 Aufgaben 524
15 Netzwerkgrundlagen 527
15.1 Grundlegendes zu TCP/IP 527
15.2 Grundlegendes Netzwerk-Setup 531
15.3 Grundlagen des Routings 543
15.4 Netzwerkverbindungen 549
15.5 Mit Linux ins Internet 559
15.6 Zusammenfassung 569
15.7 Aufgaben 569
16 Anwendersoftware für das Netzwerk 571
16.1 Telnet 571
16.2 Die R-Tools 574
16.3 FTP 575
16.4 Browser für die Konsole 578
16.5 Mailprogramme 579
16.6 Client-NTP-Konfiguration 586
16.7 IRC-Clients 587
16.8 Das Usenet 588
16.9 RSS 593
16.10 Zusammenfassung 595
16.11 Aufgaben 595
17 Netzwerkdienste 597
17.1 inetd und xinetd 597
17.2 Standarddienste 602
17.3 DHCP 605
17.4 NNTP-Server 608
17.5 Network File System 612
17.6 Der FTP-Dienst 616
17.7 Samba 620
17.8 Zusammenfassung 625
17.9 Aufgaben 626
18 Mailserver unter Linux 627
18.1 Mailserver in Theorie und Praxis 627
18.2 SMTP-Server mit Exim 634
18.3 POP3/IMAP-Server mit Courier 642
18.4 Zusammenfassung 643 19 LAMP & Co. 645
19.1 Apache 645
19.2 MySQL 655
19.3 PHP 659
19.4 Zusammenfassung 669
19.5 Aufgaben 669
20 DNS-Server 671
20.1 Die Serversoftware wählen 671
20.2 BIND aufsetzen 671
20.3 djbdns 674
20.4 DNS-Tools 677
20.5 Zusammenfassung 683
20.6 Aufgaben 683
21 Secure Shell 685
21.1 Das Protokoll 686
21.2 Konfiguration eines OpenSSH-Servers 687
21.3 SSH nutzen 690
21.4 Zusammenfassung 698
21.5 Aufgaben 698
TEIL V Die grafische Oberfläche 699
22 Die grafische Oberfläche 701
22.1 Geschichtliches 701
22.2 Und so funktioniert's 702
22.3 Weitere Standardtools für X11 707
22.4 Konfiguration 708
22.5 /etc/X11/xorg.conf 712
22.6 Treiber für Nvidia- und ATI-Karten 719
22.7 3D-Desktop und Transparenz 722
22.8 Window-Manager und Desktops 722
22.9 Grafischer Login 725
22.10 Tuning 725
22.11 Becoming Root 728
22.12 Zusammenfassung 729
22.13 Aufgabe 729
23 Window-Manager und Desktops 731
23.1 Das KDE-Projekt 731
23.2 GNOME 737
23.3 XFCE 739
23.4 LXDE 740
23.5 WindowMaker 740
23.6 Weitere Window-Manager 741
23.7 Zusammenfassung 745
23.8 Aufgaben 746
24 X11-Programme 747
24.1 Textsatz mit LaTeX 747
24.2 Editoren 758
24.3 Grafikprogramme 760
24.4 Bild- und Dokumentbetrachter 764
24.5 Chatprogramme 766
24.6 Weitere nützliche Programme 767
24.7 Zusammenfassung 772
24.8 Aufgaben 772
25 Multimedia und Spiele 775
25.1 Grundlagen zu "Multimedia" 775
25.2 Audio 776
25.3 Audiowiedergabe 780
25.4 Video 784
25.5 Flash 789
25.6 Installation einer TV-Karte 790
25.7 Webcams und Webcam-Software 791
25.8 Drucken mit CUPS 794
25.9 Scannen mit SANE 798
25.10 Spiele 800
25.11 Zusammenfassung 807
25.12 Aufgaben 807
TEIL VI Systeminterna 809
26 Prozesse und IPC 811
26.1 Prozessarten 812
26.2 Prozesse in der Shell 813
26.3 Prozesse und Signale 817
26.4 Prozesse finden und verarbeiten 821
26.5 Prozesse, Scheduling und Prioritäten 829
26.6 IPC im Detail 833
26.7 Zusammenfassung 843
26.8 Aufgaben 844
27 Bootstrap und Shutdown 845
27.1 Was ist der Bootstrap-Vorgang? 845
27.2 Hardwareboot 845
27.3 Bootcode 846
27.4 Bootmanager 848
27.5 Startphase des Kernels 852
27.6 init 857
27.7 Upstart 869
27.8 getty 871
27.9 login 873
27.10 System-Shutdown 874
27.11 Zusammenfassung 877
27.12 Aufgaben 877
28 Dateisysteme 879
28.1 Der Aufbau von Speichermedien 879
28.2 Dateisysteme 882
28.3 Dateitypen 894
28.4 Inodes 898
28.5 Administration 901
28.6 Praktische Beispiele 912
28.7 Zusammenfassung 914
28.8 Aufgaben 915
29 Virtualisierung und Emulatoren 917
29.1 Einführung 917
29.2 Wine, Cedega und Crossover 920
29.3 ScummVM 925
29.4 Oldie-Emulatoren und Nostalgie 927
29.5 Hardware-Virtualisierung mit Xen 931
29.6 Hardware-Virtualisierung mit KVM 937
29.7 Zusammenfassung 941
29.8 Aufgaben 941
TEIL VII Programmierung und Sicherheit 943
30 Softwareentwicklung 945
30.1 Interpreter und Compiler 945
30.2 Shared Libraries 952
30.3 Debugging 954
30.4 Profiling 960
30.5 Tracing 962
30.6 Hilfe beim Finden von Bugs 964
30.7 Integrierte Entwicklungsumgebungen 970
30.8 make 972
30.9 Die GNU Autotools 978
30.10 lex/flex und yacc/bison 982
30.11 Unix-Software veröffentlichen 987
30.12 Manpages erstellen 989
30.13 Versionsmanagement 992
30.14 Wichtige Bibliotheken 998
30.15 Zusammenfassung 1001
30.16 Aufgaben 1003
31 Crashkurs in C und Perl 1005
31.1 Die Programmiersprache C -- ein Crashkurs 1005
31.2 Die Skriptsprache Perl 1063
31.3 Zusammenfassung 1081
31.4 Aufgaben 1082
32 Einführung in die Sicherheit 1083
32.1 Sicherheitskonzepte 1083
32.2 Unix und Sicherheit 1083
32.3 Grundlegende Absicherung 1085
32.4 Backups und Datensicherungen 1087
32.5 Updates 1090
32.6 Firewalls 1091
32.7 Proxyserver 1104
32.8 Virtuelle private Netzwerke mit OpenVPN 1112
32.9 Verdeckte Kanäle und Anonymität 1118
32.10 Mails verschlüsseln: PGP und S/MIME 1119
32.11 Trojanische Pferde 1127
32.12 Logging 1128
32.13 Partitionierungen 1128
32.14 Restricted Shells 1129
32.15 Loadable Kernel Modules 1130
32.16 chroot 1131
32.17 Kernel-Erweiterungen und gcc-propolice 1131
32.18 Sichere Derivate und Distributionen 1135
32.19 Zusammenfassung 1137
32.20 Aufgaben 1137
33 Netzwerksicherheit überwachen 1139
33.1 Snort 1140
33.2 Netzwerkmonitoring mit Nagios 1153
33.3 Nmap: Der wichtigste Portscanner 1167
33.4 Nessus: Ein Security-Scanner 1180
33.5 Sniffer 1184
33.6 Zusammenfassung 1186
TEIL VIII Anhang 1187
Anhang 1189
A Lösungen zu den einzelnen Aufgaben 1191
B Kommandoreferenz 1223
C X11-InputDevices 1263
D MBR 1265
E Die Buch-DVDs 1267
F Glossar 1269
G Literatur 1273
Index 1277
- Über die Autoren 39
- Über dieses Buch 41
TEIL I Einstieg in Linux 47
1 Einleitung 49
1.1 Warum Linux? 49
1.2 Grundbegriffe: Kernel, Distributionen, Derivate 50
1.3 Die Entstehungsgeschichte von Linux 53
1.4 Linux und BSD: Unterschiede und Gemeinsamkeiten 61
1.5 Informationsquellen 66
1.6 Zusammenfassung 68
1.7 Aufgaben 68
2 Die Installation 69
2.1 Installationsvorbereitungen 69
2.2 Installation von Ubuntu 74
2.3 Installation von openSUSE (KDE-Live-CD) 78
2.4 Installation von Fedora (Live-Install) 80
2.5 Installation von Slackware-Linux 81
2.6 Installation von OpenBSD 84
2.7 Linux bzw. BSD starten 89
2.8 Zusammenfassung 89
3 Erste Schritte 91
3.1 Der Bootvorgang 91
3.2 Anmelden 92
3.3 Erste Schritte mit KDE 93
3.4 Erste Schritte mit GNOME 97
3.5 Zusammenfassung 99
3.6 Aufgaben 99
4 Linux als Workstation für Einsteiger 101
4.1 Mit Office arbeiten 101
4.2 Im Internet surfen: Browser 111
4.3 E-Mails empfangen und senden 114
4.4 Zusammenfassung 117
TEIL II Grundlagen 119
5 Der Kernel 121
5.1 Grundlagen 122
5.2 Aufgaben eines Betriebssystems 136
5.3 Prozesse, Tasks und Threads 140
5.4 Das Speichermanagement 156
5.5 Eingabe und Ausgabe 170
5.6 Zusammenfassung 181
5.7 Aufgaben 181
6 Die Grundlagen aus Anwendersicht 183
6.1 Die Unix-Philosophie 183
6.2 Der erste Kontakt mit dem System 190
6.3 Bewegen in der Shell 201
6.4 Arbeiten mit Dateien 204
6.5 Der Systemstatus 207
6.6 Hilfe 208
6.7 Zusammenfassung 212
6.8 Aufgaben 212
TEIL III Die Shell 213
7 Die Shell 215
7.1 Was ist eine Shell? 215
7.2 Welche Shells gibt es? 218
7.3 Welche Shell für dieses Buch? 220
7.4 Die Konsolen 221
7.5 screen 221
7.6 Die Shell anwenden 223
7.7 Grundlagen der Shellnutzung 225
7.8 Ein- und Ausgabeumlenkung 242
7.9 Pipes 246
7.10 Subshells und Kommandogruppen 249
7.11 Effektives Arbeiten mit der Bash 250
7.12 xargs 254
7.13 Zusammenfassung 255
7.14 Aufgaben 255 8 Reguläre Ausdrücke 257
8.1 Aufbau von regulären Ausdrücken 259
8.2 Der Stream-Editor sed 261
8.3 grep 269
8.4 awk 272
8.5 Zusammenfassung 300
8.6 Aufgaben 301
9 Konsolentools 303
9.1 head, tail und nl -- den Dateiinhalt zeigen 303
9.2 column -- Ausgaben tabellenartig formatieren 304
9.3 colrm -- Spalten entfernen 305
9.4 cut, paste, tac und tr -- den Dateiinhalt ändern 307
9.5 sort und uniq -- sortiert und einzigartig 308
9.6 wc -- Dateiinhalt zählen 309
9.7 Dateien finden mit find 310
9.8 split -- Dateien aufspalten 313
9.9 Midnight Commander (mc) 314
9.10 Spezielle Tools 316
9.11 Zusammenfassung 321
9.12 Aufgaben 321
10 Die Editoren 323
10.1 Anforderungen an Editoren 324
10.2 vi 326
10.3 vim 332
10.4 Emacs 333
10.5 Der Editor "ed" 338
10.6 Editoren in der Shell 344
10.7 Zusammenfassung 344
10.8 Aufgaben 344
11 Shellskriptprogrammierung mit der bash 345
11.1 Das erste Shellskript 346
11.2 Kommentare 347
11.3 Rechnen in der Shell 347
11.4 Arrays 349
11.5 Bedingte Anweisungen 351
11.6 Schleifen 356
11.7 Menüs mit select 361
11.8 break 362
11.9 Funktionen 363
11.10 Temporäre Dateien 367
11.11 Syslog-Meldungen via Shell 369
11.12 Zusammenfassung 369
11.13 Aufgaben 370
12 Die C-Shell 373
12.1 Einleitende Anmerkungen 373
12.2 Die C-Shell starten 374
12.3 Kommentare in der C-Shell 374
12.4 Ausgabeumlenkung und Eingabeumlenkung 375
12.5 Pipes 375
12.6 Variablen 376
12.7 Funktionen gibt es nicht 378
12.8 Bedingte Anweisungen und Schleifen 379
12.9 Benutzereingaben 384
12.10 Zusammenfassung 385
12.11 Aufgaben 385
TEIL IV System- & Netzwerkadministration 387
13 Benutzerverwaltung 389
13.1 Benutzer in Unix 389
13.2 Benutzer anlegen, ändern und löschen 394
13.3 Benutzer und Gruppen 403
13.4 Als anderer Benutzer arbeiten 409
13.5 NIS/NIS+ 412
13.6 LDAP 415
13.7 Zusammenfassung 425
13.8 Aufgaben 425
14 Grundlegende Verwaltungsaufgaben 427
14.1 Rechteverwaltung 427
14.2 Softwareinstallation 437
14.3 Tätigkeiten automatisieren 466
14.4 Logging 473
14.5 Dateisystemverwaltung 485
14.6 Kernel kompilieren 503
14.7 Kernelmodule verwalten 511
14.8 Linux' SysRq 516
14.9 Lokalisierung 518
14.10 Zusammenfassung 523
14.11 Aufgaben 524
15 Netzwerkgrundlagen 527
15.1 Grundlegendes zu TCP/IP 527
15.2 Grundlegendes Netzwerk-Setup 531
15.3 Grundlagen des Routings 543
15.4 Netzwerkverbindungen 549
15.5 Mit Linux ins Internet 559
15.6 Zusammenfassung 569
15.7 Aufgaben 569
16 Anwendersoftware für das Netzwerk 571
16.1 Telnet 571
16.2 Die R-Tools 574
16.3 FTP 575
16.4 Browser für die Konsole 578
16.5 Mailprogramme 579
16.6 Client-NTP-Konfiguration 586
16.7 IRC-Clients 587
16.8 Das Usenet 588
16.9 RSS 593
16.10 Zusammenfassung 595
16.11 Aufgaben 595
17 Netzwerkdienste 597
17.1 inetd und xinetd 597
17.2 Standarddienste 602
17.3 DHCP 605
17.4 NNTP-Server 608
17.5 Network File System 612
17.6 Der FTP-Dienst 616
17.7 Samba 620
17.8 Zusammenfassung 625
17.9 Aufgaben 626
18 Mailserver unter Linux 627
18.1 Mailserver in Theorie und Praxis 627
18.2 SMTP-Server mit Exim 634
18.3 POP3/IMAP-Server mit Courier 642
18.4 Zusammenfassung 643 19 LAMP & Co. 645
19.1 Apache 645
19.2 MySQL 655
19.3 PHP 659
19.4 Zusammenfassung 669
19.5 Aufgaben 669
20 DNS-Server 671
20.1 Die Serversoftware wählen 671
20.2 BIND aufsetzen 671
20.3 djbdns 674
20.4 DNS-Tools 677
20.5 Zusammenfassung 683
20.6 Aufgaben 683
21 Secure Shell 685
21.1 Das Protokoll 686
21.2 Konfiguration eines OpenSSH-Servers 687
21.3 SSH nutzen 690
21.4 Zusammenfassung 698
21.5 Aufgaben 698
TEIL V Die grafische Oberfläche 699
22 Die grafische Oberfläche 701
22.1 Geschichtliches 701
22.2 Und so funktioniert's 702
22.3 Weitere Standardtools für X11 707
22.4 Konfiguration 708
22.5 /etc/X11/xorg.conf 712
22.6 Treiber für Nvidia- und ATI-Karten 719
22.7 3D-Desktop und Transparenz 722
22.8 Window-Manager und Desktops 722
22.9 Grafischer Login 725
22.10 Tuning 725
22.11 Becoming Root 728
22.12 Zusammenfassung 729
22.13 Aufgabe 729
23 Window-Manager und Desktops 731
23.1 Das KDE-Projekt 731
23.2 GNOME 737
23.3 XFCE 739
23.4 LXDE 740
23.5 WindowMaker 740
23.6 Weitere Window-Manager 741
23.7 Zusammenfassung 745
23.8 Aufgaben 746
24 X11-Programme 747
24.1 Textsatz mit LaTeX 747
24.2 Editoren 758
24.3 Grafikprogramme 760
24.4 Bild- und Dokumentbetrachter 764
24.5 Chatprogramme 766
24.6 Weitere nützliche Programme 767
24.7 Zusammenfassung 772
24.8 Aufgaben 772
25 Multimedia und Spiele 775
25.1 Grundlagen zu "Multimedia" 775
25.2 Audio 776
25.3 Audiowiedergabe 780
25.4 Video 784
25.5 Flash 789
25.6 Installation einer TV-Karte 790
25.7 Webcams und Webcam-Software 791
25.8 Drucken mit CUPS 794
25.9 Scannen mit SANE 798
25.10 Spiele 800
25.11 Zusammenfassung 807
25.12 Aufgaben 807
TEIL VI Systeminterna 809
26 Prozesse und IPC 811
26.1 Prozessarten 812
26.2 Prozesse in der Shell 813
26.3 Prozesse und Signale 817
26.4 Prozesse finden und verarbeiten 821
26.5 Prozesse, Scheduling und Prioritäten 829
26.6 IPC im Detail 833
26.7 Zusammenfassung 843
26.8 Aufgaben 844
27 Bootstrap und Shutdown 845
27.1 Was ist der Bootstrap-Vorgang? 845
27.2 Hardwareboot 845
27.3 Bootcode 846
27.4 Bootmanager 848
27.5 Startphase des Kernels 852
27.6 init 857
27.7 Upstart 869
27.8 getty 871
27.9 login 873
27.10 System-Shutdown 874
27.11 Zusammenfassung 877
27.12 Aufgaben 877
28 Dateisysteme 879
28.1 Der Aufbau von Speichermedien 879
28.2 Dateisysteme 882
28.3 Dateitypen 894
28.4 Inodes 898
28.5 Administration 901
28.6 Praktische Beispiele 912
28.7 Zusammenfassung 914
28.8 Aufgaben 915
29 Virtualisierung und Emulatoren 917
29.1 Einführung 917
29.2 Wine, Cedega und Crossover 920
29.3 ScummVM 925
29.4 Oldie-Emulatoren und Nostalgie 927
29.5 Hardware-Virtualisierung mit Xen 931
29.6 Hardware-Virtualisierung mit KVM 937
29.7 Zusammenfassung 941
29.8 Aufgaben 941
TEIL VII Programmierung und Sicherheit 943
30 Softwareentwicklung 945
30.1 Interpreter und Compiler 945
30.2 Shared Libraries 952
30.3 Debugging 954
30.4 Profiling 960
30.5 Tracing 962
30.6 Hilfe beim Finden von Bugs 964
30.7 Integrierte Entwicklungsumgebungen 970
30.8 make 972
30.9 Die GNU Autotools 978
30.10 lex/flex und yacc/bison 982
30.11 Unix-Software veröffentlichen 987
30.12 Manpages erstellen 989
30.13 Versionsmanagement 992
30.14 Wichtige Bibliotheken 998
30.15 Zusammenfassung 1001
30.16 Aufgaben 1003
31 Crashkurs in C und Perl 1005
31.1 Die Programmiersprache C -- ein Crashkurs 1005
31.2 Die Skriptsprache Perl 1063
31.3 Zusammenfassung 1081
31.4 Aufgaben 1082
32 Einführung in die Sicherheit 1083
32.1 Sicherheitskonzepte 1083
32.2 Unix und Sicherheit 1083
32.3 Grundlegende Absicherung 1085
32.4 Backups und Datensicherungen 1087
32.5 Updates 1090
32.6 Firewalls 1091
32.7 Proxyserver 1104
32.8 Virtuelle private Netzwerke mit OpenVPN 1112
32.9 Verdeckte Kanäle und Anonymität 1118
32.10 Mails verschlüsseln: PGP und S/MIME 1119
32.11 Trojanische Pferde 1127
32.12 Logging 1128
32.13 Partitionierungen 1128
32.14 Restricted Shells 1129
32.15 Loadable Kernel Modules 1130
32.16 chroot 1131
32.17 Kernel-Erweiterungen und gcc-propolice 1131
32.18 Sichere Derivate und Distributionen 1135
32.19 Zusammenfassung 1137
32.20 Aufgaben 1137
33 Netzwerksicherheit überwachen 1139
33.1 Snort 1140
33.2 Netzwerkmonitoring mit Nagios 1153
33.3 Nmap: Der wichtigste Portscanner 1167
33.4 Nessus: Ein Security-Scanner 1180
33.5 Sniffer 1184
33.6 Zusammenfassung 1186
TEIL VIII Anhang 1187
Anhang 1189
A Lösungen zu den einzelnen Aufgaben 1191
B Kommandoreferenz 1223
C X11-InputDevices 1263
D MBR 1265
E Die Buch-DVDs 1267
F Glossar 1269
G Literatur 1273
Index 1277
- Vorwort 31
- Über die Autoren 39
- Über dieses Buch 41
TEIL I Einstieg in Linux 47
1 Einleitung 49
1.1 Warum Linux? 49
1.2 Grundbegriffe: Kernel, Distributionen, Derivate 50
1.3 Die Entstehungsgeschichte von Linux 53
1.4 Linux und BSD: Unterschiede und Gemeinsamkeiten 61
1.5 Informationsquellen 66
1.6 Zusammenfassung 68
1.7 Aufgaben 68
2 Die Installation 69
2.1 Installationsvorbereitungen 69
2.2 Installation von Ubuntu 74
2.3 Installation von openSUSE (KDE-Live-CD) 78
2.4 Installation von Fedora (Live-Install) 80
2.5 Installation von Slackware-Linux 81
2.6 Installation von OpenBSD 84
2.7 Linux bzw. BSD starten 89
2.8 Zusammenfassung 89
3 Erste Schritte 91
3.1 Der Bootvorgang 91
3.2 Anmelden 92
3.3 Erste Schritte mit KDE 93
3.4 Erste Schritte mit GNOME 97
3.5 Zusammenfassung 99
3.6 Aufgaben 99
4 Linux als Workstation für Einsteiger 101
4.1 Mit Office arbeiten 101
4.2 Im Internet surfen: Browser 111
4.3 E-Mails empfangen und senden 114
4.4 Zusammenfassung 117
TEIL II Grundlagen 119
5 Der Kernel 121
5.1 Grundlagen 122
5.2 Aufgaben eines Betriebssystems 136
5.3 Prozesse, Tasks und Threads 140
5.4 Das Speichermanagement 156
5.5 Eingabe und Ausgabe 170
5.6 Zusammenfassung 181
5.7 Aufgaben 181
6 Die Grundlagen aus Anwendersicht 183
6.1 Die Unix-Philosophie 183
6.2 Der erste Kontakt mit dem System 190
6.3 Bewegen in der Shell 201
6.4 Arbeiten mit Dateien 204
6.5 Der Systemstatus 207
6.6 Hilfe 208
6.7 Zusammenfassung 212
6.8 Aufgaben 212
TEIL III Die Shell 213
7 Die Shell 215
7.1 Was ist eine Shell? 215
7.2 Welche Shells gibt es? 218
7.3 Welche Shell für dieses Buch? 220
7.4 Die Konsolen 221
7.5 screen 221
7.6 Die Shell anwenden 223
7.7 Grundlagen der Shellnutzung 225
7.8 Ein- und Ausgabeumlenkung 242
7.9 Pipes 246
7.10 Subshells und Kommandogruppen 249
7.11 Effektives Arbeiten mit der Bash 250
7.12 xargs 254
7.13 Zusammenfassung 255
7.14 Aufgaben 255 8 Reguläre Ausdrücke 257
8.1 Aufbau von regulären Ausdrücken 259
8.2 Der Stream-Editor sed 261
8.3 grep 269
8.4 awk 272
8.5 Zusammenfassung 300
8.6 Aufgaben 301
9 Konsolentools 303
9.1 head, tail und nl -- den Dateiinhalt zeigen 303
9.2 column -- Ausgaben tabellenartig formatieren 304
9.3 colrm -- Spalten entfernen 305
9.4 cut, paste, tac und tr -- den Dateiinhalt ändern 307
9.5 sort und uniq -- sortiert und einzigartig 308
9.6 wc -- Dateiinhalt zählen 309
9.7 Dateien finden mit find 310
9.8 split -- Dateien aufspalten 313
9.9 Midnight Commander (mc) 314
9.10 Spezielle Tools 316
9.11 Zusammenfassung 321
9.12 Aufgaben 321
10 Die Editoren 323
10.1 Anforderungen an Editoren 324
10.2 vi 326
10.3 vim 332
10.4 Emacs 333
10.5 Der Editor "ed" 338
10.6 Editoren in der Shell 344
10.7 Zusammenfassung 344
10.8 Aufgaben 344
11 Shellskriptprogrammierung mit der bash 345
11.1 Das erste Shellskript 346
11.2 Kommentare 347
11.3 Rechnen in der Shell 347
11.4 Arrays 349
11.5 Bedingte Anweisungen 351
11.6 Schleifen 356
11.7 Menüs mit select 361
11.8 break 362
11.9 Funktionen 363
11.10 Temporäre Dateien 367
11.11 Syslog-Meldungen via Shell 369
11.12 Zusammenfassung 369
11.13 Aufgaben 370
12 Die C-Shell 373
12.1 Einleitende Anmerkungen 373
12.2 Die C-Shell starten 374
12.3 Kommentare in der C-Shell 374
12.4 Ausgabeumlenkung und Eingabeumlenkung 375
12.5 Pipes 375
12.6 Variablen 376
12.7 Funktionen gibt es nicht 378
12.8 Bedingte Anweisungen und Schleifen 379
12.9 Benutzereingaben 384
12.10 Zusammenfassung 385
12.11 Aufgaben 385
TEIL IV System- & Netzwerkadministration 387
13 Benutzerverwaltung 389
13.1 Benutzer in Unix 389
13.2 Benutzer anlegen, ändern und löschen 394
13.3 Benutzer und Gruppen 403
13.4 Als anderer Benutzer arbeiten 409
13.5 NIS/NIS+ 412
13.6 LDAP 415
13.7 Zusammenfassung 425
13.8 Aufgaben 425
14 Grundlegende Verwaltungsaufgaben 427
14.1 Rechteverwaltung 427
14.2 Softwareinstallation 437
14.3 Tätigkeiten automatisieren 466
14.4 Logging 473
14.5 Dateisystemverwaltung 485
14.6 Kernel kompilieren 503
14.7 Kernelmodule verwalten 511
14.8 Linux' SysRq 516
14.9 Lokalisierung 518
14.10 Zusammenfassung 523
14.11 Aufgaben 524
15 Netzwerkgrundlagen 527
15.1 Grundlegendes zu TCP/IP 527
15.2 Grundlegendes Netzwerk-Setup 531
15.3 Grundlagen des Routings 543
15.4 Netzwerkverbindungen 549
15.5 Mit Linux ins Internet 559
15.6 Zusammenfassung 569
15.7 Aufgaben 569
16 Anwendersoftware für das Netzwerk 571
16.1 Telnet 571
16.2 Die R-Tools 574
16.3 FTP 575
16.4 Browser für die Konsole 578
16.5 Mailprogramme 579
16.6 Client-NTP-Konfiguration 586
16.7 IRC-Clients 587
16.8 Das Usenet 588
16.9 RSS 593
16.10 Zusammenfassung 595
16.11 Aufgaben 595
17 Netzwerkdienste 597
17.1 inetd und xinetd 597
17.2 Standarddienste 602
17.3 DHCP 605
17.4 NNTP-Server 608
17.5 Network File System 612
17.6 Der FTP-Dienst 616
17.7 Samba 620
17.8 Zusammenfassung 625
17.9 Aufgaben 626
18 Mailserver unter Linux 627
18.1 Mailserver in Theorie und Praxis 627
18.2 SMTP-Server mit Exim 634
18.3 POP3/IMAP-Server mit Courier 642
18.4 Zusammenfassung 643 19 LAMP & Co. 645
19.1 Apache 645
19.2 MySQL 655
19.3 PHP 659
19.4 Zusammenfassung 669
19.5 Aufgaben 669
20 DNS-Server 671
20.1 Die Serversoftware wählen 671
20.2 BIND aufsetzen 671
20.3 djbdns 674
20.4 DNS-Tools 677
20.5 Zusammenfassung 683
20.6 Aufgaben 683
21 Secure Shell 685
21.1 Das Protokoll 686
21.2 Konfiguration eines OpenSSH-Servers 687
21.3 SSH nutzen 690
21.4 Zusammenfassung 698
21.5 Aufgaben 698
TEIL V Die grafische Oberfläche 699
22 Die grafische Oberfläche 701
22.1 Geschichtliches 701
22.2 Und so funktioniert's 702
22.3 Weitere Standardtools für X11 707
22.4 Konfiguration 708
22.5 /etc/X11/xorg.conf 712
22.6 Treiber für Nvidia- und ATI-Karten 719
22.7 3D-Desktop und Transparenz 722
22.8 Window-Manager und Desktops 722
22.9 Grafischer Login 725
22.10 Tuning 725
22.11 Becoming Root 728
22.12 Zusammenfassung 729
22.13 Aufgabe 729
23 Window-Manager und Desktops 731
23.1 Das KDE-Projekt 731
23.2 GNOME 737
23.3 XFCE 739
23.4 LXDE 740
23.5 WindowMaker 740
23.6 Weitere Window-Manager 741
23.7 Zusammenfassung 745
23.8 Aufgaben 746
24 X11-Programme 747
24.1 Textsatz mit LaTeX 747
24.2 Editoren 758
24.3 Grafikprogramme 760
24.4 Bild- und Dokumentbetrachter 764
24.5 Chatprogramme 766
24.6 Weitere nützliche Programme 767
24.7 Zusammenfassung 772
24.8 Aufgaben 772
25 Multimedia und Spiele 775
25.1 Grundlagen zu "Multimedia" 775
25.2 Audio 776
25.3 Audiowiedergabe 780
25.4 Video 784
25.5 Flash 789
25.6 Installation einer TV-Karte 790
25.7 Webcams und Webcam-Software 791
25.8 Drucken mit CUPS 794
25.9 Scannen mit SANE 798
25.10 Spiele 800
25.11 Zusammenfassung 807
25.12 Aufgaben 807
TEIL VI Systeminterna 809
26 Prozesse und IPC 811
26.1 Prozessarten 812
26.2 Prozesse in der Shell 813
26.3 Prozesse und Signale 817
26.4 Prozesse finden und verarbeiten 821
26.5 Prozesse, Scheduling und Prioritäten 829
26.6 IPC im Detail 833
26.7 Zusammenfassung 843
26.8 Aufgaben 844
27 Bootstrap und Shutdown 845
27.1 Was ist der Bootstrap-Vorgang? 845
27.2 Hardwareboot 845
27.3 Bootcode 846
27.4 Bootmanager 848
27.5 Startphase des Kernels 852
27.6 init 857
27.7 Upstart 869
27.8 getty 871
27.9 login 873
27.10 System-Shutdown 874
27.11 Zusammenfassung 877
27.12 Aufgaben 877
28 Dateisysteme 879
28.1 Der Aufbau von Speichermedien 879
28.2 Dateisysteme 882
28.3 Dateitypen 894
28.4 Inodes 898
28.5 Administration 901
28.6 Praktische Beispiele 912
28.7 Zusammenfassung 914
28.8 Aufgaben 915
29 Virtualisierung und Emulatoren 917
29.1 Einführung 917
29.2 Wine, Cedega und Crossover 920
29.3 ScummVM 925
29.4 Oldie-Emulatoren und Nostalgie 927
29.5 Hardware-Virtualisierung mit Xen 931
29.6 Hardware-Virtualisierung mit KVM 937
29.7 Zusammenfassung 941
29.8 Aufgaben 941
TEIL VII Programmierung und Sicherheit 943
30 Softwareentwicklung 945
30.1 Interpreter und Compiler 945
30.2 Shared Libraries 952
30.3 Debugging 954
30.4 Profiling 960
30.5 Tracing 962
30.6 Hilfe beim Finden von Bugs 964
30.7 Integrierte Entwicklungsumgebungen 970
30.8 make 972
30.9 Die GNU Autotools 978
30.10 lex/flex und yacc/bison 982
30.11 Unix-Software veröffentlichen 987
30.12 Manpages erstellen 989
30.13 Versionsmanagement 992
30.14 Wichtige Bibliotheken 998
30.15 Zusammenfassung 1001
30.16 Aufgaben 1003
31 Crashkurs in C und Perl 1005
31.1 Die Programmiersprache C -- ein Crashkurs 1005
31.2 Die Skriptsprache Perl 1063
31.3 Zusammenfassung 1081
31.4 Aufgaben 1082
32 Einführung in die Sicherheit 1083
32.1 Sicherheitskonzepte 1083
32.2 Unix und Sicherheit 1083
32.3 Grundlegende Absicherung 1085
32.4 Backups und Datensicherungen 1087
32.5 Updates 1090
32.6 Firewalls 1091
32.7 Proxyserver 1104
32.8 Virtuelle private Netzwerke mit OpenVPN 1112
32.9 Verdeckte Kanäle und Anonymität 1118
32.10 Mails verschlüsseln: PGP und S/MIME 1119
32.11 Trojanische Pferde 1127
32.12 Logging 1128
32.13 Partitionierungen 1128
32.14 Restricted Shells 1129
32.15 Loadable Kernel Modules 1130
32.16 chroot 1131
32.17 Kernel-Erweiterungen und gcc-propolice 1131
32.18 Sichere Derivate und Distributionen 1135
32.19 Zusammenfassung 1137
32.20 Aufgaben 1137
33 Netzwerksicherheit überwachen 1139
33.1 Snort 1140
33.2 Netzwerkmonitoring mit Nagios 1153
33.3 Nmap: Der wichtigste Portscanner 1167
33.4 Nessus: Ein Security-Scanner 1180
33.5 Sniffer 1184
33.6 Zusammenfassung 1186
TEIL VIII Anhang 1187
Anhang 1189
A Lösungen zu den einzelnen Aufgaben 1191
B Kommandoreferenz 1223
C X11-InputDevices 1263
D MBR 1265
E Die Buch-DVDs 1267
F Glossar 1269
G Literatur 1273
Index 1277
- Über die Autoren 39
- Über dieses Buch 41
TEIL I Einstieg in Linux 47
1 Einleitung 49
1.1 Warum Linux? 49
1.2 Grundbegriffe: Kernel, Distributionen, Derivate 50
1.3 Die Entstehungsgeschichte von Linux 53
1.4 Linux und BSD: Unterschiede und Gemeinsamkeiten 61
1.5 Informationsquellen 66
1.6 Zusammenfassung 68
1.7 Aufgaben 68
2 Die Installation 69
2.1 Installationsvorbereitungen 69
2.2 Installation von Ubuntu 74
2.3 Installation von openSUSE (KDE-Live-CD) 78
2.4 Installation von Fedora (Live-Install) 80
2.5 Installation von Slackware-Linux 81
2.6 Installation von OpenBSD 84
2.7 Linux bzw. BSD starten 89
2.8 Zusammenfassung 89
3 Erste Schritte 91
3.1 Der Bootvorgang 91
3.2 Anmelden 92
3.3 Erste Schritte mit KDE 93
3.4 Erste Schritte mit GNOME 97
3.5 Zusammenfassung 99
3.6 Aufgaben 99
4 Linux als Workstation für Einsteiger 101
4.1 Mit Office arbeiten 101
4.2 Im Internet surfen: Browser 111
4.3 E-Mails empfangen und senden 114
4.4 Zusammenfassung 117
TEIL II Grundlagen 119
5 Der Kernel 121
5.1 Grundlagen 122
5.2 Aufgaben eines Betriebssystems 136
5.3 Prozesse, Tasks und Threads 140
5.4 Das Speichermanagement 156
5.5 Eingabe und Ausgabe 170
5.6 Zusammenfassung 181
5.7 Aufgaben 181
6 Die Grundlagen aus Anwendersicht 183
6.1 Die Unix-Philosophie 183
6.2 Der erste Kontakt mit dem System 190
6.3 Bewegen in der Shell 201
6.4 Arbeiten mit Dateien 204
6.5 Der Systemstatus 207
6.6 Hilfe 208
6.7 Zusammenfassung 212
6.8 Aufgaben 212
TEIL III Die Shell 213
7 Die Shell 215
7.1 Was ist eine Shell? 215
7.2 Welche Shells gibt es? 218
7.3 Welche Shell für dieses Buch? 220
7.4 Die Konsolen 221
7.5 screen 221
7.6 Die Shell anwenden 223
7.7 Grundlagen der Shellnutzung 225
7.8 Ein- und Ausgabeumlenkung 242
7.9 Pipes 246
7.10 Subshells und Kommandogruppen 249
7.11 Effektives Arbeiten mit der Bash 250
7.12 xargs 254
7.13 Zusammenfassung 255
7.14 Aufgaben 255 8 Reguläre Ausdrücke 257
8.1 Aufbau von regulären Ausdrücken 259
8.2 Der Stream-Editor sed 261
8.3 grep 269
8.4 awk 272
8.5 Zusammenfassung 300
8.6 Aufgaben 301
9 Konsolentools 303
9.1 head, tail und nl -- den Dateiinhalt zeigen 303
9.2 column -- Ausgaben tabellenartig formatieren 304
9.3 colrm -- Spalten entfernen 305
9.4 cut, paste, tac und tr -- den Dateiinhalt ändern 307
9.5 sort und uniq -- sortiert und einzigartig 308
9.6 wc -- Dateiinhalt zählen 309
9.7 Dateien finden mit find 310
9.8 split -- Dateien aufspalten 313
9.9 Midnight Commander (mc) 314
9.10 Spezielle Tools 316
9.11 Zusammenfassung 321
9.12 Aufgaben 321
10 Die Editoren 323
10.1 Anforderungen an Editoren 324
10.2 vi 326
10.3 vim 332
10.4 Emacs 333
10.5 Der Editor "ed" 338
10.6 Editoren in der Shell 344
10.7 Zusammenfassung 344
10.8 Aufgaben 344
11 Shellskriptprogrammierung mit der bash 345
11.1 Das erste Shellskript 346
11.2 Kommentare 347
11.3 Rechnen in der Shell 347
11.4 Arrays 349
11.5 Bedingte Anweisungen 351
11.6 Schleifen 356
11.7 Menüs mit select 361
11.8 break 362
11.9 Funktionen 363
11.10 Temporäre Dateien 367
11.11 Syslog-Meldungen via Shell 369
11.12 Zusammenfassung 369
11.13 Aufgaben 370
12 Die C-Shell 373
12.1 Einleitende Anmerkungen 373
12.2 Die C-Shell starten 374
12.3 Kommentare in der C-Shell 374
12.4 Ausgabeumlenkung und Eingabeumlenkung 375
12.5 Pipes 375
12.6 Variablen 376
12.7 Funktionen gibt es nicht 378
12.8 Bedingte Anweisungen und Schleifen 379
12.9 Benutzereingaben 384
12.10 Zusammenfassung 385
12.11 Aufgaben 385
TEIL IV System- & Netzwerkadministration 387
13 Benutzerverwaltung 389
13.1 Benutzer in Unix 389
13.2 Benutzer anlegen, ändern und löschen 394
13.3 Benutzer und Gruppen 403
13.4 Als anderer Benutzer arbeiten 409
13.5 NIS/NIS+ 412
13.6 LDAP 415
13.7 Zusammenfassung 425
13.8 Aufgaben 425
14 Grundlegende Verwaltungsaufgaben 427
14.1 Rechteverwaltung 427
14.2 Softwareinstallation 437
14.3 Tätigkeiten automatisieren 466
14.4 Logging 473
14.5 Dateisystemverwaltung 485
14.6 Kernel kompilieren 503
14.7 Kernelmodule verwalten 511
14.8 Linux' SysRq 516
14.9 Lokalisierung 518
14.10 Zusammenfassung 523
14.11 Aufgaben 524
15 Netzwerkgrundlagen 527
15.1 Grundlegendes zu TCP/IP 527
15.2 Grundlegendes Netzwerk-Setup 531
15.3 Grundlagen des Routings 543
15.4 Netzwerkverbindungen 549
15.5 Mit Linux ins Internet 559
15.6 Zusammenfassung 569
15.7 Aufgaben 569
16 Anwendersoftware für das Netzwerk 571
16.1 Telnet 571
16.2 Die R-Tools 574
16.3 FTP 575
16.4 Browser für die Konsole 578
16.5 Mailprogramme 579
16.6 Client-NTP-Konfiguration 586
16.7 IRC-Clients 587
16.8 Das Usenet 588
16.9 RSS 593
16.10 Zusammenfassung 595
16.11 Aufgaben 595
17 Netzwerkdienste 597
17.1 inetd und xinetd 597
17.2 Standarddienste 602
17.3 DHCP 605
17.4 NNTP-Server 608
17.5 Network File System 612
17.6 Der FTP-Dienst 616
17.7 Samba 620
17.8 Zusammenfassung 625
17.9 Aufgaben 626
18 Mailserver unter Linux 627
18.1 Mailserver in Theorie und Praxis 627
18.2 SMTP-Server mit Exim 634
18.3 POP3/IMAP-Server mit Courier 642
18.4 Zusammenfassung 643 19 LAMP & Co. 645
19.1 Apache 645
19.2 MySQL 655
19.3 PHP 659
19.4 Zusammenfassung 669
19.5 Aufgaben 669
20 DNS-Server 671
20.1 Die Serversoftware wählen 671
20.2 BIND aufsetzen 671
20.3 djbdns 674
20.4 DNS-Tools 677
20.5 Zusammenfassung 683
20.6 Aufgaben 683
21 Secure Shell 685
21.1 Das Protokoll 686
21.2 Konfiguration eines OpenSSH-Servers 687
21.3 SSH nutzen 690
21.4 Zusammenfassung 698
21.5 Aufgaben 698
TEIL V Die grafische Oberfläche 699
22 Die grafische Oberfläche 701
22.1 Geschichtliches 701
22.2 Und so funktioniert's 702
22.3 Weitere Standardtools für X11 707
22.4 Konfiguration 708
22.5 /etc/X11/xorg.conf 712
22.6 Treiber für Nvidia- und ATI-Karten 719
22.7 3D-Desktop und Transparenz 722
22.8 Window-Manager und Desktops 722
22.9 Grafischer Login 725
22.10 Tuning 725
22.11 Becoming Root 728
22.12 Zusammenfassung 729
22.13 Aufgabe 729
23 Window-Manager und Desktops 731
23.1 Das KDE-Projekt 731
23.2 GNOME 737
23.3 XFCE 739
23.4 LXDE 740
23.5 WindowMaker 740
23.6 Weitere Window-Manager 741
23.7 Zusammenfassung 745
23.8 Aufgaben 746
24 X11-Programme 747
24.1 Textsatz mit LaTeX 747
24.2 Editoren 758
24.3 Grafikprogramme 760
24.4 Bild- und Dokumentbetrachter 764
24.5 Chatprogramme 766
24.6 Weitere nützliche Programme 767
24.7 Zusammenfassung 772
24.8 Aufgaben 772
25 Multimedia und Spiele 775
25.1 Grundlagen zu "Multimedia" 775
25.2 Audio 776
25.3 Audiowiedergabe 780
25.4 Video 784
25.5 Flash 789
25.6 Installation einer TV-Karte 790
25.7 Webcams und Webcam-Software 791
25.8 Drucken mit CUPS 794
25.9 Scannen mit SANE 798
25.10 Spiele 800
25.11 Zusammenfassung 807
25.12 Aufgaben 807
TEIL VI Systeminterna 809
26 Prozesse und IPC 811
26.1 Prozessarten 812
26.2 Prozesse in der Shell 813
26.3 Prozesse und Signale 817
26.4 Prozesse finden und verarbeiten 821
26.5 Prozesse, Scheduling und Prioritäten 829
26.6 IPC im Detail 833
26.7 Zusammenfassung 843
26.8 Aufgaben 844
27 Bootstrap und Shutdown 845
27.1 Was ist der Bootstrap-Vorgang? 845
27.2 Hardwareboot 845
27.3 Bootcode 846
27.4 Bootmanager 848
27.5 Startphase des Kernels 852
27.6 init 857
27.7 Upstart 869
27.8 getty 871
27.9 login 873
27.10 System-Shutdown 874
27.11 Zusammenfassung 877
27.12 Aufgaben 877
28 Dateisysteme 879
28.1 Der Aufbau von Speichermedien 879
28.2 Dateisysteme 882
28.3 Dateitypen 894
28.4 Inodes 898
28.5 Administration 901
28.6 Praktische Beispiele 912
28.7 Zusammenfassung 914
28.8 Aufgaben 915
29 Virtualisierung und Emulatoren 917
29.1 Einführung 917
29.2 Wine, Cedega und Crossover 920
29.3 ScummVM 925
29.4 Oldie-Emulatoren und Nostalgie 927
29.5 Hardware-Virtualisierung mit Xen 931
29.6 Hardware-Virtualisierung mit KVM 937
29.7 Zusammenfassung 941
29.8 Aufgaben 941
TEIL VII Programmierung und Sicherheit 943
30 Softwareentwicklung 945
30.1 Interpreter und Compiler 945
30.2 Shared Libraries 952
30.3 Debugging 954
30.4 Profiling 960
30.5 Tracing 962
30.6 Hilfe beim Finden von Bugs 964
30.7 Integrierte Entwicklungsumgebungen 970
30.8 make 972
30.9 Die GNU Autotools 978
30.10 lex/flex und yacc/bison 982
30.11 Unix-Software veröffentlichen 987
30.12 Manpages erstellen 989
30.13 Versionsmanagement 992
30.14 Wichtige Bibliotheken 998
30.15 Zusammenfassung 1001
30.16 Aufgaben 1003
31 Crashkurs in C und Perl 1005
31.1 Die Programmiersprache C -- ein Crashkurs 1005
31.2 Die Skriptsprache Perl 1063
31.3 Zusammenfassung 1081
31.4 Aufgaben 1082
32 Einführung in die Sicherheit 1083
32.1 Sicherheitskonzepte 1083
32.2 Unix und Sicherheit 1083
32.3 Grundlegende Absicherung 1085
32.4 Backups und Datensicherungen 1087
32.5 Updates 1090
32.6 Firewalls 1091
32.7 Proxyserver 1104
32.8 Virtuelle private Netzwerke mit OpenVPN 1112
32.9 Verdeckte Kanäle und Anonymität 1118
32.10 Mails verschlüsseln: PGP und S/MIME 1119
32.11 Trojanische Pferde 1127
32.12 Logging 1128
32.13 Partitionierungen 1128
32.14 Restricted Shells 1129
32.15 Loadable Kernel Modules 1130
32.16 chroot 1131
32.17 Kernel-Erweiterungen und gcc-propolice 1131
32.18 Sichere Derivate und Distributionen 1135
32.19 Zusammenfassung 1137
32.20 Aufgaben 1137
33 Netzwerksicherheit überwachen 1139
33.1 Snort 1140
33.2 Netzwerkmonitoring mit Nagios 1153
33.3 Nmap: Der wichtigste Portscanner 1167
33.4 Nessus: Ein Security-Scanner 1180
33.5 Sniffer 1184
33.6 Zusammenfassung 1186
TEIL VIII Anhang 1187
Anhang 1189
A Lösungen zu den einzelnen Aufgaben 1191
B Kommandoreferenz 1223
C X11-InputDevices 1263
D MBR 1265
E Die Buch-DVDs 1267
F Glossar 1269
G Literatur 1273
Index 1277