LINUX - vom PC zur Workstation978-3-642-97575-2/1.pdf · Stefan Strobel Thomas Uhl LlHUH Uom PC 2Ur...
Transcript of LINUX - vom PC zur Workstation978-3-642-97575-2/1.pdf · Stefan Strobel Thomas Uhl LlHUH Uom PC 2Ur...
LINUX - vom PC zur Workstation
Die Autoren Stefan Strobel und Thomas Uhl studieren Medizinische Informatik an der Universitat Heidelberg/ Fachhochschule Heilbronn. Sie betreuen seit langerem die an der Hochschule installierten Workstations und Linux-PCs. In mehreren Vortragen machten sie Linux einer breiten Offentlichkeit bekannt und unterstiitzten dessen Verbreitung.
Stefan Strobel Thomas Uhl
LlHUH
Uom PC 2Ur Workstafton Grundlagen, Installation und praktischer Einsatz
Mit einem Vorwort von Jiirgen Gulbins Zweite, iiberarbeitete und erweiterte Auflage
Springer
Stefan Strobel SchlegelstraBe 19 D-74074 Heilbronn
Thomas Uhl Obere HeerbergstraBe 17 D-97078 Wiirzburg
Die Autoren sind unter der folgenden E-Mail-Adresse zu erreichen: linux@sunl. rz.fh-heilbronn. de
ISBN-13: 978-3-540-58097-3 DOT: 10.1007/978-3-642-97575-2
CIP-Aufnahme beantragt
e-ISBN-13: 978-3-642-97575-2
Dieses Werk ist urheberrechtlich geschutzt. Die dadurch begriindeten Rechte, insbesondere die der Obersetzung, des Nachdrucks, des Vortrags, der Entnahme von Abbildungen und Tabellen, der Funksendung, der Mikroverfilmung oder der Vervielfiiltigung auf anderen Wegen und der Speicherung in Datenverarbeitungsanlagen, bleiben, auch bei nur auszugsweiser Verwertung, vorbehalten. Eine Vervieifliltigung dieses Werkes oder von Teilen dieses Werkes ist auch im Einzelfall nur in den Grenzen der gesetzlichen Bestimmungen des Urheberrechtsgesetzes der Bundesrepublik Deutschland vom 9. September 1965 in der jeweils geltenden Fassung zullissig. Sie ist grundsatzlich vergiitungspflichtig. Zuwiderhandlungen unterliegen den Strafbestimmungen des Urheberrechtsgesetzes.
© Springer-Verlag Berlin Heidelberg 1994, 1995
Die Wiedergabe von Gebrauchsnamen, Handeisnamen, Warenbezeichnungen usw. in diesem Werk berechtigt auch ohne besondere Kennzeichnung nicht zu der Annahme, dafi solche Namen im Sinne der Warenzeichen- und Markenschutz-Gesetzgebung als frei zu betrachten waren und daher von jedermann benutzt werden durften.
Umschlaggestaltung: Kunkel + Lopka, Ilvesheim. Satz: Reproduktionsfertige Vorlage der Autoren. Datenbelichtung, Druck und Bindearbeiten: K. Triltsch, Wurzburg. Gedruckt auf saurefreiem Papier SPIN 10471693 - 33/3142 - 5432 1 0
Vorwort
UNIX hat seine starke Verbreitung, seine Durchdringung des Hochschulbereichs und von dort aus auch der
Forschungsanlagen und der Industrie durch den Umstand erlangt, daB es von AT&T anfanglich relativ frei und in Quellen an aIle Interessenten weitergegeben wurde. Die heutige UNIXFunktionalitat wurde so nicht nur von den AT&T-Entwicklern geschaffen, sondern ebenso von vielen anderen Entwicklern auBerhalb, die das Produkt benutzten und weiterentwickelten -ihre Erweiterungen aber in die AT&T -Entwicklung zUrUckflieBen lieBen. Als Beispiel seien hier nur die Beitrage der University of California at Berkeley angefiihrt. Mit der seit etwa 1983 stattfindenden Kommerzialisierung von UNIX durch AT&T (inzwischen Novell) und den Argumentationsschlachten zwischen den groBen UNIX-Anbietern wie SUN, HP, Digital, IBM, SCO und dem UNIX-Kern-Labor sowie mit den mehr rhetorischen als sachlichen Diskussionen zwischen OSF und dem UNIX-International-Lager wurde diese kreative und kooperative Weiterentwicklung leider zunehmend eingeschrankt, und die UNIX-Quellen sind heute unerschwinglich teuer und faktisch nicht mehr zuganglich. Linux hat dies geandert. Mit Linux wird den interessierten Informatikern und Computeranwendern - und ebenso auch den -Innen - ein System in die Hand gegeben, das diese alte UNIXTradition erneut aufleben liiBt: Linux ist frei verfiigbar und aIle sind herzlich aufgefordert - aber nicht verpflichtet - zu seiner Weiterentwicklung beizutragen. Als ich Aofang 1994 das Vorwort zur ersten Auflage dieses Buches schrieb, begann Linux, da es auf PC-Systemen liiuft, die Arbeitszimmer vieler Studenten v
VI
und Informatik-Interessierten zu erobern. Dieser Siegeszug ist
inzwischen fast vollendet und Linux beginnt immer ernsthafter,
auch im kommerziellen Umfeld eine Rolle zu spielen.
Die inzwischen erreichte Funktionalitat, Vollstandigkeit und
Kompatibilitiit zu kommerziellen Produkten ist beeindruckend,
das Entwicklungstempo so rasant, daB es zuweilen schwer fallt,
jeweils den aktuellen Stand zu kennen. Linux kann sich heute in
vielen Aspekten mit den kommerziellen und realistisch gesehen
proprietaren UNIX-Versionen durchaus messen. An einzelnen
Punkten - z.B. was die Untersttitzung von PC-Karten betrifft -
hat es diese sogar tibertroffen. Was ftir die systemnahen
Programrnierer ein fast unschatzbarer Wert ist - seine Quellen
sind im Gegensatz zu den kommerziellen UNIX -Versionen frei
verfugbar.
Dieses Buch kann mithelfen, diese reiche Quelle an Software fUr
den Anwender und Programrnierer schneller zu erschlieBen, ihm
helfen, sich einen Uberblick zu verschaffen. Es will die durchaus vorhandenen Linux-Manualpages durch eine Ubersicht und durch
zahlreiche Hinweise und Vervollstandigungen erganzen. Es
gestattet der Linux-Anwenderin und dem Linux-Anwender, sich
damit schneller in Linux einzuarbeiten, das System besser zu
nutzen und auch einmal in Bereiche hineinzuschauen, die sie oder
er bisher noch nicht kennt oder gefunden hat.
Insbesondere die Hinweise zur Installation und Administration,
beides ist bisher in UNIX leider von System zu System sehr ver
schieden, dtirften den meisten Linux-Benutzern hilfreich sein. Ais eine Art UNIX-Veteran bin ich freudig tiberrascht, wie mit
Linux, weit tiber anfangliche Begeisterung hinaus, wieder der
Pioniergeist der frtiheren UNIX-Jahre aufersteht und den in vielen
Aspekten unsinnigen, offenen und in Wirklichkeit proprietaren
Diskussionen kommerzieller UNIX-Macher aufzeigt, was
moglich und sinnvoll ist. Mag dieses Buch dazu beitragen.
J. Gulbins
Anmerkung der Autoren
Dieses Buch entstand aus der Erfahrung, die wir durch mehrere gehaltene Vortrage gesammelt haben, und den Fragen, die wir immer wieder zum Thema Linux gestellt bekommen. Es hat sich gezeigt, daB es nieht unbedingt die genaue Kenntnis technischer Details ist, die die Anwender zum Einstieg benotigen, sondem ein breiter Uberblick tiber das Linux-System und die vielen frei verfUgbaren Tools. Daher solI dieses Buch auch keine Referenz darstellen, sondem dem Leser die notigen Grundkenntnisse vermitteln und ihn in die Lage versetzen, selbst weitere Informationsquellen zu erschlieBen. 1m Gegensatz zu vielen anderen Autoren haben wir nieht versucht, die englischen Fachbegriffe ins Deutsche zu tibersetzen, da dies nieht zu einer besseren Verstandlichkeit der Thematik beitragt, sondem eher zu MiBverstandnissen fUhrt. Beispiele hierfiir sind Shell, Filesystem oder Manualpage. Ftir den Umgang mit Linux sind Kenntnisse der tiblichen englischen Begriffe sehr von Nutzen.
Danksagungen
Die Autoren mochten sieh ausdriicklieh bei folgenden Personen bedanken, die tatkraftig zur Entstehung dieses Buches beigetragen haben: Christan Lotz und Henner Zeller, ohne deren Unterstiitzung wir womoglich nie die Zeit gefunden hatten, diese zweite Auflage zu vollenden, Dirk Hofle, Sascha Runge, Rainer Maurer, Maren Mecking und Roland Uhl, die Kritik und Korrekturen beigetragen haben. Besonderer Dank fUr die ausgezeiehnete Unterstiitzung gebtihrt dem Rechenzentrumsleiter der Fachhochschule Heilbronn, Dr. G. Peter, und seinen Mitarbeitem. Herm Gulbins danken wir fUr die Bereitschaft, das Vorwort zu verfassen.
VII
Inhalt
Einleitung ............................................................. 1
1.1 Geschichtliches zu Linux ...................................................... 1
1.2 Versionen ............................................................................. 5
1.3 Features ................................................................................ 6
1.4 UNIX-Entwicklung und Standards ........................................ 7
1.5 Die FSF ................................................................................ 9
1.6 Linux Features im Uberblick .............................................. 11
Grundlagen .......................................................... 13
2.1 Multiuser ............................................................................ 13
2.2 Multitasking ....................................................................... 15
2.3 Memory-Management. ........................................................ 16
2.4 Schalenmodell .................................................................... 16
2.5 Filesysteme ......................................................................... 18
2.6 Gerate ................................................................................. 22
2.7 Shells .................................................................................. 24
2.8 Suchmuster ......................................................................... 37
2.9 Daemons ............................................................................. 40
2.10 Befehlstibersicht ............................................................... 41
Linux Features ..................................................... 43
3.1 Virtuelle Konsolen .............................................................. 43 IX
3.2 Linux-Filesysteme ............................................................... 44
3.3 Datenaustausch .................................................................... 47
3.4 Loadable Modules ............................................................... 50
3.5 Sound .................................................................................. 51
3.6 Alternative Shells ................................................................ 52
3.7 Erweiterte Kommandos ....................................................... 54
Emulatoren .......................................................... 57
4.1 DOS-Emulator ..................................................................... 57
4.2 WINE .................................................................................. 69
4.3 iBCS2 Kompatibilitiit .......................................................... 71
4.4 HP48-Emulator (X48) ......................................................... 75
4.5 IBM 3270-Emulator ............................................................ 76
4.6 Mac-Emulator ..................................................................... 77
Installation .......................................................... 79
5.1 Linux -Distributionen ........................................................... 79
5.2 Bezugsquellen ..................................................................... 83
5.3 Hardware ............................................................................. 86
5.4 Installation .......................................................................... 90
5.5 Erstellen einer Bootdiskette ............................................... 104
5.6 Der Bootmanager .............................................................. 107
Konfiguration .................................................... 113
6.1 Allgemeine Konfiguration ................................................. 113
6.2 Der Kernel. ........................................................................ 117
6.3 Daemons ........................................................................... 124
6.4 Serieller Login ................................................................... 130
6.5 Fax ................................................................................... 130
6.6 Streamer und CD-ROM ..................................................... 132
x
Administration ................................................... 135
7.1 Der Administrator ............................................................. 135
7.2 Der Bootvorgang .............................................................. 136
7.3 Shutdown .......................................................................... 139
7.4 Der Linux -Verzeichnisbaum ............................................. 140
7.5 Benutzer und Gruppen ...................................................... 148
7.6 Shells ................................................................................ 150
7.7 Information der Benutzer .................................................. 151
7.8 Backups ............................................................................ 151
7.9 Filesystem Management ................................................... 152
7.10 Updates ........................................................................... 153
7.11 Bootdisketten .................................................................. 157
X11 ............................................................... 163
8.1 Merkmale ......................................................................... 164
8.2 Aufbau .............................................................................. 167
8.3 X-Resources ..................................................................... 168
8.4 Window-Manager ............................................................. 169
8.5 Toolkits ............................................................................ 173
8.6 XII-Server ....................................................................... 177 8.7 Linux als X-Terminal ....................................................... 177
8.8 XII-Konfiguration ............................................................ 179 8.9 Konfiguration von X-Applikationen .................................. 193
Vernetzung ........................................................ 207
9.1 Netzwerk-Hardware .......................................................... 207
9.2 TCPIIP und Internet... ....................................................... 208
9.3 IP .................................................................................. 211
9.4 Serielle Verbindungen ...................................................... 220
9.5 PPP .................................................................................. 223
9.6 Parallele Verbindung ........................................................ 228
9.7 TCP und UDP ................................................................... 229
9.8 Hostnamen ........................................................................ 231
9.9 UUCP ............................................................................... 236
9.10 RPC ................................................................................ 241 XI
9.11 NIS .................................................................................. 243
9.12 NFS ................................................................................. 243
9.13 Lanmanager ..................................................................... 245
9.14 PC/NFS ........................................................................... 252
9.15 Columbia-Appletalk (CAP) ............................................. 254
9.16 ISODE ............................................................................. 255
9.17 Novell ............................................................................. 255
Netzanwendungen ............................................. 257
10.1 Netzwerk-Daemons ......................................................... 257
10.2 Internet-Daemon (inetd) .................................................. 259
10.3 Telnet .............................................................................. 261
10.4 FTP ................................................................................. 263
10.5 Archie ............................................................................. 265
10.6 Berkeley r-Utilities .......................................................... 267
10.7 Mail ................................................................................. 270
10.8 News ............................................................................... 284
10.9 IRC .................................................................................. 290
10.10 Gopher ........................................................................... 292
10.11 World Wide Web ........................................................... 294
10.12 Netzwerk-Management.. ................................................ 297
Support & Hilfe .................................................. 299
11.1 man, xman ....................................................................... 299
11.2 Info .................................................................................. 303
11.3 Newsgruppen ................................................................... 304
11.4 FAQs und HOWTOs ........................................................ 305
11.5 WWW ............................................................................. 306
11.6 Mailing-Listen ................................................................. 307
11.7 Sonstige Dokumente ........................................................ 308
11.8 Andere Quellen ............................................................... 308
Applikationen .................................................... 311
XII 12.1 Desktop-Umgebung ......................................................... 311
12.2 Editoren .......................................................................... 312
12.3 Grafikprogramme ............................................................ 316
12.4 Textbearbeitung .............................................................. 323
12.5 Multimedia-Umgebung Andrew ...................................... 328
12.6 Datenbanken ................................................................... 330
12.7 Mathematische Anwendungen ......................................... 332
12.8 Simulationen ................................................................... 334
12.9 Spiele .............................................................................. 336
12.10 Sonstiges ....................................................................... 340
GNU Emacs ....................................................... 345
13.1 Uberblick ........................................................................ 345
13.2 Grundbegriffe ................................................................. 347
13.3 Bedienung ....................................................................... 348
13.4 Dokumentation und Hilfe ................................................ 351
13.5 Modes ............................................................................. 354
13.6 Packages und Erweiterungen ......................... , .................. 356
13.7 Emacs-Lisp ..................................................................... 361
13.8 Konfiguration .................................................................. 377
Sprachen & Tools .............................................. 391
14.1 Sprachen ......................................................................... 391
14.2 C-Compiler ..................................................................... 393
14.3 Pascal, Fortran, Simula, Modula-2 .................................. 393
14.4 Lisp/Prolog ..................................................................... 394
14.5 Tcl .................................................................................. 395
14.6 Interface-Builder ............................................................. 403
14.7 Metacard ......................................................................... 405
14.8 awk, gawk ....................................................................... 406
14.9 Perl ................................................................................. 407
14.10 Editoren ........................................................................ 408
14.11 GNU-Debugger (GDB) ................................................. 409
14.12 make-Utility .................................................................. 411
14.13 Imake ............................................................................ 412
14.14 RCS .............................................................................. 413 XIII
14.15 xwpe .............................................................................. 414
14.16 Beispiel ......................................................................... 415
14.17 Portierung ...................................................................... 419
Referenz ............................................................ 425
Anhang .............................................................. 487
16.1 Ubersicht letc-Dateien .................................................... .487
16.2 Ubersicht letc-Verzeichnisse ........................................... .490
16.3 Konfiguration des Kernels .............................................. .491
16.4 Kommerzieller Linux Support ........................................ .493
16.5 Weitere Literatur ............................................................ .495
Index ............................................................... 499
XIV