Stadtwiki:Portal: Unterschied zwischen den Versionen

Aus dem Stadtwiki Karlsruhe:

Zeile 1: Zeile 1:
  +
{| width="100%"
Debian GNU/Linux Anwenderhandbuch
 
  +
|style="vertical-align:top" |{{Navigationsleiste_Stadtwiki-Einstieg}}
Frank Ronneburg
 
  +
<div style="background:#698fb3;text-align:left;color: #fff;font-weight:bold;font-size:125%;margin: 10px 5px 0px 0; padding: 4px 4px 4px 14px;">Das Stadtwiki</div>
fr@openoffice.de
 
  +
<div style="margin: 0px 5px 5px 0; padding: 0em 1em 1em 1em; border: 1px dotted #698fb3; border-top: 1px solid #698fb3; background-color:#f8fafc;">
Debian GNU/Linux Anwenderhandbuch
 
  +
* [[Stadtwiki|Lexikonartikel "Stadtwiki"]]
von Frank Ronneburg
 
  +
* [[Stadtwiki:Ziele|Ziele des Stadtwikis]]
3.0.0-11 - 21.02.2003
 
  +
* [[Stadtwiki:Übersicht|Übersicht über thematische Inhalte]]
Veröffentlicht 2000, 2001, 2002, 2003
 
  +
* [[Stadtwiki:Unterstützung|Das Stadtwiki unterstützen]]
Copyright © 1999, 2000, 2001, 2002, 2003 von Frank Ronneburg, Berlin, FRG
 
  +
* [[Stadtwiki:Anmeldung|Informationen rund um die Anmeldung]]
Versionsgeschichte
 
  +
* [[Stadtwiki:Administratoren|Administratoren]]
Version 3.0.0-11 21. Februar 2003 Geändert durch: fr
 
  +
* [[Stadtwiki:Impressum|Impressum]]
Version für Debian GNU/Linux 3.0 r0 "woody" - Bugfix Release
 
  +
</div>
Inhaltsverzeichnis
 
  +
<div style="background:#698fb3;text-align:left;color: #fff;font-weight:bold;font-size:125%;margin: 10px 5px 0px 0; padding: 4px 4px 4px 14px;">Richtlinien und Konventionen</div>
Über dieses Buch................................................................................................................................................... i
 
  +
<div style="margin: 0px 5px 5px 0; padding: 0em 1em 1em 1em; border: 1px dotted #698fb3; border-top: 1px solid #698fb3; background-color:#f8fafc;">
Download / Lokale Kopie....................................................................................................................................ii
 
  +
* [[Stadtwiki:Lizenzbestimmungen|Lizenzbestimmungen]]
Copyright und Lizenz.........................................................................................................................................iii
 
  +
* Richtlinien
Unterstützung...................................................................................................................................................... iv
 
  +
** [[Stadtwiki:Richtlinien|Richtlinien]], [[Stadtwiki:Neutraler Standpunkt|Neutraler Standpunkt]], [[Stadtwiki:Wikiquette|Wikiquette - die Umgangsformen im Stadtwiki]], [[Stadtwiki:Urheberrechte beachten|Urheberrecht]], [[Stadtwiki:Löschregeln|Löschregeln]]
1. Linux, Debian, Freie Software?...................................................................................................................... 1
 
  +
* Konventionen
1.1. Was ist GNU/Linux?............................................................................................................................ 1
 
  +
** [[Stadtwiki:Editierhilfe|Editierhilfen und -regeln]], [[Stadtwiki:Guter Artikel|guter Artikel]], [[Stadtwiki:Person|Personen-Artikel]], [[Stadtwiki:Selbstdarsteller|Selbstdarsteller]]
1.1.1. Das GNU Projekt .................................................................................................................... 1
 
  +
</div>
1.1.2. Free Software Foundation ....................................................................................................... 3
 
  +
<div style="background:#698fb3;text-align:left;color: #fff;font-weight:bold;font-size:125%;margin: 10px 5px 0px 0; padding: 4px 4px 4px 14px;">FAQ</div>
1.1.3. Geschichte des Linux Kernels................................................................................................. 3
 
  +
<div style="margin: 0px 5px 5px 0; padding: 0em 1em 1em 1em; border: 1px dotted #698fb3; border-top: 1px solid #698fb3; background-color:#f8fafc;">
1.1.4. Linux oder Minix?................................................................................................................... 6
 
  +
Häufige Fragen und ihre Antworten (FAQ):
1.1.5. Linux ®.................................................................................................................................. 8
 
  +
* [[Stadtwiki:Allgemeine FAQ|Allgemeine Fragen]]
1.1.6. Und dieser Pinguin...? ............................................................................................................. 8
 
  +
* [[Stadtwiki:Qualität|Qualität der Stadtwiki-Inhalte]]
1.2. Was ist Debian GNU?......................................................................................................................... 10
 
  +
* [[Stadtwiki:Technische FAQ|Technische FAQ]]
1.2.1. Der Name „Debian“ .............................................................................................................. 11
 
  +
* [[Stadtwiki:FAQ Rechtliches|Rechtliche FAQ]]
1.2.2. Die Geschichte von Debian................................................................................................... 11
 
  +
* [[Stadtwiki:Sandkasten]] zum Formatierungen testen
1.2.3. Organisation .......................................................................................................................... 17
 
  +
* [[Stadtwiki:Helferlein|MediaWiki-Helferlein]] (Tools zur Software)
1.2.4. Codenamen........................................................................................................................... 18
 
  +
* [[Stadtwiki:Tipps und Tricks]] (mit Vorlagen)
1.2.5. Debian für alle!...................................................................................................................... 18
 
  +
</div>
1.2.6. Vorteile von Debian............................................................................................................... 20
 
  +
<div style="background:#698fb3;text-align:left;color: #fff;font-weight:bold;font-size:125%;margin: 10px 5px 0px 0; padding: 4px 4px 4px 14px;">Aufgaben und Arbeitshilfen</div>
1.2.7. Umfang der Distribution ....................................................................................................... 24
 
  +
<div style="margin: 0px 5px 5px 0; padding: 0em 1em 1em 1em; border: 1px dotted #698fb3; border-top: 1px solid #698fb3; background-color:#f8fafc;">
1.2.8. Auf Debian GNU basierende Distributionen ........................................................................ 24
 
  +
1.2.9. Das Debian GNU Logo......................................................................................................... 25
 
  +
;Aufgaben :
1.3. Debian GNU/Hurd............................................................................................................................. 27
 
  +
* [[Stadtwiki Diskussion:Aufgabenliste|Stadtwiki:Aufgabenliste]] - Wunschzettel für Stadtwiki-Dokumentation/Weiterentwicklung
1.4. Freie Software / Open Source ............................................................................................................. 28
 
  +
* [[Spezial:Wantedpages|Fehlende Artikel im Stadtwiki]]
1.4.1. Open Source Initiative (OSI)................................................................................................. 29
 
  +
* [[Stadtwiki:Gewünschte Bilder|Gewünschte Bilder]], siehe auch [[Stadtwiki:Bild|Bilder]], [[Stadtwiki:Fotografen|Fotografen]]
1.4.1.1. Geschichte der OSI.................................................................................................. 29
 
  +
* [[Stadtwiki:gewünschter Personenartikel|gewünschte Personen]], siehe auch [[Stadtwiki:Person]]
1.4.1.2. Die Definition quelloffener Software ("Open Source Software") ........................... 30
 
  +
* [[Spezial:Maintenance| Wartung]] des Stadtwiki
1.5. SPI - Software in the Public Interest................................................................................................... 31
 
  +
1.6. Wie und wo bekomme ich Debian GNU/Linux?................................................................................ 31
 
  +
; Arbeitshilfen :
1.6.1. Internet ................................................................................................................................. 31
 
  +
* [[Stadtwiki:Hauptseite]] (hier können die Boxen der [[Hauptseite]] bearbeitet werden)
1.6.2. CD-ROMs ............................................................................................................................. 32
 
  +
* [[Stadtwiki:Kategorien]]
1.6.3. Usergroups & Installationspartys .......................................................................................... 32
 
  +
* [[Stadtwiki:Stadtplan]]
1.6.4. Bücher zu Debian GNU/Linux.............................................................................................. 32
 
  +
* [[Stadtwiki:Vorlagen|Vorlagen für Artikel]]
1.7. Informationen im Netz........................................................................................................................ 34
 
  +
* [[Stadtwiki:Index]] - Das Inhaltsverzeichnis für die Stadtwiki:Artikel
1.7.1. Mailinglisten ......................................................................................................................... 34
 
  +
1.7.2. Webseiten .............................................................................................................................. 34
 
  +
; Administratives :
1.7.2.1. debianHELP............................................................................................................. 34
 
  +
* [[Stadtwiki:Löschkandidaten|Artikel zum Löschen]]
1.7.2.2. debianPlanet............................................................................................................. 34
 
  +
*[[Stadtwiki:Artikel zum gleichen Thema|Artikel zum gleichen Thema]]
1.7.2.3. apt-get.org - inoffizielle Debian Pakete ................................................................... 35
 
  +
</div>
1.7.3. IRC ....................................................................................................................................... 35
 
  +
1.7.4. Kommerzieller Support ......................................................................................................... 36
 
  +
2. Installation von Debian GNU/Linux............................................................................................................. 37
 
  +
<!--
2.1. Schnellinstallation in 10 Schritten ...................................................................................................... 37
 
  +
2.2. Update von Debian GNU/Linux 2.1 (slink) auf 2.2......................................................................... 37
 
  +
(rechte Spalte)
2.3. Update von Debian GNU/Linux 2.2 (potato) auf 3.0 ...................................................................... 38
 
  +
2.4. Aktualisieren von Debian GNU/Linux 2.1 ......................................................................................... 39
 
  +
-->
2.5. Aktualisieren von Debian GNU/Linux 2.2 ......................................................................................... 39
 
  +
| width="40%" style="vertical-align:top" |
2.6. Installation von Debian GNU/Linux 3.0............................................................................................. 40
 
  +
2.6.1. Veränderungen im Installations System ................................................................................ 40
 
  +
<div style="background:#698fb3;text-align:left;color: #fff;font-weight:bold;font-size:125%;margin: 10px 5px 0px 0; padding: 4px 4px 4px 14px;">Stadtwiki Aktuell</div>
2.6.2. Neues in der Distribution ...................................................................................................... 41
 
  +
<div style="margin: 0px 5px 5px 0; padding: 0em 1em 1em 1em; border: 1px dotted #698fb3; border-top: 1px solid #698fb3; background-color:#f8fafc;">
2.6.3. Ein erster Start....................................................................................................................... 42
 
  +
{{Hauptseite_Stadtwiki_aktuell}}<p style="font-size:70%; text-align:right;">[{{SERVER}}{{localurl:Vorlage:Hauptseite_Stadtwiki_aktuell|action=edit}} bearbeiten]</p>
2.6.3.1. Bootmedium ............................................................................................................ 42
 
  +
</div>
2.6.4. Das Debian-Installationsprogramm....................................................................................... 44
 
  +
<div style="background:#698fb3;text-align:left;color: #fff;font-weight:bold;font-size:125%;margin: 10px 5px 0px 0; padding: 4px 4px 4px 14px;">Kommunikation</div>
2.6.4.1. Installation des Basissystems .................................................................................. 57
 
  +
<div style="margin: 0px 5px 5px 0; padding: 0em 1em 1em 1em; border: 1px dotted #698fb3; border-top: 1px solid #698fb3; background-color:#f8fafc;">
iii
 
  +
* [[Stadtwiki:Treffen|Treffen]]
2.6.5. Bootloader ............................................................................................................................. 69
 
  +
* [[Stadtwiki:Forum|Stadtwiki-Forum]]
2.6.6. Neustart ................................................................................................................................ 71
 
  +
* [[Stadtwiki:Gästebuch|Gästebuch]]
2.6.7. Fertigstellen der Installation.................................................................................................. 72
 
  +
</div>
2.6.8. Paket Vorschläge und Empfehlungen.................................................................................... 87
 
  +
2.7. Installation von Debian/GNU Hurd .................................................................................................... 88
 
  +
<div style="background:#698fb3;text-align:left;color: #fff;font-weight:bold;font-size:125%;margin: 10px 5px 0px 0; padding: 4px 4px 4px 14px;">Öffentlichkeitsarbeit</div>
2.7.1. Die Installations-CD.............................................................................................................. 88
 
  +
<div style="margin: 0px 5px 5px 0; padding: 0em 1em 1em 1em; border: 1px dotted #698fb3; border-top: 1px solid #698fb3; background-color:#f8fafc;">
2.7.2. Vorbereitungen ...................................................................................................................... 89
 
  +
* [[Stadtwiki:Presse|Presse]] (mit Pressemitteilungen)
2.7.3. Installation unter Linux ......................................................................................................... 89
 
  +
* [[Stadtwiki:Pressespiegel|Pressespiegel]]
2.7.4. Abschluß der Installation ...................................................................................................... 91
 
  +
* [[Stadtwiki:Logo]] <!-- Doppelpunkt statt Bindestrich als Markenzeichen?! -->
3. Betrieb............................................................................................................................................................. 93
 
  +
* [[Stadtwiki:Button|Verlinken auf das Stadtwiki (mit und ohne Button)]]
3.1. Unix-Grundlagen ............................................................................................................................... 93
 
  +
* [[Stadtwiki:T-Shirt]] <!-- Doppelpunkt statt Bindestrich als Markenzeichen?! -->
3.2. Allgemeines zum neuen System ......................................................................................................... 93
 
  +
* [[Stadtwiki:Offlinewerbung]] (Visitenkarten,...)
3.3. Ein Multiuser-, Multitasking-Betriebssystem..................................................................................... 93
 
  +
* Danke an die [[Stadtwiki:Sponsoren|Sponsoren]]
3.4. Anmelden am System ......................................................................................................................... 93
 
  +
</div>
3.5. Anmelden als Superuser (root) ......................................................................................................... 95
 
  +
3.6. Benutzerverwaltung ............................................................................................................................ 95
 
  +
<div style="background:#698fb3;text-align:left;color: #fff;font-weight:bold;font-size:125%;margin: 10px 5px 0px 0; padding: 4px 4px 4px 14px;">Geschichte</div>
3.6.1. Benutzer hinzufügen ............................................................................................................. 96
 
  +
<div style="margin: 0px 5px 5px 0; padding: 0em 1em 1em 1em; border: 1px dotted #698fb3; border-top: 1px solid #698fb3; background-color:#f8fafc;">
3.6.2. Benutzer löschen ................................................................................................................... 97
 
  +
*[[Stadtwiki:Geschichte]] mit Informationen aus dem 1. Stadtwiki.
3.7. Virtuelle Konsolen .............................................................................................................................. 97
 
  +
*[[Stadtwiki:Meilensteine|Meilensteine]]
3.8. System herunterfahren ........................................................................................................................ 98
 
  +
</div>
3.9. Kommandozeile und Dokumentation ................................................................................................. 98
 
  +
3.10. Befehle wiederholen und ändern auf der Kommandozeile............................................................... 99
 
  +
<div style="background:#698fb3;text-align:left;color: #fff;font-weight:bold;font-size:125%;margin: 10px 5px 0px 0; padding: 4px 4px 4px 14px;">Vernetzung mit anderen Wikis</div>
3.10.1. Beschreibung der Kommandozeile...................................................................................... 99
 
  +
<div style="margin: 0px 5px 5px 0; padding: 0em 1em 1em 1em; border: 1px dotted #698fb3; border-top: 1px solid #698fb3; background-color:#f8fafc;">
3.11. Dateien und Verzeichnisse .............................................................................................................. 100
 
  +
* [[Stadtwiki:TourBusHaltestelle|TourBusHaltestelle]] ([[Stadtwiki:TourBusStop|auf Englisch]]): <small>Einstiegsseite für virtuelle Wiki-Touren</small>
3.12. Gruppen und Zugriffsrechte............................................................................................................ 102
 
  +
* [[Stadtwiki:WikiNode|WikiNode]]: <small>Verweise auf andere Stadtwikis und Einstiegsseite von dort zurück</small>
3.12.1. Gruppen............................................................................................................................ 102
 
  +
</div>
3.12.2. Zugriffsrechte .................................................................................................................... 103
 
  +
<div style="background:#698fb3;text-align:left;color: #fff;font-weight:bold;font-size:125%;margin: 10px 5px 0px 0; padding: 4px 4px 4px 14px;">Logbücher und Spezialseiten</div>
3.12.2.1. Einige Beispiele................................................................................................... 104
 
  +
<div style="margin: 0px 5px 5px 0; padding: 0em 1em 1em 1em; border: 1px dotted #698fb3; border-top: 1px solid #698fb3; background-color:#f8fafc;">
3.13. Orientierung innerhalb von Debian ................................................................................................ 106
 
  +
* Logbücher
3.14. Arbeiten mit Dateien – Mini-Workshop ......................................................................................... 106
 
  +
** [[Stadtwiki:Datei-Logbuch|Dateilogbuch]], [[Stadtwiki:Lösch-Logbuch|Löschlogbuch]], [[Stadtwiki:Seitenschutz-Logbuch|Schutzlogbuch]], [[Stadtwiki:Geschützte Seiten|Geschützte Seiten]], [[Stadtwiki:Benutzerblockaden-Logbuch|Blockadelogbuch]]
3.14.1. pwd – print working directory ........................................................................................... 106
 
  +
* Spezialseiten
3.14.2. ls – list............................................................................................................................. 106
 
  +
* [[Spezial:Ipblocklist|Blockierte IP-Adressen]], [[Spezial:Statistics|Statistik]], [[Spezial:Specialpages|weitere Spezialseiten]]
3.14.3. cd - change directory ........................................................................................................ 107
 
  +
</div>
3.14.4. mkdir - make directory..................................................................................................... 107
 
  +
3.14.5. cp - copy ........................................................................................................................... 107
 
  +
<div style="background:#698fb3;text-align:left;color: #fff;font-weight:bold;font-size:125%;margin: 10px 5px 0px 0; padding: 4px 4px 4px 14px;">Technische Informationen</div>
3.14.6. more - Anzeigen von Dateien ........................................................................................... 107
 
  +
<div style="margin: 0px 5px 5px 0; padding: 0em 1em 1em 1em; border: 1px dotted #698fb3; border-top: 1px solid #698fb3; background-color:#f8fafc;">
3.14.7. mv - move .......................................................................................................................... 107
 
  +
* [[Stadtwiki:Software|MediaWiki-Software]]
3.14.8. rm - remove ....................................................................................................................... 108
 
  +
* [[Stadtwiki:Server|Server]]
3.14.9. rmdir - remove directory ................................................................................................. 108
 
  +
* [[Stadtwiki:Domains|Domains]]
3.14.10. Versteckte Dateien (.datei) .......................................................................................... 108
 
  +
* [[Stadtwiki:CSS]] (im Aufbau)
3.14.11. find & locate - Finden von Dateien .......................................................................... 109
 
  +
</div>
3.14.12. gzip - gepackte Dateien ................................................................................................. 110
 
  +
3.14.13. split - geteilte Dateien ................................................................................................. 111
 
  +
<div style="background:#f19000;text-align:left;color: #fff;font-weight:bold;font-size:125%;margin: 10px 5px 0px 0; padding: 4px 4px 4px 14px;">Verein</div>
3.14.14. tar - archivieren von Dateien......................................................................................... 112
 
  +
<div style="margin: 0px 5px 5px 0; padding: 0em 1em 1em 1em; border: 1px dotted #698fb3; border-top: 1px solid #f19000; background-color:#fffbf5;">
3.14.14.1. tar - packen von Dateien.................................................................................. 114
 
  +
Es gibt seit 12. Oktober [[2005]] einen Verein zur Förderung der Stadtwikis: [[Stadtwiki – Gesellschaft zur Förderung regionalen Freien Wissens]].
3.14.14.2. tar - Entpacken von Dateien ............................................................................ 114
 
  +
*[[Verein:Aufnahmeantrag|Mitglied werden]]
3.14.14.3. tar - Komprimieren der Archive ...................................................................... 115
 
  +
</div>
3.14.14.4. tar - Benutzung von Bandlaufwerken / Streamer ............................................ 115
 
  +
|}
3.14.15. file - Dateitypen ........................................................................................................... 115
 
  +
3.15. Einige bash-Funktionen................................................................................................................. 116
 
  +
{{Portale}}
3.15.1. help ................................................................................................................................... 116
 
  +
3.16. Pipes............................................................................................................................................... 117
 
  +
__NOTOC__
3.17. ps und /proc ................................................................................................................................ 118
 
  +
__NOEDITSECTION__
3.18. Links .............................................................................................................................................. 119
 
  +
[[Kategorie:Stadtwiki| Stadtwiki:Portal]]
3.19. vi ................................................................................................................................................... 120
 
3.19.1. vi für Fortgeschrittene ...................................................................................................... 120
 
3.19.1.1. Programstart......................................................................................................... 120
 
iv
 
3.19.1.2. Einstellungen ....................................................................................................... 121
 
3.19.1.3. Dateioperationen.................................................................................................. 121
 
3.19.1.4. Cursorbewegungen .............................................................................................. 121
 
3.19.1.5. Löschen................................................................................................................ 122
 
3.19.1.6. Einfügen und ändern............................................................................................ 123
 
3.19.1.7. Kopieren und einfügen ........................................................................................ 123
 
3.19.1.8. Suchen und ersetzen ............................................................................................ 123
 
3.19.1.9. Verschiedenes ...................................................................................................... 123
 
3.20. Dateisysteme .................................................................................................................................. 124
 
3.20.1. cfdisk und mount - Einbinden eines Dateisystems........................................................ 124
 
3.20.2. /etc/fstab - Dateisysteme automatisch einbinden ....................................................... 127
 
3.20.2.1. /etc/fstab - im Detail ..................................................................................... 127
 
3.21. Internationalisierung und Lokalisierung ......................................................................................... 128
 
4. Installation weiterer Pakete ......................................................................................................................... 132
 
4.1. Organisation der Pakete .................................................................................................................... 132
 
4.1.1. Distribution......................................................................................................................... 132
 
4.1.2. Architektur .......................................................................................................................... 133
 
4.1.3. Gruppen.............................................................................................................................. 134
 
4.1.4. Das Debian-Paketformat - .deb ......................................................................................... 135
 
4.2. dselect .......................................................................................................................................... 135
 
4.2.1. Access............................................................................................................................... 136
 
4.2.2. Update............................................................................................................................... 137
 
4.2.3. Select............................................................................................................................... 137
 
4.2.4. Install............................................................................................................................. 138
 
4.2.5. Config............................................................................................................................... 138
 
4.2.6. Remove............................................................................................................................... 138
 
4.2.7. Quit ................................................................................................................................... 138
 
4.2.8. Beispiel: boot-floppies.................................................................................................. 138
 
4.3. Apt.................................................................................................................................................... 140
 
4.3.1. Apt konfigurieren ................................................................................................................ 140
 
4.3.2. apt-setup ......................................................................................................................... 142
 
4.3.3. apt-cdrom ......................................................................................................................... 143
 
4.3.4. apt-get............................................................................................................................. 143
 
4.3.4.1. Status-Report ......................................................................................................... 143
 
4.3.4.2. Status-Anzeige....................................................................................................... 144
 
4.3.4.3. Optionen und Kommandos .................................................................................... 145
 
4.3.5. apt - Offline nutzen ............................................................................................................ 149
 
4.3.5.1. apt, auf beiden Rechnern...................................................................................... 149
 
4.3.5.2. Die Konfigurationsdatei......................................................................................... 150
 
4.3.5.3. Kopieren der Dateien mit wget............................................................................. 150
 
4.3.6. apt-cache ......................................................................................................................... 151
 
4.3.7. apt-proxy ......................................................................................................................... 155
 
4.3.8. apt-move........................................................................................................................... 155
 
4.3.9. apt-ftparchive...................................................................................................................... 156
 
4.3.10. apt-show-source .......................................................................................................... 157
 
4.3.11. apt-show-versions ...................................................................................................... 157
 
4.3.12. auto-apt.......................................................................................................................... 158
 
4.3.13. apt-listchanges .......................................................................................................... 158
 
4.3.14. apt-config.......................................................................................................................... 159
 
4.3.15. console-apt ................................................................................................................... 159
 
4.3.16. aptitude......................................................................................................................... 161
 
4.3.17. gnome-apt ....................................................................................................................... 163
 
4.4. APT Pinning .................................................................................................................................... 171
 
4.5. dpkg................................................................................................................................................. 172
 
4.5.1. -l........................................................................................................................................ 172
 
4.5.2. -S........................................................................................................................................ 173
 
4.5.3. --force-confnew ............................................................................................................ 173
 
v
 
4.5.4. dpkg-scanpackage .......................................................................................................... 173
 
4.5.5. dpkg-scansources .......................................................................................................... 174
 
4.6. netselect ...................................................................................................................................... 174
 
4.7. apt-spy.............................................................................................................................................. 175
 
4.8. deborphan ...................................................................................................................................... 175
 
4.9. debfoster ...................................................................................................................................... 177
 
4.10. task-Pakete .................................................................................................................................. 178
 
4.10.1. tasksel........................................................................................................................... 179
 
4.11. Weitere wichtige Pakete.................................................................................................................. 180
 
4.11.1. base-config ................................................................................................................... 180
 
4.11.2. modconf........................................................................................................................... 180
 
4.11.3. shadowconfig................................................................................................................. 180
 
4.11.4. tzconfig......................................................................................................................... 181
 
4.11.5. dlocate........................................................................................................................... 182
 
4.11.6. gpm ................................................................................................................................... 182
 
4.11.7. mc...................................................................................................................................... 185
 
4.11.8. gmc ................................................................................................................................... 186
 
4.11.9. screen............................................................................................................................. 187
 
4.11.10. ssh ................................................................................................................................. 187
 
4.12. Euro Symbol .................................................................................................................................. 188
 
4.13. Menü-System ................................................................................................................................. 188
 
4.14. Paketmanagement für Umsteiger.................................................................................................... 190
 
4.15. Installation von fremden Paketen.................................................................................................... 191
 
4.16. alien............................................................................................................................................. 191
 
5. X11 ................................................................................................................................................................ 193
 
5.1. Installation von XFree86 3.3.x.......................................................................................................... 193
 
5.1.1. XF86Setup ......................................................................................................................... 195
 
5.1.2. xf86config ....................................................................................................................... 204
 
5.1.3. anXious............................................................................................................................. 211
 
5.2. Installation von XFree86 4.x............................................................................................................. 226
 
5.2.1. dexconf ............................................................................................................................... 244
 
5.2.2. xf86cfg ............................................................................................................................... 244
 
5.2.2.1. Textmodus.............................................................................................................. 245
 
5.2.2.2. Grafikmodus .......................................................................................................... 246
 
5.3. Starten von X ................................................................................................................................... 247
 
5.3.1. xdm ..................................................................................................................................... 248
 
5.3.2. gdm - GNOME Display Manager................................................................................... 248
 
5.3.2.1. Der GDM-Daemon................................................................................................ 248
 
5.3.2.2. Der GDM Daemon ................................................................................................ 249
 
5.3.2.3. Der „Greeter“......................................................................................................... 249
 
5.3.2.3.1. Benutzername und Paßwort ..................................................................... 249
 
5.3.2.3.2. Menü ........................................................................................................ 249
 
5.3.2.3.3. Der „Face Browser“ ................................................................................. 250
 
5.3.2.3.4. Logo ......................................................................................................... 250
 
5.3.2.4. Konfiguration......................................................................................................... 250
 
5.3.2.4.1. Die Script-Verzeichnisse.......................................................................... 250
 
5.3.2.4.2. Konfigurationsdatei - gdm.conf ............................................................. 251
 
5.3.2.4.3. Daemon-Konfiguration ............................................................................ 251
 
5.3.2.4.4. Sicherheitsoptionen.................................................................................. 254
 
5.3.2.4.5. XDCMP Support...................................................................................... 255
 
5.3.2.4.6. Optionen zur Benutzeroberfläche ............................................................ 256
 
5.3.2.4.7. Greeter-Konfiguration .............................................................................. 256
 
5.3.2.4.8. XDCMP-Chooser-Optionen .................................................................... 258
 
5.3.2.4.9. Konfiguration des lokalen X-Servers ....................................................... 259
 
5.3.2.5. GDM in deutsch ....................................................................................................... 259
 
5.3.3. login.app ......................................................................................................................... 260
 
5.4. X11 Schriften ................................................................................................................................... 260
 
vi
 
5.4.1. Allgemeines zu Schriften .................................................................................................... 261
 
5.4.2. xfs - X11 Font-Server ........................................................................................................ 262
 
5.4.3. xfstt - X11 True Type Font-Server................................................................................... 263
 
5.4.3.1. Microsoft Fonts...................................................................................................... 264
 
5.5. Windowmanager ............................................................................................................................... 265
 
5.5.1. Fvwm.................................................................................................................................. 265
 
5.5.2. Windowmaker ..................................................................................................................... 266
 
5.5.3. Enlightenment ..................................................................................................................... 266
 
6. GNOME........................................................................................................................................................ 268
 
6.1. GNOME 1.4..................................................................................................................................... 268
 
6.1.1. Windowmanager - Sawfish.................................................................................................. 269
 
6.1.2. Desktop............................................................................................................................... 270
 
6.1.2.1. Panel ...................................................................................................................... 271
 
6.1.3. Nautilus ............................................................................................................................... 271
 
6.2. GNOME 2.0..................................................................................................................................... 274
 
6.3. Links ................................................................................................................................................ 279
 
7. KDE .............................................................................................................................................................. 280
 
7.1. KDE und Debian - die unendliche Geschichte... .............................................................................. 280
 
7.2. KDE 2.2 ........................................................................................................................................... 280
 
7.3. KDE 3.0.x ........................................................................................................................................ 286
 
8. Internet ......................................................................................................................................................... 294
 
8.1. Zugang zum Internet ......................................................................................................................... 294
 
8.1.1. Modem ............................................................................................................................... 294
 
8.1.1.1. Weitere Konfiguration............................................................................................ 299
 
8.1.2. ISDN................................................................................................................................... 299
 
8.1.2.1. Kanalbündelung..................................................................................................... 303
 
8.1.3. DSL .................................................................................................................................... 304
 
8.1.3.1. pppoeconf .............................................................................................................. 304
 
8.1.3.2. pppstatus ................................................................................................................ 313
 
8.2. Webbrowser ..................................................................................................................................... 314
 
8.2.1. Netscape Communicator ..................................................................................................... 314
 
8.2.1.1. Scrollmaus ............................................................................................................. 315
 
8.2.1.2. Probleme beim Druck............................................................................................ 315
 
8.2.1.3. Schaltflächen entfernen.......................................................................................... 316
 
8.2.1.4. Schaltflächen hinzufügen....................................................................................... 316
 
8.2.2. Mozilla ............................................................................................................................... 316
 
8.2.3. Galeon ................................................................................................................................ 318
 
8.2.3.1. Installation ............................................................................................................. 319
 
8.2.3.2. Startzeit.................................................................................................................. 322
 
8.2.3.3. Autovervollständigung .......................................................................................... 322
 
8.2.3.4. Zoom...................................................................................................................... 323
 
8.2.3.5. Reiter ..................................................................................................................... 323
 
8.2.3.6. Lesezeichen ........................................................................................................... 323
 
8.2.3.7. Intelligente Lesezeichen ........................................................................................ 323
 
8.2.3.8. Chronik (History) .................................................................................................. 323
 
8.2.3.9. Cookie und Image Manager .................................................................................. 323
 
8.2.3.10. SSL, JAVA, Flash................................................................................................. 324
 
8.2.4. lynx..................................................................................................................................... 324
 
8.2.5. Mehrsprachige Webseiten ................................................................................................... 325
 
8.3. E-Mail .............................................................................................................................................. 325
 
8.3.1. mutt .................................................................................................................................... 329
 
8.3.1.1. mutt und GnuPG.................................................................................................... 330
 
8.3.1.2. Empfängerabhängige Signaturen........................................................................... 331
 
8.3.2. fetchmail............................................................................................................................. 331
 
8.3.2.1. Konfiguration......................................................................................................... 333
 
8.3.3. Netscape Mail...................................................................................................................... 336
 
vii
 
8.3.4. Evolution ............................................................................................................................. 338
 
8.4. Dateitransfer..................................................................................................................................... 349
 
8.4.1. ftp ....................................................................................................................................... 349
 
8.4.2. ncftp.................................................................................................................................... 351
 
8.4.2.1. ncftp ....................................................................................................................... 351
 
8.4.2.2. ncftpput / ncftpget.................................................................................................. 351
 
8.4.2.3. ncftpls .................................................................................................................... 351
 
8.4.3. gFTP................................................................................................................................... 351
 
8.5. Eigene Homepage ............................................................................................................................. 352
 
8.5.1. Bluefish ............................................................................................................................... 352
 
8.5.2. Netscape Composer............................................................................................................. 354
 
8.5.3. Screem................................................................................................................................ 354
 
8.5.3.1. Editor ..................................................................................................................... 355
 
8.5.3.2. Drag & Drop.......................................................................................................... 356
 
8.5.3.3. Preview .................................................................................................................. 356
 
8.5.3.4. External Browsers.................................................................................................. 356
 
8.5.3.5. Dateibaum.............................................................................................................. 356
 
8.5.3.6. „Tag“baum............................................................................................................. 356
 
8.5.3.7. Upload Wizard....................................................................................................... 357
 
8.5.3.8. Image Wizard......................................................................................................... 357
 
8.5.3.9. Gallery Wizard....................................................................................................... 357
 
8.6. Verschlüsselung................................................................................................................................ 357
 
8.6.1. PGP .................................................................................................................................... 357
 
8.6.2. GnuPG................................................................................................................................ 357
 
8.6.2.1. GnuPG Schlüsselverwaltung ................................................................................. 360
 
8.6.2.1.1. Austauschen von Schlüsseln .................................................................... 360
 
8.6.2.1.2. Exportieren eines öffentlichen Schlüssels................................................ 360
 
8.6.2.1.3. Importieren eines öffentlichen Schlüssels................................................ 361
 
8.6.2.1.4. Bearbeiten eines Schlüssels ..................................................................... 361
 
8.6.2.1.5. Schlüsselverteilung .................................................................................. 362
 
8.6.2.2. GnuPG und mutt.................................................................................................... 363
 
9. Drucken ........................................................................................................................................................ 364
 
9.1. CUPS ............................................................................................................................................... 364
 
9.1.1. Pakete ................................................................................................................................. 364
 
9.1.1.1. Treiber.................................................................................................................... 365
 
9.1.1.2. Samba Integration.................................................................................................. 365
 
9.1.1.3. Tips ........................................................................................................................ 365
 
9.1.2. Design................................................................................................................................. 366
 
9.1.3. Scheduler............................................................................................................................ 366
 
9.1.4. Konfigurationsdateien ......................................................................................................... 366
 
9.1.5. Berkeley und System V Kommandos.................................................................................. 367
 
9.1.6. Filter ................................................................................................................................... 367
 
9.1.7. Administration.................................................................................................................... 367
 
9.1.7.1. Kommandozeile..................................................................................................... 367
 
9.1.7.1.1. Grundlagen............................................................................................... 367
 
9.1.7.1.2. Drucker hinzufügen ................................................................................. 367
 
9.1.7.1.3. Drucker verändern.................................................................................... 368
 
9.1.7.1.4. Drucker löschen ....................................................................................... 370
 
9.1.7.1.5. Standarddrucker festlegen........................................................................ 370
 
9.1.7.1.6. Starten und stoppen von Druckern........................................................... 371
 
9.1.7.2. Webbasiert ............................................................................................................. 371
 
9.1.7.2.1. Administration ......................................................................................... 372
 
9.1.7.2.2. Gruppen.................................................................................................... 372
 
9.1.7.2.3. Dokumentation......................................................................................... 373
 
9.1.7.2.4. Druckaufträge .......................................................................................... 373
 
9.1.7.2.5. Drucker .................................................................................................... 374
 
9.1.7.2.6. Software ................................................................................................... 378
 
viii
 
9.1.7.3. CUPS Konfigurationsdatei..................................................................................... 378
 
9.1.7.3.1. Server Identität......................................................................................... 378
 
9.1.7.3.2. Server Optionen ....................................................................................... 379
 
9.1.7.3.3. Verschlüsselung........................................................................................ 379
 
9.1.7.3.4. Filteroptionen........................................................................................... 380
 
9.1.7.3.5. Netzwerkoptionen .................................................................................... 380
 
9.1.7.3.6. Browsing .................................................................................................. 380
 
9.1.7.3.7. Sicherheits Optionen................................................................................ 381
 
9.1.7.3.8. Verzeichnisse............................................................................................ 381
 
9.2. apsfilter............................................................................................................................................. 382
 
9.2.1. Einstellen der Papiergröße................................................................................................... 393
 
9.3. Drucken von True Type Fonts........................................................................................................... 393
 
9.4. Netzwerkdrucker.............................................................................................................................. 394
 
9.4.1. Linux – Linux...................................................................................................................... 394
 
10. Grafik.......................................................................................................................................................... 396
 
10.1. The Gimp ....................................................................................................................................... 396
 
10.1.1. Kommandozeile................................................................................................................. 397
 
10.1.1.1. Version (-v) ......................................................................................................... 397
 
10.1.1.2. Batch Modus (-b)................................................................................................ 397
 
10.1.1.3. No Interface (-n) ................................................................................................. 398
 
10.1.1.4. No Data (--no-data)......................................................................................... 398
 
10.1.1.5. Display (--display).......................................................................................... 398
 
10.1.2. Menüs und Tastatur ........................................................................................................... 398
 
10.1.2.1. Datei..................................................................................................................... 398
 
10.1.3. Xtns (Extensions/Erweiterungen)-Menü........................................................................... 401
 
10.1.4. Symbole im Hauptmenü.................................................................................................... 404
 
10.1.5. Farbauswahl ...................................................................................................................... 405
 
10.1.6. Pinsel, Muster, Farbverlauf ............................................................................................... 405
 
10.1.7. Farbsysteme...................................................................................................................... 407
 
10.1.8. Öffnen einer Datei ............................................................................................................. 407
 
10.1.9. Speichern einer Datei ........................................................................................................ 407
 
10.1.10. Ebenen............................................................................................................................ 408
 
10.1.11. Grafiktypen..................................................................................................................... 408
 
10.1.12. Undo............................................................................................................................... 409
 
10.1.13. Fenster ............................................................................................................................. 409
 
10.1.14. Konfiguration.................................................................................................................. 409
 
10.1.14.1. Neues Bild ......................................................................................................... 409
 
10.1.14.2. Anzeige.............................................................................................................. 410
 
10.1.14.3. Oberfläche.......................................................................................................... 410
 
10.1.14.4. Umgebung ......................................................................................................... 411
 
10.1.14.5. Sitzung ............................................................................................................... 411
 
10.1.14.6. Monitor .............................................................................................................. 411
 
10.1.14.7. Directory Preferences ........................................................................................ 411
 
10.1.15. Auswahlen...................................................................................................................... 412
 
10.1.15.1. Gemeinsamkeiten .............................................................................................. 412
 
10.1.15.2. Rechteckige Auswahl ........................................................................................ 413
 
10.1.15.3. Elliptische Auswahl........................................................................................... 413
 
10.1.15.4. Freihandauswahl................................................................................................ 413
 
10.1.15.5. „Intelligente Schere“.......................................................................................... 414
 
10.1.15.6. Bezier-Auswahl ................................................................................................. 414
 
10.1.15.7. „Zauberstab“-Auswahl ...................................................................................... 415
 
10.2. Scanner........................................................................................................................................... 415
 
10.2.1. SANE einrichten ............................................................................................................... 416
 
10.2.2. xscanimage....................................................................................................................... 417
 
10.2.3. xsane................................................................................................................................. 419
 
10.2.4. Scannen mit The Gimp...................................................................................................... 421
 
10.3. Digitalkameras ............................................................................................................................... 422
 
ix
 
10.3.1. gPhoto ............................................................................................................................... 423
 
10.3.1.1. Einstellungen ....................................................................................................... 423
 
10.3.1.2. Benutzung............................................................................................................ 424
 
10.3.1.3. Übertragung von Bildern/Thumbnails................................................................. 424
 
10.3.1.4. Löschen von Bildern aus dem Kameraspeicher .................................................. 425
 
10.3.1.5. Fotografieren........................................................................................................ 425
 
10.3.1.6. Kamera konfigurieren .......................................................................................... 425
 
10.3.1.7. Kamera-Informationen ........................................................................................ 425
 
10.3.1.8. Bilder aus Verzeichnissen.................................................................................... 425
 
10.3.1.9. Bearbeiten von Bildern........................................................................................ 425
 
10.3.1.10. Automatische Nachbearbeitung von Bildern..................................................... 426
 
10.3.1.11. Speichern von geöffneten Bildern ..................................................................... 426
 
10.3.1.12. Drucken von Bildern.......................................................................................... 426
 
10.3.1.13. Plugins ............................................................................................................... 427
 
10.3.1.14. gPhoto auf der Kommandozeile ........................................................................ 427
 
10.3.1.15. Weitere Informationen ....................................................................................... 427
 
11. Office Pakete .............................................................................................................................................. 428
 
11.1. OpenOffice.org............................................................................................................................... 428
 
11.1.1. Installation........................................................................................................................ 429
 
11.1.2. Konfiguration.................................................................................................................... 430
 
11.1.3. Textverarbeitung............................................................................................................... 431
 
11.1.4. Tabellenkalkulation ........................................................................................................... 433
 
11.1.5. OpenOffice.org Links........................................................................................................ 434
 
11.2. GNOME-Office.............................................................................................................................. 434
 
11.3. KDE Office .................................................................................................................................... 434
 
12. Text.............................................................................................................................................................. 435
 
12.1. AbiWord......................................................................................................................................... 435
 
12.2. xpdf ................................................................................................................................................ 437
 
12.3. acroread.......................................................................................................................................... 438
 
13. Kalkulation................................................................................................................................................. 440
 
13.1. Gnumeric........................................................................................................................................ 440
 
13.1.1. Eingeben von Daten .......................................................................................................... 440
 
13.1.2. Zeichenketten und Zahlen ................................................................................................. 440
 
13.1.3. Datumsfelder ..................................................................................................................... 440
 
13.1.4. Ändern von Zellen............................................................................................................. 441
 
13.1.5. Formeln ............................................................................................................................. 441
 
13.1.6. Bezüge.............................................................................................................................. 442
 
13.1.7. Funktionen........................................................................................................................ 442
 
13.1.8. Namen ............................................................................................................................... 442
 
14. Multimedia ................................................................................................................................................. 444
 
14.1. Sound ............................................................................................................................................. 444
 
14.1.1. Soundkarte einrichten........................................................................................................ 444
 
14.2. Xmms............................................................................................................................................. 444
 
14.2.1. „Skins“ .............................................................................................................................. 445
 
14.2.2. Hauptfenster ...................................................................................................................... 445
 
14.2.3. Titelliste (Playlist) ............................................................................................................. 447
 
14.2.4. Equalizer........................................................................................................................... 448
 
14.2.5. Voreinstellungen............................................................................................................... 449
 
14.2.5.1. Audio I/O............................................................................................................. 449
 
14.2.5.2. Visualization Plugins ........................................................................................... 450
 
14.2.5.3. Options ................................................................................................................ 450
 
14.2.6. Xmms von der Kommandozeile........................................................................................ 450
 
14.2.7. Features ............................................................................................................................. 451
 
14.2.8. Xmms und Netscape.......................................................................................................... 451
 
14.3. zinf ................................................................................................................................................. 452
 
14.4. gqmpeg........................................................................................................................................... 453
 
x
 
14.5. Grip ................................................................................................................................................ 454
 
14.6. Videobearbeitung ............................................................................................................................ 457
 
14.6.1. iLink / Firewire / IEEE1394.............................................................................................. 457
 
14.6.2. dvgrab............................................................................................................................... 458
 
14.6.3. Kino.................................................................................................................................. 458
 
14.7. TV Karten ...................................................................................................................................... 459
 
14.7.1. xawtv ................................................................................................................................ 460
 
14.7.2. aletv .................................................................................................................................. 460
 
14.8. Videoplayer .................................................................................................................................... 460
 
14.8.1. xine ................................................................................................................................... 460
 
14.9. Videokonferenzen ........................................................................................................................... 461
 
14.9.1. Gnomemeeting .................................................................................................................. 461
 
15. CD brennen ................................................................................................................................................ 467
 
15.1. Hardware........................................................................................................................................ 467
 
15.2. Kernel............................................................................................................................................. 467
 
15.2.1. SCSI ................................................................................................................................. 467
 
15.2.2. IDE ................................................................................................................................... 468
 
15.3. Software ......................................................................................................................................... 468
 
15.3.1. mkhybrid ........................................................................................................................... 469
 
15.3.2. CDs aus der Shell .............................................................................................................. 469
 
15.3.3. X-CD-Roast....................................................................................................................... 469
 
15.3.3.1. Kopieren von CDs ............................................................................................... 471
 
15.3.3.2. Erstellen von Daten-CDs ..................................................................................... 472
 
15.3.3.3. Audio-CDs........................................................................................................... 473
 
15.3.4. gcombust ........................................................................................................................... 474
 
16. Netzwerk..................................................................................................................................................... 476
 
16.1. Netzwerkkarte ................................................................................................................................ 476
 
16.2. PCMCIA-Netzwerkkarte ................................................................................................................ 477
 
16.3. TCP/IP ........................................................................................................................................... 479
 
16.3.1. IP-Adressen ....................................................................................................................... 479
 
16.3.2. IP-Interface-Konfiguration ................................................................................................ 480
 
16.3.3. IP Routing ......................................................................................................................... 481
 
16.3.4. Domain Name Server - DNS............................................................................................. 483
 
16.3.5. resolv.conf ......................................................................................................................... 484
 
17. Server-Dienste ............................................................................................................................................ 485
 
17.1. Apache ........................................................................................................................................... 485
 
17.1.1. Apache installieren & einrichten....................................................................................... 485
 
17.1.2. Konfigurationsdateien ....................................................................................................... 487
 
17.1.3. Logdateien........................................................................................................................ 487
 
17.1.4. Starten & Stoppen ............................................................................................................. 487
 
17.1.5. CGI-Programme................................................................................................................ 487
 
17.1.6. Apache konfigurieren & optimieren.................................................................................. 488
 
17.1.6.1. URL-Korrekturen ................................................................................................ 488
 
17.1.6.2. Geschützte Verzeichnisse .................................................................................... 489
 
17.1.6.3. SSI - Server Side Includes ................................................................................... 489
 
17.1.6.4. Umleitungen ........................................................................................................ 491
 
17.1.6.5. Fehlermeldungen ................................................................................................. 491
 
17.2. FTP-Server ..................................................................................................................................... 491
 
17.3. DHCP............................................................................................................................................. 494
 
17.3.1. GNU/Linux Notebook als DHCP-Client........................................................................... 495
 
17.3.2. MacOS als DHCP-Client .................................................................................................. 496
 
17.4. Samba............................................................................................................................................. 497
 
17.4.1. Entstehung von Samba...................................................................................................... 497
 
17.4.2. Funktionen von Samba...................................................................................................... 497
 
17.4.3. Samba-Werkzeuge............................................................................................................. 498
 
17.4.4. SMB-Dateisysteme............................................................................................................ 499
 
xi
 
17.4.5. Konfiguration und Verwaltung .......................................................................................... 499
 
17.4.6. SWAT ............................................................................................................................... 499
 
17.4.7. gnosamba.......................................................................................................................... 499
 
17.4.8. gnomba............................................................................................................................. 500
 
17.5. netatalk........................................................................................................................................... 501
 
17.5.1. tkchooser ........................................................................................................................... 503
 
18. Exotische Hardware .................................................................................................................................. 504
 
18.1. Notebook-Spezialitäten.................................................................................................................. 504
 
18.1.1. divine ................................................................................................................................ 504
 
18.1.2. wmbattery......................................................................................................................... 504
 
18.1.3. netenv ............................................................................................................................... 505
 
18.1.4. cardinfo............................................................................................................................. 505
 
18.2. USB................................................................................................................................................ 505
 
18.2.1. Kernel-Konfiguration ........................................................................................................ 505
 
18.2.2. USB-Device-Dateisystem ................................................................................................. 509
 
18.2.3. Human Interface Device (HID)-Konfiguration ................................................................. 509
 
18.2.3.1. HID Maus-Konfiguration..................................................................................... 510
 
18.2.3.2. HID Tastatur-Konfiguration................................................................................. 511
 
18.2.3.3. HID Joystick- und Gamepad-Konfiguration........................................................ 511
 
18.2.4. Scanner-Konfiguration ...................................................................................................... 511
 
18.2.5. Modem-Konfiguration....................................................................................................... 511
 
18.2.6. Drucker-Konfiguration ...................................................................................................... 512
 
18.2.7. USB / Serielle Konfiguration ............................................................................................ 512
 
18.2.8. CPiA Kamera-Konfiguration............................................................................................. 512
 
18.2.9. OV511 Kamera-Konfiguration .......................................................................................... 512
 
18.2.10. Massenspeicher-Konfiguration........................................................................................ 513
 
18.3. PDA - Personal Digital Assistant.................................................................................................... 513
 
18.3.1. pilot-link ............................................................................................................................ 513
 
18.3.1.1. pilot-xfer .............................................................................................................. 514
 
18.3.1.2. install-memo ........................................................................................................ 514
 
18.3.1.3. memos.................................................................................................................. 514
 
18.3.1.4. pilot-addresses ..................................................................................................... 514
 
18.3.2. pi-address .......................................................................................................................... 515
 
18.3.3. j-pilot ................................................................................................................................ 516
 
18.3.3.1. Einstellungen ....................................................................................................... 516
 
18.3.3.2. Kalender............................................................................................................... 516
 
18.3.3.3. Adressen .............................................................................................................. 517
 
18.3.3.4. Aufgaben ............................................................................................................. 518
 
18.3.3.5. Suchen ................................................................................................................. 519
 
18.3.3.6. Installation von Programmen............................................................................... 519
 
18.3.3.7. Quit, Sync, Backup.............................................................................................. 520
 
18.4. „Geräderte“ Mäuse.......................................................................................................................... 520
 
18.4.1. Scrollrad unter XFree86.................................................................................................... 521
 
19. Systemadministration................................................................................................................................ 523
 
19.1. Bootloader...................................................................................................................................... 523
 
19.1.1. lilo (i386).......................................................................................................................... 523
 
19.1.1.1. lilo einrichten....................................................................................................... 523
 
19.1.1.2. lilo und fremde Betriebssysteme ......................................................................... 523
 
19.1.2. GRUB............................................................................................................................... 523
 
19.1.2.1. Installation ........................................................................................................... 524
 
19.1.2.2. Konfiguration....................................................................................................... 525
 
19.1.2.2.1. update-grub ............................................................................................ 525
 
19.1.2.2.2. Manuelle Konfiguration ......................................................................... 525
 
19.1.2.3. Hardwarebezeichnungen ..................................................................................... 526
 
19.1.2.4. Kommandozeile................................................................................................... 526
 
19.1.2.5. weitere Informationen.......................................................................................... 527
 
xii
 
19.2. Init Scripte...................................................................................................................................... 527
 
19.2.1. rcconf................................................................................................................................ 527
 
19.2.2. update-rc.d......................................................................................................................... 527
 
19.3. alternatives ..................................................................................................................................... 528
 
19.4. hdparm ........................................................................................................................................... 529
 
19.4.1. Optionen........................................................................................................................... 530
 
19.4.2. Einbinden von hdparm...................................................................................................... 531
 
19.5. Systemzeit ...................................................................................................................................... 532
 
19.5.1. date ................................................................................................................................... 533
 
19.5.2. rdate.................................................................................................................................. 534
 
19.6. Kernel erzeugen .............................................................................................................................. 535
 
19.6.1. Debian Kernel (kernel-package) ....................................................................................... 535
 
19.6.2. klassische Kernel............................................................................................................... 536
 
19.6.2.1. Anpassen des Kernels von Hand ......................................................................... 536
 
19.6.2.2. Benötigte Programme.......................................................................................... 537
 
19.6.2.3. Entpacken der Sourcen ........................................................................................ 537
 
19.6.2.4. Konfiguration des Kernels ................................................................................... 537
 
19.6.2.5. Übersetzen des Kernels........................................................................................ 538
 
19.6.2.6. Übersetzen der Module........................................................................................ 538
 
19.6.2.7. Tips ...................................................................................................................... 538
 
19.6.3. SMP - Linux mit mehreren Prozessoren ........................................................................... 539
 
19.6.3.1. Kernel 2.0 ............................................................................................................ 539
 
19.6.3.2. Kernel 2.2 ............................................................................................................ 539
 
19.7. Kernel Pakete ................................................................................................................................. 540
 
19.8. Webbasierte Administration mit Webmin....................................................................................... 541
 
19.8.1. Installation........................................................................................................................ 541
 
19.8.2. Zugriff auf Webmin........................................................................................................... 542
 
19.8.3. Kategorie Webmin............................................................................................................. 542
 
19.8.3.1. Webmin Actions Log........................................................................................... 543
 
19.8.3.2. Webmin Benutzer ................................................................................................ 544
 
19.8.3.3. Webmin Konfiguration ........................................................................................ 544
 
19.8.3.3.1. Webmin Konfiguration - IP-Zugriffskontrolle ....................................... 545
 
19.8.3.3.2. Webmin Konfiguration - Anschluss und Adresse .................................. 546
 
19.8.3.3.3. Webmin Konfiguration - Protokollierung .............................................. 547
 
19.8.3.3.4. Webmin Konfiguration - Proxyserver .................................................... 547
 
19.8.3.3.5. Webmin Konfiguration - Benutzerschnittstelle...................................... 548
 
19.8.3.3.6. Webmin Konfiguration - Webmin-Module ............................................ 549
 
19.8.3.3.7. Webmin Konfiguration - Betriebssystem ............................................... 550
 
19.8.3.3.8. Webmin Konfiguration - Sprache........................................................... 551
 
19.8.3.3.9. Webmin Konfiguration - Indexseitenoptionen ....................................... 552
 
19.8.3.3.10. Webmin Konfiguration - Webmin aktualisieren................................... 552
 
19.8.3.3.11. Webmin Konfiguration - Authentication.............................................. 553
 
19.8.3.3.12. Webmin Konfiguration - Reassign Modules........................................ 554
 
19.8.3.3.13. Webmin Konfiguration - Edit Categories............................................. 555
 
19.8.3.3.14. Webmin Konfiguration - Webmin Themes .......................................... 556
 
19.8.3.3.15. Webmin Konfiguration - Trusted Referers........................................... 557
 
19.8.3.4. Webmin Server Index .......................................................................................... 557
 
19.8.4. Kategorie System .............................................................................................................. 558
 
19.8.4.1. Benutzer und Gruppen......................................................................................... 558
 
19.8.4.2. Change Passwords ............................................................................................... 561
 
19.8.4.3. Geplante Cron-Jobs ............................................................................................. 562
 
19.8.4.4. Laufende Prozesse ............................................................................................... 563
 
19.8.4.5. NFS-Exporte........................................................................................................ 564
 
19.8.4.6. PAM-Authentification.......................................................................................... 565
 
19.8.5. Kategorie Server................................................................................................................ 566
 
19.8.5.1. Apache Webserver ............................................................................................... 567
 
19.8.5.1.1. Apache Webserver - Prozesse und Grenzwerte ..................................... 568
 
xiii
 
19.8.5.1.2. Apache Webserver - Netzwerk und Adressen........................................ 570
 
19.8.5.1.3. Apache Webserver - Apache-Module .................................................... 571
 
19.8.5.1.4. Apache Webserver - MIME-Typen........................................................ 571
 
19.8.5.1.5. Apache Webserver - Verschiedenes ....................................................... 572
 
19.8.5.1.6. Apache Webserver - CGI ....................................................................... 573
 
19.8.5.1.7. Apache Webserver - Per-Verzeichniseinstellungen ............................... 574
 
19.8.5.1.8. Apache Webserver - Apache-Module neukonfigurieren........................ 575
 
19.8.5.1.9. Apache Webserver - Definierte Parameter bearbeiten ........................... 576
 
19.8.5.2. Postfix .................................................................................................................. 576
 
19.8.5.2.1. Postfix Mailserver - Allgemeine Einstellungen ..................................... 577
 
19.8.5.2.2. Postfix Mailserver - Adressumschreibung und Maskierung .................. 579
 
19.8.5.2.3. Postfix Mailserver - Mail-Aliases .......................................................... 579
 
19.8.5.2.4. Postfix Mailserver - Kanonische Verknüpfung ...................................... 580
 
19.8.5.2.5. Postfix Mailserver - Virtuelle Domänen ................................................ 581
 
19.8.5.2.6. Postfix Mailserver - Transportverknüpfung ........................................... 582
 
19.8.5.2.7. Postfix Mailserver - Neu eingerichtete Verknüpfung............................. 583
 
19.8.5.2.8. Postfix Mailserver - Lokale Lieferung................................................... 583
 
19.8.5.2.9. Postfix Mailserver - Allgemeine Resourcenkontrolle............................ 584
 
19.8.5.2.10. Postfix Mailserver - SMTP-Server-Einstellungen ............................... 585
 
19.8.5.2.11. Postfix Mailserver - SMTP-Client-Einstellungen................................ 586
 
19.8.5.2.12. Postfix Mailserver - Auslieferungsraten .............................................. 587
 
19.8.5.2.13. Postfix Mailserver - Debugging-Funktionen........................................ 588
 
19.8.5.3. DHCP .................................................................................................................. 589
 
19.8.6. Kategorie Hardware .......................................................................................................... 594
 
19.8.6.1. Festplatten Partitionen ......................................................................................... 594
 
19.8.6.2. GRUB .................................................................................................................. 597
 
19.8.6.3. Lilo ...................................................................................................................... 600
 
19.8.6.4. Netzwerk.............................................................................................................. 603
 
19.8.6.5. Systemzeit............................................................................................................ 606
 
19.8.7. Andere ............................................................................................................................... 607
 
19.8.7.1. Themes................................................................................................................. 609
 
20. Systemsicherheit ........................................................................................................................................ 612
 
20.1. task-harden..................................................................................................................................... 612
 
20.2. Securing Debian HOWTO.............................................................................................................. 612
 
20.2.1. Vor und während der Installation ...................................................................................... 613
 
20.2.1.1. BIOS Einstellungen ............................................................................................. 613
 
20.2.1.2. Plattenpartitionen................................................................................................. 613
 
20.2.1.3. Superuser Passwort.............................................................................................. 613
 
20.2.1.4. Shadow- und MD5 Passwörter ............................................................................ 614
 
20.2.1.5. Aktivierte Dienste................................................................................................ 614
 
20.2.1.6. Mailinglisten........................................................................................................ 614
 
20.2.2. Nach der Installation ......................................................................................................... 614
 
20.2.2.1. Absicherung des Bootloaders .............................................................................. 614
 
20.2.2.2. Starten von Diskette............................................................................................. 615
 
20.2.2.3. Mounten von Dateisystemen ............................................................................... 615
 
20.2.2.4. Debian Sicherheitsupdates................................................................................... 616
 
20.2.2.5. PAM - Pluggable Authentication Modules.......................................................... 616
 
20.2.2.6. Anpassungen der /etc/inetd.conf ................................................................ 618
 
20.2.2.7. /etc/login.defs............................................................................................. 619
 
20.2.2.8. /etc/ftpusers ................................................................................................. 620
 
20.2.2.9. Einsatz eines TCP Wrappers ............................................................................... 620
 
20.2.2.10. Benutzung von su.............................................................................................. 620
 
20.2.2.11. Benutzung von sudo ......................................................................................... 620
 
20.2.2.12. Benutzung von chroot..................................................................................... 621
 
20.2.2.13. Kernel Features.................................................................................................. 621
 
20.2.2.14. Benutzung der svgalib.................................................................................... 622
 
20.2.2.15. Sichere Übertragung von Dateien...................................................................... 622
 
xiv
 
20.2.2.16. Benutzung von Quotas....................................................................................... 622
 
20.2.2.17. Zugriffsrechte von Logdateien .......................................................................... 622
 
20.2.2.18. setuid Überprüfungen..................................................................................... 623
 
20.2.2.19. chattr / lsattr .............................................................................................. 623
 
20.2.2.20. Integrität des Dateisystems................................................................................ 623
 
20.2.2.21. locate und slocate ....................................................................................... 623
 
20.2.3. Sichere Dienste.................................................................................................................. 624
 
20.2.3.1. ssh ........................................................................................................................ 624
 
20.2.3.2. FTP ...................................................................................................................... 625
 
20.2.3.3. X Anwendungen im Netz .................................................................................... 625
 
20.2.3.4. Display Manager.................................................................................................. 625
 
20.2.3.5. E-Mail.................................................................................................................. 626
 
20.2.3.6. loghost - ein Server für Logdateien ..................................................................... 626
 
20.2.3.7. BIND ................................................................................................................... 627
 
20.2.3.8. snort ..................................................................................................................... 627
 
20.2.4. Vor einem Einbruch........................................................................................................... 627
 
20.2.4.1. Debian Sicherheits Updates................................................................................. 628
 
20.2.4.2. Austausch von Software ...................................................................................... 628
 
20.2.4.3. Kernel Patches ..................................................................................................... 628
 
20.2.4.4. Weitere Möglichkeiten......................................................................................... 629
 
20.2.5. Nach einem Einbruch... ..................................................................................................... 629
 
21. Anpassen und Erzeugen von Debian Paketen.......................................................................................... 630
 
21.1. Debian Pakete anpassen.................................................................................................................. 630
 
21.2. Debian Pakete erzeugen.................................................................................................................. 630
 
21.2.1. README.Debian ............................................................................................................. 631
 
21.2.2. files ................................................................................................................................... 632
 
21.2.3. changelog .......................................................................................................................... 632
 
21.2.4. copyright........................................................................................................................... 632
 
21.2.5. control............................................................................................................................... 633
 
21.2.6. rules .................................................................................................................................. 633
 
21.2.7. menu................................................................................................................................. 635
 
21.2.8. postinst, preinst, postrm, prerm......................................................................................... 635
 
21.2.9. dpkg-buildpackage ............................................................................................................ 636
 
21.3. Package Dateien............................................................................................................................. 637
 
22. Modellbahnen ............................................................................................................................................ 639
 
22.1. Herkömmliche Systeme.................................................................................................................. 639
 
22.2. Digitale Systeme ............................................................................................................................. 639
 
22.3. Hardware........................................................................................................................................ 640
 
22.3.1. Decoder ............................................................................................................................. 642
 
22.3.1.1. 6603 Delta Decoder............................................................................................. 642
 
22.3.1.2. 6080 Digital Decoder........................................................................................... 643
 
22.3.1.3. 6090 Digital Decoder........................................................................................... 643
 
22.3.1.4. 66031 Digital Decoder......................................................................................... 643
 
22.3.1.5. „Wikinger“Lokomotiv Decoder .......................................................................... 643
 
22.4. Software ......................................................................................................................................... 643
 
22.4.1. Server ............................................................................................................................... 644
 
22.4.1.1. erddcd .................................................................................................................. 644
 
22.4.1.2. srcpd..................................................................................................................... 644
 
22.4.2. Clients ............................................................................................................................... 645
 
22.4.2.1. telnet .................................................................................................................... 645
 
22.4.2.2. j-man.................................................................................................................... 645
 
22.4.2.3. loco-panel ............................................................................................................ 647
 
22.4.2.4. monitor ................................................................................................................ 648
 
22.4.2.5. keyboard .............................................................................................................. 648
 
22.4.2.6. recorder................................................................................................................ 648
 
22.4.2.7. rcsh....................................................................................................................... 648
 
xv
 
22.4.2.8. rcman ................................................................................................................... 649
 
22.4.2.9. srcptt .................................................................................................................... 650
 
22.4.2.10. SpDrS60 ............................................................................................................ 650
 
22.4.2.11. JoyCtrl ............................................................................................................... 650
 
22.4.2.12. dtcltiny ............................................................................................................... 650
 
22.5. Weitere Informationen .................................................................................................................... 653
 
23. Weitere Infos .............................................................................................................................................. 654
 
23.1. Abkürzungen / Begriffe .................................................................................................................. 654
 
23.2. Debian Mirror ................................................................................................................................ 654
 
23.2.1. absurd_debmirror .............................................................................................................. 655
 
23.2.2. debmirror.......................................................................................................................... 655
 
23.2.3. debmirror-wrapper ............................................................................................................ 656
 
23.2.4. mirror................................................................................................................................ 656
 
23.3. Erstellen von eigenen Debian GNU/Linux CD-ROMs................................................................... 658
 
23.3.1. Konfiguration.................................................................................................................... 659
 
23.3.2. Erstellen der CD-Images ................................................................................................... 662
 
23.3.3. Aktualisieren von debian-cd.......................................................................................... 662
 
23.4. Programmfehler (bugs) ................................................................................................................... 662
 
23.5. Installations- und Rettungsdiskette ................................................................................................. 663
 
23.6. Technische Informationen zu den Boot-Disketten.......................................................................... 663
 
23.6.1. Quellcode .......................................................................................................................... 663
 
23.6.2. Die Notfalldiskette ............................................................................................................ 663
 
23.6.3. Kernel ersetzen .................................................................................................................. 664
 
23.6.4. Die Basisdisketten ............................................................................................................. 664
 
23.7. Deutsche Tastatur mit X11.............................................................................................................. 664
 
23.7.1. Gerätedateien in /dev und ihre Bedeutung ...................................................................... 665
 
23.7.2. Warenzeichen .................................................................................................................... 666
 
23.8. Debian – Gesellschaftsvertrag ........................................................................................................ 666
 
23.9. Die Debian-Richtlinien für freie Software...................................................................................... 667
 
23.10. GNU Public License ..................................................................................................................... 668
 
23.11. Open Publication License ............................................................................................................. 673
 
23.12. GNU Free Document License 1.1 (GFDL)................................................................................... 675
 
GNU Freie Dokumentationslizenz ................................................................................................ 675
 
.1. Päambel ......................................................................................................................... 675
 
.2. Anwendbarkeit und Definitionen................................................................................... 676
 
.3. Wortwörtliche Kopien.................................................................................................... 676
 
.4. Kopieren in Mengen ...................................................................................................... 677
 
.5. Modifikationen .............................................................................................................. 677
 
.6. Dokumente kombinieren ............................................................................................... 678
 
.7. Sammlungen von Dokumenten ..................................................................................... 679
 
.8. Aggregation mit unabhängigen Arbeiten ...................................................................... 679
 
.9. Übersetzung................................................................................................................... 679
 
.10. Termination.................................................................................................................. 679
 
.11. Zukünftige Revisionen dieser Lizenz .......................................................................... 680
 
.12. Wie Sie diese Lizenz für Ihre Dokumente nutzen können .......................................... 680
 
.13. Begriffe ........................................................................................................................ 680
 
Stichwortverzeichnis ....................................................................................................................................... 681
 
xvi
 
Tabellenverzeichnis
 
4-1. RPM / DEB Paketmanagement ................................................................................................................... 190
 
22-1. Delta Decoder - Dip-Schalter Einstellungen............................................................................................. 642
 
22-2. Technische Daten Delta Decoder 66031 ................................................................................................... 643
 
Abbildungsverzeichnis
 
1-1. Tux - der Pinguin............................................................................................................................................ 9
 
1-2. Organisation des Debian Teams.................................................................................................................... 17
 
1-3. „Open Use“ Logo - „Swirl“ .......................................................................................................................... 26
 
1-4. Offizielles Logo............................................................................................................................................ 26
 
1-5. Open Source Initiative - Logo....................................................................................................................... 29
 
2-1. BIOS Einstellungen...................................................................................................................................... 42
 
2-2. Bootmenü ..................................................................................................................................................... 43
 
2-3. Sprachauswahl.............................................................................................................................................. 45
 
2-4. Sprachraum................................................................................................................................................... 45
 
2-5. Release Informationen.................................................................................................................................. 45
 
2-6. Hauptmenü ................................................................................................................................................... 46
 
2-7. Tastatur Konfiguration.................................................................................................................................. 46
 
2-8. Festplatte partitionieren................................................................................................................................ 47
 
2-9. Auswahl der Festplatte(n) ............................................................................................................................. 48
 
2-10. Informationen zu lilo.................................................................................................................................. 48
 
2-11. Informationen zu ReiserFS......................................................................................................................... 49
 
2-12. Partitionstabelle nicht gefunden .................................................................................................................. 49
 
2-13. Partition anlegen......................................................................................................................................... 50
 
2-14. Partition anlegen......................................................................................................................................... 50
 
2-15. Partitionen anlegen..................................................................................................................................... 51
 
2-16. Partitionen anlegen..................................................................................................................................... 51
 
2-17. Swap Partition einbinden ............................................................................................................................ 52
 
2-18. Swap Partition auswählen ........................................................................................................................... 53
 
2-19. Swap Partition bestätigen ............................................................................................................................ 53
 
2-20. root Dateisystem einbinden........................................................................................................................ 54
 
2-21. Auswahl Dateisystem................................................................................................................................. 54
 
2-22. Überprüfung auf defekte Blöcke ................................................................................................................. 55
 
2-23. Überprüfung auf defekte Blöcke ................................................................................................................. 55
 
2-24. Dateisystem formatieren ............................................................................................................................. 56
 
2-25. Partition einbinden ..................................................................................................................................... 56
 
2-26. Module installieren..................................................................................................................................... 57
 
2-27. Auswahl Installationsmedium ..................................................................................................................... 58
 
2-28. Installation Kernel und Module................................................................................................................... 58
 
2-29. Konfiguration der Module.......................................................................................................................... 59
 
2-30. Anmerkung Module ................................................................................................................................... 59
 
2-31. Auswahl Module ........................................................................................................................................ 60
 
2-32. Modul Netzwerkkarte Intel Pro 100............................................................................................................ 61
 
2-33. Modul Netzwerkkarte Intel Pro 100............................................................................................................ 61
 
2-34. Modul Netzwerkkarte Intel Pro 100............................................................................................................ 61
 
2-35. Netzwerkkonfiguration............................................................................................................................... 62
 
2-36. Netzwerk .................................................................................................................................................... ??
 
2-37. Netzwerkkonfiguration DHCP.................................................................................................................... 63
 
2-38. IP-Nummer................................................................................................................................................. 64
 
2-39. Broadcast.................................................................................................................................................... 64
 
2-40. Nameserver................................................................................................................................................. ??
 
2-41. Domainname .............................................................................................................................................. 65
 
2-42. Nameserver................................................................................................................................................. 66
 
2-43. Installation Basissystem .............................................................................................................................. 66
 
xvii
 
2-44. Basisinstallation - Schritt 1 ......................................................................................................................... 67
 
2-45. Basisinstallation - Schritt 2 ......................................................................................................................... 67
 
2-46. Basisinstallation - Schritt 3 ......................................................................................................................... 67
 
2-47. Basisinstallation - Schritt 4 ......................................................................................................................... 68
 
2-48. Basisinstallation - Schritt 5 ......................................................................................................................... 68
 
2-49. Basisinstallation - Schritt 6 ......................................................................................................................... 69
 
2-50. System bootfähig machen ........................................................................................................................... 70
 
2-51. LILO Sicherheitshinweis............................................................................................................................ 70
 
2-52. Bootdisk ..................................................................................................................................................... 71
 
2-53. Reboot ........................................................................................................................................................ 71
 
2-54. Letzte Einstellungen................................................................................................................................... 72
 
2-55. Zeitzone - GMT.......................................................................................................................................... 72
 
2-56. Zeitzone - Bereich ...................................................................................................................................... 73
 
2-57. Zeitzone - Stadt .......................................................................................................................................... 73
 
2-58. MD5 Paßwörter .......................................................................................................................................... 74
 
2-59. Shadow Paßwörter...................................................................................................................................... 74
 
2-60. root Paßwort ............................................................................................................................................... 75
 
2-61. root Paßwort ............................................................................................................................................... 76
 
2-62. Benutzer anlegen ........................................................................................................................................ 76
 
2-63. Benutzer - Username.................................................................................................................................. 77
 
2-64. Benutzer - Realname .................................................................................................................................. 77
 
2-65. Benutzer - Passwort.................................................................................................................................... 78
 
2-66. Benutzer - Passwort.................................................................................................................................... 78
 
2-67. PCMCIA entfernen .................................................................................................................................... ??
 
2-68. PPP Installation .......................................................................................................................................... 79
 
2-69. CD Installation, lesen der Pakete ................................................................................................................ 80
 
2-70. CD Installation, lesen einer weiteren CD?.................................................................................................. 80
 
2-71. APT weitere Quelle.................................................................................................................................... 81
 
2-72. Security Updates ........................................................................................................................................ 81
 
2-73. tasksel ......................................................................................................................................................... 82
 
2-74. tasksel ......................................................................................................................................................... 82
 
2-75. dselect......................................................................................................................................................... 83
 
2-76. Package Installation.................................................................................................................................... 83
 
2-77. Paket Konfiguration - less ........................................................................................................................... 84
 
2-78. Paket Konfiguration - locale........................................................................................................................ 84
 
2-79. Paket Konfiguration - locales ...................................................................................................................... ??
 
2-80. Pakete entpacken ........................................................................................................................................ 85
 
2-81. Pakete löschen nach der Installation ........................................................................................................... 86
 
2-82. Installation beendet .................................................................................................................................... 86
 
2-83. Login .......................................................................................................................................................... 86
 
2-84. apt-get dselect-upgrade ............................................................................................................................... 87
 
3-1. cfdisk .......................................................................................................................................................... 125
 
3-2. Locales Konfiguration ................................................................................................................................ 129
 
3-3. Locales Konfiguration ................................................................................................................................ 130
 
4-1. dselect Startbild .......................................................................................................................................... 135
 
4-2. dselect - access ........................................................................................................................................... 136
 
4-3. dselect - select ............................................................................................................................................ 137
 
4-4. apt-setup ..................................................................................................................................................... 142
 
4-5. capt - Startbild ............................................................................................................................................ 159
 
4-6. aptitude ......................................................................................................................................................... ??
 
4-7. GNOME apt ............................................................................................................................................... 163
 
4-8. GNOME apt - source.................................................................................................................................. 164
 
4-9. GNOME apt - source.................................................................................................................................. 165
 
4-10. GNOME apt - source................................................................................................................................ 165
 
4-11. GNOME apt - source................................................................................................................................ 166
 
4-12. GNOME apt - suchen............................................................................................................................... 167
 
4-13. GNOME apt - Symbole............................................................................................................................ 168
 
xviii
 
4-14. GNOME apt ............................................................................................................................................. 169
 
4-15. GNOME apt - Installation ......................................................................................................................... 170
 
4-16. GNOME apt - Installation ......................................................................................................................... 170
 
4-17. orphaner.................................................................................................................................................... 176
 
4-18. editkeep .................................................................................................................................................... 176
 
4-19. tasksel ....................................................................................................................................................... 179
 
4-20. Module installieren - modconf .................................................................................................................. 180
 
4-21. Midnight Commander ............................................................................................................................... 185
 
4-22. GNU Midnight Commander...................................................................................................................... 186
 
5-1. XF86 Setup................................................................................................................................................. 195
 
5-2. XF86 Setup................................................................................................................................................. 196
 
5-3. XF86 Setup................................................................................................................................................. 197
 
5-4. XF86 Setup................................................................................................................................................. 198
 
5-5. XF86 Setup................................................................................................................................................. 199
 
5-6. XF86 Setup................................................................................................................................................. 200
 
5-7. XF86 Setup................................................................................................................................................. 201
 
5-8. Konfiguration von X11............................................................................................................................... 211
 
5-9. Konfiguration von X11............................................................................................................................... 212
 
5-10. Konfiguration von X11............................................................................................................................. 213
 
5-11. Konfiguration von X11............................................................................................................................. 213
 
5-12. Konfiguration von X11............................................................................................................................. 214
 
5-13. Konfiguration von X11............................................................................................................................. 215
 
5-14. Konfiguration von X11............................................................................................................................. 216
 
5-15. Konfiguration von X11............................................................................................................................. 216
 
5-16. Konfiguration von X11............................................................................................................................. 217
 
5-17. Konfiguration von X11............................................................................................................................. 218
 
5-18. Konfiguration von X11............................................................................................................................. 218
 
5-19. Konfiguration von X11............................................................................................................................. 219
 
5-20. Konfiguration von X11............................................................................................................................. 220
 
5-21. Konfiguration von X11............................................................................................................................. 220
 
5-22. Konfiguration von X11............................................................................................................................. 221
 
5-23. Konfiguration von X11............................................................................................................................. 222
 
5-24. Konfiguration von X11............................................................................................................................. 222
 
5-25. Konfiguration von X11............................................................................................................................. 223
 
5-26. Konfiguration von X11............................................................................................................................. 224
 
5-27. Konfiguration von X11............................................................................................................................. 224
 
5-28. Konfiguration von X11............................................................................................................................. 225
 
5-29. Konfiguration von X11............................................................................................................................. 226
 
5-30. XFree 4.x Installation - Debconf Xwrapper.............................................................................................. 228
 
5-31. XFree 4.x Installation - Debconf XFree86 Konfigurationsdatei ............................................................... 228
 
5-32. XFree 4.x Installation - Treiber................................................................................................................. 229
 
5-33. XFree 4.x Installation - Kernel Framebuffer ............................................................................................. 231
 
5-34. XFree 4.x Installation - Tastatur................................................................................................................ 231
 
5-35. XFree 4.x Installation - Tastatur Schritt 2 ................................................................................................. 232
 
5-36. XFree 4.x Installation - Tastatur Schritt 3 ................................................................................................. 233
 
5-37. XFree 4.x Installation - Tastatur Schritt 4 ................................................................................................. 234
 
5-38. XFree 4.x Installation - Tastatur Schritt 5 ................................................................................................. 235
 
5-39. XFree 4.x Installation - Tastatur Schritt 5 ................................................................................................. 236
 
5-40. XFree 4.x Installation - Maus Schnittstelle............................................................................................... 237
 
5-41. XFree 4.x Installation - Maus Protokoll.................................................................................................... 238
 
5-42. XFree 4.x Installation - Monitor Typ ........................................................................................................ 239
 
5-43. XFree 4.x Installation - Monitor horizontaler Sync .................................................................................. 240
 
5-44. XFree 4.x Installation - Monitor vertikaler Sync ...................................................................................... 241
 
5-45. XFree 4.x Installation - Monitor horizontaler Sync .................................................................................. 242
 
5-46. XFree 4.x Installation - Auflösungen ........................................................................................................ 243
 
5-47. xf86cfg - Textmodus ................................................................................................................................ 245
 
5-48. xf86cfg - Textmodus ................................................................................................................................ 245
 
xix
 
5-49. xf86cfg - X11 ........................................................................................................................................... 246
 
5-50. GNOME Display Manager........................................................................................................................ 248
 
5-51. Login.app.................................................................................................................................................. 260
 
5-52. FVWM ..................................................................................................................................................... 265
 
5-53. WindowMaker .......................................................................................................................................... 266
 
5-54. Enlightenment .......................................................................................................................................... 266
 
6-1. GNOME-Logo ........................................................................................................................................... 268
 
6-2. GNOME-Desktop....................................................................................................................................... 269
 
6-3. Sawfish ....................................................................................................................................................... 270
 
6-4. GNOME Panel ........................................................................................................................................... 271
 
6-5. Nautilus ...................................................................................................................................................... 271
 
6-6. Nautilus ...................................................................................................................................................... 272
 
6-7. Nautilus ...................................................................................................................................................... 273
 
6-8. Nautilus ...................................................................................................................................................... 273
 
6-9. GNOME 2 - Logo ...................................................................................................................................... 275
 
6-10. GDM 2...................................................................................................................................................... 276
 
6-11. GDM 2 Konfiguration ............................................................................................................................... 276
 
6-12. GDM 2 grafisch........................................................................................................................................ 277
 
6-13. GNOME 2 Splashscreen ........................................................................................................................... 277
 
6-14. GNOME 2 Desktop.................................................................................................................................. 278
 
6-15. GNOME 2 Menüs .................................................................................................................................... 279
 
7-1. KDE 2.2 KDM ........................................................................................................................................... 281
 
7-2. KDE 2.2 Splashscreen................................................................................................................................ 281
 
7-3. KDE 2.2 Wizard ......................................................................................................................................... 282
 
7-4. KDE 2.2 Wizard ......................................................................................................................................... 283
 
7-5. KDE 2.2 Wizard ......................................................................................................................................... 283
 
7-6. KDE 2.2 Wizard ......................................................................................................................................... 284
 
7-7. KDE 2.2 Wizard ......................................................................................................................................... 285
 
7-8. KDE 2.2 Info .............................................................................................................................................. 285
 
7-9. KDE 3.0 KDM ........................................................................................................................................... 288
 
7-10. KDE 3.0 Wizard ....................................................................................................................................... 288
 
7-11. KDE 3.0 Wizard ....................................................................................................................................... 289
 
7-12. KDE 3.0 Wizard ....................................................................................................................................... 290
 
7-13. KDE 3.0 Wizard ....................................................................................................................................... 290
 
7-14. KDE 3.0 Wizard ....................................................................................................................................... 291
 
7-15. KDE 3.0 Splashscreen.............................................................................................................................. 292
 
7-16. KDE 3.0 Info ............................................................................................................................................ 292
 
8-1. PPPoE Konfiguration - Geräte .................................................................................................................... 304
 
8-2. PPPoE Konfiguration - Suche ..................................................................................................................... 305
 
8-3. PPPoE Konfiguration - eth0 Einrichtung .................................................................................................... 306
 
8-4. PPPoE Konfiguration - Modifikation erlauben ........................................................................................... 307
 
8-5. PPPoE Konfiguration - Übliche Optionen................................................................................................... 308
 
8-6. PPPoE Konfiguration - Benutzername ........................................................................................................ 308
 
8-7. PPPoE Konfiguration - Passwort................................................................................................................. 309
 
8-8. PPPoE Konfiguration - Nameserver............................................................................................................ 310
 
8-9. PPPoE Konfiguration - MSS-Größe............................................................................................................ 311
 
8-10. PPPoE Konfiguration - Automatisch Starten ............................................................................................ 311
 
8-11. PPPoE Konfiguration - Verbindung herstellen.......................................................................................... 312
 
8-12. PPP Statusanzeige .................................................................................................................................... 313
 
8-13. Netscape Communicator ........................................................................................................................... 314
 
8-14. Mozilla ..................................................................................................................................................... 316
 
8-15. Galeon Logo............................................................................................................................................. 318
 
8-16. Galeon Browser........................................................................................................................................ 318
 
8-17. Galeon Installation ................................................................................................................................... 319
 
8-18. Galeon Import Bookmarks....................................................................................................................... 320
 
8-19. Galeon Smart Bookmarks ........................................................................................................................... ??
 
8-20. Galeon GNOME Integration ..................................................................................................................... 321
 
xx
 
8-21. Galeon Proxy Einstellungen..................................................................................................................... 322
 
8-22. lynx........................................................................................................................................................... 324
 
8-23. mutt ............................................................................................................................................................ ??
 
8-24. Netscape - Mail ........................................................................................................................................ 336
 
8-25. Netscape - Mail/Einstellungen .................................................................................................................. 336
 
8-26. Netscape - Mail/Einstellungen .................................................................................................................. 337
 
8-27. Evolution - Startbild ................................................................................................................................. 338
 
8-28. Evolution - Willkommen.......................................................................................................................... 339
 
8-29. Evolution - Identität ................................................................................................................................... ??
 
8-30. Evolution - Erhalten von E-Mail ............................................................................................................... 340
 
8-31. Evolution - Erhalten von E-Mail ............................................................................................................... 341
 
8-32. Evolution - Verschicken von E-Mails ......................................................................................................... ??
 
8-33. Evolution - Zugangsverwaltung ................................................................................................................ 342
 
8-34. Evolution - Zeitzone................................................................................................................................. 343
 
8-35. Evolution - Import von Daten ................................................................................................................... 344
 
8-36. Evolution - Fertig ..................................................................................................................................... 345
 
8-37. Evolution - Übersicht ............................................................................................................................... 346
 
8-38. Evolution - E-Mail ................................................................................................................................... 347
 
8-39. Evolution - Kalender ................................................................................................................................ 348
 
8-40. GNOME FTP ........................................................................................................................................... 351
 
8-41. Bluefish .................................................................................................................................................... 353
 
8-42. Netscape Composer.................................................................................................................................. 354
 
8-43. Screem...................................................................................................................................................... 354
 
9-1. CUPS Diagramm........................................................................................................................................ 366
 
9-2. CUPS Administration - Webinterface ......................................................................................................... 371
 
9-3. CUPS Administration - Übersicht............................................................................................................... 372
 
9-4. CUPS Administration - Gruppen (Classes)................................................................................................. 373
 
9-5. CUPS Administration - Druckaufträge ....................................................................................................... 374
 
9-6. CUPS Administration - Druckerverwaltung ............................................................................................... 375
 
9-7. CUPS Administration - Drucker hinzufügen - Name ................................................................................. 375
 
9-8. CUPS Administration - Drucker hinzufügen - Schnittstelle ....................................................................... 376
 
9-9. CUPS Administration - Drucker hinzufügen - Hersteller ........................................................................... 376
 
9-10. CUPS Administration - Drucker hinzufügen - Treiber ............................................................................. 377
 
9-11. CUPS Administration - Druckerparameter ändern ................................................................................... 378
 
10-1. The Gimp Menü ....................................................................................................................................... 396
 
10-2. The Gimp Menü - Datei ............................................................................................................................ 398
 
10-12. The Gimp Hauptmenü............................................................................................................................ 404
 
10-13. The Gimp - Farbauswahl........................................................................................................................ 405
 
10-14. The Gimp Auswahl - Pinsel .................................................................................................................... 405
 
10-15. The Gimp Auswahl - Muster................................................................................................................... 406
 
10-16. The Gimp Auswahl - Verlauf .................................................................................................................. 406
 
10-17. The Gimp Ebenen................................................................................................................................... 408
 
10-18. The Gimp Menü - Datei/Einstellungen ................................................................................................... 409
 
10-19. The Gimp - Auswahlwerkzeuge.............................................................................................................. 412
 
10-20. The Gimp - Auswahlwerkzeug/Rechteck ............................................................................................... 413
 
10-21. The Gimp - Auswahlwerkzeug/Elipse .................................................................................................... 413
 
10-22. The Gimp - Auswahlwerkzeug/Freihand ................................................................................................ 414
 
10-23. The Gimp - Auswahlwerkzeug/Intelligente Auswahl ............................................................................. 414
 
10-24. The Gimp - Auswahlwerkzeug/Bezier .................................................................................................... 414
 
10-25. The Gimp - Auswahlwerkzeug/Zauberstab............................................................................................. 415
 
10-26. xscanimage Auswahl.............................................................................................................................. 418
 
10-27. xscanimage scannen ............................................................................................................................... 418
 
10-28. xsane Auswahl........................................................................................................................................ 419
 
10-29. xsane scannen......................................................................................................................................... 419
 
10-30. xsane Vorschau....................................................................................................................................... 420
 
10-31. xsane Gimp Menü .................................................................................................................................. 421
 
10-32. xsane Gimp Menü .................................................................................................................................. 422
 
xxi
 
10-33. gPhoto .................................................................................................................................................... 423
 
10-34. gPhoto Einstellungen .............................................................................................................................. 423
 
10-35. gPhoto speichern .................................................................................................................................... 426
 
10-36. gPhoto drucken....................................................................................................................................... 426
 
11-1. OpenOffice.org - Splashscreen.................................................................................................................. 428
 
11-2. .................................................................................................................................................................. 430
 
11-3. OpenOffice.org - spadmin ......................................................................................................................... 431
 
11-4. OpenOffice.org - Textverarbeitung............................................................................................................ 431
 
11-5. .................................................................................................................................................................. 432
 
11-6. OpenOffice.org - Tabellenkalkulation ....................................................................................................... 433
 
12-1. AbiWord ................................................................................................................................................... 436
 
12-2. xpdf........................................................................................................................................................... 437
 
12-3. Acrobat-Reader ........................................................................................................................................ 439
 
13-1. Gnumeric Eingabe.................................................................................................................................... 440
 
13-2. Gnumeric Eingabezeile ............................................................................................................................. 441
 
13-3. Gnumeric Eingabezeile ............................................................................................................................. 442
 
14-1. xmms........................................................................................................................................................ 445
 
14-2. Xmms Playlist .......................................................................................................................................... 447
 
14-3. Xmms Equalizer....................................................................................................................................... 448
 
14-4. Xmms OpenGL Plugin............................................................................................................................. 450
 
14-5. Xmms/Netscape ....................................................................................................................................... 451
 
14-6. Zinf ........................................................................................................................................................... 452
 
14-7. Gqmpeg .................................................................................................................................................... 454
 
14-8. Grip........................................................................................................................................................... 454
 
14-9. Grip........................................................................................................................................................... 456
 
14-10. Kino........................................................................................................................................................ 458
 
14-11. xine ......................................................................................................................................................... 460
 
14-12. Gnomemeeting ....................................................................................................................................... 461
 
14-13. Gnomemeeting - Konfiguration 1/4 ........................................................................................................ 461
 
14-14. Gnomemeeting - Konfiguration 2/4 ........................................................................................................ 462
 
14-15. Gnomemeeting - Konfiguration 3/4 ........................................................................................................ 463
 
14-16. Gnomemeeting - Konfiguration 4/4 ........................................................................................................ 464
 
14-17. Gnomemeeting - Fenster ......................................................................................................................... 465
 
14-18. Gnomemeeting - Übertragung................................................................................................................. 466
 
15-1. Kernel SCSI.............................................................................................................................................. 467
 
15-2. X-CD-Roast.............................................................................................................................................. 469
 
15-3. X-CD-Roast.............................................................................................................................................. 470
 
15-4. X-CD-Roast.............................................................................................................................................. 471
 
15-5. X-CD-Roast.............................................................................................................................................. 473
 
15-6. X-CD-Roast.............................................................................................................................................. 474
 
15-7. gcombust .................................................................................................................................................. 475
 
17-1. MacOS TCP/IP......................................................................................................................................... 496
 
17-2. MacOS DHCP.......................................................................................................................................... 497
 
17-3. Gnosamba................................................................................................................................................. 500
 
17-4. gnomba..................................................................................................................................................... 500
 
17-5. MacOS Auswahl ...................................................................................................................................... 501
 
17-6. MacOS Paßwort ....................................................................................................................................... 502
 
17-7. MacOS Laufwerke ................................................................................................................................... 502
 
18-1. WMBattery............................................................................................................................................... 504
 
18-2. Cardinfo.................................................................................................................................................... 505
 
18-3. USB Kernel Konfiguration ........................................................................................................................ 505
 
18-4. pi-Address ................................................................................................................................................ 515
 
18-5. j-pilot Konfiguration................................................................................................................................. 516
 
18-6. j-pilot Kalender ........................................................................................................................................ 517
 
18-7. j-pilot Adressen ........................................................................................................................................ 517
 
18-8. j-pilot Aufgaben ....................................................................................................................................... 518
 
18-9. j-pilot Suchen ........................................................................................................................................... 519
 
xxii
 
18-10. j-pilot Installation ................................................................................................................................... 519
 
19-1. rcconf........................................................................................................................................................ 527
 
19-2. Webmin - Spracheinstellung ..................................................................................................................... 542
 
19-3. Kategorie Webmin.................................................................................................................................... 542
 
19-4. Kategorie Webmin - Actions Log ............................................................................................................. 543
 
19-5. Kategorie Webmin - Benutzer................................................................................................................... 544
 
19-6. Kategorie Webmin - Konfiguration ........................................................................................................... 545
 
19-7. Kategorie Webmin - Konfiguration - IP-Zugriffskontrolle ....................................................................... 545
 
19-8. Kategorie Webmin - Konfiguration - Anschluss und Adresse .................................................................. 546
 
19-9. Kategorie Webmin - Konfiguration - Protokollierung............................................................................... 547
 
19-10. Kategorie Webmin - Konfiguration - Proxyserver .................................................................................. 547
 
19-11. Kategorie Webmin - Konfiguration - Benutzerschnittstelle .................................................................... 548
 
19-12. Kategorie Webmin - Konfiguration - Module ......................................................................................... 549
 
19-13. Kategorie Webmin - Konfiguration - Betriebssystem ............................................................................. 550
 
19-14. Webmin - Spracheinstellung ................................................................................................................... 551
 
19-15. Webmin - Indexseitenoptionen............................................................................................................... 552
 
19-16. Webmin - Webmin aktualisieren ............................................................................................................. 552
 
19-17. Webmin - Authentication ........................................................................................................................ 553
 
19-18. Webmin - Reassign Modules................................................................................................................... 554
 
19-19. Webmin - Edit Categories ....................................................................................................................... 555
 
19-20. Webmin - Webmin Themes..................................................................................................................... 556
 
19-21. Webmin - Trusted Referers ..................................................................................................................... 557
 
19-22. Kategorie Webmin - Servers ................................................................................................................... 557
 
19-23. Kategorie Webmin - System.................................................................................................................... 558
 
19-24. Kategorie Webmin - System - Benutzer und Gruppen............................................................................ 559
 
19-25. Kategorie Webmin - System - Benutzer und Gruppen - ändern.............................................................. 559
 
19-26. Kategorie Webmin - System - Benutzer und Gruppen - Batch ............................................................... 560
 
19-27. Kategorie Webmin - System - Benutzer und Gruppen - Anmeldungen.................................................. 561
 
19-28. Kategorie Webmin - System - Passwörter ändern................................................................................... 562
 
19-29. Kategorie Webmin - System - Cron-Jobs................................................................................................ 562
 
19-30. Kategorie Webmin - System - Laufende Prozesse .................................................................................. 563
 
19-31. Kategorie Webmin - System - Prozessinformationen ............................................................................. 564
 
19-32. Kategorie Webmin - System - NFS-Exporte........................................................................................... 565
 
19-33. Kategorie Webmin - System - PAM-Authentification............................................................................. 565
 
19-34. Kategorie Webmin - System - Edit PAM Service ................................................................................... 565
 
19-35. Kategorie Server..................................................................................................................................... 566
 
19-36. Kategorie Server - Apache ...................................................................................................................... 567
 
19-37. Kategorie Server - Apache - Prozesse und Grenzwerte .......................................................................... 568
 
19-38. Kategorie Server - Apache - Netzwerk und Adressen ............................................................................ 570
 
19-39. Kategorie Server - Apache - Apache-Module......................................................................................... 571
 
19-40. Kategorie Server - Apache - MIME-Typen............................................................................................. 572
 
19-41. Kategorie Server - Apache - Verschiedenes ............................................................................................ 572
 
19-42. Kategorie Server - Apache - CGI ............................................................................................................ 573
 
19-43. Kategorie Server - Apache - Per-Verzeichniseinstellungen .................................................................... 574
 
19-44. Kategorie Server - Apache - Apache-Module neu konfigurieren............................................................ 575
 
19-45. Kategorie Server - Apache - Definierte Parameter bearbeiten ................................................................ 576
 
19-46. Kategorie Server - Postfix ....................................................................................................................... 576
 
19-47. Postfix Mailserver - Allgemeine Einstellungen ...................................................................................... 577
 
19-48. Postfix Mailserver - Adressumschreibung und Maskierung ................................................................... 579
 
19-49. Postfix Mailserver - Mail-Aliases ........................................................................................................... 579
 
19-50. Postfix Mailserver - Kanonische Verknüpfung ....................................................................................... 580
 
19-51. Postfix Mailserver - Virtuelle Domänen.................................................................................................. 581
 
19-52. Postfix Mailserver - Transportverknüpfung ............................................................................................ 582
 
19-53. Postfix Mailserver - Neu eingerichtete Verknüpfung.............................................................................. 583
 
19-54. Postfix Mailserver - Lokale Lieferung .................................................................................................... 583
 
19-55. Postfix Mailserver - Allgemeine Resourcenkontrolle ............................................................................. 584
 
19-56. Postfix Mailserver - SMTP-Server-Einstellungen................................................................................... 585
 
xxiii
 
19-57. Postfix Mailserver - SMTP-Client-Einstellungen ................................................................................... 586
 
19-58. Postfix Mailserver - Auslieferungsraten.................................................................................................. 587
 
19-59. Postfix Mailserver - Debugging-Funktionen........................................................................................... 588
 
19-60. Kategorie Server - DHCP........................................................................................................................ 589
 
19-61. Kategorie Server - DHCP - Subnet bearbeiten........................................................................................ 590
 
19-62. Kategorie Server - DHCP - Hosts und Hostgruppen............................................................................... 591
 
19-63. Kategorie Server - DHCP - Client Einstellungen.................................................................................... 592
 
19-64. Kategorie Server - DHCP - Vergaben ..................................................................................................... 593
 
19-65. Kategorie Hardware - Festplatten............................................................................................................ 594
 
19-66. Kategorie Hardware - IDE-Parameter bearbeiten ................................................................................... 595
 
19-67. Kategorie Hardware - Partition erstellen................................................................................................. 596
 
19-68. Kategorie Hardware - Bearbeite Mount .................................................................................................. 596
 
19-69. Kategorie Hardware - GRUB.................................................................................................................. 597
 
19-70. Kategorie Hardware - GRUB - Edit Boot Option ................................................................................... 598
 
19-71. Kategorie Hardware - GRUB - Add Boot Option ................................................................................... 599
 
19-72. Kategorie Hardware - GRUB - Global Options ...................................................................................... 600
 
19-73. Kategorie Hardware - GRUB - Install GRUB......................................................................................... 600
 
19-74. Kategorie Hardware - Lilo ...................................................................................................................... 600
 
19-75. Kategorie Hardware - Lilo - Boot-Kernel bearbeiten.............................................................................. 601
 
19-76. Kategorie Hardware - Lilo - Globale Einstellungen ............................................................................... 602
 
19-77. Kategorie Hardware - Lilo - Konfiguration anwenden............................................................................ 603
 
19-78. Kategorie Hardware - Netzwerk.............................................................................................................. 603
 
19-79. Kategorie Hardware - Netzwerk - Netzwerkschnittstellen...................................................................... 603
 
19-80. Kategorie Hardware - Netzwerk - Aktive Schnittstelle bearbeiten ......................................................... 604
 
19-81. Kategorie Hardware - Netzwerk - Routing und Gateways...................................................................... 604
 
19-82. Kategorie Hardware - Netzwerk - DNS-Client ....................................................................................... 605
 
19-83. Kategorie Hardware - Netzwerk - Host-Adressen .................................................................................. 605
 
19-84. Kategorie Hardware - Systemzeit............................................................................................................ 606
 
19-85. Kategorie Hardware - Systemzeit - Konfiguration.................................................................................. 607
 
19-86. Kategorie Andere ................................................................................................................................... 607
 
19-87. Kategorie Andere - Command Shell ....................................................................................................... 608
 
19-88. Kategorie Andere - Eigene Befehle ........................................................................................................ 608
 
19-89. Kategorie Andere - SSH-/Telnet-Login .................................................................................................. 608
 
19-90. Kategorie Andere - System und Server Status ........................................................................................ 609
 
22-1. Digitale Steuerung - Bedienelemente........................................................................................................ 639
 
22-2. Digitale Steuerung - Kabel 6015/6017...................................................................................................... 640
 
22-3. Digitale Steuerung - Kabel 6604............................................................................................................... 641
 
22-4. Digitale Steuerung - j-man Hauptfenster .................................................................................................. 646
 
22-5. Digitale Steuerung - j-man Lok hinzufügen.............................................................................................. 646
 
22-6. Digitale Steuerung - j-man Mehrfachcontroler ......................................................................................... 646
 
22-7. Digitale Steuerung - j-man Goliath ........................................................................................................... 647
 
22-8. Digitale Steuerung - loco-panel................................................................................................................. 647
 
22-9. Digitale Steuerung - rcman ....................................................................................................................... 649
 
22-10. Digitale Steuerung - dtcltiny ................................................................................................................... 650
 
22-11. Digitale Steuerung - dtcltiny New loco / General ................................................................................... 651
 
22-12. Digitale Steuerung - dtcltiny New loco / Funcs ...................................................................................... 652
 
22-13. Digitale Steuerung - dtcltiny New loco / Speeds .................................................................................... 652
 
xxiv
 
Über dieses Buch
 
Dieses Buch beschreibt die Installation des Debian GNU Betriebssystems und führt dann über die Installation
 
von weiteren Paketen und deren Konfiguration zu einem kompletten, sinnvoll konfiguriertem System. Hierbei
 
wird besonders Wert darauf gelegt, daß ein hoher Bezug zur Praxis gewahrt bleibt. Es wird nicht auf jedes
 
einzelne der über 6000 Debian GNU-Pakete eingegangen, noch eine komplette Aufstellung geboten. Anhand
 
einer gut zusammengestellten Auswahl sinnvoller Komponenten führt das Buch zu einem fertigen System, mit
 
dem sowohl im Internet gesurft als auch Briefe geschrieben oder auch Grafiken erstellen werden können.
 
Als Besonderheit wird auch auf die speziellen Anforderungen bei der Installation und Einrichtung von Debian
 
GNU/Linux auf den verschiedenen Architekturen eingegangen. Debian GNU/Linux ist neben der sehr
 
verbreiteten PC-Architektur (i386) auch auf anderen Prozessoren lauffähig. Es wird auf die Architekturen
 
powerpc (Apple PowerPC, IBM RS/6000 ...), m68k (Amiga, Atari, Apple Macintosh) und alpha (DEC Alpha)
 
eingegangen.
 
Die Installation wird auf allen Hardwarearchitekturen auf Basis von Debian GNU/Linux beschrieben, zusätzlich
 
wird für die Intel-Architektur auch die Installation von Debian GNU/Hurd beschrieben.
 
Dieses Buch wurde komplett mittels Freier Software erstellt. Als Betriebssystems diente dabei natürlich von
 
Anfang an Debian GNU/Linux. Der Text wurde mittels VIM erfasst und im DocBook Format erstellt. Grafiken
 
und Screenshots wurden mittels The Gimp erstellt.
 
Die gedruckte Ausgabe dieses Buches ist in der ersten Auflage bei Addison Wesley erschienen und im
 
Buchhandel unter dem Titel „Debian GNU/Linux Anwenderhandbuch“ erhältlich gewesen. Sie beschreibt die
 
Version 2.2 "potato" der Debian GNU/Linux Distribution. Die Originalausgabe der ersten Auflage ist nicht mehr
 
verfügbar, der Sonderdruck der Buchhandlung Lehmanns ist ebenfalls leider vergriffen. Bei der Buchhandlung
 
Lehmanns waren auch preisgünstige Bundles dieses Buches zusammen mit CD-ROMs verfügbar.
 
Momentan wird an einer zweiten Auflage gearbeitet, die digitale Version ist bereits verfügbar. In dieser Auflage
 
wird auf Debian GNU/Linux 3.0 "woody" eingegangen.
 
Eine ständig aktualisierte Version dieses Buches finden sie im Internet unter
 
http://www.openoffice.de/linux/buch/. Weiterhin ist dieses Buch als HTML, PDF und TXT (ab 3.0R1) Version
 
auf den Debian GNU/Linux CD-ROMs enthalten die von Lehmanns Buchhandlung bezogen werden können.
 
i
 
Download / Lokale Kopie
 
Nicht jeder Leser der digitalen Ausgabe kann oder möchte dieses Buch online im Netz lesen. Die Installation
 
auf dem lokalen System oder in einem Intranet ist ausdrücklich erlaubt, ja sogar erwünscht. Achten Sie aber
 
bitte darauf das lokale Kopien in regelmäßigen Abständen aktualisiert werden sollten.
 
Ähnliches gilt für Kopien auf anderen, frei zugänglichen, Webservern im Netz. Auch dies ist gern gesehen,
 
solange der Administrator für eine aktuelle Version sorgt. Danke!
 
Die Debian Pakete zu diesem Buch können auch übers Netz installiert werden, falls Sie ihr System von einer
 
anderen Debian GNU CD installiert haben. Tragen Sie dazu folgende Zeile in die Datei
 
/etc/apt/sources.list ein:
 
deb http://www.openoffice.de/debian/ stable main
 
Danach können die Pakete dahb-html (HTML-Version), dahb-pdf (PDF-Version) und dahb-txt
 
(ASCII-Text Version) installiert werden.
 
Bei einer langsamen Anbindung an das Internet können alternativ zur HTML Version auch die Pakete
 
dahb-html-content (HTML-Dateien) und dahb-html-pics (Bilder zu den HTML-Dateien) installiert
 
werden. Bei Aktualisierungen im Text ist so nicht der erneute, komplette Download aller Bilder notwendig.
 
Wenn Sie noch nicht über ein Debian GNU System verfügen, so finden sich unter
 
http://www.openoffice.de/linux/packages/ auch Pakete für RPM Systeme wie zum Beispiel RedHat, SuSE oder
 
Mandrake.
 
Die HTML Version ist zusätzlich in den Formaten .tgz, .tar.bz2 und .zip auf dem Server verfügbar und
 
somit auf jedem aktuellen Betriebssystem lesbar.
 
Auf dieser Seite findet sich auch eine Version des Buches die auf PDAs der Firma 3Com, also dem beliebten
 
PalmPilot, lesbar ist. Als Viewer für Palm OS steht das Programm „Plucker“ als Freie Software zur Verfügung.
 
„Plucker“ findet sich unter www.plkr.org/.
 
ii
 
Copyright und Lizenz
 
Copyright (c) 1999, 2000, 2001 by Frank Ronneburg. This material may be distributed only subject to the terms
 
and conditions set forth in the Open Publication License, v1.0 (8 June 1999) or later (the latest version of which
 
is available at OpenContent - http://www.opencontent.org/openpub/).
 
iii
 
Unterstützung
 
Dank geht an alle, die mich bei der Arbeit an diesem Buch mit Rat, Tat, Lob und Tips auf technischer und
 
moralischer Seite unterstützt haben.
 
Dies waren (in alphabetischer Reihenfolge): Harald Barth, Uwe Bauermann, Roman Beigelbeck, Holger
 
Blaschka, Wolfgang Borgert, Christoph Claus, Marcus Franke, Ulrich Gehring, Thomas Güttler, Karl-Heinz
 
Haag, Silvia Hasselbach, Andreas Heck, Guido Hennecke, Sebastian Hetze, Werner Heuser, Thomas Hilke,
 
Wolfgang Jährling, Uwe Kerstan, Stephan Knoops, Gerd Knorr, Matthias Kranz, Matthias Maisenbacher,
 
Angelika Meier, Marc F. Neininger, Georg Neis, Mike Neuhaus, Markus Poguntke, Wolfgang Reiser, Wilhelm
 
Schaefer, Matthias Schmitt, Andreas Schockenhoff Friedemann Schorer, Frank Sertic, Max Moritz Sievers,
 
Alexander Stielau, Bernd Sommerfeld, Joachim von Thadden, Andreas Tille, Janto Trappe, Urs Tränkner,
 
Torsten Vogt, Holger Wagemann, Michael Wiedmann, Matthias Wolle, Siegmar Zander.
 
Dank euch allen!
 
iv
 
Kapitel 1. Linux, Debian, Freie Software?
 
Dieser Abschnitt versucht zur Klärung von Begriffen rund um Linux und Freie Software beizutragen.
 
1.1. Was ist GNU/Linux?
 
GNU/Linux ist ein Unix-ähnliches, multiuser/ multitasking Betriebssystem. Es wurde ursprünglich für x86 und
 
kompatible Architekturen entwickelt. Im Laufe der Zeit wurde GNU/Linux aber auch auf viele andere
 
Prozessor-Architekturen portiert.
 
Ein Betriebssystem ist eine Menge von grundlegenden Programmen, die ein Rechner zum Arbeiten benötigt.
 
Der Kern (kernel) ist das Stück Software, welches für alle Basisaufgaben (Zugriffe auf die Hardware usw.) von
 
anderen Programmen zuständig ist. Debian verwendet den Linux-Betriebssystemkern, eine Freie Software, die
 
von Linus Torvalds ins Leben gerufen wurde und heute von über 1000 Programmierern auf der ganzen Welt
 
weiterentwickelt wird. Ein großer Teil der grundlegenden Anwendungen stammt aus dem GNU Projekt und ist
 
ebenfalls frei. GNU steht für „GNU is not Unix“ und wurde von Richard Stallman ins Leben gerufen.
 
1.1.1. Das GNU Projekt
 
Das GNU Projekt wurde 1983 gestartet, um ein vollständig freies Unix-artiges Betriebssystem zu entwickeln -
 
das GNU System. Varianten des GNU Systems, die den Linux Kernel verwenden, sind weit verbreitet; obwohl
 
diese System oft als „Linux“ bezeichnet werden, werden sie korrekter als GNU/Linux Systeme bezeichnet.
 
Richard Stallman kündigte den Start des Projektes durch folgenden Text in den Newsgroup
 
net.unix-wizards und net.usoft an:
 
From CSvax:pur-ee:inuxc!ixn5c!ihnp4!houxm!mhuxi!eagle!mit-vax!mit-eddie!RMS@MIT-OZ
 
From: RMS%MIT-OZ@mit-eddie
 
Newsgroups: net.unix-wizards,net.usoft
 
Subject: new UNIX implementation
 
Date: Tue, 27-Sep-83 12:35:59 EST
 
Organization: MIT AI Lab, Cambridge, MA
 
Free Unix!
 
Starting this Thanksgiving I am going to write a complete
 
Unix-compatible software system called GNU (for Gnu’s Not Unix), and
 
give it away free to everyone who can use it. Contributions of time,
 
money, programs and equipment are greatly needed.
 
To begin with, GNU will be a kernel plus all the utilities needed to
 
write and run C programs: editor, shell, C compiler, linker,
 
assembler, and a few other things. After this we will add a text
 
formatter, a YACC, an Empire game, a spreadsheet, and hundreds of
 
other things. We hope to supply, eventually, everything useful that
 
normally comes with a Unix system, and anything else useful, including
 
on-line and hardcopy documentation.
 
GNU will be able to run Unix programs, but will not be identical
 
to Unix. We will make all improvements that are convenient, based
 
on our experience with other operating systems. In particular,
 
we plan to have longer filenames, file version numbers, a crashproof
 
file system, filename completion perhaps, terminal-independent
 
display support, and eventually a Lisp-based window system through
 
which several Lisp programs and ordinary Unix programs can share a screen.
 
Both C and Lisp will be available as system programming languages.
 
We will have network software based on MIT’s chaosnet protocol,
 
far superior to UUCP. We may also have something compatible
 
with UUCP.
 
1
 
Kapitel 1. Linux, Debian, Freie Software?
 
Who Am I?
 
I am Richard Stallman, inventor of the original much-imitated EMACS
 
editor, now at the Artificial Intelligence Lab at MIT. I have worked
 
extensively on compilers, editors, debuggers, command interpreters, the
 
Incompatible Timesharing System and the Lisp Machine operating system.
 
I pioneered terminal-independent display support in ITS. In addition I
 
have implemented one crashproof file system and two window systems for
 
Lisp machines.
 
Why I Must Write GNU
 
I consider that the golden rule requires that if I like a program I
 
must share it with other people who like it. I cannot in good
 
conscience sign a nondisclosure agreement or a software license
 
agreement.
 
So that I can continue to use computers without violating my principles,
 
I have decided to put together a sufficient body of free software so that
 
I will be able to get along without any software that is not free.
 
How You Can Contribute
 
I am asking computer manufacturers for donations of machines and money.
 
I’m asking individuals for donations of programs and work.
 
One computer manufacturer has already offered to provide a machine. But
 
we could use more. One consequence you can expect if you donate
 
machines is that GNU will run on them at an early date. The machine had
 
better be able to operate in a residential area, and not require
 
sophisticated cooling or power.
 
Individual programmers can contribute by writing a compatible duplicate
 
of some Unix utility and giving it to me. For most projects, such
 
part-time distributed work would be very hard to coordinate; the
 
independently-written parts would not work together. But for the
 
particular task of replacing Unix, this problem is absent. Most
 
interface specifications are fixed by Unix compatibility. If each
 
contribution works with the rest of Unix, it will probably work
 
with the rest of GNU.
 
If I get donations of money, I may be able to hire a few people full or
 
part time. The salary won’t be high, but I’m looking for people for
 
whom knowing they are helping humanity is as important as money. I view
 
this as a way of enabling dedicated people to devote their full energies to
 
working on GNU by sparing them the need to make a living in another way.
 
For more information, contact me.
 
Arpanet mail:
 
RMS@MIT-MC.ARPA
 
Usenet:
 
...!mit-eddie!RMS@OZ
 
...!mit-vax!RMS@OZ
 
US Snail:
 
Richard Stallman
 
166 Prospect St
 
Cambridge, MA 02139
 
2
 
Kapitel 1. Linux, Debian, Freie Software?
 
Um die juristischen und organisatorischen Aspekte des GNU-Projektes zu betreuen sowie um die Verbreitung
 
von und das Verständnis für Freie Software zu fördern, gründete sich die Free Software Foundation. Über die
 
Free Software Foundation entstand die GNU General Public License (GPL) und die GNU Lesser General
 
Public License ( LGPL, ursprünglich GNU Library General Public License genannt), die sich weltweit als die
 
meistverwandten Lizenzen für Freie Software etablieren konnten.
 
Neben der GPL gibt es noch etliche andere Lizenzen, die diese Freiheiten gewähren und sich somit als
 
Lizenzen für Freie Software qualifizieren. Von diesen sollte speziell die FreeBSD-Lizenz erwähnt werden,
 
deren Hauptunterschied zur GPL ist, daß sie die Freiheit nicht zu schützen sucht.
 
Das GNU-Projekt setzt sich zusammen aus Unterprojekten, die von Freiwilligen oder Unternehmen betreut
 
werden und zumeist der Erstellung und Pflege einer funktionalen Komponente dienen. Diese Unterprojekte
 
werden wiederum als „GNU Projekte“ oder „offizielle GNU Projekte“ bezeichnet.
 
Der Name des GNU-Projektes leitet sich von dem rekursiven Akronym „GNU’s Not Unix“, also „GNU ist nicht
 
Unix“ ab. Da Unix ursprünglich nicht nur eine Art von Systemen sondern auch ein kommerzielles Produkt
 
bezeichnete, war dies dazu gedacht, klar zu machen, daß das GNU-Projekt ein System schaffen soll, welches
 
zwar kompatibel zu aber nicht identisch mit Unix ist.
 
1.1.2. Free Software Foundation
 
Die Free Software Foundation ( http://www.fsf.org/) ist eine steuerfreie, gemeinnützige Organisation, die
 
Kapital für die Arbeit am GNU Projekt aufbringt.
 
Die FSF Europe http://www.fsfeurope.org/, widmet sich den europäischen Aktivitäten im Bereich Freie
 
Software. Als offizielle Schwesterorganisation der Free Software Foundation in den Vereinigten Staaten wird
 
sie ihre Aktivitäten im Umkreis des GNU-Projekts konzentrieren, aber nicht auf diese beschränken. Die FSF
 
Europe nahm am 10.März 2001 den Betrieb auf.
 
Die Hauptaufgaben der FSF Europe sind es, Initiativen Freier Software in Europa zu koordinieren, ein
 
Kompetenzzentrum für Politiker und Journalisten bereitzustellen und Infrastruktur für Freie-Software-Projekte
 
und speziell das GNU-Projekt zur Verfügung zu stellen.
 
1.1.3. Geschichte des Linux Kernels
 
Leider ist heute nicht mehr der genaue Tag bekannt an dem Linus Benedict Torvalds (alle Welt nennt ihn nur
 
Linus, also nicht wundern wenn nicht immer der ganze Name genannt wird) mit der Entwicklung des Linux
 
Kernels begann. Jedoch läßt folgendes Posting aus dem Usenet schon recht genau auf die ersten Aktivitäten
 
schliessen:
 
From: torvalds@klaava.Helsinki.FI (Linus Benedict Torvalds)
 
Newsgroups: comp.os.minix
 
Subject: Gcc-1.40 and a posix-question
 
Message-ID: <1991Jul3.100050.9886@klaava.Helsinki.FI>
 
Date: 3 Jul 91 10:00:50 GMT
 
Hello netlanders,
 
Due to a project I’m working on (in minix), I’m interested in the posix
 
standard definition. Could somebody please point me to a (preferably)
 
machine-readable format of the latest posix rules? Ftp-sites would be
 
nice.
 
Die erste Version des Linux Kernels wurde von Linus Torvalds am 17. September 1991 im Usenet angekündigt.
 
Bereits kurz darauf fanden sich einige kompetente Helfer, die begeistert an der Entwicklung teilnahmen.
 
From: torvalds@klaava.Helsinki.FI (Linus Benedict Torvalds)
 
Newsgroups: comp.os.minix
 
Subject: What would you like to see most in minix?
 
3
 
Kapitel 1. Linux, Debian, Freie Software?
 
Summary: small poll for my new operating system
 
Message-ID: <1991Aug25.205708.9541@klaava.Helsinki.FI>
 
Date: 25 Aug 91 20:57:08 GMT
 
Organization: University of Helsinki
 
Hello everybody out there using minix -
 
I’m doing a (free) operating system (just a hobby, won’t be big and
 
professional like gnu) for 386(486) AT clones. This has been brewing
 
since april, and is starting to get ready. I’d like any feedback on
 
things people like/dislike in minix, as my OS resembles it somewhat
 
(same physical layout of the file-system (due to practical reasons)
 
among other things).
 
I’ve currently ported bash(1.08) and gcc(1.40), and things seem to work.
 
This implies that I’ll get something practical within a few months, and
 
I’d like to know what features most people would want. Any suggestions
 
are welcome, but I won’t promise I’ll implement them :-)
 
Linus (torvalds@kruuna.helsinki.fi)
 
PS. Yes - it’s free of any minix code, and it has a multi-threaded fs.
 
It is NOT protable (uses 386 task switching etc), and it probably never
 
will support anything other than AT-harddisks, as that’s all I have :-(.
 
Einen Überblick über die Geschichte der Linux Entwicklung soll folgende Auflistung bieten:
 
Urknall
 
3. Juli 1991
 
Einige Gerätetreiber sowie der Festplattentreiber und einige User-Level Funktionen sind implementiert.
 
0.01
 
17. September 1991
 
Linus veröffentlicht die Version 0.01 des Kernels für einen kleinen Kreis von Leuten die Interesse an der
 
weiteren Entwicklung bekundet haben. Natürlich ist das Archiv mit dieser historischen Version auch heute
 
noch verfügbar: http://www.kernel.org/pub/linux/kernel/Historic/linux-0.01.tar.gz.
 
0.02
 
05. Oktober 1991
 
Die erste „offizielle“ Version des Linux Kernels erscheint. Mit dieser Version laufen bereits die bash, gcc,
 
gnu-make, gnu-sed und compress. Linus kündigt diese Version durch folgendes Posting im Usenet an:
 
From: torvalds@klaava.Helsinki.FI (Linus Benedict Torvalds)
 
Newsgroups: comp.os.minix
 
Subject: Free minix-like kernel sources for 386-AT
 
Message-ID: <1991Oct5.054106.4647@klaava.Helsinki.FI>
 
Date: 5 Oct 91 05:41:06 GMT
 
Organization: University of Helsinki
 
Do you pine for the nice days of minix-1.1, when men were men and wrote
 
their own device drivers? Are you without a nice project and just dying
 
to cut your teeth on a OS you can try to modify for your needs? Are you
 
finding it frustrating when everything works on minix? No more allnighters
 
to get a nifty program working? Then this post might be just
 
for you :-)
 
As I mentioned a month(?) ago, I’m working on a free version of a
 
minix-lookalike for AT-386 computers. It has finally reached the stage
 
where it’s even usable (though may not be depending on what you want),
 
and I am willing to put out the sources for wider distribution. It is
 
4
 
Kapitel 1. Linux, Debian, Freie Software?
 
just version 0.02 (+1 (very small) patch already), but I’ve successfully
 
run bash/gcc/gnu-make/gnu-sed/compress etc under it.
 
Sources for this pet project of mine can be found at nic.funet.fi
 
(128.214.6.100) in the directory /pub/OS/Linux. The directory also
 
contains some README-file and a couple of binaries to work under linux
 
(bash, update and gcc, what more can you ask for :-). Full kernel
 
source is provided, as no minix code has been used. Library sources are
 
only partially free, so that cannot be distributed currently. The
 
system is able to compile "as-is" and has been known to work. Heh.
 
Sources to the binaries (bash and gcc) can be found at the same place in
 
/pub/gnu.
 
ALERT! WARNING! NOTE! These sources still need minix-386 to be compiled
 
(and gcc-1.40, possibly 1.37.1, haven’t tested), and you need minix to
 
set it up if you want to run it, so it is not yet a standalone system
 
for those of you without minix. I’m working on it. You also need to be
 
something of a hacker to set it up (?), so for those hoping for an
 
alternative to minix-386, please ignore me. It is currently meant for
 
hackers interested in operating systems and 386’s with access to minix.
 
The system needs an AT-compatible harddisk (IDE is fine) and EGA/VGA. If
 
you are still interested, please ftp the README/RELNOTES, and/or mail me
 
for additional info.
 
I can (well, almost) hear you asking yourselves "why?". Hurd will be
 
out in a year (or two, or next month, who knows), and I’ve already got
 
minix. This is a program for hackers by a hacker. I’ve enjouyed doing
 
it, and somebody might enjoy looking at it and even modifying it for
 
their own needs. It is still small enough to understand, use and
 
modify, and I’m looking forward to any comments you might have.
 
I’m also interested in hearing from anybody who has written any of the
 
utilities/library functions for minix. If your efforts are freely
 
distributable (under copyright or even public domain), I’d like to hear
 
from you, so I can add them to the system. I’m using Earl Chews estdio
 
right now (thanks for a nice and working system Earl), and similar works
 
will be very wellcome. Your (C)’s will of course be left intact. Drop me
 
a line if you are willing to let me use your code.
 
Linus
 
PS. to PHIL NELSON! I’m unable to get through to you, and keep getting
 
"forward error - strawberry unknown domain" or something.
 
0.03
 
26. Oktober 1991
 
Eine weitere schon benutzbare Version.
 
0.10
 
November 1991
 
0.11
 
19. Dezember 1991
 
Dieses war die erste Version die eigenständig, ohne zuhilfenahme eines anderen Betriebssystemes,
 
lauffähig war. Es gab keinen SCSI Support, aber einige Entwickler arbeiteten bereits daran. Voraussetzung
 
war also eine AT-Bus Festplatte.
 
Es gab weder init noch login, nach den Systemstart landete man direkt in einer bash. Es gab Ansätze
 
für die Implementierung von Virtual Memory, es waren aber mindestens 4MB RAM (vier!) notwendig um
 
5
 
Kapitel 1. Linux, Debian, Freie Software?
 
GNU Programme, insbesondere den GCC benutzen zu können. Ein einfacher Systemstart war aber auch
 
schon mit 2MB möglich.
 
0.11+VM
 
Dezember (Weihnachten) 1991
 
Da viele Leute versuchten den Kernel mit nur 2MB RAM zu übersetzen und dies fehlschlug, wurde diese
 
Version einigen Leuten zugänglich gemacht um die virtuelle Speicherverwaltung zu testen.
 
0.12
 
05. Januar 1992
 
Dies war die erste Version die mehr Funktionen hatte als unbedingt benötigt werden. Mit dieser Version
 
wurde der Kernel unter die GPL gestellt. Die ältere Lizenz unter der der Kernel stand war in vielen
 
Punkten deutlich strenger.
 
0.95
 
März 1992
 
0.96
 
April 1992
 
Dies war die erste Version mit der es möglich war das X-Window System zu betreiben.
 
1.1.4. Linux oder Minix?
 
Am 29. Januar 1992 postete Professor Andrew Tanenbaum, der Entwickler von Minix, in der Newsgroup
 
comp.os.minix einen Artikel der sich zu einer längerem Diskussion ausweitete. Minix war zu dieser Zeit ein
 
Unix-Artiges Betriebssystem welches von Tanenbaum zu Lehrzwecken entwickelt wurde.
 
Hier nun das ursprüngliche Posting von Professor Tanenbaum, der interessierte Leser findet den kompletten
 
Thread unter http://alge.anart.no/linux/history/linux_is_obsolete.txt.
 
From: ast@cs.vu.nl (Andy Tanenbaum)
 
Newsgroups: comp.os.minix
 
Subject: LINUX is obsolete
 
Date: 29 Jan 92 12:12:50 GMT
 
Organization: Fac. Wiskunde & Informatica, Vrije Universiteit, Amsterdam
 
I was in the U.S. for a couple of weeks, so I haven’t commented much on
 
LINUX (not that I would have said much had I been around), but for what
 
it is worth, I have a couple of comments now.
 
As most of you know, for me MINIX is a hobby, something that I do in the
 
evening when I get bored writing books and there are no major wars,
 
revolutions, or senate hearings being televised live on CNN. My real
 
job is a professor and researcher in the area of operating systems.
 
As a result of my occupation, I think I know a bit about where operating
 
are going in the next decade or so. Two aspects stand out:
 
6
 
Kapitel 1. Linux, Debian, Freie Software?
 
1. MICROKERNEL VS MONOLITHIC SYSTEM
 
Most older operating systems are monolithic, that is, the whole operating
 
system is a single a.out file that runs in ’kernel mode.’ This binary
 
contains the process management, memory management, file system and the
 
rest. Examples of such systems are UNIX, MS-DOS, VMS, MVS, OS/360,
 
MULTICS, and many more.
 
The alternative is a microkernel-based system, in which most of the OS
 
runs as separate processes, mostly outside the kernel. They communicate
 
by message passing. The kernel’s job is to handle the message passing,
 
interrupt handling, low-level process management, and possibly the I/O.
 
Examples of this design are the RC4000, Amoeba, Chorus, Mach, and the
 
not-yet-released Windows/NT.
 
While I could go into a long story here about the relative merits of the
 
two designs, suffice it to say that among the people who actually design
 
operating systems, the debate is essentially over. Microkernels have won.
 
The only real argument for monolithic systems was performance, and there
 
is now enough evidence showing that microkernel systems can be just as
 
fast as monolithic systems (e.g., Rick Rashid has published papers comparing
 
Mach 3.0 to monolithic systems) that it is now all over but the shoutin‘.
 
MINIX is a microkernel-based system. The file system and memory management
 
are separate processes, running outside the kernel. The I/O drivers are
 
also separate processes (in the kernel, but only because the brain-dead
 
nature of the Intel CPUs makes that difficult to do otherwise). LINUX is
 
a monolithic style system. This is a giant step back into the 1970s.
 
That is like taking an existing, working C program and rewriting it in
 
BASIC. To me, writing a monolithic system in 1991 is a truly poor idea.
 
2. PORTABILITY
 
Once upon a time there was the 4004 CPU. When it grew up it became an
 
8008. Then it underwent plastic surgery and became the 8080. It begat
 
the 8086, which begat the 8088, which begat the 80286, which begat the
 
80386, which begat the 80486, and so on unto the N-th generation. In
 
the meantime, RISC chips happened, and some of them are running at over
 
100 MIPS. Speeds of 200 MIPS and more are likely in the coming years.
 
These things are not going to suddenly vanish. What is going to happen
 
is that they will gradually take over from the 80x86 line. They will
 
run old MS-DOS programs by interpreting the 80386 in software. (I even
 
wrote my own IBM PC simulator in C, which you can get by FTP from
 
ftp.cs.vu.nl = 192.31.231.42 in dir minix/simulator.) I think it is a
 
gross error to design an OS for any specific architecture, since that is
 
not going to be around all that long.
 
MINIX was designed to be reasonably portable, and has been ported from the
 
Intel line to the 680x0 (Atari, Amiga, Macintosh), SPARC, and NS32016.
 
LINUX is tied fairly closely to the 80x86. Not the way to go.
 
Don‘t get me wrong, I am not unhappy with LINUX. It will get all the people
 
who want to turn MINIX in BSD UNIX off my back. But in all honesty, I would
 
suggest that people who want a **MODERN** "free" OS look around for a
 
microkernel-based, portable OS, like maybe GNU or something like that.
 
Andy Tanenbaum (ast@cs.vu.nl)
 
P.S. Just as a random aside, Amoeba has a UNIX emulator (running in user
 
space), but it is far from complete. If there are any people who would
 
like to work on that, please let me know. To run Amoeba you need a few 386s,
 
one of which needs 16M, and all of which need the WD Ethernet card.
 
7
 
Kapitel 1. Linux, Debian, Freie Software?
 
1.1.5. Linux ®
 
1996-1997 gab es große Verwirrung um den Begriff Linux. Das bei IDG Books erschiene Buch von Naba
 
Barkakati, „Linux Secrets“ trug auf dem Cover den Text: „Linux is a registered trademark of William R. Della
 
Croce, Jr.“. Tatsächlich hatte Mr. Croce den Begriff Linux schützen lassen. Glücklicherweise klärte sich das
 
Problem aber dadurch das die Rechte an Linus abgetreten wurden. Auch zu dieser Geschichte finden sich einige
 
Dokumente im Netz:
 
Is Linux trademarked?, Linux Journal, Nov 1996, Petition to cancel trademark , Action Taken on Linux
 
Trademark, Linux Journal, Mar 1997, Linux Trademark Dispute, Linux Journal, Aug 1997 und Ownership of
 
Linux Trademark Resolved, Linux Journal, Nov 1997.
 
1.1.6. Und dieser Pinguin...?
 
Anfang 1996 waren einige Leute auf der Linux Kernel Mailingliste der Meinung es sei Zeit für ein Linux Logo
 
oder ein Maskottchen. Wie viele solche mehr „phylosophischen“ Diskussionen ergab sich hieraus eine längere
 
Diskussion.
 
Linus legte seine Vorstellungen in folgender Mail am 9. Mai 1996 dar:
 
Re: Linux Logo prototype.
 
Linus Torvalds (torvalds@cs.helsinki.fi)
 
Thu, 9 May 1996 17:48:56 +0300 (EET DST)
 
Somebody had a logo competition announcement, maybe people can send
 
their ideas to a web-site..
 
Anyway, this one looks like the poor penguin is not really strong
 
enough to hold up the world, and it’s going to get squashed. Not a
 
good, positive logo, in that respect..
 
Now, when you think about penguins, first take a deep calming breath,
 
and then think "cuddly". Take another breath, and think
 
"cute". Go back to "cuddly" for a while (and go on breathing), then
 
think "contented".
 
With me so far? Good..
 
Now, with penguins, (cuddly such), "contented" means it has either
 
just gotten laid, or it’s stuffed on herring. Take it from me, I’m an
 
expert on penguins, those are really the only two options.
 
Now, working on that angle, we don’t really want to be associated
 
with a randy penguin (well, we do, but it’s not politic, so we
 
won’t), so we should be looking at the "stuffed to its brim with
 
herring" angle here.
 
So when you think "penguin", you should be imagining a slighly overweight
 
penguin (*), sitting down after having gorged itself, and
 
having just burped. It’s sitting there with a beatific smile - the world
 
is a good place to be when you have just eaten a few gallons
 
of raw fish and you can feel another "burp" coming.
 
(*) Not FAT, but you should be able to see that it’s sitting down because
 
it’s really too stuffed to stand up. Think "bean bag" here.
 
Now, if you have problems associating yourself with something that gets
 
off by eating raw fish, think "chocolate" or something, but
 
you get the idea.
 
8
 
Kapitel 1. Linux, Debian, Freie Software?
 
Ok, so we should be thinking of a lovable, cuddly, stuffed penguin
 
sitting down after having gorged itself on herring. Still with me?
 
NOW comes the hard part. With this image firmly etched on your
 
eyeballs, you then scetch a stylizied version of it. Not a lot of
 
detail - just a black brush-type outline (you know the effect you
 
get with a brush where the thickness of the line varies). THAT
 
requires talent. Give people the outline, and they should say
 
[ sickly sweet voice, babytalk almost ]"Ooh, what a cuddly penguin, I
 
bet he is just _stuffed_ with herring", and small children will
 
jump up and down and scream "mommy mommy, can I have one too?".
 
Then we can do a larger version with some more detail (maybe leaning
 
against a globe of the world, but I don’t think we really want
 
to give any "macho penguin" image here about Atlas or anything). That
 
more detailed version can spank billy-boy to tears for all I
 
care, or play ice-hockey with the FreeBSD demon. But the simple,
 
single penguin would be the logo, and the others would just be
 
that cuddly penguin being used as an actor in some tableau.
 
Linus
 
Die Meinungen ob grade ein Pinguin geeignet wäre Linux nach aussen hin darzustellen gingen auseinander. Es
 
gab die verschiedensten Entwürfe, in den verschiedensten Abwandlungen.
 
Abbildung 1-1. Tux - der Pinguin
 
Linus Torvalds setzte sich schlußendlich durch und so kam es zu einem Pinguin als Logo für Linux. Folgendes
 
Statement von Linus beendete schlieslich die Diskussion.
 
Re: Linux Logo
 
Linus Torvalds (torvalds@cs.helsinki.fi)
 
Sun, 12 May 1996 09:39:19 +0300 (EET DST)
 
9
 
Kapitel 1. Linux, Debian, Freie Software?
 
Umm.. You don’t have any gap to fill in.
 
"Linus likes penguins". That’s it. There was even a headline on it in some
 
Linux Journal some time ago (I was bitten by a Killer Penguin in Australia -
 
I’m not kidding). Penguins are fun.
 
As to why use a penguin as a logo? No good reason, really. But a logo doesn’t
 
really ave to _mean_ anything - it’s the association that counts. And I can
 
think of many worse things than have linux being associated with penguins.
 
Having a penguin as a logo also gives more freedom to people wanting to use
 
linux-related material: instead of being firmly fixed with a specific logo
 
(the triangle, or just "Linux 2.0" or some other abstract thing), using
 
something like a penguin gives people the chance to make modifications that
 
are still recognizable.
 
So you can have a real live penguin on a CD cover, for example, and people
 
will get the association. Or you can have a penguin that does something
 
specific (a Penguin writing on wordperfect for the WP Linux CD, whatever -
 
you get the idea).
 
Compare that to a more abstract logo (like the windows logo - it’s not a
 
bad logo in itself). You can’t really do anything with a logo like that.
 
It just "is".
 
Anyway, go to "http://www.isc.tamu.edu/~lewing/linux/" for some nice examples..
 
Linus
 
Nun brauchte das Kind noch einen Namen. Der erste Hinweiß auf den Namen „Tux“ findet sich in folgender
 
E-Mail:
 
Re: Let’s name the penguin! (was: Re: Linux 2.0 really _is_ released..)
 
James Hughes (jamesh@interpath.com)
 
Mon, 10 Jun 1996 20:25:52 -0400
 
(T)orvolds (U)ni(X) --> TUX!
 
Dieser Name wurde dann auch von der Community akzeptiert. Es gibt noch viele nette Geschichten um das
 
Linux Logo und den Kult der sich darum entwickelt hat. Neben Stofftierchen und Schlüsselanhänger gibt es
 
mittlerweile Linux Pinguine in allen nur denkbaren Erscheinungsformen.
 
Unter http://www.woodsoup.org/projs/tux_aqfh/doc/ finden sich weitere Linux und Informationen zu Tux.
 
1.2. Was ist Debian GNU?
 
Debian ist ein freies Betriebssystem (OS) für Ihren Rechner. Ein Betriebssystem ist eine Menge von
 
grundlegenden Programmen, die Ihr Rechner zum Arbeiten benötigt. Debian verwendet den
 
Linux-Betriebssystemkern, aber die meisten grundlegenden Systemwerkzeuge stammen aus dem GNU-Projekt;
 
daher der Name GNU/Linux.
 
Debian GNU/Linux ist mehr als nur ein Betriebssystem: Es enthält einige tausend Softwarepakete,
 
vorkompilierte Software in einfach zu installierenden Paketen.
 
Das Debian-Projekt ist eine Gemeinschaft von Individuen die in Gemeinschaftsarbeit ein freies Betriebssystem
 
entwickeln. Dieses Betriebssystem wird Debian GNU/Linux genannt, oder einfach nur Debian.
 
10
 
Kapitel 1. Linux, Debian, Freie Software?
 
Debian-Systeme verwenden im Augenblick den Linux-Kern. Linux ist ein von Linus Torvalds begonnenes
 
komplett freies Stück Software, das von tausenden Programmierern weltweit unterstützt wird.
 
Im Gegensatz zu anderen Linux-Distributionen wird Debian GNU, ähnlich wie der eigentliche Linux-Kernel,
 
von einer großen Gruppe von Freiwilligen auf der ganzen Welt zusammengestellt. Eine Übersicht über die
 
weltweite Verteilung der Entwickler ist in der Weltkarte der Entwickler dargestellt. Auf Basis dieser Daten
 
wurden von Edward Betts weitere Auswertungen vorgenommen und Grafiken erstellt. Aus diesen ist
 
beispielsweise ersichtlich das der durchschnittliche Debian Entwickler kurz vor der Küste von Grönland lebt...
 
Der Ergebnisse dieser kuriosen Forschung finden sich auf Edwards Webseite
 
http://people.debian.org/~edward/average/.
 
Für die Kommunikation der Entwickler untereinander und die Verteilung der Pakete dient das Internet. Für
 
jedes der (mittlerweise einige tausend) Debian GNU-Pakete gibt es einen sogenannten „Maintainer“, der dieses
 
Paket betreut. Viele der Maintainer betreuen auch mehrere Pakete.
 
Die Debian-Entwickler haben ihren hohen Anspruch an die freie Verbreitung von Debian im Debian Social
 
Contract festgeschrieben. Sie finden die deutsche Übersetzung im Anhang.
 
1.2.1. Der Name „Debian“
 
Der Name „Debian“ stammt vom Schöpfer der Distribution, Ian Murdock, der den Namen aus dem Namen
 
seiner Frau, Debra, und seinem Vornamen bildete (Deb-Ian). Die offizielle Aussprache für den Namen ist: „deb
 
ee n“.
 
1.2.2. Die Geschichte von Debian
 
Debian 0.01 bis 0.90
 
(August-Dezember 1993): Das Debian Projekt wurde offiziell von Ian Murdock am 16. August 1993
 
gegründet. Ian Murdock began diese neue Distribution als offenes Entwicklungsprojekt, ganz im Sinne des
 
GNU- oder auch des Linux-Kernel Projektes. Dieses Ziel erfüllte zu dieser Zeit keine andere Distribution.
 
Das Debian Projekt wurde vom November 1994 an, vom GNU Projekt der FSF ( Free Software
 
Foundation) für 12 Monate gesponsort.
 
Debian 0.91
 
(Januar 1994): diese Version hatte ein einfaches Paketsystem, mit dem Pakete installiert und gelöscht
 
werden konnten. Ein paar Dutzend Entwickler arbeiteten zu dieser Zeit an Debian.
 
Debian 0.93R5
 
(März 1995): Zu dieser Zeit waren für jedes Paket ein oder mehrere Entwickler zuständig. Das
 
Paketmanagement wurde über dpkg abgewickelt, welches nach der Basisinstallation eingesetzt wird.
 
Im August 1995 startete Hartmut Koptein die erste Portierung von Debian GNU/Linux auf eine Nicht-Intel
 
Plattform. Hartmut schreib zu seinen ersten Versuchen mit der m68k Architektur: „Many, many packages
 
were i386-centric (little endian, -m486, -O6 and all for libc4) and it was a hard time to get a starting base
 
of packages on my machine (an Atari Medusa 68040, 32 MHz). After three months (in November 1995), I
 
uploaded 200 packages from 250 available packages, all for libc5!“
 
Später startete er, zusammen mit Vincent Renardias und Martin Schulze, eine weitere Portierung, diesmal
 
auf die PowerPC Platform.
 
Debian 0.93R6
 
(November 1995): dselect wurde eingeführt. Dies war die letzte Debian-Version, die noch auf dem
 
Binärformat a.out basierte. Circa 60 Entwickler arbeiten an Debian GNU/Linux.
 
11
 
Kapitel 1. Linux, Debian, Freie Software?
 
Debian 1.1
 
Buzz (Juni 1996): Die erste Version mit einem sogenannten Codenamen. Wie alle späteren stammt auch
 
dieser Codename aus dem Film „Toy Story“. Diese Idee wurde von Bruce Perens, der zu dieser Zeit der
 
„Project Leader“ war, eingeführt. Diese Version benutzte ausschließlich das neue ELF-Format sowie die
 
Kernel Version 2.0 und umfaßte 474 Pakete.
 
Ian kommentierte den neuen Project Leader wie folgt: „Bruce was the natural choice to succeed me, as he
 
had been maintaining the base system for nearly a year, and he had been picking up the slack as the amount
 
of time I could devote to Debian declined rapidly.“
 
Bruce initiierte viele wichtige Projekte innerhalb des Debian Projektes, hierzu gehören die Debian Free
 
Software Guidelines, der Debian Social Contract, das Open Hardware Project. Weiterhin war Bruce
 
massgeblich an der Bildung von SPI ( Software in the Public Interest, Inc.) beteiligt.
 
Debian 1.2
 
Rex (Dezember 1996): 848 Pakete, 120 Entwickler.
 
Debian 1.3
 
Bo (Juli 1997): 974 Pakete, 200 Entwickler.
 
Debian 2.0
 
Hamm (Juli 1998): Die erste Debian-Version, die neben der i386-Architektur auch die
 
m68k-Rechnerfamilie, also Amiga, Atari und Macintosh Computer, unterstützte. Diese Version, mit Ian
 
Jackson als Project Leader, basierte bereits auf der glibc2 (oder aus historischer Sicht: libc6), hatte über
 
1500 Pakete, und circa 400 Entwickler stellten die Pakete zusammen.
 
Wichert Akkerman lösste Ian Jackson als Project Leader im Januar 1999 ab.
 
Debian 2.1
 
Slink (09 März 1999): Ab dieser Version wurden zusätzlich die Architekturen Alpha und Sparc unterstützt.
 
Project Leader war Wichert Akkerman, 2250 Pakete gehörten zu dieser Version, die auf 2 offiziellen CDs
 
ausgeliefert wurde. Weiterhin gehörte ab dieser Version apt - als neues Programm zur Paketverwaltung -
 
zum Umfang.
 
Aufgrund einiger unerwarteter Fehler, die in der letzten Minute entdeckt wurden, ist das Erscheinen von
 
Debian 2.1 um eine Woche verschoben worden. Ursprünglich war der 02.03.1999 als Termin ins Auge
 
gefasst worden. Der entscheidende Fehler war, daß dpkg, der Packetmanager, nur funktioniert, wenn die
 
Ortsangabe „locale“" auf der Standardeinstellung ist.
 
Es war den Entwicklern wichtiger, den Ruf der absolute Fehlerfreiheit von Debian zu retten als den Termin
 
einzuhalten.
 
Am 21. April 1999 bildeten die Firma Corel, das K Desktop Projekt (KDE) und das Debian Projekt eine
 
Allianz nachdem Corel verkündete eine eigene Linux Distribution auf Debian-Basis herauszubringen. Im
 
Laufe des Sommers erschien mit Storm Linux (www.stormix.com) eine weitere, auf Debian basierende
 
Linux-Distribution.
 
Zur gleichen Zeit gab sich das Debian Projekt auch ein neues Logo, diesmal in doppelter Ausfertigung. Ein
 
offizielles Logo für die Webseiten und alle von Debian erstellten Materialien und ein unoffizielles Logo für
 
Materialien von anderen Herstellern.
 
Debian 2.2
 
Potato (15. August 2000): Apt ist hier zentraler Bestandteil. Die Anzahl der Pakete wurde gegenüber der
 
Version 2.1 fast verdoppelt. Integration von GNOME, glibc 2.1, Kernel 2.2.13/14, XFree 3.3.6
 
Mit dieser Version wurden auch die Architekturen PowerPC und Arm freigegeben.
 
12
 
Kapitel 1. Linux, Debian, Freie Software?
 
Diese Version ist Joel Klecker gewidmet, einem Debian-Entwickler, der unerwartet im Alter von 21 Jahren
 
starb ( http://www.debian.org/News/2000/20000815).
 
Die Release 1 (Debian GNU/Linux 2.2 R1) wurde am 14.11.2000 freigegeben, die Release 2 folgte am
 
05.12.2000. Die letzte Version, Release 3 folgte am 17.04.2001.
 
Am 29. März 2001 wurde Ben Collins zum neuen Debian Project Leader (DPL) gewählt.
 
Die Release 3 wurde vom Pressesprecher des Projektes, Martin „Joey“ Schulze in folgender Mail
 
angekündigt:
 
Date: Tue, 17 Apr 2001 00:43:00 +0200
 
From: Martin Schulze <joey@finlandia.infodrom.north.de>
 
To: Debian Announcements <debian-announce@lists.debian.org>
 
Subject: Debian GNU/Linux 2.2r3 released
 
Content-Length: 4923
 
Lines: 134
 
------------------------------------------------------------------------
 
The Debian Project http://www.debian.org/
 
Debian GNU/Linux 2.2r3 released press@debian.org
 
April 17, 2001
 
------------------------------------------------------------------------
 
The third revision of Debian GNU/Linux 2.2 (nickname ‘potato’) has
 
been released. This point release, version 2.2r3, mostly includes
 
security updates, along with a few corrections to important bugs in
 
the stable distribution.
 
Upgrading to this revision online can be done by pointing the ‘apt’
 
package tool (see sources.list(5) manual page) to one of Debian’s many
 
FTP mirrors. A list is available at:
 
<http://www.debian.org/distrib/ftplist>
 
Security Updates
 
This release contains the following security updates, for which the
 
Security Team has released the advisory listed.
 
Debian Security Advisory ID Package(s)
 
DSA 004 nano
 
DSA 005 slocate
 
DSA 008 dialog
 
DSA 009 stunnel
 
DSA 010 gnupg
 
DSA 011 mgetty
 
DSA 012 micq
 
DSA 013 mysql, mysql-gpl
 
DSA 014 splitvt
 
DSA 015 sash
 
DSA 016 wu-ftpd
 
DSA 017 jazip
 
DSA 018 tinyproxy
 
DSA 019 squid
 
DSA 021 apache, apache-ssl
 
DSA 022 exmh
 
DSA 024 cron
 
DSA 025 openssh
 
DSA 026 bind
 
DSA 027 openssh
 
DSA 028 man-db
 
DSA 029 proftpd
 
DSA 030 xfree86
 
13
 
Kapitel 1. Linux, Debian, Freie Software?
 
DSA 031 sudo
 
DSA 032 proftpd
 
DSA 033 analog
 
DSA 034 eperl
 
DSA 035 man2html
 
DSA 036 mc, gmc
 
DSA 037 nextaw, xaw3d, xaw95
 
DSA 038 sgml-tools
 
DSA 039 glibc
 
DSA 040 slrn
 
DSA 042 gnuserv, xemacs21
 
DSA 044 mailx
 
DSA 047 kernel
 
19 Nov 2000 cupsys
 
21 Nov 2000 ethereal
 
20 Nov 2000 tcpdump
 
Miscellaneous Bugfixes
 
acroread Corrected NLS handling
 
aview Corrected dependencies
 
boot-floppies Many improvements
 
cslatex Important correction
 
elvis-tiny Corrected file recovery
 
glibc Corrected security upload
 
mtools Corrected for arm architecture
 
netpbm,-nonfree hpcdtoppm is non-free, sorry
 
nvi Fixes potential file corruption
 
postfix Fixes potential black hole for mails
 
postgresql Fixes potential data loss
 
python Fixes file creation problem
 
syslog-ng Fixes potential DoS problem
 
w3m, w3m-ssl Fixes old security problem
 
watchdog Fixes suspicious reboots
 
xpdf, xpdf-i Correction to security update
 
xtide Fix copyright violation
 
xviddetect Added support for more graphic cards
 
yaboot Fixes a serious booting bug
 
A complete list of all accepted and rejected packages together with
 
rationale can be found here:
 
<http://people.debian.org/~joey/2.2r3/>
 
URLs
 
A complete list of the packages that have changed with this
 
release can be found at:
 
<http://http.us.debian.org/debian/dists/Debian2.2r3/ChangeLog>
 
<http://non-us.debian.org/debian-non-US/dists/Debian2.2r3/non-US/ChangeLog>
 
The current stable distribution can be found at:
 
<ftp://ftp.debian.org/debian/dists/stable>
 
<ftp://non-us.debian.org/debian-non-US/dists/stable>
 
Proposed updates to the stable distribution can be found at:
 
<ftp:/ftp.debian.org/debian/dists/proposed-updates>
 
<ftp:/non-us.debian.org/debian-non-US/dists/proposed-updates>
 
Stable distribution information (release notes, errata, etc.):
 
14
 
Kapitel 1. Linux, Debian, Freie Software?
 
<http://www.debian.org/releases/stable/>
 
Security announcements and information:
 
<http://security.debian.org/>
 
About Debian
 
The Debian Project is an organization of free software developers who
 
volunteer their time and effort in order to produce completely free
 
operating systems Debian GNU/Linux and Debian GNU/Hurd.
 
Contact Information
 
For further information, please visit the Debian web pages at
 
<http://www.debian.org/> or send mail to <press@debian.org>.
 
Am 5. November 2001 erschien die Release 4 von Debian 2.2. Die dazugehörige Pressemitteilung findet
 
sich unter http://www.debian.org/News/2001/20011105. Dieses Release, Revision 2.2r4, enthält
 
hauptsächlich Sicherheits-Updates sowie Korrekturen von einigen ernsthaften Fehlern in der stabilen
 
Distribution.
 
Die fünfte Revision von Debian GNU/Linux 2.2 (Codename ‘potato’) wurde am 10. Januar 2002
 
freigegeben. Diese Revision enthält hauptsächlich Sicherheits-Aktualisierungen sowie Korrekturen von
 
einigen ernsthaften Fehlern in der stabilen Distribution. Benutzer, die regelmäßig von security.debian.org
 
aktualisieren, werden kaum Pakete aktualisieren müssen. Eine Übersicht der aktualisierten Pakete findet
 
sich unter http://www.debian.org/News/2002/20020110.
 
Mit der sechsten Release wurde am 3. April 2002 eine weitere Aktualisierung der „potato“ Release
 
freigegeben. Eine Übersicht der veränderten Pakete (auch bei dieser Release handelt es sich dabei
 
größtenteils um Sicherheitskritische Veränderungen) ist unter
 
http://http.us.debian.org/debian/dists/Debian2.2r6/ChangeLog und
 
http://non-us.debian.org/debian-non-US/dists/Debian2.2r6/non-US/ChangeLog zu finden.
 
Noch vor der Freigabe von Debian 3.0 erschien am 13. Juli 2002 die siebte Release von Debian 2.2. Diese
 
Revision enthält hauptsächlich Sicherheits-Aktualisierungen sowie Korrekturen von einigen ernsthaften
 
Fehlern in der stabilen Distribution.
 
Debian 3.0
 
Woody wurde am 19.07.2002, nach fast zwei Jahren Entwicklungszeit freigegeben. Der Codename für
 
diese Version wurde mit dem Codefreeze von Potato am 15.01.2000 festgelegt. Am 01.07.2001 startete
 
Anthony Towns (der Release Manager dieser Version) mit folgender Mail die „Freeze“-Phase dieser
 
Version:
 
To: debian-devel-announce@lists.debian.org
 
Subject: Debian 3.0 (woody) Freeze Begins
 
From: Anthony Towns <ajt@debian.org>
 
Date: Sun, 1 Jul 2001 11:04:48 +1000
 
Mail-Followup-To: debian-devel-announce@lists.debian.org
 
Sender: Anthony Towns <aj@azure.humbug.org.au>
 
User-Agent: Mutt/1.2.5i
 
Hello world, and welcome to a new week, a new month, and a new phase of
 
woody’s development cycle.
 
Welcome to the woody freeze.
 
As previously proposed, the freeze will proceed in four phases: first
 
policy will be frozen, followed by the base system, followed by standard
 
installs, and concluding with the remainder of Debian. The aim of this
 
first part of the freeze is to finalise our expectations of the release
 
15
 
Kapitel 1. Linux, Debian, Freie Software?
 
(what we want packages to look like, what architectures we’re going to
 
release) and to prepare ourselves for the freezing the base system by
 
ensuring that the base system is releasable.
 
Note that this does *not* involve a freeze on package development yet:
 
bugfixes, and new features are still welcome, and will continue being
 
added to woody in the usual way. What it does mean is that your packages
 
will be frozen in the near future, so now is probably a good time to
 
limit yourself to only introducing new features that have already been
 
heavily tested upstream, and fixing bugs.
 
In detail, the goals for this phase are:
 
* Finalise debian-policy: accept any further proposals that woody
 
packages should concern themselves with; and ensure -policy is a
 
useful document for people working on quality assurance.
 
Deadline: final version of debian-policy for woody needs to be
 
uploaded to the archive by July 21st.
 
* Finalise our target architectures. As well as alpha, arm, i386,
 
m68k, powerpc and sparc, we have the opportunity to include ia64
 
(Intel’s new 64bit Itanium architecture), hppa (HP’s PA-RISC
 
architecture), mips and mipsel (SGI and Decstation machines), too.
 
Requirements for inclusion in woody are fairly simple and have been
 
met, or are close to being met, by all those architectures. For
 
reference, they are: a working, relatively stable toolchain,
 
a usable system (including all of base and standard; and a fair
 
chunk of optional and extra), and a functional install. (Hurd people,
 
see below)
 
Deadline: someone from each architecture that wants to release
 
needs to mail -release with their current status, and a successful
 
install report by July 24th.
 
* Determine whether cryptographic software can be moved from
 
non-US/main to main. Ben Collins (project leader) is hustling this
 
through the appropriate avenues.
 
Deadline: legal advice needs to be obtained by July 21st.
 
* Ensure the base system is releasable on all architectures:
 
this means making sure we know what packages, exactly, the base
 
system consists of on all architectures; and fixing any and all
 
release critical bugs (ie, with severities critical, grave or
 
serious) in those packages.
 
Deadline: base packages need to be free of RC bugs by July 21st.
 
If all goes well, the next phase will begin on the 1st of August. If
 
all goes incredibly well, we’ll release in November. Ha ha ha.
 
The main risk that may affect moving on to the next phase is the
 
possiblity of finding release critical bugs in the base system that
 
take significant amounts of time to fix.
 
As you’ve noticed by a careful analysis of the subject line, the woody
 
release will be numbered Debian 3.0, in recognition of the large number
 
of changes made since potato. This is, to put it mildly, a somewhat
 
controversial decision, but it’s one I get to make. Personally, I’m
 
pretty happy with the way woody’s progressing, and I think by the time
 
it’s released it’ll easily live up to that number -- and by that I mean
 
16
 
Kapitel 1. Linux, Debian, Freie Software?
 
the "3", not the ".0".
 
On the subject of controversial decisions, one I’m not going to make today
 
is what to call the release after woody. That one will be made when woody
 
is released and a new testing distribution is forked from woody. Besides
 
which, I still haven’t gotten around to rewatching Toy Story.
 
While I may not be too concerned one way or another about the name of the
 
next release, I do have some ideas about how it might be good to handle
 
the next release. My overriding goal for this release was to manage to
 
get a short, controllable freeze; one that we can get over and done with
 
in a few months, rather than letting it drag on for seven months with no
 
end in sight, but this came at a cost of letting the development cycle
 
go on for quite a while: ten and a half months, as it turned out. For
 
the next cycle (assuming this freeze actually turns out to be relatively
 
short and controlled), I think it would be interesting to see if we can
 
do the same thing again, with a short (2 or 3 month) development cycle,
 
for a 5 to 7 month release cycle.
 
Which would mean you mightn’t need to worry too much about not getting
 
the neat new feature you were planning on working on into woody, if
 
that’s any consolation.
 
And on that note, I’m inclined to think Hurd is probably better off
 
targetting the next freeze, (in, say, six to eight months from today)
 
rather than woody. In particular, Hurd is at present both a difficult
 
target to port to (and thus has a quite limited range of software when
 
compared to the Linux ports of Debian) and isn’t able to self install.
 
In short, the freeze, she is begun. Have at it.
 
Cheers,
 
aj
 
--
 
Anthony Towns <ajt@debian.org>
 
Debian Release Manager
 
Am 16. Dezember 2002 folgte die erste Release von Debian 3.0. Hier wurde einige kleinere Probleme
 
behoben und einige Pakete aktualisiert. Mit der sofort darauf folgenden Release 1a erschienen einige neu
 
erstellte Pakete auf den Servern nachdem sich kleinere Probleme ergeben hatten. Die meisten Nutzer
 
bemerkten dies jedoch garnicht...
 
Debian 3.1
 
Als Sarge wird die folgende Debian Version bezeichnet, die Entwicklung hat begonnen.
 
1.2.3. Organisation
 
Der offene Character der Debian Distribution legt die Vermutung nahe das die Entwicklung ungeordnet oder gar
 
chaotisch organisiert ist. Das Gegenteil ist der Fall. Eine fest definierte Struktur legt Aufgabenbereiche,
 
Verantwortlichkeiten und Zuständigkeiten fest. Folgende Grafik gibt einen Überblick über de Organisation:
 
17
 
Kapitel 1. Linux, Debian, Freie Software?
 
Abbildung 1-2. Organisation des Debian Teams
 
1.2.4. Codenamen
 
Wie schon kurz beschrieben stammen die Codenamen der Debian Distribution aus dem Film „Toy Story“ der
 
Firma Pixar. Folgende Figuren wurden bisher benutzt:
 
buzz
 
Buzz Lightyear der Astronaut
 
rex
 
der Dinosaurier
 
bo
 
Bo Peep das Mädchen welches das Schaf behütet
 
hamm
 
das Schweinchen
 
slink
 
Slinky Dog der Spielzeug Hund
 
potato
 
Mr. Potato Head die Kartoffel
 
woody
 
der Cowboy
 
sarge
 
der grüne Soldat
 
Weiterhin wird noch der Name sid verwendet, dies ist der Junge von nebenan der Spielzeug zerstört... Der
 
Name Sid wird für die jeweils in der Entwicklung befindliche Verison verwendet, deshalb steht der Name Sid
 
auch für „Still in development“.
 
18
 
Kapitel 1. Linux, Debian, Freie Software?
 
1.2.5. Debian für alle!
 
Debian GNU/Linux stellt in doppelter Hinsicht ein Betriebssystem für alle dar.
 
Die vollkommen freie Verfügbarkeit des Systems macht es auch für den kleinsten Geldbeutel möglich, an ein
 
umfangreiches System mit vielen hundert Programmen zu kommen. CD-ROMs sind schon für wenige Euro
 
erhältlich. Die Preise für Debian GNU/Linux-CDs liegen meist unter denen anderer Distributionen. Dies liegt
 
nicht daran, daß Debian GNU/Linux minderwertiger ist. Hinter Debian steht keine Firma, die Geld verdienen
 
muß, um zu existieren. Das Kopieren der CDs von Freunden oder Bekannten ist möglich und sogar erwünscht!
 
Die Lizenz erlaubt die Installation von Debian GNU/Linux auf beliebig vielen Computern.
 
Ein weiterer Punkt ist die Verfügbarkeit von Debian GNU/Linux für die unterschiedlichsten
 
Hardware-Architekturen. Somit läßt sich Debian GNU/Linux auf (fast) jedem vorhandenen Computer
 
installieren. Die Palette reicht hierbei von normalen, i386 basierten (Intel, AMD, Cyrix usw.) Maschinen, über
 
PowerPC (Apple PowerMac, IBM RS/6000...), Sun Sparc und UltraSparc, DEC Alpha bis hinunter zu älteren,
 
auf dem Motorola 68000er-Prozessor basierenden Systemen wie Amiga, Atari oder ältere Apple-Rechnern, mit
 
mindestens einer Motorola 68020 CPU und einer MMU (Memory Management Unit), zum Beispiel Amiga
 
3000/4000, Macintosh SE/30 usw.
 
Momentan ist Debian GNU/Linux auf folgenden Architekturen verfügbar, bzw. wird auf diese portiert:
 
Intel x86 („i386“)
 
Die erste Architektur für die Debian GNU/Linux verfügbar war.
 
IA-64 („ia64“, http://www.debian.org/ports/ia64/)
 
Die Intel 64 Bit Architektur, eine relativ neue Portierung.
 
DEC Alpha („alpha“, http://www.debian.org/ports/alpha/)
 
Der erste Release erfolgte mit Debian 2.1. Eine der länger bestehenden Portierungen, und ziemlich stabil.
 
ARM („arm“, http://www.debian.org/ports/arm/)
 
Wurde mit „potato“ freigegeben. Eine neue Portierung, motiviert durch Corels interessante NetWinder
 
Maschine.
 
Motorola m68k („m68k“, http://www.debian.org/ports/m68k/)
 
Erster Release mit der Debian Version 2.0. Der am meisten etablierte Port nach dem Intel x86. Der Debian
 
m68k Port läuft auf einer großen Bandbreite von Computern, die auf der Motorola 68k Prozessorfamilie
 
basieren - im besonderen die Sun3 Workstationfamilie, die Apple Macintosh Personal-Computer, und die
 
Atari und Amiga Personal-Computer.
 
MIPS („mips“, http://www.debian.org/ports/mips/)
 
Relative neue Portierung, die in SGI Computern (debian-mips - big-endian) und Digital DecStations
 
(debian-mipsel - little-endian) verwendet wird.
 
HP PA-RISC („hppa“, http://www.debian.org/ports/hppa/)
 
Eine Portierung von Debian GNU/Linux auf die PA-RISC wurde gerade begonnen. Die Webseiten des
 
Projektes finden sich unter http://parisc-linux.org/.
 
Motorola/IBM PowerPC („powerpc“, http://www.debian.org/ports/powerpc/)
 
Debian/PowerPC wurde mit Debian 2.2 („potato“) das erste Mal offiziell veröffentlicht. Die Portierung
 
läuft auf vielen der Apple Macintosh PowerMac Modellen, den CHRP- und PReP-Rechnern sowie
 
beispielsweise auf einigen IBM RS/6000 Maschinen.
 
Sun SPARC („sparc“, http://www.debian.org/ports/sparc/)
 
Zum ersten Mal mit Debian 2.1 veröffentlicht. Diese Portierung läuft sowohl auf der SPARCstation
 
Familie von Workstations, als auch auf einem Teil ihrer Nachfolger in der Sun4 Architektur.
 
19
 
Kapitel 1. Linux, Debian, Freie Software?
 
Sun UltraSPARC („sparc64“, http://www.debian.org/ports/sparc64/)
 
Dies ist auch der Beginn einer Portierung auf die Sun UltraSPARC (sun4u) Workstation-Familie. Dieser
 
64bit Prozessor hat den Vorteil der Rückwärts-Kompatibilität mit seinem Vorgänger, so daß die
 
UltraSPARC Portierung in der Lage sein wird, Sparc Binärfiles auszuführen.
 
S/390 („s390“, http://www.debian.org/ports/s390/)
 
Ein Port von Debian GNU/Linux auf die S/390-Architektur (IBM Großrechner) wird gerade begonnen.
 
Weitere Portierungen des Debian GNU Systems, die nicht die Hardware betreffen sondern statt dem Linux
 
Kernel einen alternativen Kernel benutzen, sind:
 
Debian GNU/Hurd („hurd-i386“, http://www.debian.org/ports/hurd/)
 
GNU Hurd ist eine völlig neues Betriebssystem, das von der GNU Gruppe aufgebaut wird. In der Tat ist
 
GNU Hurd die letzte Komponente, die es möglich macht, ein komplettes GNU Betriebssystem aufzubauen
 
- und Debian GNU/Hurd wird ein solches (vielleicht sogar das Erste) GNU Betriebssystem sein. Das
 
gegenwärtige Projekt ist auf der i386 Architektur aufgebaut.
 
Debian GNU/NetBSD, (http://www.debian.org/ports/netbsd/)
 
Dies ist eine Portierung des Debian Betriebssystems inklusive apt, dpkg und GNU-Software auf den
 
NetBSD-Kernel. Sie befindet sich im Augenblick in einem sehr vorläufigem Stadium, aber da NetBSD ein
 
Produktionslevel-Kernel ist, sollte sich die Verwendbarkeit von Debian GNU/NetBSD sehr rasch
 
entwickeln. Im Augenblick ist Debian GNU/NetBSD für Intel x86 am weitesten fortgeschritten, aber die
 
Arbeit an der Unterstützung für Alpha-basierende Computer hat bereits begonnen.
 
Debian GNU/MiNT, (http://debian-mint.nocrew.org/)
 
Dies ist eine experimentelle Portierung von Debian auf Basis des MiNT-Kernels, ein Unix-artiger Kernel
 
für Atari m68k Computer.
 
Debian Beowulf, (http://www.debian.org/ports/beowulf/)
 
Obwohl nicht wirklich eine Portierung, so wird Beowulf doch ein Ersatz für viele Großrechner in
 
Forschung und Entwicklung sein. Dieses Projekt arbeitet daran, Beowulf-Cluster unter Debian laufen zu
 
lassen.
 
Die Installation unterscheidet sich auf den verschiedenen Architekturen nur in der Aufteilung der Festplatte
 
sowie im ersten Starten des Linux Kernels. Sobald das Debian GNU/Linux-Installationsprogramm gestartet ist,
 
gestaltet sich die weitere Installation auf allen Architekturen gleich. In diesem Buch werden die notwendigen
 
Schritte für einige Architekturen beschrieben.
 
Natürlich gibt es, durch die unterschiedliche Hardware der verschiedenen Architekturen, einige Details zu
 
beachten, aber dies ist auch bei unterschiedlichen i386-basierten Systemen der Fall. Beispielsweise trifft man
 
bei der i386er-Familie auf diverse verschiedene Typen von Mäusen. Verbreitet sind hier Geräte mit seriellen und
 
mit PS/2-Anschlüssen. Auf Apple Macintosh (m68k und powerpc) wird die Maus über den sogenannten
 
ADB-Anschluß versorgt, die entsprechende Gerätedatei hierzu ist /dev/adbmouse.
 
Man sollte sich also keinesfalls von der Lektüre dieses Buches oder der Installation von Debian GNU/Linux
 
abhalten lassen, auch wenn man keinen i386-basierten Computer sein eigen nennt...
 
Debian GNU/Linux wird aber auch den verschiedenen Ansprüchen an freie Software gerecht. Wenn Sie ein
 
System mit 100% freier Software aufsetzen wollen, so wird Sie Debian GNU/Linux dabei unterstützen. Alle
 
Programme im Bereich main sind von den Maintainern (Betreuern) der Pakete geprüft und entsprechend der
 
Lizenz in diesen Bereich aufgenommen worden. Pakete in diesem Bereich unterliegen beispielsweise keinerlei
 
Einschränkungen in der Nutzung oder in der Verteilung. Sie können diese zur Entwicklung von Gentechnik
 
verwenden und diese Software in jedes Land der Welt exportieren oder von dort importieren. Man kann geteilter
 
Meinung darüber sein, ob man Gentechnik unterstützen will oder nicht, die Lizenz zur Software läßt Ihnen aber
 
jeden Weg frei...
 
20
 
Kapitel 1. Linux, Debian, Freie Software?
 
1.2.6. Vorteile von Debian
 
Die Debian Distribution ist allgemein als qualitativ sehr hochwertig anerkannt. Administratoren die bereits auf
 
Debian setzen wissen die Vorteile zu schätzen. Trotzdem kommt es häufig zu Diskussionen warum dieser
 
Distribution der Vorzug gegenüber anderen, kommerziellen Distributionen gegeben werden sollte. Insbesondere
 
bei strategischen Entscheidungen, beispielsweise der Umstellung oder Aktualisierung von einer großen Anzahl
 
von Systemen, können die folgenden Fakten als Argumentationsgrundlage helfen.
 
Das Debian Team hat die Vorteile von Debian auf der Webseite http://www.debian.org/intro/why_debian
 
zusammengefasst.
 
Debian wird von den Benutzern gewartet
 
Das komplette Debian System wird von den Benutzern selber entwickelt. Einige hundert Entwickler
 
betreuen jeweils ein oder mehrere Programmpakete die auch von dem jeweiligen Entwickler selbst
 
eingesetzt werden. Daraus resultiert ein hohes Interesse an der Funktions- und Integrationsfähigkeit eines
 
jeden Paketes. Sollte dennoch ein Problem auftauchen so wird der Entwickler mit Sicherheit ein hohes,
 
persönliches Interesse an der schnellen Beseitigung des Problems haben.
 
Zuverlässigkeit zuerst
 
Debian setzt auf eine konservative Auswahl von Komponenten. Es ist wichtiger das das Gesamtsystem in
 
jedem Fall funktioniert, auch wenn dafür an manchen Stellen auf etwas Komfort verzichtet werden muß.
 
Als Beispiel sei hier die Verwendung des Kernels 2.2.x auch noch in der Debian Release 3.0 genannt. Auf
 
den Einsatz des Kernels in der Version 2.4.x wurde verzichtet da das Team der Meinung ist das die neue
 
Version noch nicht ausgereift genug ist und auch der Kernel 2.2 alle notwendigen Funktionen mitbringt.
 
Natürlich stehen Pakete mit dem Kernel 2.4 zur Verfügung, diese können bei Bedarf einfach installiert
 
werden.
 
Lange Releasezyklen
 
Die Lebensdauer einer Debian Version beträgt bisher mindestens ein Jahr. Debian 2.2 (potato) „überlebte“
 
sogar über 18 Monate. Dies bedeutet einen guten Investitionsschutz in die geleistete Arbeit. Natürlich
 
bedeutet dies nicht das diese Version veraltet oder gar unsicher ist, Softwareupdates werden umgehend bei
 
Bedarf zur Verfügung gestellt und können sehr einfach installiert werden.
 
Sicherheit
 
Debian nimmt die Sicherheit sehr ernst. Der grösste Teil der Probleme, auf die das Team aufmerksam wird,
 
ist innerhalb von 48 Stunden korrigiert.
 
Die Erfahrung zeigt, dass „Sicherheit durch Verschleierung“ (englisch: „security trough obscurity“) nicht
 
funktioniert. Die öffentliche Entschleierung erlaubt es, bessere Lösungen für Sicherheits-Probleme
 
schneller zu finden. Die Seite http://www.debian.org/security/ zeigt den Stand von Debian in bezug auf
 
verschiedene bekannte Sicherheits-Mängel, die auch Debian betreffen könnten.
 
Um die neuesten Debian Sicherheitsgutachten zu erhalten, tragen Sie sich in die debian-security-announce
 
Mailing-Liste ein. Sie können apt verwenden, um ganz einfach die neuesten Sicherheitsupdates
 
einzuspielen.
 
Bitte schicken Sie sicherheitsspezifische Fehlermeldungen an security@debian.org. (Entwickler mögen die
 
Mailing-Listen „debian-security“ und „debian-security-private“ verwenden, um die Mitglieder des
 
Security Teams über Probleme in ihren Paketen zu informieren.)
 
Einfach Installation
 
Wenn Sie gehört haben, Linux und speziell Debian sei schwierig zu installieren, dann haben Sie noch keine
 
aktuelle Debian-Version ausprobiert. Der Installations-Vorgang wird stetig verbessert. Sie können die
 
Installation direkt von DOS, von CD oder über das Netzwerk vornehmen. Die Beschränkung auf den
 
kleinsten gemeinsamen Nenner garantiert die Funktion auf jeder Hardware.
 
21
 
Kapitel 1. Linux, Debian, Freie Software?
 
Upgradefähigkeit
 
Ein Debian GNU System kann mit verschiedenen Methoden auf eine neue Version (beispielsweise von 2.2
 
auf 3.0) aktualisiert werden. Dies kann per CD-ROM oder per Netzwerk von einem Server erfolgen. Ein
 
Neustart des Systems ist dabei nicht erforderlich. Auch Aktualisierungen über mehrere Versionen hinweg,
 
beispielsweise von 1.3 direkt auch die Version 3.0, sind durch das ausgereifte Paketmanagement möglich.
 
Dies ist im kommerziellen Umfeld ein nicht zu unterschätzender Vorteil, da so bestehende Systeme mit
 
einer minimalen Downtime auf den aktuellen Stand gebracht werden können.
 
Vergleiche mit andere Distributionen haben gezeigt das dies ein einmaliges Feature von Debian ist.
 
Verfügbarkeit
 
Debian ist nicht nur auf CD-ROMs verfügbar. Über 150 FTP Server weltweit stellen diese Distribution zur
 
Verfügung, einer davon steht sicher auch in Ihrer Nähe. Ein Liste finden Sie unter
 
http://www.debian.org/misc/README.mirrors.
 
Architekturen
 
Debian ist für die verschiedensten Hardwarearchitekturen verfügbar und unterstützt neben dem Linux
 
Kernel beispielsweise auch den Hurd-Kernel (siehe Debian für alle!)
 
Ein Administrator eines heterogenen Netzwerkes hat damit den Vorteil das gleiche Betriebssystem und
 
sogar die gleiche Version auf allen Maschinen betreiben zu können. Dies senkt den Wartungsaufwand
 
deutlich.
 
Große Auswahl an Software-Paketen
 
Debian beinhaltet fast 7000 verschiedene Software-Pakete. Jedes einzelne Stück ist freie Software. Wenn
 
Sie kommerzielle Software einsetzen, die unter Linux läuft, dann können Sie diese immer noch benutzen -
 
es kann sogar sein, dass es eine Installations-Routine in Debian gibt, die die Software automatisch
 
installiert und einrichtet.
 
Klare Trennung von Nicht-Freier Software
 
Debian legt großen Wert auf den Einsatz von Freier Software. Sie können sicher sein das ausschliesslich
 
Freie Software auf Ihrem System installiert wird, wenn Sie dieses System im kommerziellen Einsatz
 
betreiben oder Systeme an Kunden verkaufen, so müssen Sie sich nicht um Lizenzen kümmern. Software
 
die nicht unter einer Lizenz steht die den Anforderungen an Freie Software gerecht wird, kann natürlich
 
auch eingesetzt werden, hierfür wurde der Bereich „non-free“ eingerichtet.
 
Integration
 
Debian Pakete sind sehr gut in das Gesamtsystem integriert. Diverse Programme und Werkzeuge tragen zu
 
einem konsistenten und aufgeräumten System bei.
 
Die Basis hierfür sind fein abgestimmte Abhängigkeiten (dependencies) zwischen den Paketen. Das
 
Menüsystem, welches alle populären Programme in die Menüs der verschiedenen Windowmanager
 
integriert, die Dokumentation zu allen Paketen welche sowohl auf der Kommandozeile als auch über Web
 
verfügbar ist und die Unterstützung von verschiedenen Versionen eines Programmes (beispielsweise
 
mehrere vim Versionen) machen Debian einmalig.
 
Die Installation eines Paketes erzwingt durch die definierten Abhängigkeiten auch die Installation der
 
benötigten Bibliotheken. Nicht-funktionierende Pakete nach der Installation gibt es somit unter Debian
 
GNU nicht.
 
Die übersichtliche Implementation der SysV Bootscripte vereinfacht die Administration und erleichtert die
 
Fehlersuche. Updates werden so ebenfalls einfacher, auch wenn selber Veränderungen an den Scripten
 
vorgenommen wurden.
 
Zusätzlich können update-rc.d und rc benutzt werden um die SysV Initscripte durch eigene zu ersetzen.
 
22
 
Kapitel 1. Linux, Debian, Freie Software?
 
Quellcode
 
Für alle Pakete in der Distribution ist der Quellcode (Source) verfügbar. Die gesamte Distribution ist Freie
 
Software nach den Debian Free Software Guidelines (Die Debian-Richtlinien für freie Software) das
 
bedeutet, jeder kann Pakete verbessern und weitergeben.
 
Der Quellcode der Pakete und die von Debian Team vorgenommenen Veränderungen werden in getrennten
 
Dateien gehalten. Somit ist es nicht notwendig die kompletten Quellen zu besorgen wenn ein neues Debian
 
Paket erstellt werden soll. Dies ist insbesonderen bei großen Paketen (emacs, XFree86, gcc usw.) wichtig
 
und kann einiges an Kosten sparen.
 
Hohe Qualität
 
Die Betreuer (Maintainer) der Pakete haben ein hohes presönliches Interesse an den von ihnen betreuten
 
Paketen. Die meisten von ihnen betreuen ein solches Paket weil sie es selber einsetzen. Das Ergebnis sind
 
Pakete von höchster Qualität, die von hochmotivierten und technisch versierten Personen erstellt werden.
 
Insgesamt führt dies zu einer hochqualitativen Distribution.
 
Vorkonfiguration
 
Jedes Debian Paket ist bereits sinnvoll vorkonfiguriert. Dadurch ist jedes Paket sofort nach der Installation
 
einsatzbereit. Natürlich kann auch jedes Paket noch nachträglich von Hand konfiguriert werden. Die
 
vorgenommenen Änderungen werden bei einem Update beibehalten.
 
Fehlerdatenbank
 
Das Bug Tracking System verwaltet alle bekannten Fehler in der Debian Distribution und ist öffentlich
 
zugänglich. In den meisten Fällen werden Fehler in wenigen Tagen beseitigt.
 
Es wird nicht versucht, die Tatsache, dass Software nicht immer so funktioniert wie sie soll, zu
 
verheimlichen. Benutzer können Fehlerberichte einschicken und werden informiert, wenn der
 
Fehlerbericht abgeschlossen wird. Dieses System erlaubt es dem Debian Team, auf Probleme sehr schnell
 
und ehrlich zu reagieren. Die Geschichte zeigt, dass das Prinzip „Sicherheit durch Undurchschaubarkeit“
 
(„security through obscurity“) nicht funktioniert.
 
Qualitätssicherung
 
Das Debian Projekt legt mehr Wert auf Qualität und Stabilität als auf schnelle Neuerscheinungen. Wenn
 
eine neue Debian Version erscheint sind alle schwerwiegenden Fehler beseitigt und es wurde eine
 
ausgiebige Testphase durchlaufen.
 
Die gesamte Distribution wird von den Entwicklern und von interessierten Benutzern vom Anfang der
 
Entwicklung an getestet. Die gesammte Entwicklungsversion steht während der gesamten
 
Entwicklungszeit zum Download bereit.
 
Einen Überblick über den aktuellen Stand der Pakete in Bezug auf bekannte Fehler kann man sich auf den
 
Webseiten der „Debian Quality Assurance“ unter bugs.debian.org verschaffen.
 
Remote Administration
 
Das gesamte Debian GNU System kann remote Administriert werden. Dies umfasst sowohl die
 
Konfiguration und die Paketverwaltung als auch das hinzufügen und löschen von Paketen.
 
Dieses einmalige Feature von Debian kann ohne einen Reboot des Systems zur Aktualisierung eines
 
Systems genutzt werden. Lediglich die grade aktualisierten Dienste stehen unter Umständen für einige
 
Minuten nicht zur Verfügung.
 
23
 
Kapitel 1. Linux, Debian, Freie Software?
 
Syslog
 
Debian benutzt auch für die Logdateien der Programme eine einheitliche Struktur. Sie werden in den
 
Dateien im Verzeichnis /var/log/ die Einträge finden die Sie dort erwarten.
 
Support
 
Debian hat kein Büro in irgendeinem Land dieser Welt mit einem Supportteam. Dies hat sich als großer
 
Vorteil erwiesen, da alle Fragen auf den Mailinglisten innerhalb weniger Stunden beantwortet werden.
 
Die Verantwortung für den Support wird somit von der Gemeinschaft der Debian Benutzer getragen und
 
nicht in fremde Hände gegeben.
 
Ein Frage, die Sie an eine der Mailing-Listen schicken, wird oft innerhalb einer Viertelstunde beantwortet,
 
gratis und durch Entwickler. Vergleichen Sie das mit typischem Telefon-Support: Stunden am Telefon
 
verbracht, gegen teureres Geld und nur um jemanden an den Draht zu bekommen, der das System nicht
 
mal genügend gut kennt, um Ihre Frage zu verstehen.
 
1.2.7. Umfang der Distribution
 
Auch wenn man die Größe betrachtet liegt die Debian Distribution ganz vorne. Hierbei bezieht sich Größe nicht
 
nur auf die Anzahl der Pakete sondern auch auf die Anzahl der Codezeilen der Pakete. Ein Team von spanischen
 
Debian Benutzern hat sich die Mühe gemacht verschiedene Daten zur Potato Release zsammenzutragen. Die
 
Ergebnisse wurden bereits in verschiedenen Magazinen veröffentlicht und sind natürlich auch im Web unter
 
http://people.debian.org/~jgb/debian-counting/ einzusehen.
 
1.2.8. Auf Debian GNU basierende Distributionen
 
Debian GNU/Linux wird als Basis von einigen kommerziellen Distributionen eingesetzt. Die Hersteller
 
ergänzen Debian an einigen Punkten wie zum Beispiel bei der Installation und legen ein gedrucktes Handbuch
 
bei. Support vom Hersteller via Telefon oder E-Mail wird teilweise ebenfalls geboten.
 
Dem Open Source Gedanken entsprechend stellen die Hersteller Teile oder auch die gesamten
 
Eigenentwicklungen wieder als Freie Software zur Verfügung. Einige dieser Entwicklungen sind auch bereits in
 
die Debian GNU/Linux Distribution eingeflossen.
 
Natürlich gibt es auch einige Distributionen die auf Debian basieren und ebenfalls freie Software sind. Die
 
solide Basis von Debian ist in allen Entwicklerlagern hochgeschätzt.
 
Natürlich stellen die Entwickler während der Arbeit an dem Produkt auch Fehler in der Software oder in den
 
Debian Paketen fest. Auch diese Ergebnisse werden gemeldet bzw. von en Entwicklern gleich gefixt und
 
fliessen wieder in das Gesamtprojekt ein.
 
Folgende Distributionen basieren aus Debian GNU/Linux:
 
Corel Linux
 
Homepage: http://linux.corel.com.
 
VA Linux
 
Homepage: http://www.valinux.com.
 
FederalLinux
 
Homepage: http://rhinohide.cx/fedlinux/.
 
Stormix
 
Leider mußte die Firma Stormix den Geschäftsbetrieb aufgrund von finanziellen Schwierigkeiten
 
einstellen. Homepage: http://www.stormix.com/.
 
24
 
Kapitel 1. Linux, Debian, Freie Software?
 
Demudi
 
(Debian Multimedia Distribution) ist keine eigentliche Distribution. Auf der Basis von Debian
 
GNU/Linux wurde die Distribution um Multimedia Pakete (Audio, Grafik und Video) ergänzt. Weiterhin
 
wurde der Kernel um mit Realtime Funktionen ausgestattet um die Bearbeitung von Daten in Echtzeit zu
 
ermöglichen. Homepage: http://www.demudi.org.
 
Tomukas
 
Tomukas ist eine auf Debian basierende Distribution die auch auf Rechnern mit nur 4MB Hauptspeicher
 
und 386er Prozessor installierbar ist. Auch wenn diese Distribution sehr klein gehalten ist, ist eine
 
Festplatte zur Installation und zum Betrieb notwendig.
 
Homepage: http://melkor.dnp.fmph.uniba.sk/~garabik/tomukas/.
 
Progeny
 
Homepage: http://www.progeny.com.
 
Openrock
 
Homepage: http://www.openrock.net.
 
Debian JP
 
Homepage: http://www.debian.or.jp/.
 
PingOO
 
Homepage: http://www.linuxedu.org/.
 
Linux-YeS
 
Homepage: http://eugene.mplik.ru/doc/lys/.
 
M.N.I.S. Linux
 
Homepage: http://www.mnis.fr/.
 
Linux Router Project
 
Homepage: http://www.linuxrouter.org/.
 
KNOPPIX
 
KNOPPIX ist eine komplett von CD lauffähige Zusammenstellung von GNU/Linux-Software mit
 
automatischer Hardwareerkennung und Unterstützung für viele Grafikkarten, Soundkarten, SCSI-Geräte
 
und sonstige Peripherie. KNOPPIX kann als Linux-Demo, Schulungs-CD, Rescue-System oder als
 
Plattform für kommerzielle Software-Produktdemos angepasst und eingesetzt werden. Es ist keinerlei
 
Installation auf Festplatte notwendig. Auf der CD können durch transparente Dekompression bis zu 2
 
Gigabyte an lauffähiger Software installiert sein.
 
Homepage: http://www.knoppix.de/.
 
Floppix
 
Homepage: http://floppix.ccai.com/.
 
Dlite
 
Homepage: http://opensrc.org/dlite/dlite.html.
 
Homepage: http://www.libranet.com/.
 
25
 
Kapitel 1. Linux, Debian, Freie Software?
 
1.2.9. Das Debian GNU Logo
 
Das Debian Logo ist in zwei Versionen, einer offiziellen und einer öffentlichen, verfügbar. Die öffenliche
 
Version kann immer verwendet werden wenn auf das Debian Projekt verwiesen werden soll. Ein Link auf die
 
Webseite des Projektes sollte dabei selbstverständlich sein.
 
Abbildung 1-3. „Open Use“ Logo - „Swirl“
 
Das Offizielle Logo darf nur im Zusammenhang mit Produkten eingesetzt werden die mittels einer
 
dokumentierten Prozedur hergestellt wurden, beispielsweise die offiziellen Debian CD-ROMs, oder wenn eine
 
besondere Genehmigung vom Projekt vorliegt.
 
Abbildung 1-4. Offizielles Logo
 
26
 
Kapitel 1. Linux, Debian, Freie Software?
 
Beide Logos finden sich in den verschiedensten Formaten auf der Seite http://www.debian.org/logos/.
 
Weiterhin ist das Debian Logo auch im ASCII Format verfügbar. Diese Version kann beispielsweise als Ersatz
 
für die Datei /etc/issue dienen. Farbige ASCII-Versionen des Logos finden sich zum Beispiel unter
 
http://people.debian.org/~arthur/debian-issue.sh und http://people.debian.org/~jaqque/debian-issue.sh .
 
Hier eine einfache Version:
 
_,met$$$$$gg.
 
,g$$$$$$$$$$$$$$$P.
 
,g$$P"" """Y$$.".
 
,$$P’ ‘$$$.
 
’,$$P ,ggs. ‘$$b:
 
‘d$$’ ,$P"’ . $$$
 
$$P d$’ , $$P
 
$$: $$. - ,d$$’
 
$$; Y$b._ _,d$P’ _, _, ,’‘.
 
Y$$. ‘.‘"Y$$$$P"’ ‘$$’ ‘$$’ ‘. ,’
 
‘$$b "-.__ $$ $$ ‘’
 
‘Y$$b $$ $$ _, _
 
‘Y$$. ,d$$$g$$ ,d$$$b. $$,d$$$b.‘$$’ g$$$$$b.‘$$,d$$b.
 
‘$$b. ,$P’ ‘$$ ,$P’ ‘Y$. $$$’ ‘$$ $$ "’ ‘$$ $$$’ ‘$$
 
‘Y$$b. $$’ $$ $$’ ‘$$ $$’ $$ $$ ,ggggg$$ $$’ $$
 
‘"Y$b._ $$ $$ $$ggggg$$ $$ $$ $$ ,$P" $$ $$ $$
 
‘"""" $$ ,$$ $$. $$ ,$P $$ $$’ ,$$ $$ $$
 
‘$g. ,$$$ ‘$$._ _., $$ _,g$P’ $$ ‘$b. ,$$$ $$ $$
 
‘Y$$P’$$. ‘Y$$$$P’,$$$$P"’ ,$$. ‘Y$$P’$$.$$. ,$$.
 
1.3. Debian GNU/Hurd
 
GNU Hurd ist ein Unix-Kernel des GNU-Projektes. Hurd besteht, im Gegensatz zum monolitischen
 
Linux-Kernel, aus einem kleinen, dem sogenannten Mikro-Kernel, und vielen als Modulen ausgelegten
 
Erweiterungen. Diese Module können Treiber für Hardware oder verschiedene Dateisysteme sein.
 
Auch beim Linux-Kernel ist es bereits möglich viele Funktionen als Modul zu übersetzen und so den
 
eigentlichen Kernel klein zu halten. Der Linux-Kernel wurde jedoch nicht von Anfang an für ein modulares
 
Konzept ausgelegt so das die Möglichkeiten hier beschränkt sind. Ein fehlerhafter SCSI-Treiber beispielsweise
 
kann das gesamte System lahmlegen.
 
Das dem Hurd-Kernel zugrundeliegende Konzept eines Mikro-Kernels erlaubt es Treiber (für verschiedene
 
Hardware oder Dateisysteme beispielsweise) wie ein normales Programm einzubinden. Ein fehlerhafter Treiber
 
wird so bei einem Absturz nicht auch noch den Kernel mitreissen.
 
Einige Debian Entwickler unterstützen seit einigen Monaten die Entwicklung von Hurd indem sie Pakete für
 
den Hurd Kernel übersetzen und im Netz zur Verfügung stellen. Alle zur Paketverwaltung notwendigen
 
Werkzeuge stehen zur Verfügung.
 
Für die eigentliche Installation von Debian GNU/Hurd stehen bereits CD-Images zum Download bereit. Diese
 
basieren momentan noch auf den Bootdisketten vom Debian GNU/Linux i386, für die Installation von Hurd
 
müssen Sie einmalig für kurze Zeit auf einen Linux Kernel zurückgreifen. Die CD-Images sind bootfähig und
 
sind für die Installation von Debian GNU/Hurd angepasst worden.
 
Debian GNU/Hurd ist ein Debian GNU-System, das den Hurd-Kernel verwendet. Abgesehen vom
 
Kernel-Management wird es genauso installiert und gewartet wie Debian GNU/Linux. Momentan unterstützt
 
27
 
Kapitel 1. Linux, Debian, Freie Software?
 
Hurd lediglich die i386-Architektur, wird aber in Zukunft sicher auch auf andere Architekturen portiert oder
 
auch andere Microkernel benutzen.
 
Weitere Informationen zu Debian GNU/Hurd finden sich auf der Seite http://kt.linuxcare.com/debian-hurd/.
 
1.4. Freie Software / Open Source
 
Debian GNU/Linux ist freie Software, auch Open Source Software genannt – aber warum muß man dann für
 
Debian GNU/Linux etwas bezahlen?
 
Freie Software unterscheidet sich von Freibier in einem ganz entscheidenden Punkt: im Preis. Sicher kann es
 
auch schon mal passieren, daß man eine Debian GNU/Linux-CD kostenlos bekommt, aber der Begriff freie
 
Software beschreibt nicht das Verschenken von CDs. Der Preis, den Sie für eine Debian GNU/Linux-CD
 
bezahlen, setzt sich aus den Kosten für die Zusammenstellung der CD sowie dem Herstellungsprozeß, also dem
 
Pressen der CDs und dem Druck der Dokumentation und des Covers, sowie den Kosten, die dem Hersteller der
 
CDs für den Download der Software entstehen, und schließlich auch den Vertrieb der Pakete, zusammen. Sie
 
können die Debian GNU/Linux-Software auf so vielen Rechnern wie Sie möchten installieren; es fallen
 
keinerlei Lizenzkosten pro Installation an. Sie können die Debian GNU/Linux-CDs beliebig an Freunde und
 
Bekannte verleihen oder auch Kopien der CDs weitergeben, ohne Lizenzkosten. Sie können Debian GNU/Linux
 
auf Ihrem Rechner zuhause oder in der Firma installieren, Sie zahlen nichts extra dafür.
 
Natürlich können Sie Debian GNU/Linux aus dem Internet von einem der vielen Debian GNU/Linux
 
FTP-Server kopieren und installieren. Bei den momentanen Kosten für Internetzugänge ist dies aber sicherlich
 
teurer als eine CD-ROM.
 
Zu jedem Debian GNU/Linux-Paket sind auf den FTP-Servern im Verzeichnis source/ die Programme im
 
Quellcode (source) verfügbar. Diese stehen jedermann zur Verfügung und jeder kann an der weiteren
 
Entwicklung teilnehmen. Die Möglichkeit, Änderungen an den Quellen vorzunehmen und diese Änderungen an
 
die Hauptentwickler zu geben, damit diese die Änderungen in das Programm aufnehmen, machen die hohe
 
Effektivität der Open Source Software aus. Achten Sie darauf, wenn Sie an der Entwicklung freier Software
 
teilnehmen wollen: nicht jedes Programm, das sich als „Open Source“ bezeichnet, erfüllt dieses Kriterium. Es
 
geht nicht allein darum, Einblick in den Quellcode zu gewähren, wichtig ist auch, daß es jedermann freisteht,
 
Änderungen vorzunehmen und daß auch diese wieder für jedermann zugänglich gemacht werden, indem die
 
Änderungen in den Quellcode einfließen.
 
Ein dritter entscheidender Punkt ist, daß alle freie Software auch für alle Zeit freie Software bleiben muß. Dies
 
schützt freie Softwareprojekte davor, daß irgend jemand freie Software zu seinem Eigentum erklärt und
 
„eigene“ Produkte daraus erstellt. Im Anhang finden Sie einige Links zu weiteren Informationen zu diesem
 
recht komplexen Thema.
 
Freie Software zeichnet sich weiterhin dadurch aus, daß die Verwendung dieser Software wirklich frei ist, Sie
 
können diese Software einsetzen, wofür Sie wollen, zuhause, im Büro, privat, kommerziell, zum Spielen, zur
 
Produktion von Filmen, zur Produktion von Waffen. Dieser letzte Punkt mag abschreckend klingen, aber
 
niemand soll in der Verwendung freier Software reglementiert werden.
 
Es gibt viele verschiedene Lizenzen für „freie Software“: einige sind mehr, andere weniger „frei“. Wenn Sie
 
sich für den Einsatz eines speziellen Programms in einem speziellem (zum Beispiel im kommerziellen Einsatz)
 
Bereich interessieren, lesen Sie die Lizenzbedingungen der jeweiligen Software. Diese Lizenzen finden Sie
 
unter /usr/doc/ beziehungsweise /usr/share/doc/.
 
Richard Stallman fasste dies in den frühen 80er Jahren zusammen und formulierte vier „Freiheiten“:
 
0. Freiheit:
 
Die Freiheit, ein Programm für jeden Zweck einsetzen zu dürfen
 
1. Freiheit:
 
Die Freiheit, untersuchen zu dürfen, wie ein Programm funktioniert, und es den eigenen Bedürfnissen
 
anzupassen
 
28
 
Kapitel 1. Linux, Debian, Freie Software?
 
2. Freiheit:
 
Die Freiheit, Kopien für Andere machen zu dürfen
 
3. Freiheit:
 
Die Freiheit, das Programm verbessern zu dürfen und diese Verbesserungen zum allgemeinen Wohl
 
zugänglich zu machen
 
1.4.1. Open Source Initiative (OSI)
 
Die OSI ist eine non-profit Organisation mit dem Zweck der Organisation und Verbreitung der Open Source
 
Definition zum Nutzen der Community.
 
Abbildung 1-5. Open Source Initiative - Logo
 
Informationen über die Struktur und Organisation der OSI sowie die verschiedenen Lizenzen für Open Source
 
Software finden sich auf den Open Source Initiative Webseiten.
 
Die von der OSI veröffentlichte „Definition quelloffener Software“ geht auf die von Bruce Perens begonnenen
 
ersten Versionen der „Debian Free Software Guidelines (DFSG)“ zurück. Die DFSG wurden im Juni 1997, nach
 
einer monatlangen E-Mail Konferenz, endgültig fertiggestellt. Bruce entfernte die Debian spezifischen Passagen
 
im Text und schuf so die erste Version der „Open Source Definition“.
 
1.4.1.1. Geschichte der OSI
 
Die Vorgeschichte der Open Source Initiative beruht auf der gesamten Entwicklungsgeschichte von Unix, der
 
im Internet entwickelten Freien Software und der „Hacker Kultur“.
 
Das „Open Source“ Label selbst entstand im Rahmen eines strategischen Treffens am 3. Februar 1998 in Palo
 
Alto, California. Dabei waren unter anderem anwesend: Todd Anderson, Chris Peterson (Foresight Institute),
 
John „maddog“ Hall und Larry Augustin (beide Linux International), Sam Ockman (Silicon Valley Linux
 
User’s Group) und Eric Raymond.
 
Dieses Treffen, welchem viele Diskussionen auf Mailinglisten vorangingen, war eine Reaktion auf die
 
Ankündigung der Firma Netscape die Sourcen ihrers Browsers freizugeben. Dieses Projekt wurde später unter
 
dem Namen Mozilla bekannt. Eric Raymond wurde von der Firma Netscape im Vorfeld der Ankündigung
 
gebeten bei der Freigabe des Quellcodes und den damit verbundenen Formalitäten zu helfen.
 
Die Open Source Definition ist von den Debian Free Software Guidelines abgeleitet. Bruce Perens verfasste die
 
erste Version, welche durch den regen E-Mail Kontakt mit verschiedenen Debian Enwicklern im Juni 1997
 
verfeinert wurde.
 
Die Open Source Initiative ist mittlerweile als „California public benefit“ (eine nicht-kommerzielle)
 
Vereinigung anerkannt. Die Adresse für Spenden lautet:
 
29
 
Kapitel 1. Linux, Debian, Freie Software?
 
Law Offices of Lawrence E. Rosen
 
702 Marshall St. Ste. 301
 
Redwood City, CA 94063
 
1.4.1.2. Die Definition quelloffener Software ("Open Source Software")
 
Version 1.9
 
Einführung
 
„Quelloffen“ („Open Source“) bedeutet nicht nur freien Zugang zum Quellcode. Bei quelloffener Software
 
müssen die Lizenzbestimmungen in Bezug auf die Weitergabe der Software folgenden Kriterien entsprechen:
 
1. Freie Weitergabe
 
Die Lizenz darf niemanden in seinem Recht einschränken, die Software als Teil eines Software-Paketes, das
 
Programme unterschiedlichen Ursprungs enthält, zu verschenken oder zu verkaufen. Die Lizenz darf für den
 
Fall eines solchen Verkaufs keine Lizenz- oder sonstigen Gebühren festschreiben.
 
2. Quellcode
 
Das Programm muss den Quellcode beinhalten. Die Weitergabe muss sowohl für den Quellcode als auch für die
 
kompilierte Form zulässig sein. Wenn das Programm in irgendeiner Form ohne Quellcode weitergegeben wird,
 
so muss es eine allgemein bekannte Möglichkeit geben, den Quellcode zum Selbstkostenpreis zu bekommen,
 
vorzugsweise als gebührenfreien Download aus dem Internet. Der Quellcode soll die Form eines Programms
 
sein, die ein Programmierer vorzugsweise bearbeitet. Absichtlich unverständlich geschrieb ner Quellcode ist
 
daher nicht zulässig. Zwischenformen des Codes, so wie sie etwa ein Präprozessor oder ein Konverter
 
("Translator") erzeugt, sind unzulässig.
 
3. Abgeleitete Software
 
Die Lizenz muss Veränderungen und Derivate zulassen. Außerdem muss sie es zulassen, dass die solcherart
 
entstandenen Programme unter denselben Lizenzbestimmungen weitervertrieben werden können wie die
 
Ausgangssoftware.
 
4. Unversehrtheit des Quellcodes des Autors
 
Die Lizenz darf die Möglichkeit, den Quellcode in veränderter Form weiterzugeben, nur dann einschränken,
 
wenn sie vorsieht, dass zusammen mit dem Quellcode so genannte "Patch files" weitergegeben werden dürfen,
 
die den Programmcode bei der Kompilierung verändern. Die Lizenz muss die Weitergabe von Software, die aus
 
verändertem Quellcode entstanden ist, ausdrücklich erlauben. Die Lizenz kann verlangen, dass die abgeleiteten
 
Programme einen anderen Namen oder eine andere Versionsnummer als d e Ausgangssoftware tragen.
 
5. Keine Diskriminierung von Personen oder Gruppen
 
Die Lizenz darf niemanden benachteiligen.
 
6. Keine Einschränkungen bezüglich des Einsatzfeldes
 
Die Lizenz darf niemanden daran hindern, das Programm in einem bestimmten Bereich einzusetzen.
 
Beispielsweise darf sie den Einsatz des Programms in einem Geschäft oder in der Genforschung nicht
 
ausschließen.
 
7. Weitergabe der Lizenz
 
Die Rechte an einem Programm müssen auf alle Personen übergehen, die diese Software erhalten, ohne dass für
 
diese die Notwendigkeit bestünde, eine eigene, zusätzliche Lizenz zu erwerben.
 
8. Die Lizenz darf nicht auf ein bestimmtes Produktpaket beschränkt sein
 
Die Rechte an dem Programm dürfen nicht davon abhängig sein, ob das Programm Teil eines bestimmten
 
Software-Paketes ist. Wenn das Programm aus dem Paket herausgenommen und im Rahmen der zu diesem
 
Programm gehörenden Lizenz benutzt oder weitergegeben wird, so sollen alle Personen, die dieses Programm
 
dann erhalten, alle Rechte daran haben, die auch in Verbindung mit dem ursprünglichen Software-Paket gewährt
 
wurden.
 
9. Die Lizenz darf die Weitergabe zusammen mit anderer Software nicht einschränken
 
30
 
Kapitel 1. Linux, Debian, Freie Software?
 
Die Lizenz darf keine Einschränkungen enthalten bezüglich anderer Software, die zusammen mit der
 
lizenzierten Software weitergegeben wird. So darf die Lizenz z. B. nicht verlangen, dass alle anderen
 
Programme, die auf dem gleichen Medium weitergegeben werden, auch quelloffen sein müssen.
 
1.5. SPI - Software in the Public Interest
 
SPI ist eine Non-profit-Organisation, die gegründet wurde, um Projekten, die Software für die Allgemeinheit
 
entwickeln, zu helfen. Sie ermutigt Programmierer, die GNU General Public License (GPL) oder eine andere
 
Lizenz die freie Weiterverbreitung und den freien Gebrauch der Software erlaubt, zu benutzen.
 
Hardware-Entwickler ermutigt SPI, die Dokumentation zu ihrer Arbeit zu veröffentlichen, damit Treiber für
 
ihre Produkte geschrieben werden können.
 
SPI wurde am 16. Juni 1997 als Non-profit-Organisation im Staat New York der USA gegründet. Seitdem
 
wurde sie eine Schirm-Organisation für verschiedene Projekte der Gemeinschaft. Die Statuten und das
 
Gründungs-Zertifikat definieren das Ziel und die Arbeitsweise von SPI. SPI hat einen Vorstand, der aus vier
 
Mitgliedern besteht: einem Präsidenten, einem Vize-Präsidenten, einem Beisitzer und einem Kassierer.
 
SPI unterstützt momentan folgende Projekte: Berlin, Debian, GNOME, LSB, Open Source, Open Hardware.
 
Wenn Sie etwas an SPI spenden möchten oder nicht auf elektronischem Wege kommunizieren wollen, erreichen
 
Sie SPI unter der Adresse:
 
Software in the Public Interest, Inc.
 
PO BOX 273
 
Tracy, CA 95378-0273
 
USA
 
Weitere Informationen zu SPI finden Sie im Internet.
 
1.6. Wie und wo bekomme ich Debian GNU/Linux?
 
Die Bezugsquellen für Debian GNU/Linux sind recht vielfältig, auch wenn man nicht an jeder Ecke über diese
 
Distribution stolpert, wie bei anderen. Debian wurde auch schon als Beilage in Zeitschriften gesichtet, dies ist
 
aber seltener der Fall.
 
1.6.1. Internet
 
Aktuellste Bezugsquelle ist natürlich der Debian FTP-Server sowie seine weltweiten Mirrors. Der Debian
 
FTP-Server ist unter ftp://ftp.debian.org zu erreichen, allerdings sollten Sie einen mirror in Ihrer Nähe benutzen,
 
Sie erreichen mit ziemlicher Sicherheit hier bessere Übertragungsraten.
 
Eine aktuelle Liste aller Debian FTP-Server finden Sie unter:
 
ftp://ftp.de.debian.org/debian/README.mirrors.html.
 
Das Debian-Team unterscheidet zwei Klassen von FTP-Servern: sogenannte „primary-“ und „secondary mirror
 
sites“. Ein Primary Server hat eine sehr gute Anbindung ans Netz, ist 24 Stunden am Tag verfügbar und hat
 
einen leicht zu merkenden Namen in der Form: ftp.<country>.debian.org . Natürlich werden diese
 
mirrors ständig automatisch mit dem Debian Master Server abgeglichen.
 
Ein Secondary Server ist meist schlechter angebunden und führt oft keine komplette Kopie des Debian Servers.
 
Versuchen Sie immer, den Ihnen am nächsten gelegenen Server zu benutzen, hier haben Sie in der Regel die
 
besten Übertragungsraten. Ein geographisch nahegelegener Server muß dabei nicht zwingend der schnellste
 
sein, das Programm netselect hilft Ihnen, den optimalen Server zu ermitteln.
 
Für den deutschsprachigen Raum stehen die beiden Server ftp://ftp.de.debian.org (Deutschland) (dieser ist auch
 
als ftp://ftp.debian.de erreichbar) sowie ftp://ftp.at.debian.org (Österreich) zur Verfügung. Beide führen auch
 
den Bereich Non-US, welcher Programme enthält, die aufgrund von Exportbeschränkungen oder
 
Softwarepatenten nicht in den USA verteilt werden darf.
 
31
 
Kapitel 1. Linux, Debian, Freie Software?
 
Die Benutzung eines solchen FTP-Servers ist kostenfrei, bedenken Sie aber, daß der Download von großen
 
Datenmengen trotzdem Kosten hervorruft, Sie finden diese spätestens auf ihrer nächsten Rechnung für Ihren
 
Telefonanschluß. Weitere Kosten können bei Ihrem Internetprovider entstehen, wenn dort nach Onlinezeit oder
 
Übertragungsvolumen abgerechnet wird.
 
1.6.2. CD-ROMs
 
Einfacher und meist auch kostengünstiger ist es, sich Debian GNU/Linux auf einer CD-ROM zu beschaffen.
 
Auch für die Beschaffung einer CD-ROM finden Sie Informationen auf den Debian-Webseiten unter:
 
http://www.debian.org/distrib/vendors . Bereits seit mehreren Jahren vertreibt die Fachbuchhandlung Lehmanns
 
die Debian GNU/Linux Distribution auf CD-ROM. Sie können die CDs auch unter http://www.lob.de online
 
bestellen. Hier sind die Debian GNU/Linux 2.2-CDs für i386 und powerpc sowie die sourcen verfügbar.
 
Lehmanns betreibt auf Ihrem Server auch die deutschsprachige Mailingliste zu Debian. Um an dieser
 
Mailingliste teilzunehmen, schreiben Sie einfach eine E-Mail an majordomo@jfl.de mit dem Text:
 
subscribe debian-user-de. Der Betreff (Subject) der Mail ist hierbei gleichgültig. Diese Mailingliste ist
 
relativ stark frequentiert, machen Sie sich also auf einige Mails pro Tag gefaßt.
 
Bei LinuxLand International (http://www.linuxland.de) können Sie ebenfalls ein Paket mit Debian CDs
 
inklusive der deutschen Übersetzung von „Debian GNU/Linux Guide“ von Goerzen, Othman und Bramer.
 
Dieses Paket ist nur für die i386-Architektur erhältlich.
 
Wenn Sie Interesse an Debian GNU/Linux 2.2-CDs für irgendeine Architektur haben, schreiben Sie einfach
 
dem Autor dieses Buches eine freundliche E-Mail... Dort erhalten Sie auch CDs der jeweiligen „unstable“
 
Version von Debian GNU/Linux.
 
Unter http://www.openoffice.de finden Sie ein umfassendes Angebot für alle Architekturen. Soweit es sinnvoll
 
ist werden dort auch CDs der in der Entwicklung befindlichen Version (unstable) angeboten. Auf dem gleichen
 
Server finden Sie im übrigen auch immer die aktuelle Version dieses Buches.
 
Die von OpenOffice bezogenen CDs werden aktuell auf CD gebrannt, somit ist die Aktualität der Programme
 
sichergestellt.
 
Natürlich können Sie sich auch von einem anderen Debian-Freund eine CD kopieren, dies ist sicher die
 
preiswerteste Variante, um an Debian zu kommen.
 
1.6.3. Usergroups & Installationspartys
 
Von den vielen Linux Usergroups werden häufig sogenannte Installationspartys durchgeführt. Auf diesen
 
besteht die Möglichkeit, unter fachlicher Anleitung neben anderen Distributionen auch Debian GNU/Linux auf
 
dem mitgebrachten Rechner zu installieren. Eine Linux Usergroup in Ihrer Nähe finden Sie über die Liste der
 
deutschsprachigen Linux Usergroups des Linux Magazins: http://www.linux-magazin.de/Usergroups/.
 
Grundsätzlich kann der Besuch bei einer solchen Linux Usergroup nur jedem Interessierten nahegelegt werden,
 
der dort mögliche Erfahrungsaustausch ist sehr hilfreich und die meisten auftretenden Probleme bei der
 
Installation und beim Betrieb von Debian GNU/Linux lassen sich dort schnell lösen.
 
1.6.4. Bücher zu Debian GNU/Linux
 
Mittlerweile gibt es eine ganze Reihe Bücher zu Debian GNU/Linux. Erfreulicherweise sind auch einige
 
deutschsprachige Werke darunter.
 
Deutschsprachige Bücher
 
Titel: Debian GNU/Linux
 
Autor: Ganten, Peter H.
 
Untertitel: Grundlagen, Installation, Administration und Anwendung
 
Datum/Seiten: 2000, 792
 
Verlag: Springer, Berlin
 
32
 
Kapitel 1. Linux, Debian, Freie Software?
 
Titel: Debian GNU/Linux PowerPack
 
Autor: Ganten, Peter H.
 
Untertitel: Grundlagen, Installation, Administration und Anwendung
 
Beschreibung: Die komplette offizielle Debian Distribution auf CD
 
Datum/Seiten: 2000, 792
 
Verlag: Springer, Berlin
 
Titel: Debian GNU/Linux Guide
 
Autoren: John Goerzen, Ossama Othman
 
Beschreibung: Übersetzung des
 
offiziellen "Debian GNU/Linux Guide".
 
Seiten: 362
 
Titel: Debian GNU/Linux-Anwenderhandbuch
 
Autor: Ronneburg, Frank
 
Datum/Seiten: 2001, 600
 
Verlag: Addison-Wesley, München
 
Titel: Debian GNU/Linux-Anwenderhandbuch
 
Autor: Ronneburg, Frank
 
Datum/Seiten: 2001, 600
 
Verlag: Lehmanns Sonderausgabe (Originalverlag Addison Wesley)
 
Titel: Debian GNU/Linux-Anwenderhandbuch, mit 6 CD-ROMs Debian GNU/Linux 2.2
 
Autor: Ronneburg, Frank
 
Datum/Seiten: 2001, 600
 
Verlag: Lehmanns Sonderausgabe (Originalverlag Addison Wesley)
 
Englischsprachige Bücher
 
Titel: Debian GNU/Linux
 
Autor: John Goerzen and Ossama Othman
 
Untertitel: Guide to Installation and Usage
 
Datum/Seiten: 1999, 200
 
Verlag: New Riders
 
Titel: Learning Debian GNU/Linux
 
Autor: McCarty, B.
 
Untertitel: A Guide to Debian GNU/Linux for New Users
 
Datum/Seiten: 1999
 
Verlag: O’Reilly
 
Titel: Debian GNU/Linux for dummies
 
Autor: Bellomo, Michael
 
Datum/Seiten: 2000, 384
 
Verlag: IDG Books
 
Titel: Installing Debian GNU/Linux
 
Autor: Down, Thomas
 
Datum/Seiten: 1999, 250 Seiten
 
Verlag: Sams Publishing
 
Titel: Debian GNU/Linux 2.1 Unleashed mit CD-ROM
 
Autoren: Camou, Mario; Goerzen, John; VanCouwenberghe, Aaron
 
Datum/Seiten: 2000
 
Verlag: Sams Publishing
 
33
 
Kapitel 1. Linux, Debian, Freie Software?
 
Titel: Debian GNU/Linux Bible
 
Autor: Steve Hunger
 
Seiten: 696
 
Verlag: Hungry Minds, Inc
 
1.7. Informationen im Netz
 
An dieser Stelle folgen einige Hinweise auf weitere Informationsquellen im Internet, die zu Rate gezogen
 
werden können falls Sie nicht die gewünschten Informationen in diesem Buch finden (was aber kaum
 
vorstellbar ist :-)).
 
Auf den Seiten des Debian Projektes finden sich Informationen zur Unterstützung bei Debian Problemen unter
 
http://www.debian.org/support/.
 
1.7.1. Mailinglisten
 
Die deutschsprachige Mailingliste zu Debian wird auf dem Server der Buchhandlung Lehmanns zur Verfügung
 
gestellt. Um an dieser Mailingliste teilzunehmen, schreiben Sie einfach eine E-Mail an majordomo@jfl.de
 
mit dem Text: subscribe debian-user-de. Der Betreff (Subject) der Mail ist hierbei gleichgültig. Diese
 
Mailingliste ist relativ stark frequentiert, machen Sie sich also auf einige Mails pro Tag gefaßt.
 
Nach der Anmeldung bekommt jeder Teilnehmer einmalig die FAQ (Frequently Asked Questions - Häufig
 
gestellte Fragen (und Antworten)) dieser Mailingliste zugeschickt. Diese ist auch im Web verfügbar unter:
 
http://www.sylence.de/dudfaq/debian-user-de-FAQ.html.
 
Ein Archiv dieser Mailingliste findet sich gleich an mehreren Stellen im Netz
 
http://www.jfl.de/cgi-bin/asche.scripte/debianliste (Webbasiertes Archiv bei Lehmanns mit Volltextsuche),
 
http://www.geocrawler.com/lists/3/Debian-Linux/249/0/ (Webbasiertes Archiv bei Mail-Archive),
 
http://www.infodrom.ffis.de/Mail-Archive/index.php3?list=debian-user-de (Webbasiertes, monatliches Archiv
 
bei Infodrom Oldenburg).
 
Eine Übersicht über die Mailinglisten des Debian Projektes finden sich auf den Webseiten unter
 
http://www.debian.org/MailingLists/. Mit Ausnahme einiger spezieller Liste die sich mit den
 
landessprachlichen Besonderheiten befassen, ist die Sprache auf diesen Listen englisch.
 
1.7.2. Webseiten
 
Neben der eigenlichen Debian Webseite (www.debian.org) ist eine interessante Informationsquelle die
 
wöchentlich erscheinenden „Debian Weekly News“. In diesem Newsletter wird über wichtige Änderungen in
 
der Debian Distribution, über Diskussionen auf den Mailinglisten und anderer Klatsch und Tratsch berichtet. Zu
 
finden sind die Debian Weekly News unter http://www.debian.org/News/weekly/. Bereits vor der
 
Veröffentlichung sind die Seiten unter www.infodrom.org/~joey/Writing/DWN/ zu finden.
 
Auch ausserhalb des Debian Projektes gibt es einige Webseiten zum Thema Debian, von denen hier nur eine
 
Auswahl gezeigt werden kann. Auf der Debian Webseite findet sich unter http://www.debian.org/related_links
 
eine Liste weiterer Links zu Linux und Debian.
 
Als deutschsprachiges Forum im Web wären http://www.debianforum.de/ und
 
http://forum.winner.de/forumdisplay.php?forumid=18 zu nennen.
 
1.7.2.1. debianHELP
 
http://www.debianhelp.org/
 
34
 
Kapitel 1. Linux, Debian, Freie Software?
 
1.7.2.2. debianPlanet
 
http://www.debianplanet.org/
 
1.7.2.3. apt-get.org - inoffizielle Debian Pakete
 
Auf der Seite www.apt-get.org finden sich Hinweise zu nicht offiziellen Debian Paketquellen im Netz. Betreuer
 
von solchen inoffiziellen Debian Paketen können ihre Seiten dort selbst anmelden. Hier finden sich
 
beispielsweise Pakete zu XFree 4.2.x die zum Zeitpunkt der Veröffentlichung von Debian 3.0 (woody) noch
 
nicht verfügbar waren und auch nachträglich nicht in diese Version von Debian aufgenommen wurden.
 
1.7.3. IRC
 
IRC ( Internet Relay Chat) ist eine Möglichkeit sich in Echtzeit mit anderen Personen auf der gesamten Welt zu
 
unterhalten. Ein IRC-Kanal speziell für Debian kann im Open Projects IRC Netzwerk genutzt werden. Das
 
„Open Projects Network“ wurde von Robert (lilo) Levin gegründet um der Free Software Community bei der
 
Arbeit zu helfen. Eine ausführliche deutschprachige Anleitung zum IRC findet sich unter
 
http://duplox.wz-berlin.de/texte/rps/.
 
Im IRC haben sich einige Verhaltensregeln etabliert die auch von neuen Benutzern berücksichtigt werden
 
sollten. Eine Übersicht die in den deutschsprachigen Linux Channels zusammengestellt wurde findet sich unter
 
http://www.linuxger.de/LinuxGER.html. Eine ähnliche Seite speziell für den Channel #debian ist unter
 
http://channel.debian.de/faq/. zu erreichen.
 
Um sich mit dem Netzwerk zu verbinden, benötigen Sie einen IRC-Client. Einige der bekanntesten sind ircII,
 
BitchX, tkirc, X-Chat und Zircon, diese sind auch als Pakete verfügbar. Wenn Sie den Client installiert haben,
 
müssen Sie ihm mitteilen, sich zu dem entsprechenden Server zu verbinden. Benutzen Sie dabei
 
irc.debian.org oder irc.eu.openprojects.net. In den meisten Clients erreichen Sie dieses, in dem Sie
 
folgendes eingeben:
 
/server irc.debian.org
 
Wenn Sie verbunden sind, kommen Sie in den Kanal #debian durch Eingabe von
 
/join #debian
 
Neben dem Kanal #debian finden sich noch weitere Kanäle auf dem Server irc.eu.openprojects.net die
 
sich mit Debian GNU beschäftigen. Das Debian Projekt nutzt die Infrastruktur des Open Projects Network für
 
folgende Kanäle:
 
• #debian - hier kommunizieren Benutzer und Entwickler, bitte beachten Sie das dieser Channel ziemlich
 
überlaufen ist.
 
• #debian-boot - in diesem Kanal werden Fragen zu den Debian Bottdisketten und dem Debian
 
Installationsystem (debian-installer) diskutiert. Dieser Kanal ist nicht für den Support von Benutzern gedacht.
 
• #debian-jr - hier finden sich interessierte Mitstreiter die am internen Projekt „Debian Junior (Jr.)“
 
mitarbeiten wollen. Dieses Projekt beschäftigt sich mit Debian Paketen für Kinder in allen Alterstufen.
 
• #debian.de - der deutschsprachige Debian Kanal.
 
Weitere Kanäle befassen sich mit verschiedenen Landessprachen, wie zum Beispiel Französisch
 
(#debian-fr), Russisch (#debian-ru) und Japanisch (#debianja und #debian-jp).
 
Im Kanal #debian-br finden sich Brasilianische Debian Nutzer, dort werden auch Themen der Übersetzung
 
von Debian diskutiert.
 
Natürlich finden sich auch im deutschprachigen Teil des Internets Server auf denen man Debian Benutzer findet.
 
Allen voran steht hier das „IRCNet“, welches im Sprachgebrauch einfach als IRC bezeichnet wird.
 
Das IRCnet besteht in Deutschland hauptsächlich aus IRC-Servern, die auf Universitätsrechnern laufen. Leider
 
nimmt die Zahl drastisch ab, seit viele dieser Server missbraucht wurden. Einige Server sind hier aufgelistet.
 
35
 
Kapitel 1. Linux, Debian, Freie Software?
 
Der Server irc.netsurf.de ist nicht über das deutsche Forschungsnetz angeschlossen und sollte von Leuten aus
 
kommerziellen Netzwerken benutzt werden.
 
• irc.fu-berlin.de
 
• irc.uni-paderborn.de
 
• irc.rz.uni-karlsruhe.de
 
• irc.belwue.de
 
• irc.netsurf.de
 
Im IRCnet finden sich neben dem Debian Kanal #Debian.DE noch die Kanäle #linux.de und LinuxGER die
 
sich mit Themen rund um Linux befassen.
 
1.7.4. Kommerzieller Support
 
Debian ist freie Software und bietet ausschliesslich Support auf freiwilliger Basis über das Internet (per WWW,
 
IRC oder Mailinglisten) an. Das Projekt kann keine Mitarbeiter beschäftigen die eine Telefon Hotline besetzen
 
oder Vor-Ort Service beim Kunden leisten.
 
Natürlich gibt es aber auch genau in diesem Bereich Bedarf. Deshalb bietet das Debian Projekt auf der Webseite
 
http://www.debian.org/consultants/ eine Aufstellung von Beratern an die solche Dienstleitungen anbieten. Die
 
Namen sind nach Ländern sortiert, innerhalb eines Landes aber einfach in der Reihenfolge der Anmeldung
 
sortiert.
 
Wenn Sie nicht erst einen Vertrag abschliessen möchten sondern nur eine schnelle Hilfe zu Debian benötigen,
 
so stellt die Linux Information Systems AG (http://www.linux-ag.com/) unter der Nummer 0190-883 885 (1,86
 
Euro/Minute) einen telefonischen, distributionsunabhängigen Support zur Verfügung.
 
36
 
Kapitel 2. Installation von Debian GNU/Linux
 
2.1. Schnellinstallation in 10 Schritten
 
Wenn Sie bereits eine Linux-Distribution installiert haben, sind Sie schon mit den grundsätzlichen Schritten
 
einer Linux-Installation vertraut. Debian GNU/Linux unterscheidet sich nur in wenigen Details von anderen
 
Distributionen bei der Installation: Sie haben sehr viele Freiheiten und können viele Schritte beeinflußen, Sie
 
müssen dies aber nicht tun.
 
Wenn Sie auf Probleme mit dieser Kurzinstallation stoßen, lesen Sie das Kapitel „Installation“, dort wird
 
ausführlicher auf die Installation eingegangen. Dieser Abschnitt soll fortgeschrittenen GNU/Linux-Anwendern
 
die Möglichkeit geben, relativ schnell zu einem lauffähigen System zu kommen.
 
• Platz – Sie benötigen eine freie/nicht mehr benötigte Partition oder eine komplett unbenutzte Festplatte.
 
Wenn Sie keine Partition frei haben, benutzen Sie das Programm fips.exe (auf der CD unter install/ zu
 
finden), um eine bestehende Partition unter DOS zu verkleinern.
 
• Boot – Starten Sie den Rechner neu, Sie können entweder direkt von der CD-ROM booten (ändern Sie im
 
Bios die Bootreihenfolge!), oder erstellen Sie Bootdisketten aus den Dateien
 
dists/stable/main/disks-i386/current/disks-1.44/rescue.bin und
 
dists/stable/main/disks-i386/current/disks-1.44/root.bin sowie
 
dists/stable/main/disks-i386/current/disks-1.44/driver-1.bin,
 
dists/stable/main/disks-i386/current/disks-1.44/driver-2.bin und
 
dists/stable/main/disks-i386/current/disks-1.44/driver-3.bin auf der CD-ROM.
 
Benutzen Sie hierzu unter Linux das Programm dd mit der Option if=rescue.bin of=/dev/fd0 oder
 
unter DOS das Programm rawrite2.exe.
 
• Fragen – Beantworten Sie alle Fragen des Debian GNU/Linux-Installationsprogramms mit der
 
Eingabe-/Returntaste wenn Sie sich mit der Antwort nicht sicher sind.
 
• International – Wählen Sie die gewünschte Tastaturbelegung aus.
 
• Teilung – Erstellen Sie auf dem freien Festplattenplatz mindestens zwei Partitionen. Benutzen Sie eine als
 
swap-, die andere als root-Partition.
 
• Kern – Installieren Sie den Kernel und die Module von der CD-ROM. Geben Sie das passende Device
 
(Gerätedatei) an, meist ist dies: hdc, hdd, hdb, hda, scd0. Probieren Sie diese in der hier angegebenen
 
Reihenfolge durch.
 
• Teile – Wählen Sie die benötigten Module für Ihr System aus.
 
• Basis – Installieren Sie das Basissystem von der CD-ROM oder einem anderen Medium.
 
• Zeit – Wählen Sie die passende Zeitzone aus.
 
• Abschluß – Starten Sie das System neu, geben Sie nach dem Laden des Kernels ein Paßwort für den
 
Superuser an und legen Sie, wie es das Installationsprogramm vorgibt, einen neuen Benutzer an. Installieren
 
Sie die weiteren Pakete, nachdem Sie eine der für Sie zusammengestellten Konfigurationen ausgewählt
 
haben.
 
2.2. Update von Debian GNU/Linux 2.1 (slink) auf 2.2
 
Benutzen Sie auf keinen Fall dselect, um ein Update von Debian GNU/Linux 2.1 auf die Version 2.2
 
durchzuführen! dselect ist unter Umständen nicht in der Lage, einige der notwendigen Abhängigkeiten beim
 
Update aufzulösen.
 
Natürlich müssen Sie nicht Ihr komplettes System neu installieren, wenn Sie die neuesten Pakete von Debian
 
GNU/Linux 2.2 benutzen wollen. Ein bestehendes Debian GNU/Linux 2.1 kann mit den CD-ROMs ebenfalls
 
auf den aktuellen Stand gebracht werden. Hierbei sind jedoch einige Dinge zu beachten. Im Laufe der
 
Entwicklung von Debian GNU/Linux 2.2 wurden sehr viele der Systembibliotheken (libraries) und Programme
 
37
 
Kapitel 2. Installation von Debian GNU/Linux
 
durch neuere Versionen ersetzt. Ein Update dieser Bibliotheken mit dselect würde wegen der komplexen
 
Abhängigkeiten fehlschlagen. Im folgenden werden wir die nötigen Schritte zu einem sicheren Update
 
beschreiben.
 
Mounten Sie die erste Debian GNU/Linux 2.2-CD als Superuser (root) von Hand mit: mount /dev/cdrom
 
/cdrom, und ändern Sie die Datei /etc/apt/sources.list so, daß über einen direkten Zugriff auf die CD
 
installiert werden kann. Der Eintrag hierfür lautet:
 
# - CD von Hand unter /cdrom gemountet
 
deb file:/cdrom/debian unstable main
 
Führen Sie nun zuerst das Kommando: apt-get update aus. Es liest die Liste der auf der CD vorhandenen
 
Pakete neu ein. Danach können Sie die neuen Bibliotheken mit apt-get dist-upgrade installieren. Keine
 
Angst: wenn apt-get dist-upgrade fehlschlagen sollte, starten Sie es einfach noch einmal. Auf apt wird
 
später noch detailliert eingegangen.
 
Wenn dieser Vorgang erfolgreich abgeschlossen wurde, können Sie mit dselect und der Installationsmethode
 
apt alle weiteren Pakete aktualisieren.
 
Danach können Sie jeden anderen Weg wählen, um weitere Pakete zu installieren und den Rest des Systems zu
 
aktualisieren.
 
2.3. Update von Debian GNU/Linux 2.2 (potato) auf 3.0
 
Dieses Update ist in dem meisten Fällen sehr einfach durchzuführen. Tragen Sie einfach die gewünschten
 
Installationsquellen in die Datei /etc/apt/sources.list ein und aktualisieren Sie die Paketinformationen
 
mittels apt-get update. Das eigentliche Upgrade wird danach mittels apt-get dist-upgrade
 
durchgeführt.
 
In einigen Fällen ist ein Update von „potato“ (Debian Version 2.2) auf „woody“ (Debian Version 3.0) ist via
 
CD-ROM nicht ganz problemlos möglich. Probleme scheint es dabei ausschlieslich auf Systemen zu geben die
 
auf dem Stand von Debian 2.2 Release 0 sind. Bei diesen Systemen wurden nach dem offiziellen Release der
 
ersten Version keinerlei Updates auf neuere Release Versionen (Potato R1-R6) durchgeführt. Die Ursache der
 
Probleme scheint hierbei die interne Umstellung auf „package-pools“ zu sein, was dazu führt das die Pakete
 
nicht mehr unter /dists/woody/main/usw... auf den CD-ROMs liegen sondern unter
 
/pool/main/usw.... Die Package-Files (Beschreibungen) sind aber noch an der alten Stelle (u.U.).
 
Damit kann mit „potato“ Release 1 installierte Version von apt noch nicht umgehen. Ein Ausweg ist ein Update
 
von apt von Hand. Hierzu sind nur wenige Schritte notwendig:
 
1.
 
Melden Sie sich als Superuser/root am System an.
 
2.
 
Mounten Sie die 1. CD Debian GNU/Linux 3.0 mount /cdrom. Hier müssen Sie ggf. noch das
 
entsprechende Devicefile angeben falls an nach der Installation etwas (zum Beispiel an der Hardware)
 
verändert wurde: mount /dev/hdd /cdrom.
 
3.
 
Installieren der neuen C Bibliothek: dpkg -i /cdrom/pool/main/g/glibc/libc6_*
 
4.
 
Installieren der libstd++: find /cdrom/ -name libstd\*glib\* |xargs dpkg -i
 
5.
 
Installieren von apt find /cdrom/ -name apt_\* |xargs dpkg -i
 
38
 
Kapitel 2. Installation von Debian GNU/Linux
 
6.
 
Debian 3.0 CD ROMs in die sources.list aufnehmen apt-setup
 
7.
 
Danach kann das System ganz normal aktualisiert werden. apt-get dist-upgrade Frage mit: "Yes,
 
do as I say!" beantworten um Perl zu aktualisieren.
 
2.4. Aktualisieren von Debian GNU/Linux 2.1
 
Wenn Sie zufrieden mit Ihrem seit vielen Monaten gepflegten Debian GNU/Linux 2.1-System sind und keinen
 
Wert auf die aktuellsten Pakete legen, müssen Sie natürlich nicht auf die Version 2.2 umstellen. Trotzdem
 
sollten Sie einige Pakete auf den neuesten Stand bringen. Dies hat verschiedene Gründe. Zum einen sind in den
 
vergangenen Monaten viele Fehler (englisch: bugs) und Sicherheitslücken gefunden und beseitigt worden. Dies
 
betrifft auch Fehler im Zusammenhang mit dem Datum 2000-Problem (Y2k-Bug). Zum anderen möchte
 
vielleicht doch der eine oder andere die neueste Version von XFree86 installieren oder am „GNOME-Trend“
 
teilhaben. Auch hierzu bietet Debian GNU/Linux einen Weg...
 
Auf der Webseite: „Vincent’s bazaar“ finden Sie Links zu allen eben beschriebenen Programmen und Paketen,
 
passend zu Debian GNU/Linux 2.1. Wenn Sie apt benutzen, können Sie mit folgenden Einträgen in
 
/etc/apt/sources.list Ihr System auf den aktuellen Stand der Entwicklung bringen:
 
deb http://www.debian.org/~vincent/ y2k-update main
 
deb http://www.debian.org/~vincent/ slink-update main
 
deb http://www.debian.org/~vincent/ xfree-update main
 
deb http://security.debian.org/ stable updates
 
Sie können aber auch die Pakete zunächst auf ihre Festplatte kopieren und mittels dpkg -i paket.deb von
 
Hand installieren. Zum Download eignet sich neben einem Webbrowser (zum Beispiel der Netscape
 
Communicator) sehr gut das Programm wget.
 
Wenn Sie einen aktuellen Linux-Kernel 2.2.x mit Debian GNU/Linux 2.1 verwenden wollen, kann es notwendig
 
sein, einige Pakete aus Debian GNU/Linux 2.2 zu installieren. Debian GNU/Linux 2.1 erschien, als der
 
Linux-Kernel 2.2.x noch in der Entwicklungsphase war, daher sind nicht alle Pakete vollkommen kompatibel zu
 
neueren Kernels. Um welche Pakete es sich dabei handelt, erfahren Sie auf der Seite „Errata: Linux-Kernel
 
2.2.x mit Slink“ ( http://www.debian.org/releases/2.1/running-kernel-2.2.de.html)
 
Wir empfehlen aber in jedem Fall ein komplettes Update auf Debian GNU/Linux 2.2.
 
2.5. Aktualisieren von Debian GNU/Linux 2.2
 
Die Debian Version 2.2 (potato) wurde mit einem Linux Kernel der Version 2.2 veröffentlicht. Trotzdem kann
 
es sinnvoll sein auf einem solchen System einen Kernel der Version 2.4 einzusetzen, beispielsweise um USB
 
Geräte ohne große Patches am Kernel verwenden zu können.
 
Neben dem eigentlichen Kernel sollten auch einige Pakete aktualisiert werden, wenn nicht gleich der Umstieg
 
auf Debian „woody“ gewagt werden soll.
 
Zunächst sollte ein Blick auf den aktuellen Stand der aktuellen Pakete für diese Umstellung geworfen werden:
 
http://www.fs.tum.de/~bunk/kernel-24.html.
 
Um die Aktualisierung mit apt vorzunehmen, müssen folgende Einträge in der Datei
 
/etc/apt/sources.list hinzugefügt werden.
 
deb http://people.debian.org/~bunk/debian potato main
 
deb-src http://people.debian.org/~bunk/debian potato main
 
Nun kann das System mit folgenden Befehlen aktualisiert werden:
 
39
 
Kapitel 2. Installation von Debian GNU/Linux
 
apt-get update
 
apt-get -u dist-upgrade
 
Nach der Installation der Pakete ist Ihr System einsatzbereit für den Kernel 2.4.
 
2.6. Installation von Debian GNU/Linux 3.0
 
Die Release 3.0 von Debian GNU/Linux zeichnet sich durch viele Verbesserungen und einen noch größeren
 
Umfang an Paketen gegenüber den Vorgänger Versionen aus. Unterstützte bereits die Version 2.2 ("potato")
 
sechs Hardwarearchitekturen (Intel x86, Motorola, Alpha, SPARC, PowerPC und ARM), so kann die Version
 
3.0 mit diesen sechs und gleich vier neuen Architekturen (MIPS, Intel Itanium, HP PA-RISC und S/390)
 
aufwarten.
 
Der in Debian 2.2 verwendete Linux Kernel in der Version 2.2 wurde für die Debian Release 3.0 aktualisiert.
 
Hierbei wurden viele Fehler beseitigt welche sowohl den Kernel selbst als auch die dazugehörigen Programme
 
betreffen. Weiterhin sind viele neue Treiber für die Hardware hinzugekommen oder wurden durch bereinigte
 
Versionen ergänzt.
 
Neu in dieser Release ist der Linux Kernel in der Version 2.4, welcher alternativ bei der Installation, oder
 
nachträglich als Paket, installiert werden kann. Das Debian Entwicklerteam ist nicht der Meinung, daß der
 
Linux Kernel in der Version 2.4 auf allen von Debian unterstützten Architekturen die notwendige Stabilität
 
erreicht hat, sodaß beide Kernel zur Auswahl stehen.
 
2.6.1. Veränderungen im Installations System
 
Ältere Debian Versionen installierten zunächst ein sogenanntes "Basis-System" aus einem tar-Archiv, um dann
 
weitere Pakete über das Debian Paketmanagement in das System zu integrieren. Mit dieser Release wird eine
 
neue Methode eingeführt, das Installationssystem benutzt das Programm debootstrap, um alle vom Basis
 
System benötigten Pakete zu holen, zu entpacken und zu installieren. Die Pakete können dabei wie gehabt lokal
 
vorliegen (auf CD-ROM oder im Dateisystem) oder auch per FTP/HTTP aus dem Netz geholt werden. Diese
 
Installation des Basissystem direkt aus Debian Paketen bietet eine größere Flexibilität bei Updates und von
 
Komponenten des Basissystems.
 
Als weitere Veränderung ist das überarbeitete Task-System zu nennen. Bisher bestanden Tasks aus Paketen, in
 
denen die Abhängigkeiten zu anderen Paketen definiert waren. Das neue System verwendet spezielle Header
 
innerhalb der existierenden Pakete, um die Tasks zu definieren zu denen ein Paket gehört. Dies macht es deutlich
 
einfacher, einzelne Komponenten eines Tasks zu installieren; es ist nicht mehr nötig alle Pakete zu installieren.
 
So gut wie alle Pakete benutzen in dieser Release Debconf um die Konfiguration während der Installation oder
 
ein späteres neukonfigurieren des Paketes vorzunehmen. Debconf verfügt dabei über verschiedene Frontends:
 
nicht-interaktiv, dialog (curses-basiert) und ein GNOME-Frontend. Debconf wurde auch intern stark erweitert,
 
sodaß Debconf eine zentrale Rolle im Debian System bildet. Beispielsweise verfügt Debconf über eine LDAP
 
Schnittstelle, Konfigurationsdaten können so zentral auf einem LDAP Server liegen und verwaltet werden.
 
Die bei der Installation verwendeten Kernel unterstützen verschiedene Hardwareausstattungen. Für die Intel
 
Architektur sind folgende verfügbar:
 
vanilla
 
Kernel Version 2.2.x, dies ist der Standard Kernel für das Debian System mit fast allen Treibern des Linux
 
Kernels als Modulen.
 
ide
 
Kernel Version 2.2.x, ähnlich wie der „vanilla“ Kernel, jedoch mit den Kernel Patches zur Unterstützung
 
von UDMA66 Geräten.
 
40
 
Kapitel 2. Installation von Debian GNU/Linux
 
compact
 
Kernel Version 2.2.x, hier wurden viele selten benutzte Treiber weggelassen (Sound, Video4Linux usw.),
 
dafür sind häufig benötigte Treiber (NE2000, 3COM 3c905, Tulip, Via-Rhine und Intel EtherExpress
 
Pro100) im Kernel integriert. Somit kann eine Installation über das Netzwerk mit zwei Disketten (root und
 
rescue) durchgeführt werden. Weiterhin sind Treiber für die RAID Controller DAC960, und Compaq’s
 
SMART2 RAID integriert.
 
idepci
 
Kernel Version 2.2.x, diese Version unterstützt ausschliesslich IDE und PCI Geräte sowie einige wenige
 
ISA Geräte. Dieser Kernel sollte benutzt werden, wenn es beim Starten des Kernels zu Problemen mit
 
SCSI Geräten kommt. In diesem Kernel ist der ide-floppy Treiber integriert, sodaß eine Installation auch
 
von LS120 oder ZIP Laufwerken vorgenommen werden kann.
 
bf24
 
Kernel Version 2.4.x, dieser aktuelle Kernel unterstützt viele neue Hardwarekomponenten, welche nicht
 
von älteren Versionen unterstützt wurden. Die USB und IDE Unterstützung wurde verbessert, neuere
 
Netzwerkkarten Treiber wurden integriert und es werden die Dateisysteme Ext3 und ReiserFS unterstützt.
 
Als weitere Neuerung bei der Installation von CD-ROM ist zu sagen, daß es nun möglich ist, die oben
 
genannten Kernel allesamt von der ersten CD aus zu installieren.
 
2.6.2. Neues in der Distribution
 
Die Programme zur Verwaltung von Paketen, dpkg und apt wurden an vielen Stellen verbessert und erweitert.
 
apt unterstützt nun das „pinning“ von Paketen, welches es ermöglicht Programmversionen aus verschiedenen
 
Entwicklungszweigen (testing/unstable/stable) auszuwählen, während das eigentliche System auf einem
 
anderen Releasestand bleibt. apt sorgt auch hierbei dafür das alle Abhängigkeiten erfüllt werden und lädt die
 
benötigten Pakete automatisch auf das System.
 
Für Entwickler sind die sogenannten „build dependencies“ interessant. Das Kommando apt-get build-dep
 
PAKET sorgt dafür, daß alle zur Erzeugung eines Paketes benötigten Pakete auf dem System vorhanden sind.
 
Zur Ablösung des in die Jahre gekommenen und bei vielen Benutzern (un-)beliebten Installationsprogrammes
 
dselect wurden verschiedene Alternativen entwickelt. Interessierte Benutzer sollten einen Blick auf
 
aptitude werfen.
 
„Woody“ wird gleich mit zwei Versionen von XFree86 ausgeliefert. Bereits bekannt sollte die Version 3.3.6
 
sein. Diese kann eingesetzt werden, wenn es Probleme mit der neuen Version 4.1 gibt. Die Version 4.1 von
 
XFree86 unterstützt mehr Grafikkarten und bietet eine bessere Hardwareerkennung sowie 3D Beschleunigung.
 
Xinerama erlaubt die Verwendung von mehreren Monitoren, die zu einer großen Arbeitsfläche
 
zusammengefasst werden.
 
Debian 3.0 ist sicherer geworden. Die Basisinstallation enthält weniger Dienste, die jeder für sich ein
 
potentielles Risiko darstellen. In der neuen Release sind mehr sicherheitsorientierte Programme enthalten.
 
Hierzu gehören beispielsweise Porgramme zu Administration eines Firewalls, zur Sicherung des Rechners oder
 
zur Entdeckung von Einbrüchen. Das Paket System wurde ebenfalls erweitert, es können nun zu jedem Paket
 
die digitalen Checksummen geprüft werden. So kann eine Installation eines Paketes verhindert werden, wenn
 
die Checksumme nicht übereinstimmt. Dies ermöglicht sichere, automatische Updates von Systemen über das
 
Internet.
 
Debian 3.0 ist von Übersetzerteams in der ganzen Welt auf die jeweiligen landesspezifischen Anforderungen
 
angepasst worden. Es sind Voreinstellungen für mehr Sprachen als bisher vorhanden und eine größere Anzahl
 
von Programmen unterstützt verschiedene Landessprachen. Die zur Installation verwendeten Bootdisketten
 
beispielsweise wurden ebenfalls in viele Sprachen übersetzt. Besonders gut werden in Debian 3.0 die Sprachen
 
Französisch, Deutsch, Italienisch, Japanisch, Portugiesisch, Spanisch, Katalanisch und Dänisch unterstützt; an
 
15 weiteren Sprachen wird aktiv gearbeitet.
 
Diese Debian Version enthält zum ersten Mal verschiedene freie grafische Webbrowser wie Mozilla, Galeon
 
und Konqueror. Zum ersten Mal ist auch die grafische Benutzeroberfläche KDE, in der Version 2.2, enthalten.
 
Die Version 1.4 von GNOME rundet die Auswahl der grafischen Benutzeroberflächen ab.
 
41
 
Kapitel 2. Installation von Debian GNU/Linux
 
Eine sehr ausführliche Installationsanleitung finden Sie auf Ihrer Debian GNU/Linux CD unter
 
doc/install.txt oder doc/install.html, sowie im Netz unter http://debian.org/doc/. Dort wird
 
auch auf Probleme mit spezieller Hardware eingegangen und detailliert beschrieben, welche alternativen
 
Möglichkeiten zur Installation geboten werden. Es wurde hier darauf verzichtet, diese Informationen nochmals
 
zu wiederholen, statt dessen wird die Installation anhand eines typischen Beispiels beschrieben.
 
2.6.3. Ein erster Start
 
Die Installation von Debian kann von den verschiedensten Medien aus erfolgen. Zunächst ist es jedoch
 
notwendig den Rechner mit einem Minimalsystem, welches auch das eigentliche Installationsprogramm enthält,
 
zu starten.
 
Generell kann jeder der im folgenden beschriebenen Variante der Bootimages nicht nur zur Installation
 
verwendet werden, sondern bietet auch die Möglichkeit das System im Fehlerfall zu reparieren.
 
Die Installation von Debian GNU/Linux benötigt mindestens 12 MB RAM und einen Swap-Bereich, oder aber
 
14 MB RAM, wenn kein Swap-Bereich zur Verfügung steht. Die aus älteren Debian Versionen bekannt
 
„lowmem“ Bootdiskette ist in der Version 3.0 nicht mehr enthalten. Das installierte Basissystem benötigt
 
mindestens 64 MB Plattenplatz auf einer eigenen Partition sowie eine weitere Partition für den Swap-Bereich.
 
Wenn weitere Pakete installiert werden sollen, so ist dies nach Bedarf bei der Planung der Partitionen zu
 
berücksichtigen.
 
2.6.3.1. Bootmedium
 
Als Bootmedium für den ersten Start des Systems kommen sowohl CD-ROMs als auch Disketten in Frage.
 
Zunächst sollte im BIOS des Rechners überprüft werden, ob die Möglichkeit besteht, direkt von CD-ROM zu
 
booten. Die Aufteilung der Menüs ist - je nachdem von welchem Hersteller das BIOS kommt - unterschiedlich.
 
Im Zweifelsfall sind die nötigen Informationen im Handbuch des Motherboards zu finden.
 
Abbildung 2-1. BIOS Einstellungen
 
Wenn das System das Booten von CD-ROM nicht unterstützt, können Bootdisketten erzeugt werden. Sie finden
 
die nötigen Images auf Ihrer Debian GNU/Linux-CD im Verzeichnis /cdrom/install/ als Dateien:
 
rescue.bin und root.bin. Alternativ können statt der Rescue Diskette (rescue.bin), auch die Dateien
 
bf24.bin, compact.bin, idepci.bin, sbm.bin genutzt werden; diese bieten die oben genannten
 
alternativen Kernelkonfigurationen.
 
42
 
Kapitel 2. Installation von Debian GNU/Linux
 
Wenn Ihnen ein anderes GNU/Linux-System (oder ein anders PC-Unix) zur Verfügung steht, können Sie die
 
Images mit dem Kommando: dd if=rescue.bin of=/dev/fd0 auf eine Diskette schreiben (ggf. den Pfad
 
zu der Datei angeben). Wenn Sie nicht über ein lauffähiges GNU/Linux-System zur Erstellung der
 
Bootdisketten verfügen, können Sie mit dem DOS-Programm rawrite2.exe, welches sich ebenfalls auf der
 
Debian GNU/Linux-CD befindet, das Image auf eine Diskette schreiben. Achten Sie darauf, daß beim
 
Schreiben keine Fehlermeldungen auftreten. Wenn Sie eine Diskette nicht fehlerfrei erstellen können, sollte
 
diese Diskette in den Müll wandern, probieren Sie es mit einer anderen Diskette noch einmal.
 
Um das System von Disketten zu starten muss zuerst die „rescue“ Diskette eingelegt werden (auch wenn eine
 
Neuinstallation vorgenommen wird). Nach dem laden des Linux Kernels werden Sie aufgefordert die „root“
 
Disketten einzulegen und die Return Taste zu drücken.
 
Auf Systemen die über ein via USB angeschlossenes Diskettenlaufwerk verfügen, kann so zwar von der ersten
 
Diskette gebootet werden, leider wird aber nicht die root-Diskette in einem USB Laufwerk unterstützt. Speziell
 
auf diesen Problemfall angepasste Bootdisketten für die Debian Version 3.0 werden unter
 
www-user.rhrk.uni-kl.de/~blochedu/usb-install/ von Eduard Bloch zur Verfügung gestellt.
 
Sollten beim Start von Diskette oder CD-ROM Probleme auftreten, so gibt es noch einen dritten Weg, Debian
 
GNU/Linux zu starten, das Programm loadlin.exe. Sie müssen hierzu auf Ihrem Rechner ein lauffähiges
 
MS-DOS-System installiert haben und sollten auf die CD-ROM zugreifen können. Auf der ersten CD finden Sie
 
im Verzeichnis /install alle benötigten Dateien sowie das Script boot.bat. Dieses Script können Sie direkt
 
ausführen, das Debian GNU/Linux-Installationsprogramm sollte nach kurzer Zeit geladen werden.
 
Wird das Boot-Medium korrekt erkannt, sehen Sie einen Begrüßungstext mit einigen Informationen zur
 
Installation von Debian.
 
Abbildung 2-2. Bootmenü
 
Beim Start von der ersten CD-ROM kann zwischen verschiedenen Kernelversionen zur Installation gewählt
 
werden. Die Auswahl erfolgt durch Angabe der gewünschten Version am Bootprompt. Folgende Kernel stehen
 
zur Auswahl:
 
vanilla
 
Kernel Version 2.2.x, dies ist der Standard Kernel für das Debian System mit fast allen Treibern des Linux
 
Kernels als Modulen.
 
compact
 
Kernel Version 2.2.x: hier wurden viele selten benutzte Treiber weggelassen (Sound, Video4Linux usw.),
 
43
 
Kapitel 2. Installation von Debian GNU/Linux
 
dafür sind häufig benötigte Treiber (NE2000, 3COM 3c905, Tulip, Via-Rhine und Intel EtherExpress
 
Pro100) im Kernel integriert. Somit kann eine Installation über das Netzwerk mit zwei Disketten (root und
 
rescue) durchgeführt werden. Weiterhin sind Treiber für die RAID Controller DAC960, und Compaq’s
 
SMART2 RAID integriert.
 
idepci
 
Kernel Version 2.2.x: diese Version unterstützt ausschlieslich IDE und PCI Geräte sowie einige wenige
 
ISA Geräte. Dieser Kernel sollte benutzt werden, wenn es beim Starten des Kernels zu Problemen mit
 
SCSI Geräten kommt. In diesem Kernel ist der ide-floppy Treiber integriert, sodaß eine Installation auch
 
von LS120 oder ZIP Laufwerken vorgenommen werden kann. Dies ist auch der Default Kernel, falls nichts
 
anderes ausgewählt wurde.
 
bf24
 
Kernel Version 2.4.x: dieser aktuelle Kernel unterstützt viele neue Hardwarekomponenten, welche nicht
 
von älteren Versionen unterstützt wurden. Die USB und IDE Unterstützung wurde verbessert, neuere
 
Netzwerkkarten Treiber wurden integriert und es werden die Dateisysteme Ext3 und ReiserFS unterstützt.
 
rescue
 
Diese spezielle Option dient zum Starten eines Rettungssystems, um ein defektes System instandzusetzen.
 
Es kann als Option jedes beliebige Root-Dateisystem angegeben werden. Der Kernel wird dabei vom
 
Bootmedium geladen. Weitere Rettungssysteme auf der ersten CD-ROM sind: rescbf24, resccomp,
 
rescvanl. So kann beispielsweise mittels rescbf24 root=/dev/hda3 ein Rettungssystem mit dem
 
Kernel 2.4 gestartet werden, welches die Partition /dev/hda3 als Root-Dateisystem benutzt.
 
Für Fortgeschrittene Benutzer sind folgende Optionen interessant, die am Bootprompt angegeben werden
 
können:
 
quiet
 
Es werden während der Installation nur absolut notwendige Fragen gestellt.
 
verbose
 
Es werden sehr viele Fragen während der Installation gestellt.
 
debug
 
Zur Fehlersuche für Entwickler. Meldungen werden auf tty3 ausgegeben.
 
bootkbd
 
Mit dieser Option kann die zu verwendende Tastaturtabelle angegeben werden, beispielsweise
 
bootkbd=qwertz/de-latin1-nodeadkeys.
 
Zunächst sollte versucht werden das Installationsprogramm ohne Angabe von weiteren Parametern zu starten.
 
2.6.4. Das Debian-Installationsprogramm
 
Direkt nach dem Laden des Linux-Kernels wird das eigentliche Installationsprogramm gestartet. Dieses
 
Programm wird Sie durch die Installation führen. Sie können jederzeit zu jedem beliebigen Punkt der
 
Installation zurückkehren oder auch die komplette Installation von Anfang an neu beginnen. In den meisten
 
Fällen genügt es, die Fragen, bei denen Sie sich nicht ganz sicher sind, mit einem einfachen Druck auf die
 
Eingabetaste zu bestätigen. Die voreingestellten Werte sind sinnvoll und führen zu einem funktionsfähigen
 
System.
 
Zuerst erfolgt die Auswahl der gewünschten Sprache für die Installation. Das Installationsystem steht in 19
 
verschiedenen Sprachen zur Verfügung.
 
44
 
Kapitel 2. Installation von Debian GNU/Linux
 
Abbildung 2-3. Sprachauswahl
 
Bei der Auswahl eines deutschsprachigen Installationsprogrammes kann zwischen verschiedenen
 
Sprachräumen gewählt werden.
 
Abbildung 2-4. Sprachraum
 
Die nächste Maske zeigt einige Informationen zu Debian GNU/Linux und der Bootdiskette an. Die sogenannten
 
Release Notes (Versions-Informationen) informieren über die Debian GNU/Linux-Version, sowie die
 
Versionsnummer und das Herstellungsdatum der Bootdiskette. Hier finden Sie auch eine kurze Information zu
 
SPI – „Software in the Public Interest“, der nicht-kommerziellen Organisation hinter Debian GNU/Linux und
 
zur FSF ().
 
45
 
Kapitel 2. Installation von Debian GNU/Linux
 
Abbildung 2-5. Release Informationen
 
Nun gelangt man in das eigentliche Hauptmenü des Installationsprogramms. Von hier aus können Sie zu jeder
 
Zeit zu jedem beliebigen Punkt der Installation wechseln und Schritte, bei denen Sie sich nicht sicher waren,
 
nochmals wiederholen. Das Installationsprogramm führt in einer sinnvollen Reihenfolge durch die Installation:
 
es ist normalerweise nicht notwendig, andere Menüpunkte als die vorgeschlagenen auszuwählen. Wie gesagt, es
 
ist nicht nötig, aber möglich. Sie haben hier alle Freiheiten.
 
Abbildung 2-6. Hauptmenü
 
Zuerst wird die Konfiguration der Tastatur angeboten. Die Belegung der Tastatur ist sofort nach der Auswahl
 
aus diesem Menü aktiviert.
 
46
 
Kapitel 2. Installation von Debian GNU/Linux
 
Abbildung 2-7. Tastatur Konfiguration
 
Wenn Sie Debian GNU/Linux auf einem neuen System (oder einer neuen Festplatte) installieren, werden Sie
 
nun zur Partitionierung der Festplatte aufgefordert. Wenn bereits ein Linux-System auf einer Partition installiert
 
war, wird dieser Schritt automatisch übergangen und es wird zum nächsten Schritt, dem einbinden einer
 
Swap-Partition, verzweigt.
 
Abbildung 2-8. Festplatte partitionieren
 
Wählen Sie nun aus der Liste der Festplatten, die vom Installationsprogramm gefunden wurde, die gewünschte
 
Festplatte aus. Haben Sie nur eine einzige IDE-Festplatte in Ihrem System, so wird lediglich das Device
 
/dev/hda zur Auswahl angeboten. Weitere IDE-Festplatten werden vom Linux-Kernel als /dev/hdb (Slave
 
am Primary Controller), /dev/hdc (Master am Secondary Controller) und /dev/hdd (Slave am Secondary
 
47
 
Kapitel 2. Installation von Debian GNU/Linux
 
Controller) verwaltet. SCSI-Festplatten werden mit /dev/sda, /dev/sdb, /dev/sdc usw. bezeichnet,
 
aufsteigend nach der eingestellten Adresse (SCSI ID).
 
Abbildung 2-9. Auswahl der Festplatte(n)
 
Im nächsten Schritt werden Sie auf einige Beschränkungen mit älteren Motherboard-Bios-Versionen
 
hingewiesen. Diese können dazu führen, daß der Linux-Kernel nicht geladen werden kann. Dies tritt aber nur
 
auf mehrere Jahre alten Systemen auf und kann meist ignoriert werden.
 
Abbildung 2-10. Informationen zu lilo
 
Neu in dieser Debian Release ist die Unterstützung von sogenannten „Journaling Filesystemen“. Diese sind in
 
der Lage, nach einem Systemabsturz das Dateisystem anhand eines Journals sehr schnell wiederherzustellen.
 
48
 
Kapitel 2. Installation von Debian GNU/Linux
 
Ein langwieriger Check des Dateisystemes, wie beispielsweise vom Extended 2 Dateisystem (ext2) her bekannt,
 
kann dabei entfallen. Die „woody“ Release unterstützt neben dem Extended 3 Dateisystem (ext3), welches
 
ebenfalls ein „Journaling Filesystem“ ist, auch das ReiserFS. Dieses benötigt zusätzlichen Plattenplatz zur
 
Verwaltung des Journals.
 
Abbildung 2-11. Informationen zu ReiserFS
 
Wenn eine fabrikneue Festplatte zur Installation benutzt wird, so ist auf dieser noch keine Partitionstabelle
 
geschrieben worden. Zu Partitionierung der Festplatte wird das Programm cfdisk verwendet. Es benötigt
 
zwingend eine solche Partitionstabelle, auch wenn diese noch keine Einträge enthält.
 
Abbildung 2-12. Partitionstabelle nicht gefunden
 
49
 
Kapitel 2. Installation von Debian GNU/Linux
 
Es wird nun das Programm cfdisk gestartet. Mit diesem können in den freien Bereichen der Festplatte neue
 
Partitionen angelegt oder auch bereits vorhandene Partitionen gelöscht werden. VORSICHT! Änderungen, die
 
hier durchgeführt werden und mit write auf die Festplatte geschrieben wurden, lassen sich nicht wieder
 
rückgängig machen!
 
In dem hier gezeigten Beispiel wird eine komplette IDE-Festplatte für die Installation von Debian GNU/Linux
 
verwendet.
 
Abbildung 2-13. Partition anlegen
 
Über den Menüpunkt new kann eine neue, primäre Partition erzeugt werden. In unserem Beispiel wurde eine
 
Größe von 1,8 Gigabyte (1800 Megabyte) gewählt. Diese Partition wird später das GNU/Linux-Dateisystem
 
aufnehmen und von dieser wird auch der eigentliche Linux-Kernel geladen. Diese Partition müssen Sie mit dem
 
Menüpunkt „Bootable“ bootfähig machen.
 
Abbildung 2-14. Partition anlegen
 
50
 
Kapitel 2. Installation von Debian GNU/Linux
 
In dem verbliebenen Platz wird eine weitere Partition eingerichtet. Diese dient dem System als Swap-Bereich,
 
um im Betrieb über mehr (virtuellen) Speicherplatz zu verfügen. Nach der Zuweisung des Festplattenplatzes für
 
diese Partition muss noch der Typ geändert werden, sodaß das System diese Partition auch als Swap-Bereich
 
erkennt. Dies geschieht über den Menüpunkt type, dort ist der Typ der zweiten Partition auf „82 - Linux Swap“
 
zu setzen. Dies ist schon die Voreinstellung, wenn Sie den Menüpunkt type auswählen, hier reicht ein Druck
 
auf die Eingabetaste.
 
Sie können auch die verschiedensten anderen Dateisysteme anlegen. Wie Sie in der Auflistung sehen können,
 
werden viele im DOS/Windows-Bereich verbreitete Formate, sowie eine ganze Reihe von Unix-Dateisystemen
 
unterstützt.
 
Abbildung 2-15. Partitionen anlegen
 
Nachdem mindestens eine Root (/) und eine Swap-Partition eingerichtet sind, sollte sich in etwa folgendes Bild
 
ergeben.
 
51
 
Kapitel 2. Installation von Debian GNU/Linux
 
Abbildung 2-16. Partitionen anlegen
 
Es wurden nun 2 Partitionen erstellt, /dev/hda1 (die erste Partition auf der Master-Festplatte am Primary IDE
 
Controller) wird das Root-Dateisystem aufnehmen, /dev/hda2 ist die Swap-Partition.
 
Natürlich können nach Belieben weitere Partitionen, zum Beispiel für /home oder /var angelegt werden.
 
Wenn die Einteilung der Festplatte abgeschlossen ist, müssen die Daten noch in die bereits erwähnte
 
Partitionstabelle geschrieben werden. Bis jetzt wurden noch keine Daten auf der Festplatte verändert. Wenn
 
nicht sichergestellt ist, das es sich um die gewünschte Festplatte handelt, oder wenn noch wichtige Daten auf
 
der Festplatte vermutet werden, so ist an dieser Stelle das Programm mit „Quit“ zu verlassen! Wenn aber alles
 
wie geplant eingeteilt wurde, können die Einstellungen mit „Write“ in die Partitionstabelle geschrieben werden.
 
Das Installationsprogramm findet nun die Signatur einer Swap-Partition auf der Festplatte und bietet an, diese in
 
das System einzubinden.
 
Abbildung 2-17. Swap Partition einbinden
 
52
 
Kapitel 2. Installation von Debian GNU/Linux
 
Wenn Sie mehrere Swap-Partitionen angelegt haben, die auch auf verschiedenen Festplatten liegen können, so
 
können Sie diesen Menüpunkt vom Hauptmenü aus unter „Formatieren und Einbinden einer Swap-Partition“
 
noch einmal anwählen.Wiederholen Sie dies so lange, bis alle vorhandenen Swap-Partitionen eingebunden sind.
 
Bei nur einer Swap-Partition wird diese Auswahl übersprungen. Während des Formatierens der Partition kann
 
der Bereich auf defekte Blöcke hin geprüft werden. Bei modernen Geräten ist dies nicht notwendig, sodaß hier
 
problemlos darauf verzichtet werden kann.
 
Abbildung 2-18. Swap Partition auswählen
 
Hier nochmal zur Sicherheit die Abfrage, ob diese Partition wirklich als Swap-Partition eingerichtet werden soll
 
und damit alle Daten verlorengehen.
 
Abbildung 2-19. Swap Partition bestätigen
 
53
 
Kapitel 2. Installation von Debian GNU/Linux
 
Im folgenden Schritt wird ein Linux-Dateisystem formatiert und ins System eingebunden. Wenn das System auf
 
verschiedenen Partitionen installiert werden soll, so ist dieser Schritt mehrfach auszuführen.
 
Abbildung 2-20. root Dateisystem einbinden
 
Es muss mindestens eine Partition als Root-Dateisystem eingebunden werden. Wenn lediglich eine
 
Linux-Partition vorhanden ist, so wird keine Auswahl der verfügbaren Partitionen angezeigt.
 
Nun kann das zu verwendende Dateisystem ausgewählt werden. Ältere Debian Versionen verwendeten immer
 
das Extended 2 Dateisystem, dies ist auch heute noch eine gute Wahl: es hat sich in vielen Installationen
 
bewährt.
 
Ein um die Funktionalitäten eines Journaling Filesystems erweitertes ext2 Dateisystem ist unter dem Namen
 
ext3 / Extended 3 Filesystem verfügbar. Vorteilhaft ist hier das dieses auch kompatibel zum bisherigen
 
Extended 2 Dateisystem ist, natürlich geht dann das Journal verloren. Sie können eine mit dem Extended 3
 
Dateisystem formatierte Partition auch mit älteren Kerneln oder Rettungsdisketten zusammen verwenden.
 
Alternativ steht noch das ReiserFS zur Verfügung. Auch dieses bietet die Funktionen eines Journaling
 
Filesystems. ReiserFS wird jedoch von vielen Fachleuten als zu unausgereift angesehen, sodaß ein Einsatz eher
 
auf Testsystemen sinnvoll erscheint.
 
Aufgrund der Kompatibilität zum Extended 2 Dateisystem ist das Extended 3 Dateisystem hier eine gute Wahl.
 
54
 
Kapitel 2. Installation von Debian GNU/Linux
 
Abbildung 2-21. Auswahl Dateisystem
 
Auch für diese Partition kann eine Überprüfung auf defekte Blöcke während der Formatierung erfolgen, wie
 
schon beschrieben ist dies bei neueren Systemen nicht notwendig.
 
Abbildung 2-22. Überprüfung auf defekte Blöcke
 
Hier noch einmal zur Sicherheit die Abfrage, ob Sie sich für die richtige Partition entschieden haben.
 
55
 
Kapitel 2. Installation von Debian GNU/Linux
 
Abbildung 2-23. Überprüfung auf defekte Blöcke
 
Im Gegensatz zur Swap-Partition, dauert das Formatieren des Root-Dateisystems etwas länger. Dies ist
 
abhängig von der Größe der Partition. Sie können diesen Vorgang am Bildschirm verfolgen.
 
Abbildung 2-24. Dateisystem formatieren
 
Sie werden abschließend gefragt, ob die eben formatierte Partition in das System eingebunden werden soll.
 
Bestätigen Sie dies mit der Eingabetaste.
 
56
 
Kapitel 2. Installation von Debian GNU/Linux
 
Abbildung 2-25. Partition einbinden
 
2.6.4.1. Installation des Basissystems
 
Nachdem die Platte mit mindestens zwei Partitionen vorbereitet wurde, können nun der eigentliche
 
Linux-Kernel sowie die dazugehörenden Module installiert werden.
 
Abbildung 2-26. Module installieren
 
Sie haben die Möglichkeit, den Kernel und die Module von verschiedenen Medien aus zu installieren. Wenn Sie
 
von einer CD-ROM gebootet haben, ist es sinnvoll, auch den Rest der Installation von diesem Medium
 
durchzuführen. Verfügen Sie aber beispielsweise über ein Notebook ohne CD-ROM, so können Sie Debian
 
GNU/Linux auch komplett über Disketten installieren. Eine weitere Option ist die Installation von einer anderen
 
57
 
Kapitel 2. Installation von Debian GNU/Linux
 
Partition, egal ob diese bereits gemountet wurde oder nicht. Diese Partition kann auch mit einem DOS- oder
 
Windows-Dateisystem formatiert sein. Dies kann dann sinnvoll sein, wenn Sie sich Debian GNU/Linux bei
 
einem Bekannten auf eine Festplatte kopiert haben oder wenn Sie die Dateien mit einem anderen
 
Betriebssystem aus dem Internet von einem FTP-Server geladen haben. Der mit Debian GNU/Linux gelieferte
 
Kernel unterstützt hierzu die Dateisysteme der gebräuchlichsten Betriebssysteme.
 
Wir gehen hier aber von der Installation per CD-ROM aus. Ist bereits eine CD-ROM eingelegt, so wird diese
 
vom Installationsprogramm erkannt.
 
Abbildung 2-27. Auswahl Installationsmedium
 
Es werden nun zunächst der Kernel (dies geht recht schnell), sowie die Module (Treiber) installiert. Der
 
angezeigte Pfad kann sich, je nachdem welcher Kernel für die Installation gewählt wurde, von dem hier
 
gezeigten unterscheiden.
 
Abbildung 2-28. Installation Kernel und Module
 
58
 
Kapitel 2. Installation von Debian GNU/Linux
 
Es können nun zusätzliche Treiber – sogenannte Module – in den Kernel eingebunden werden. Dies ist im
 
Normalfall nicht notwendig, da viele Treiber bereits fest in den Kernel integriert sind.
 
Abbildung 2-29. Konfiguration der Module
 
Exemplarisch soll hier die Installation eines Modules für eine Netzwerkkarte gezeigt werden. Es kann durchaus
 
der Fall sein, daß die Netzwerkkarte bereits vom Kernel erkannt wurde. Dies ist der Fall, wenn der Treiber für
 
die betreffende Karte fest in den Kernel integriert wurde. In diesem Fall braucht kein Modul für die Karte
 
geladen zu werden.
 
Tip: Netzwerkkarte: Um festzustellen, ob bereits ein Treiber für die Netzwerkkarte im laufenden Kernel
 
integriert ist, kann mit der Tastenkombination ALT+F2 (ALT+F1 wechselt auf die erste Konsole zurück) auf
 
eine Konsole umgeschaltet werden. Zunächst muss diese Konsole durch drücken der Eingabetaste aktiviert
 
werden. Mit dem Kommando: dmesg | grep eth kann festgestellt werden, ob der Kernel bereits beim Start
 
eine Netzwerkkarte gefunden und eingebunden hat:
 
# dmesg | grep eth
 
eth0: PCnet/PCI II 79C970A at 0x1000, 00 50 56 8c 32 53
 
#
 
Ist dies nicht der Fall, muss ein Modul geladen werden.
 
Wenn zu einem späteren Zeitpunkt weitere Module geladen werden sollen, so kann dazu jederzeit das
 
Programm modconf benutzt werden.
 
Tip: Notebook: Wenn Sie Debian GNU/Linux auf einem Notebook installieren, sollten Sie an dieser Stelle
 
ein wenig vom normalen Pfad der Installation abweichen und zunächst die Treiber für den PCMCIA
 
Steckplatz installieren. Wählen Sie hierzu den Menüpunkt Alternative: Konfiguration der
 
PCMCIA-Unterstützung. Danach können Sie ganz normal das Netzwerk konfigurieren.
 
59
 
Kapitel 2. Installation von Debian GNU/Linux
 
Abbildung 2-30. Anmerkung Module
 
Die Module sind in verschiedene Gruppen eingeteilt, werfen Sie ruhig mal einen Blick in jedes Verzeichnis.
 
Abbildung 2-31. Auswahl Module
 
Am Beispiel einer Netzwerkkarte werden wir kurz erläutern, wie beim Einbinden von Modulen prinzipiell
 
vorzugehen ist. Wählen Sie zuerst die gewünschte Gruppe aus (kernel/drivers/net - Treiber für
 
Netzwerkkarten). Sie erhalten dann eine Liste aller verfügbaren Treiber. Netzwerkkarten, die über einen
 
PCI-Bus verfügen, benötigen meist keinerlei Parameter und lassen sich mit wenigen Schritten einbinden. Bei
 
älteren ISA-Karten müssen oft weitere Angaben zu IO-Bereich und Interrupt gemacht werden. Hilfreich ist hier,
 
wenn Sie diese Angaben bereits von einem anderen auf diesem Rechner laufenden Betriebssystem in Erfahrung
 
bringen können. Sehr verbreitet sind NE2000-kompatible Netzwerkkarten. Oft reicht es bei diesen, nur den
 
Parameter io anzugeben, typische Werte sind hier: 0x280, 0x300, 0x320 usw.
 
60
 
Kapitel 2. Installation von Debian GNU/Linux
 
Die hier ausgewählte Intel EtherExpress Pro 100M PCI-Karte braucht hingegen keine weiteren Parameter und
 
läßt sich so sehr einfach in das System einbinden.
 
Abbildung 2-32. Modul Netzwerkkarte Intel Pro 100
 
Abbildung 2-33. Modul Netzwerkkarte Intel Pro 100
 
61
 
Kapitel 2. Installation von Debian GNU/Linux
 
Abbildung 2-34. Modul Netzwerkkarte Intel Pro 100
 
Sind alle Module erfolgreich geladen, verlassen Sie dieses Menü. Sollten bei einzelnen Komponenten Probleme
 
auftreten, ist dies nicht weiter schlimm. Momentan ist es ausreichend, wenn alle zur Installation benötigten
 
Geräte funktionsfähig sind. Netzwerkkarten, Soundkarten usw. können später konfiguriert werden.
 
Auch wenn Sie in Ihrem System keine Netzwerkkarte installiert haben, sind einige Angaben zum Netzwerk
 
nötig; versuchen Sie also nicht an diesem Menüpunkt vorbeizukommen: es wird Ihnen nicht gelingen.
 
Abbildung 2-35. Netzwerkkonfiguration
 
Eine wichtige Information ist der Name des Systems (hostname). Wenn Sie den Rechner sofort oder später in
 
ein bestehendes Netzwerk einbinden wollen, sollten Sie mit dem zuständigen Administrator einen geeigneten
 
62
 
Kapitel 2. Installation von Debian GNU/Linux
 
Namen vereinbaren, um Konflikte zu vermeiden. Für ein privates Netzwerk können Sie den vorgegebenen Wert,
 
debian, belassen oder einen beliebigen anderen eingeben.
 
Abbildung 2-36. Netzwerk
 
Je nachdem ob Sie vorher eine Netzwerkkarte konfiguriert haben oder nicht, werden Sie nun mit einigen
 
weiteren Fragen konfrontiert. Dies bedeutet nicht, daß Sie nicht später per Modem oder ISDN ins Internet
 
kommen, doch dazu später mehr.
 
Wenn in Ihrem Netz ein DHCP-Server zur Verfügung steht, können Sie von diesem alle weiteren
 
Netzwerkeinstellungen beziehen. Meist werden diese jedoch von Hand eingegeben.
 
Abbildung 2-37. Netzwerkkonfiguration DHCP
 
63
 
Kapitel 2. Installation von Debian GNU/Linux
 
Geben Sie hier die IP-Nummer an, die Sie dem Netzwerkinterface geben wollen. Die hier vorgegebenen Werte
 
sind reservierte Nummern, die Sie zu Hause in einem lokalen Netzwerk ohne Probleme benutzen können.
 
Abbildung 2-38. IP-Nummer
 
In einem Firmennetz oder wenn Sie von Ihrem Provider mehrere feste IP-Nummern bekommen haben, setzen
 
Sie hier die entsprechenden Werte ein.
 
Ihre Netzmaske:
 
Abbildung 2-39. Broadcast
 
64
 
Kapitel 2. Installation von Debian GNU/Linux
 
Geben Sie hier die IP-Nummer des Gateways ein.
 
Abbildung 2-40. Nameserver
 
Nun erfolgt die Abfrage des Domainnamens. Wenn Sie eine eigene Domain beantragt haben, setzen Sie den
 
Namen dort ein. Wenn Sie ein privates Netzwerk zu Hause benutzen, können Sie sich auch einen netten Namen
 
ausdenken. Eventuell ist es auch sinnvoll, den Domainnamen Ihres Providers einzusetzen. Wenn Sie sich nicht
 
sicher sind, lassen Sie das Feld einfach frei.
 
Abbildung 2-41. Domainname
 
65
 
Kapitel 2. Installation von Debian GNU/Linux
 
Meist werden Sie einen anderen Rechner als Nameserver nutzen; geben Sie dessen IP-Nummer hier ein. Die
 
IP-Nummer des Nameservers erfahren Sie im Zweifelsfall bei Ihrem Provider. Mehrere Nameserver können
 
nacheinander, durch Leerzeichen getrennt, eingegeben werden.
 
Abbildung 2-42. Nameserver
 
Der nächste Punkt führt zur Installation des Basissystems. Es wird ein grundlegendes System auf der
 
vorbereiteten Platte installiert. Dieses Basissystem enthält alle nötigen Programme, um die Installation später zu
 
vervollständigen.
 
Abbildung 2-43. Installation Basissystem
 
66
 
Kapitel 2. Installation von Debian GNU/Linux
 
Die Installation kann – je nachdem wie schnell das System ist – einige Minuten in Anspruch nehmen. Es wird
 
ein Grundsystem installiert, in dem alle weiteren Programme vorhanden sind, die benötigt werden. Die
 
Installation erfolgt von der CD-ROM, von der bereits der Kernel und die Module installiert wurden.
 
Abbildung 2-44. Basisinstallation - Schritt 1
 
Abbildung 2-45. Basisinstallation - Schritt 2
 
67
 
Kapitel 2. Installation von Debian GNU/Linux
 
Abbildung 2-46. Basisinstallation - Schritt 3
 
Abbildung 2-47. Basisinstallation - Schritt 4
 
68
 
Kapitel 2. Installation von Debian GNU/Linux
 
Abbildung 2-48. Basisinstallation - Schritt 5
 
Der Fortschritt der Installation kann detailiert auf der vierten Konsole beobachtet werden. Mit der
 
Tastenkombination ALT+F4 kann auf diese Konsole gewechselt werden.
 
Abbildung 2-49. Basisinstallation - Schritt 6
 
2.6.5. Bootloader
 
Im folgenden wird die Festplatte für den automatischen Start von Debian GNU/Linux vorbereitet. Alternativ
 
können Sie hier auch eine Boot-Diskette erzeugen; diese kann später als Rettungssystem verwendet werden.
 
69
 
Kapitel 2. Installation von Debian GNU/Linux
 
Normalerweise ist dies aber nicht notwendig, denn jedes Debian Installationsystem kann auch als
 
Rettungssystem verwendet werden. Dies gilt auch für die CD-ROM, von der das System installiert wurde.
 
Abbildung 2-50. System bootfähig machen
 
Es wird ein neuer MBR (Master Boot Record) auf der Festplatte installiert. Sie können bestimmen, an welcher
 
Stelle er installiert werden soll. Normalerweise wird der Bootloader in den MBR installiert, wenn ein anderer
 
Bootloader (beispielsweise ein kommerzielles Produkt) verwendet werden soll, so ist der Linux Loader (lilo) in
 
den Bootsektor der Root-Partition (hier /dev/hda1) zu installieren.
 
Der Linux Loader (lilo) wird zunächst ohne weitere Absicherung installiert. Dies bedeutet, daß jeder der Zugriff
 
auf die Hardware des Rechners erlangt und ohne weiteres das System mit eigenen Parametern starten kann. Auf
 
diese Weise ist es sehr einfach, Rechte des Systemadministrators zu erlangen, ohne ein Passwort zu kennen!
 
LILO sollte später mit einem Passwort abgesichert werden, dies ist im Abschnitt über Systemsicherheit genauer
 
beschrieben.
 
Abbildung 2-51. LILO Sicherheitshinweis
 
70
 
Kapitel 2. Installation von Debian GNU/Linux
 
Es wird nun angeboten, eine Boot-Diskette zu erstellen. Wenn Sie Ihr System von CD-ROM booten können, ist
 
es kein Problem, dies zu übergehen: Sie können jederzeit mit der CD booten und das System im Notfall
 
reparieren. Es schadet aber auch nicht, eine solche Diskette zu erstellen.
 
Abbildung 2-52. Bootdisk
 
2.6.6. Neustart
 
Damit ist die Installation abgeschlossen. Das System muss nun einmalig neu gestartet werden, dabei werden
 
noch einige kleiner Einstellungen vorgenommen.
 
Abbildung 2-53. Reboot
 
71
 
Kapitel 2. Installation von Debian GNU/Linux
 
Hier nochmal ein Hinweis, daß Sie das System auch von Diskette neu starten können. Dies funktioniert in
 
gleicher Weise auch von der Installations-CD-ROM, welche das gleiche Image benutzt, wie es auch für die
 
Rettungsdiskette verwendet wird.
 
Ihr System wird nun neu gestartet und die Installation ist fast abgeschlossen...
 
2.6.7. Fertigstellen der Installation
 
Nachdem das System gestartet ist, werden noch einige letzte Einstellungen vorgenommen.
 
Abbildung 2-54. Letzte Einstellungen
 
Debian GNU/Linux verwaltet die Systemzeit, und somit auch die Umschaltung zwischen Sommer- und
 
Winterzeit, über sogenannte Zeitzonen. Wählen Sie, wie gezeigt die für Ihre Region sinnvollen Werte. Um die
 
Zeitzone später zu ändern, kann das Programm tzconfig verwendet werden.
 
72
 
Kapitel 2. Installation von Debian GNU/Linux
 
Abbildung 2-55. Zeitzone - GMT
 
Abbildung 2-56. Zeitzone - Bereich
 
73
 
Kapitel 2. Installation von Debian GNU/Linux
 
Abbildung 2-57. Zeitzone - Stadt
 
MD5 verschlüsselte Passwörter sollten in jedem Fall verwendet werden. Diese bieten eine höhere Sicherheit
 
gegen Angriffe.
 
Abbildung 2-58. MD5 Paßwörter
 
Die Verwendung von „Shadow-“ Paßwörtern macht das System vor Angriffen deutlich sicherer (die Paßwörter
 
werden in einer Datei gespeichert die, nicht wie die Datei /etc/passwd, die von jedem Benutzer gelesen
 
werden kann, sondern nur vom Benutzer root lesbar ist).
 
74
 
Kapitel 2. Installation von Debian GNU/Linux
 
Abbildung 2-59. Shadow Paßwörter
 
Als nächster Schritt steht Ihnen die Auswahl des Paßwortes für den Systemadministrator (root) bevor. Sie
 
sollten dieses Paßwort besonders sorgsam auswählen! Achten Sie darauf, daß es nicht Teile Ihres Namens
 
enthält und möglichst aus einem Gemisch aus Buchstaben, Zahlen und Sonderzeichen besteht. Bei der Auswahl
 
der verwendeten Zeichen ist darauf zu achten, daß das System durchaus in einen Zustand geraten kann indem
 
noch keine deutsche Tastaturbelegung geladen ist. Enthält das Passwort des Systemadminisrators dann Umlaute
 
so werden Sie massive Probleme mit der Anmeldung am System haben. Verwenden Sie besser Sonderzeichen
 
die auch auf einer Tastatur mit amerikanischem Tastaturlayout zu erreichen sind. Der Systemadministrator hat
 
Zugriff auf alle Teile des Systems, deshalb ist dieses Paßwort besonders sensibel.
 
Abbildung 2-60. root Paßwort
 
75
 
Kapitel 2. Installation von Debian GNU/Linux
 
Wie jedes gute Paßwort, so möchte auch dieses zur Bestätigung ein weiteres Mal eingegeben werden und wird
 
natürlich nicht am Bildschirm angezeigt.
 
Abbildung 2-61. root Paßwort
 
Sie haben nun die Gelegenheit, einen neuen Benutzer - zusätzlich zum Administrator - einzurichten. Sie sollten
 
dies auf alle Fälle tun, es ist nicht üblich und sogar gefährlich, die tägliche Arbeit am System als Administrator
 
durchzuführen. Melden Sie sich immer als normaler Benutzer am System an und benutzen Sie das Kommando
 
su, um Systemverwaltungsaufgaben durchzuführen.
 
Abbildung 2-62. Benutzer anlegen
 
76
 
Kapitel 2. Installation von Debian GNU/Linux
 
Geben Sie zuerst den gewünschten Benutzernamen ein. Dies können zum Beispiel Ihr Vorname oder Ihre
 
Initialen sein:
 
Abbildung 2-63. Benutzer - Username
 
Hier sollten Sie Vor- und Nachnamen eingeben. Bedenken Sie, daß die hier gemachten Angaben auch später
 
weiterverwendet werden, beispielsweise beim Versenden von E-Mail. Wenn Sie also als „Donald Duck“ im
 
Netz auftauchen wollen, können Sie das hier eingeben... Zum guten Ton gehört aber die Verwendung des echten
 
Namens.
 
Abbildung 2-64. Benutzer - Realname
 
77
 
Kapitel 2. Installation von Debian GNU/Linux
 
Auch für diesen Benutzer werden Sie wieder um ein Paßwort gebeten. Auch dieses sollten Sie sorgfältig
 
auswählen. Normale Benutzer haben zwar nicht alle Rechte auf einem GNU/Linux-System, wenn ein
 
Eindringling jedoch erst mal Zugriff auf ein System erlangt hat, gelingt es oft, sich weitere Rechte zu
 
verschaffen.
 
Abbildung 2-65. Benutzer - Passwort
 
Natürlich müssen Sie auch dieses Paßwort zweimal eingeben um sicherzugehen, daß sich keine Tippfehler
 
eingeschlichen haben.
 
Abbildung 2-66. Benutzer - Passwort
 
78
 
Kapitel 2. Installation von Debian GNU/Linux
 
Wenn Ihr System nicht über PCMCIA-Slots verfügt, können Sie die Unterstützung hierfür entfernen lassen.
 
Abbildung 2-67. PCMCIA entfernen
 
Nun können Sie wählen, ob Sie die weitere Installation über PPP (Point-to-Point-Protokoll) von einem der
 
vielen Debian FTP-Server durchführen möchten. Wenn Sie über einen schnellen Zugang verfügen, können Sie
 
diese Möglichkeit in Erwägung ziehen. Normalerweise sollten Sie aber die Installation von einer CD-ROM, wie
 
bisher beschrieben, durchführen.
 
Abbildung 2-68. PPP Installation
 
79
 
Kapitel 2. Installation von Debian GNU/Linux
 
Wenn Sie, wie hier gezeigt, die weitere Installation nicht über PPP durchführen, wird versucht, von dem bei der
 
Installation des Basissystems gefundenem CD-ROM die Paketdateien mit den verfügbaren Debian-Paketen zu
 
lesen. Sie sollten hier zunächst die erste CD eingelegt haben, von der Sie auch das Basissystem installiert haben.
 
Abbildung 2-69. CD Installation, lesen der Pakete
 
Wenn Sie über mehrere Debian GNU/Linux-CDs verfügen, können Sie diese hier nacheinander einlesen. Die
 
vorhandenen CDs werden in der Datei /etc/apt/sources.list mit einer eindeutigen Kennung eingetragen
 
und die Paketdateien eingelesen.
 
Natürlich können weitere CD-ROMs oder andere Installationsquellen auch zu einem späteren Zeitpunkt
 
hinzugefügt werden; das dazugehörige Programm (welches auch hier grade zum Einsatz kommt) heisst
 
apt-setup.
 
Abbildung 2-70. CD Installation, lesen einer weiteren CD?
 
80
 
Kapitel 2. Installation von Debian GNU/Linux
 
Wenn alle vorhandenen CD-ROMs eingelesen wurden, können Sie weitere Quellen hinzufügen, von denen
 
Paketdateien gelesen werden sollen. In den meisten Fällen werden dies sicher FTP-Server sein, die über die
 
aktuellsten Debian-Pakete verfügen.
 
Abbildung 2-71. APT weitere Quelle
 
Sofern das neu installierte System über einen Anschluß an das Internet verfügt, sollten in jedem Fall die
 
Security Updates in die Konfiguration aufgenommen werden.
 
Abbildung 2-72. Security Updates
 
81
 
Kapitel 2. Installation von Debian GNU/Linux
 
Das Programm tasksel erlaubt das einfache Auswählen von Paketdateien. Hierbei müssen nicht viele einzelne
 
Pakete gewählt werden, vielmehr können sinnvolle Zusammenstellungen für verschiedene Anwendungszwecke
 
gewählt werden.
 
Abbildung 2-73. tasksel
 
Sie können nun, über das hier gezeigte Programm taskselect, welches Sie auch zu einem späteren Zeitpunkt
 
erneut starten können, zwischen verschiedenen für Sie zusammengestellten Konfigurationen wählen. Jedes der
 
hier angezeigten Pakete wählt eine Gruppe weitere Pakete aus. Eine ausführlichere Beschreibung zu
 
taskselect finden Sie in einem späteren Kapitel.
 
Abbildung 2-74. tasksel
 
82
 
Kapitel 2. Installation von Debian GNU/Linux
 
Abschliessend können weitere Pakete gezielt mittels dselect zur Installation ausgewählt werden. Dies kann
 
aber auch zu einem späteren Zeitpunkt bei Bedarf erfolgen.
 
Abbildung 2-75. dselect
 
Nach der Auswahl der gewünschten Pakete werden diese noch einmal angezeigt. Sie können noch einmal einen
 
Blick auf die Auswahl werfen und ggf. an dieser Stelle abbrechen.
 
Je nachdem ob Sie eine oder mehrere CDs zur Installation verwenden, kann es vorkommen, daß Sie
 
aufgefordert werden, eine andere CD einzulegen.
 
Abbildung 2-76. Package Installation
 
83
 
Kapitel 2. Installation von Debian GNU/Linux
 
Gleich im Anschluß werden einige Pakete sich zu Wort melden, die einer weiteren Konfiguration bedürfen. Hier
 
zum Beispiel das Paket less, welches einen Mime-Handler konfigurieren möchte.
 
Abbildung 2-77. Paket Konfiguration - less
 
Debian GNU/Linux unterstützt verschiedene Sprachen. Hier kann ausgewählt werden, welche benötigt werden
 
und welche aus dem System entfernt werden sollen.
 
Abbildung 2-78. Paket Konfiguration - locale
 
84
 
Kapitel 2. Installation von Debian GNU/Linux
 
Aus den verfügbaren Sprachen („C“ steht dabei für englisch) kann eine als systemweite Sprache gewählt
 
werden.
 
Abbildung 2-79. Paket Konfiguration - locales
 
Das Entpacken der gewünschten Pakete erfordert bei den meisten Paketen keine weitere Benutzereingabe, Sie
 
können sich jetzt, je nach Anzahl der ausgewählten Pakete, erst mal eine kleine Pause genehmigen. Sollten Sie
 
jetzt während der Installation zu einzelnen Paketen auf Fragen stoßen, die Sie nicht beantworten können, so
 
lesen Sie in dem entsprechenden Abschnitt dieses Buches weiter nach, wie dieses Programm zu konfigurieren
 
ist.
 
Abbildung 2-80. Pakete entpacken
 
85
 
Kapitel 2. Installation von Debian GNU/Linux
 
Nach der Installation der ausgewählten Pakete, können Sie die Archive von Ihrer Platte löschen. Wenn Sie die
 
Pakete via FTP aus dem Netz geholt haben, kann es aber auch sinnvoll sein, die Archive auf der Platte zu halten,
 
um einen erneuten Download zu vermeiden.
 
Abbildung 2-81. Pakete löschen nach der Installation
 
Hiermit ist die Installation abgeschlossen und Sie bekommen noch einige Tips zur Verwendung von virtuellen
 
Konsolen.
 
Abbildung 2-82. Installation beendet
 
Wenn alles geglückt ist, können Sie sich an Ihrem neuen Debian GNU/Linux-System anmelden.
 
86
 
Kapitel 2. Installation von Debian GNU/Linux
 
Abbildung 2-83. Login
 
2.6.8. Paket Vorschläge und Empfehlungen
 
Das Debian Paketsystem bietet Vorschläge (recommend) und Empfehlungen (suggest) für Pakete an. Diese
 
werden von APT nicht berücksichtigt und somit sind einige nützliche und wichtige Pakete (beispielsweise ssh
 
und gnupg) noch nicht installiert. Leider lassen sich diese Pakete nicht direkt via APT installieren, es ist ein
 
kurzer Umweg über dselect notwendig.
 
Mit dem Kommando
 
dselect --expert select quit
 
werden die vom Paketmanagement bisher nicht ausgewählten Pakete ermittelt und zur Installation ausgewählt.
 
Es erscheint einmalig das Programm dselect. Dieses kann einfach durch einen Druck auf die Return-Taste
 
beendet werden. Abschliessend sind die noch fehlenden Pakete mittels
 
apt-get dselect-upgrade
 
zu installieren.
 
87
 
Kapitel 2. Installation von Debian GNU/Linux
 
Abbildung 2-84. apt-get dselect-upgrade
 
Hiermit ist die Installation eines einfachen Debian GNU/Linux-Systems abgeschlossen. In den folgenden
 
Kapiteln finden Sie weitere Informationen, wie Sie das System an Ihre Bedürfnisse anpassen können und
 
weitere Pakete installieren.
 
2.7. Installation von Debian/GNU Hurd
 
Die Debian Entwickler unterstützen seit einigen Monaten die Entwicklung von HURD indem sie Pakete für den
 
HURD Kernel übersetzen und im Netz zur Verfügung stellen. Alle zur Paketverwaltung notwendigen
 
Werkzeuge stehen zur Verfügung.
 
Natürlich gibt es auch für dieses Debian Projekt eine eigene Webseite auf der sich neben aktuellen
 
Informationen auch Links zur Dokumentation, Installation und zur Entwicklung finden. Die Adresse lautet
 
http://www.debian.org/ports/hurd/.
 
Für die eigentliche Installation von Debian GNU/Hurd stehen unter
 
ftp://ftp.fsn.hu/pub/CDROM-Images/debian-unofficial/ CD-Images zum Download bereit. Diese basieren
 
momentan noch auf den Bootdisketten vom Debian GNU/Linux i386, für die Installation von HURD müssen
 
Sie einmalig für kurze Zeit auf einen Linux Kernel zurückgreifen. Die CD-Images sind bootfähig und sind für
 
die Installation von Debian GNU/Hurd nur leicht angepasst worden.
 
Eine Liste von weiteren Mirror-Servern auf denen diese CD-Images liegen, findet sich unter
 
http://www.debian.org/ports/hurd/hurd-cd.
 
Wie Sie diese Images auf CD brennen finden Sie in einem anderen Kapitel dieses Buches beschrieben.
 
2.7.1. Die Installations-CD
 
Die Debian GNU/Hurd Installation verläuft prinzipiell wie die Installation von Debian GNU/Linux. Nach der
 
Installation eines Minimal-Systemes erfolgt ein Reboot und alle weiteren Pakete werden über das
 
Minimal-System installiert und konfiguriert.
 
Somit konnten große Teile der Debian GNU/Linux Installationsroutinen auch für Debian GNU/Hurd benutzt
 
werden. Die Installation auf diesem Weg mit einer CD-ROM hat einige Vorteile:
 
88
 
Kapitel 2. Installation von Debian GNU/Linux
 
• Mit einem laufenden Linux System im Arbeitsspeicher und den notwendigen Daten für die Installation von
 
Hurd auf der CD, kann die Installation auf einem System erfolgen auf dem bisher noch nie ein
 
Betriebssystem installiert war.
 
• Da es unter Hurd (noch) keine Programme zum partitionieren der Festplatte gibt, kann dies unter Linux
 
geschehen.
 
• Die Installation geht schnell und ist den meisten Benutzern bereits von Debian GNU/Linux vertraut.
 
Hurd unterstützt momentan noch keine Partitionen die über 1GB groß sind. Natürlich können aber mehrere
 
Partitionen während der Installation erzeugt werden. Hurd benutzt das Extended 2 Dateisystem (ext2), welches
 
bereits von Linux bekannt sein dürfte. Der entsprechende Aufruf um ein Dateisystem zu erzeugen lautet
 
beispielsweise: mke2fs -O sparse_super -o hurd /dev/hda1. Als ergänzende Option ist -o hurd
 
anzugeben, die Installationsroutine berücksichtigt dies bereits.
 
2.7.2. Vorbereitungen
 
• 1. Erzeugen einer GRUB Bootdiskette
 
Auf der CD-ROM befindet sich unter /install/grub-boot-0.5.95.image ein Image für eine GRUB
 
Bootdiskette. Diese kann mit dem Kommando dd auf eine Diskette geschrieben werden.
 
• 2. Verstehen der „Basics“ Fahren Sie nur mit der Installation fort wenn Sie sich ganz sicher sind das Sie die
 
verschiedenen Namensgebungen für Laufwerke und Partitionen unter Linux, Hurd und bei GRUB verstanden
 
haben. Hier kann es leicht zu Verwechslungen kommen. Deshalb sollte der folgende Abschnitt sehr
 
aufmerksam gelesen werden.
 
Hurd nummeriert Festplatte in aufsteigender Reihenfolge, beginnend mit 0. Hierbei ist es bei IDE Fetsplatte
 
unabhängig ob die Festplatte als Master oder Slave eingestellt ist, die zweite Platte ist immer hd1. Ebenso wird
 
bei SCSI Festplatten verfahren. Die erste und zweite Festplatte werden als sd0 bzw. sd1 bezeichnet, egal
 
welche SCSI ID den Platten gegeben wurde. Obwohl die Bezeichnungen bereits so verwendet wurden, hier
 
nochmal der Hinweiß: IDE Festplatten werden als hdx und SCSI Festplatten als sdx bezeichnet.
 
Die Partitionen auf einer Festplatte werden immer als sn bezeichnet, wobei n für die Partitionsnummer steht
 
und die Nummerierung mit 1 begonnen wird. Die dritte Partition auf der ersten IDE Festplatte würde somit als
 
hd0s3 bezeichnet werden. Die dritte Partition auf der zweiten SCSI Festplatte bezeichnte man als sd1s3.
 
Verwirrend, nicht war...?
 
GRUB bezeichnet die Partitionen etwas anders. Zunächst werden Festplatten und Partitionen beginnend mit 0
 
hochgezählt. Die Bezeichnung lautet (hdN,n), inklusive der runden Klammern. Alle Festplatten werden
 
fortlaufend hochgezählt, beginnend mit den IDE Festplatten, danach die SCSI Festplatten. Mal ein Beispiel: bei
 
einer IDE Festplatte im System lautet die Bezeichnung für die ersten Partition (hd0,0). Nehmen wir aber mal
 
(hd1,2), dies kann bereits die erste SCSI Festplatte sein, wenn nur eine IDE Festplatte im System steckt. Es
 
kann aber auch die zweite IDE Festplatte sein. Alles verstanden? Wenn nicht beginnen Sie bitte am Anfang des
 
Kapitels von vorne.... ;-)
 
2.7.3. Installation unter Linux
 
Die Installation des Hurd Systems erfolgt zunächst unter Debian GNU/Linux, viele der Arbeitsschritte werden
 
Ihnen bakannt vorkommen wenn Sie schon einmal Debian GNU/Linux installiert haben. Nach dem ersten
 
Reboot des Systems steht jedoch ein System mit Hurd Kernel zur Verfügung.
 
Die Basisinstallætion läuft in 7 Schritten ab:
 
• 1. Booten des Installationssystems
 
89
 
Kapitel 2. Installation von Debian GNU/Linux
 
Die Installationsroutine kann mit jeder der bekannten Methoden erfolgen, es kann direkt von der CD-ROM,
 
von DOS/Windows aus oder von den boot/root Disketten gestartet werden. Wenn keine CD-ROM zur
 
Verfügung steht kann auch von einem kompletten Set Disketten installiert werden.
 
• 2. Partitionen
 
Zunächst sollten Sie über den Menüpunkt „Partition a Hard Disk“ einen Blick auf die vorhandenen
 
Festplatten und Partitionen werfen. Wenn Sie später weitere Partitionen in das System einbinden möchten, so
 
sollten Sie diese jetzt bereits anlegen. Unter Hurd stehen noch keine Programme für diese Aufgaben zur
 
Verfügung. Für den Anfang sollten 500-600MB für das System ausreichen.
 
• 3. Namen
 
Notieren Sie sich genau die geplante Partitionierung des Systems. Erstellen Sie eine Tabelle in der sowohl die
 
Bezeichnungen für GRUB als auch für Hurd vermerkt sind.
 
• 4. Erstellen von Partitionen
 
Legen Sie nun die gewünschten Partitionen an. Achten Sie darauf auch eine Swap Partition anzulegen, Hurd
 
ist da sehr kleinlich wenn es keine solche Partition finden kann... Es kann für Linux und Hurd eine
 
gemeinsame Swap Partition verwendet werden.
 
• 5. Formatierung
 
Formatieren Sie nun, über den Menüeintrag „Initialize a Hurd or Linux Partition“ die für Hurd vorgesehene /
 
(root) Partition und mounten diese. Es dürfen keine weiteren Partitionen gemountet werden.
 
• 6. Basissystem
 
Installieren Sie das Basissystem über „Install the Base System“.
 
• 7. Reboot
 
Legen Sie nun die GRUB-Bootdiskette ein und starten Sie das System über „Reboot the System“. Wenn Sie
 
das Sytem von CD-ROM gestartet haben müssen Sie die Bootreihenfolge im Bios verändern oder die CD aus
 
dem Laufwerk nehmen.
 
Wenn die Hurd Partition (hd0,0) (GRUB Bezeichnungsschema) und sd0s1 (HURD Bezeichnungsschema)
 
ist. so startet das System vollkommen automatisch. Zur Errinerung: dies würde bedeuten das Hurd auf der
 
ersten Partition der ersten Festplatte installiert wurde und das sich keine IDE Festplatten im System befinden.
 
Sollte aber die Bezeichnung (hd0,0) (GRUB Bezeichnungsschema) und hd0s1 (HURD
 
Bezeichnungsschema) sein, so wird GRUB leicht irritiert sein und um eine Korrektur bitte. Sie wissen jetzt aber
 
bereits das die korrekte Antwort hd0s1 lautet. Die Frage ob /boot/serverboot.gz verwendet werden soll
 
ist mit einem Druck auf die Eingabestaste (RETURN) zu beantworten.
 
Wenn keine der beiden Varianten auf Ihr System zutrifft, so stellt GRUB ein Bootmenü zur Verfügung in dem
 
die TAB-Taste zur Vervollständigung der Eingabe verwendet werden kann.
 
Hier ein Beispiel: die Aufforderung „Press any key to continue“ und das drücken der Eingabetaste bringt ein
 
Menü zum Vorschein. Mit der Taste c gelangt man in die Kommandozeile. Von hier kann Schritt für Schritt die
 
korrekte Eingabe zusammengestellt werden.
 
grub$ root TABÊ
 
Possible commands are: root rootnoverify
 
grub$ root (TABË
 
90
 
Kapitel 2. Installation von Debian GNU/Linux
 
Possible disks are: fd0 hd0 hd1
 
grub$ root (hd0,TABÌ
 
Possible partitions are:
 
Partition num: 0, Filesystem type is unknown, partition type 0x82
 
Partition num: 1, Filesystem type is ext2fs, partition type 0x83
 
Partition num: 2, Filesystem type is ext2fs, partition type 0x83
 
Partition num: 4, Filesystem type is ext2fs, partition type 0x83
 
Partition num: 5, Filesystem type is ext2fs, partition type 0x83
 
Partition num: 6, Filesystem type is ext2fs, partition type 0x83
 
grub$ root (hd0,4)Í
 
Filesystem type is ext2fs, partition type 0x83
 
grub$ kernel /boot/gnumach.gz root=hd0s5 -s
 
grub$ module /boot/serverboot.gz
 
grub$ boot
 
Ê Drücken Sie hier die TAB-Taste.
 
Ë Drücken Sie hier die (- und die TAB-Taste.
 
Ì Wählen Sie eine der vorab angezeigten Festplatten aus und drücken Sie wieder die TAB-Taste.
 
Í Wenn die Festplatte und Partition korrekt sind, kann die Auswahl mit der Eingabetaste abgeschlossen
 
werden.
 
Wenn alle Angaben korrekt sind, kann das System gestartet werden. Auf der Bootdiskette kann später dann die
 
Datei /boot/grub/menu.lst so verändert werden das die Einträge den tatsächlichen Gegebenheiten
 
entsprechen.
 
2.7.4. Abschluß der Installation
 
Die Installation wird nach dem Neustart des Systems nun bereits mit einem laufenden Hurd-Kernel
 
abgeschlossen:
 
• Wenn das System gestartet ist, rufen Sie ./native-install auf. Danach muß das System mit dem
 
Kommando reboot nochmal neu gestartet werden. Achten Sie ganz besonders auf die Meldungen und
 
notieren Sie sich die Bezeichnung des CD-ROMs.
 
• Auch nach diesem Start rufen Sie ./native-install nocheinmal auf. Diesmal werden viele bereits
 
installierte Pakete abschliessend konfiguriert. Danach muß das System nochmals rebootet werden.
 
• Melden Sie sich nun als Benutzer „root“ an und wechseln Sie in das Verzeichnis /dev. Nun müssen alle
 
benötigten Gerätedateien angelegt werde, auch für die Swap-Partition und das CD-ROM. Dies geschieht mit
 
dem Kommando MAKEDEV hd2 hd0s2 hd0s3 usw..
 
• Ändern Sie die Datei /etc/fstab mit dem Editor ae und fügen Sie die benötigten Partitonen hinzu,
 
beispielsweise:
 
/dev/hd0s1 none swap sw 0 0
 
/dev/hd1,1 /CD1 ext2 rw 1 1
 
/CD1 ist der empfohlene Pfad wenn auch die zweite Hurd-CD zur Installation verwendet wird. Wie schon
 
erwähnt kann die Swap-Partition ebenfalls von Linux verwendet werden.
 
• Nun muß die Swap-Partition mit swapon -a aktiviert werden.
 
91
 
Kapitel 2. Installation von Debian GNU/Linux
 
• Das CD-ROM wird mit einem sogenannten „translator“ aktiviert: settrans -a /cdrom /hurd/isofs
 
/dev/hd2s1, die Bezeichnung muß natürlich angepasst werden.
 
• Nun können weitere Pakete mit dselect installiert werden. Unter „Access“ wählen Sie „Mounted
 
filesystem“ und geben /cdrom/dists/unstable ein. Wundern Sie sich nicht über einige
 
Fehlermeldungen, lediglich ../main/binary-hurd-i386 enthält Pakete, die Bereiche „contrib“ und
 
„non-US“ sind in diesem bereits enthalten.
 
• Fahren Sie mit „Update“ und „Select“ fort. Sie können weitere Pakete auswählen, um Probleme zu
 
minimieren sollte darauf aber erst einmal verzichtet werden. Die Auswahl von „Install“ sollte ohne größere
 
Probleme durchlaufen.
 
• Das abmelden der CD-ROM erfolgt in zwei Schritten, die Kommandos
 
settrans -g /cdrom
 
settrans -g /dev/hd2s1
 
sollten zum gewünschten Ergebniss führen.
 
Hiermit ist die Installation abgeschlossen. Es können nun weitere Pakete installiert werden.
 
92
 
Kapitel 3. Betrieb
 
3.1. Unix-Grundlagen
 
Im folgenden finden Sie eine Einführung in die wichtigsten Unix-Kommandos sowie eine Beschreibung des
 
Editors vi. Im Gegensatz zu anderen Betriebssystemen speichert Debian GNU/Linux alle nötigen Einstellungen
 
in reinen Textdateien. Diese lassen sich mit den einfachsten Werkzeugen, wie zum Beispiel dem Editor vi,
 
bearbeiten. Es werden keine Programme mit grafischer Benutzeroberfläche benötigt, der Systemadministrator
 
hat 100%igen Zugriff auf alle Einstellungen, zur Not auch von außerhalb über eine simple Telefonleitung oder
 
über das Internet via telnet oder besser ssh. Es werden die wichtigsten Grundlagen zur Systemadministration
 
vermittelt, so daß Sie in jedem Fall Ihr System wieder zum Leben erwecken können.
 
Sicher gibt es einfacher zu bedienende Editoren als vi, dieser hat jedoch den Vorteil, schon direkt nach der
 
Basisinstallation von Debian GNU/Linux vorhanden zu sein. Auch auf anderen Unix-Systemen trifft man auf
 
diesen Standard-Editor, so daß man die Vorkenntnisse auch hier nutzen kann.
 
Da bisher keine grafische Oberfläche installiert wurde (diese ist beispielsweise für den Betrieb eines Servers
 
nicht notwendig), finden Sie im folgenden ausschließlich textbasierte Programme.
 
Debian GNU/Linux stellt dem Systembetreiber aber auch zahlreiche grafische Werkzeuge zur Administration
 
zur Verfügung, einige von ihnen werden später vorgestellt.
 
3.2. Allgemeines zum neuen System
 
Wenn Sie es bis hierher geschafft haben, Debian GNU/Linux auf Ihrem System zu installieren und das erste
 
Mal zu starten, steht Ihnen nun ein lauffähiges Debian GNU/Linux-System zur Verfügung.
 
Alle installierten Programme wurden schon für Sie sinnvoll vorkonfiguriert. Dennoch ist es natürlich an vielen
 
Stellen angebracht, dem System den letzten Schliff zu geben. Im folgenden erfahren Sie einiges über den
 
Aufbau und die Funktionalität des Debian GNU/Linux-Systems, danach wird auf einige spezielle Programme
 
eingegangen.
 
3.3. Ein Multiuser-, Multitasking-Betriebssystem
 
Debian GNU/Linux basiert auf dem Design der in den 60er Jahren entstandenen Unix-Systeme. Anders als die
 
im täglichen Gebrauch – zu Hause oder in Büros – verbreiteten DOS-, Windows- und MacOS-Betriebssysteme,
 
ist Unix im Serverbereich und auf Systemen mit vielen Benutzern, auf ein und demselben Rechner, verbreitet.
 
Dies bedeutet u.a., daß Debian GNU/Linux viele Funktionen von Hause aus mitbringt, die den anderen
 
Betriebsystemen fehlen oder die zusätzlich erworben und installiert werden müssen. Debian erlaubt mehreren
 
Benutzern die gleichzeitige Nutzung eines Rechners ( Multiuser), hierzu ist es nötig mehrere, auch gleiche
 
Programme, zur selben Zeit auszuführen. Diese Funktion nennt man Multitasking.
 
Ein Großteil der Komplexität und Leistungsfähigkeit von Unix-Systemen hat ihren Ursprung in diesen beiden
 
Funktionen. Zum Beispiel muß das System bei mehreren Benutzern verhindern, daß ein Benutzer Dateien eines
 
anderen versehentlich löschen kann.
 
Hat man dies einmal verstanden, fällt es viel leichter viele der Vorgänge und Eigenheiten eines Unix-Systems
 
besser zu verstehen. Sie werden im folgenden lernen, diese beiden Funktionen sinnvoll zu nutzen.
 
3.4. Anmelden am System
 
Um Debian GNU/Linux zu benutzen, müssen Sie sich am System anmelden. Dies geschieht über die Eingabe
 
eines sogenannten Usernamens und eines Paßwortes. Über diese Kombination kann das System feststellen,
 
welche Zugriffsrechte der Benutzer hat und welche persönlichen Einstellungen zu verwenden sind.
 
93
 
Kapitel 3. Betrieb
 
Wenn Sie Debian GNU/Linux selber installiert haben, wurden Sie bereits bei der Installation nach einem
 
Benutzernamen und einem Paßwort sowie einigen anderen Angaben gefragt. Möchten Sie sich an einem
 
anderen System anmelden, fragen Sie den Systembetreuer nach einem Zugang.
 
Sie sollten in jedem Fall nicht auf die Idee kommen, für Ihren Zugang zu einem Linux-System auf ein Paßwort
 
zu verzichten (auch wenn dies grundsätzlich möglich ist und Sie „sowieso nur alleine zu Hause“ an dem
 
Computer arbeiten!). Ein Zugang ohne Paßwort steht für jeden anderen spätestens bei der ersten Verbindung ins
 
Internet offen, bitte bedenken Sie das!
 
Auch ist es bei der Installation möglich, auf die Einrichtung eines normalen Benutzers zu verzichten. Dies mag
 
in einigen wenigen Fällen sinnvoll sein, es ist aber meistens davon abzuraten. Der Superuser (root) hat generell
 
alle Zugriffrechte an einem System. Debian GNU/Linux installiert aus Sicherheitsgründen einige Pakete so, daß
 
die zugehörigen Programme nicht als Superuser ausgeführt werden können. Weiterhin ist es standardmäßig
 
unter Debian GNU/Linux nicht ohne weiteres möglich, sich als Superuser über ein Netzwerk am System
 
anzumelden. Es kann also zu Problemen und Verwirrung kommen, wenn Sie keinen normalen Benutzer
 
angelegt haben.
 
Wenn Sie Ihr Debian GNU/Linux-System starten, sehen Sie eine Aufforderung zur Anmeldung am System. Je
 
nach Konfiguration kann dies eine textbasierte oder eine grafische Anmeldung sein. Im einfachsten Fall sehen
 
Sie in etwa folgendes:
 
Debian GNU/Linux woody surimi tty1
 
book login:
 
Bei einer unveränderten Debian-Installation steht in der ersten Zeile nach „Debian GNU/Linux“ der Name der
 
Debian-Version (hier „woody“ für die Version 3.0), der Name des Rechners („surimi“) sowie Name und
 
Nummer der Konsole, auf der Sie sich befinden.
 
Geben Sie nun Ihren Benutzernamen ein und drücken Sie RETURN, Sie werden dann nach Ihrem Paßwort
 
gefragt.
 
Passwort:
 
Geben Sie hier Ihr gewähltes Paßwort ein. Beachten Sie, daß das Paßwort bei der Eingabe aus
 
Sicherheitsgründen nicht angezeigt wird. Sollte die Anmeldung fehlschlagen, prüfen Sie, ob eventuell die
 
Feststelltaste gedrückt wurde.
 
War die Anmeldung erfolgreich, sehen Sie eine kurze Willkommensnachricht, die in etwa so aussieht:
 
Linux surimi 2.4.4 #1 Wed May 16 09:21:01 EST 2001 i686 unknown
 
Copyright (C) 1993-1999 Software in the Public Interest, and others
 
Most of the programs included with the Debian GNU/Linux system are
 
freely redistributable; the exact distribution terms for each program
 
are described in the individual files in /usr/doc/*/copyright
 
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
 
permitted by applicable law.
 
Last login: Sat Jul 3 21:53:40 on tty4.
 
You have mail.
 
$
 
Das letzte Zeichen, $, wurde von einem Programm, der sogenannten shell, ausgegeben. Deshalb nennt man dies
 
auch den „shell-prompt“. Hier können Sie verschiedene Kommandos eingeben und so das System steuern oder
 
Programme starten.
 
Als erster Versuch eignet sich das Kommando whoami gut.
 
Der Cursor rechts neben dem Shell-Prompt (meist ein blinkender Unterstrich (_)) zeigt an, an welcher Stelle Sie
 
das nächste Zeichen auf der Tastatur eingeben sollen. Tippen Sie den Befehl whoami ein und drücken Sie
 
RETURN.
 
whoami zeigt Ihren Benutzernamen an, Sie gelangen dann wieder zum Shell-Prompt zurück.
 
94
 
Kapitel 3. Betrieb
 
Wenn Sie Ihre Arbeit mit Debian beendet haben, sollten Sie sich wieder vom System abmelden. Hierfür können
 
Sie den Befehl „exit“ benutzen. Eine weitere Möglichkeit ist das gleichzeitige Drücken der Tasten STRG+d,
 
auch hiermit verlassen Sie die momentane shell, Ihre Benutzerumgebung.
 
Bedenken Sie, daß – wenn Sie sich nicht vom System abmelden – andere Leute Ihren Zugang mißbrauchen
 
können, falls Sie sich von Ihrem Rechner entfernen!
 
3.5. Anmelden als Superuser (root)
 
Debian GNU/Linux ist als Multiuser-System dafür ausgelegt, mehrere Benutzer gleichzeitig bei der Arbeit zu
 
unterstützen. Hierbei wurde besonderer Wert darauf gelegt, daß ein Programm eines Benutzers, wenn es denn
 
mal abstürzt, nicht das komplette System abstürzen läßt. Über Zugriffrechte, die den Benutzern eines Systems
 
von dem Systemadministrator zugewiesen werden, wird verhindert, daß wichtige Dateien im System von
 
Unbefugten verändert oder gar gelöscht werden.
 
Manchmal ist es aber nötig, selbst wichtige Systemdateien zu verändern. Hierzu gehört die Installation von
 
neuen Programmen (normalerweise über das Programm dselect) oder auch die Konfiguration des
 
Netzwerkes. Ein solcher Eingriff ist ebenfalls nötig, wenn man eine serielle Maus angeschlossen hat und diese
 
gegen ein Modell mit PS/2-Anschluß austauschen möchte.
 
Um diese Änderungen vornehmen zu können, müssen Sie mehr Zugriffsrechte zu Ihrem System erlangen als
 
Ihnen als normaler Benutzer zur Verfügung stehen. Sie müssen „root“ werden, sich also als Superuser/
 
Systemadministrator am System anmelden.
 
Am einfachsten gelingt dies, wenn Sie sich bereits am Login-Prompt mit dem Benutzernamen root und dem
 
dazugehörigen Paßwort anmelden. Das Paßwort haben Sie bereits bei der Installation gewählt, wenn Sie das
 
System selber installiert haben. Arbeiten Sie an einem fremden System, bitten Sie den Systemadministrator, die
 
gewünschten Einstellungen für Sie vorzunehmen.
 
Manchmal ist das Paßwort für den Superuser auch mehreren Personen bekannt, dies ist z.B. an Universitäten
 
oder in Firmen üblich, um zu gewährleisten, daß möglichst immer ein Systembetreuer ansprechbar ist.
 
Melden Sie sich nun als Superuser (root) an. Überprüfen Sie mit dem Befehl whoami Ihre Identität. Loggen Sie
 
sich möglichst bald wieder aus, wenn Sie als Superuser am System gearbeitet haben! Sie haben als Superuser
 
alle Zugriffsrechte, um das gesamte System im schlimmsten Fall zu zerstören. Spielen Sie nicht mit dem
 
System herum, solange Sie als Superuser angemeldet sind. Führen Sie nur die absolut notwendigen Arbeiten
 
aus und melden Sie sich dann als normaler Benutzer wieder an!
 
Alternativ besteht auch die Möglichkeit, den Befehl su zu benutzen. Sie können so die Rechte eines anderen
 
Benutzers erlangen, ohne sich am System ab- und wieder anmelden zu müssen.
 
Probieren Sie es einmal aus: Melden Sie sich mit Ihrem normalen Benutzernamen an (nicht root!). Geben Sie
 
das Kommando su ein. Sie werden nun nach dem Paßwort für den Superuser gefragt: geben Sie es ein. Der
 
Shell-Prompt sollte nun von $ auf # wechseln. Sie können so leicht feststellen, daß Sie nun als Superuser
 
angemeldet sind. Natürlich können Sie dies auch jederzeit wieder mit whoami überprüfen.
 
Sie können mit dem Befehl su auch die Identität jedes anderen Benutzers annehmen, solange Sie das Paßwort
 
kennen oder als Superuser am System angemeldet sind. Benutzen Sie hierzu ebenfalls den Befehl su und geben
 
dahinter (durch ein Leerzeichen getrennt) den Namen des Benutzers an. Beispiel: su donald.
 
Vielleicht werden Sie bemerken (nachdem Sie das Kommando su einige Zeit benutzt haben), daß nicht alle
 
Einstellungen so sind, wie Sie vielleicht erwarten. Um auch mit dem Kommando su alle Einstellungen so
 
vorzufinden, als ob man sich direkt von einem Login-Prompt angemeldet hätte, benutzen Sie den Befehl su -
 
donald, also mit dem Zeichen - nach dem Kommando su.
 
3.6. Benutzerverwaltung
 
Die Benutzerverwaltung eines Systems stellt an den Systemadministrator verschiedene Anforderungen. Bereits
 
während der Installation von Debian GNU kann ein Benutzer hinzugefügt werden. Dies sollte auch auf jeden
 
Fall geschehen. Nachdem das System in den produktiven Betrieb übergegangen ist, sind Aufgaben wie das
 
95
 
Kapitel 3. Betrieb
 
anlegen oder löschen von Benutzern, das anpassen von Zugriffsrechten oder Quotas (beispielsweise zur
 
Beschränkung des Plattenplatzes je Benutzer) durch den Systemadministrator zu erledigen.
 
Informationen zu Zugriffsrechten finden sich an anderer Stelle in dieser Dokumentation, hier soll es zunächst
 
um das hinzufügen und löschen von Benutzeraccounts gehen.
 
3.6.1. Benutzer hinzufügen
 
Das hinzufügen neuer Benutzer ist Aufgabe des Systemadministrators und muss daher mit Superuser-Rechten
 
durchgeführt werden. Neben dem klassischen Weg, dem hinzufügen der erforderlichen Daten mittels eines
 
Editors in den entsprechenden Dateien, steht unter Debian GNU das Programm adduser zur Verfügung.
 
adduser [--home DIR] [--shell SHELL] [--no-create-home] [--uid ID]
 
[--firstuid ID] [--lastuid ID] [--gecos GECOS] [--ingroup GROUP | --gid ID]
 
[--disabled-password] [--disabled-login] user
 
Add a normal user
 
adduser --system [--home DIR] [--shell SHELL] [--no-create-home] [--uid ID]
 
[--gecos GECOS] [--group | --ingroup GROUP | --gid ID]
 
[--disabled-password]
 
[--disabled-login] user
 
Add a system user
 
adduser --group [--gid ID] group
 
addgroup [--gid ID] group
 
Add a system group
 
adduser user group
 
Add an existing user to an existing group
 
Global configuration is in the file /etc/adduser.conf.
 
Other options are [--quiet] [--force-badname] [--help] [--version]
 
[--conf
 
FILE].
 
adduser kennt eine Reihe von Optionen die in der Manpage beschrieben sind oder, in verkürzeter Form,
 
mittels adduser -h angezeigt werden. Für den „Hausgebrauch“ ist es ausreichend das Programm ohne weitere
 
Optionen aufzurufen, adduser verfügt über einen interaktiven Modus in dem alle notwendigen Angaben
 
erfragt werden.
 
sushi:~# adduser
 
Enter a username to add: dd
 
Adding user dd...
 
Adding new group dd (1001).
 
Adding new user dd (1001) with group dd.
 
Creating home directory /home/dd.
 
Copying files from /etc/skel
 
Enter new UNIX password:
 
Retype new UNIX password:
 
passwd: password updated successfully
 
Changing the user information for dd
 
Enter the new value, or press return for the default
 
Full Name []: Donald Duck
 
Room Number []:
 
Work Phone []:
 
Home Phone []:
 
Other []:
 
Is the information correct? [y/n] y
 
96
 
Kapitel 3. Betrieb
 
Zunächst ist der Benutzer (Loginname) anzugeben. Hier bietet es sich an eine kurze Zeichenkette zu wählen,
 
diese Angabe wird bei jeder Anmeldung am System benötigt.
 
Unter Debian GNU wird für jeden neuen Benutzer auch gleich eine eigene Gruppe erzeugt, die
 
Heimatverzeichnisse für jeden Benutzer (mit Ausnahme von „root“) befinden sich unterhalb von /home/. Dort
 
wird für jeden Benutzer ein Verzeichnis mit dem Namen des Benutzers erzeugt. Weiterhin werden alle dateien
 
aus dem Verzeichnis /etc/skel/ in das Homeverzeichnis des Benutzers kopiert. Hierbei handelt es sich um
 
verschiedene Voreinstellungen, beispielsweise für die bash, welche dann von Benutzer angepasst werden
 
können.
 
sushi:~# ls -a /etc/skel/
 
. .. .alias .bash_logout .bash_profile .bashrc .cshrc
 
Es wird dann (zur Sicherheit doppelt) nach einem Passwort gefragt. Weiterhin sollte der „Full Name“ des
 
Benutzers korrekt angegeben werden. Alle weiteren Angaben stammen aus der Urzeit der Unix Systeme und
 
müssen nicht ausgefüllt werden. Abschliessend kann noch entschieden werden ob alle Angaben korrekt
 
ausgefüllt wurden. Ist dies der Fall so wird der Benutzer dem System hinzugefügt und der Zugang steht ab
 
sofort zur Verfügung. Wird das Programm abgebrochen (durch Eingabe von„n“ oder auch „CTRL+C“ so
 
werden alle bereits erzeugten Dateien, Verzeichnisse und Einträge in Konfigurationsdateien wieder entfernt.
 
3.6.2. Benutzer löschen
 
Das entfernen von Benutzern aus dem System ist deutlich einfacher. Hierzu steht das Kommando deluser zu
 
Verfügung. Auch diese Programm kann interaktiv benutzt werden, hier aber ein Beispiel mit der Angabe des
 
Benutzernamens auf der Kommandozeile:
 
sushi:~# deluser dd
 
Removing user dd...
 
done.
 
Zu beachten ist das dabei nicht das Homeverzeichnis des Benutzers gelöscht wird. Dies bleibt dem
 
Systemadministrator überlassen.
 
3.7. Virtuelle Konsolen
 
Der Linux-Kernel unterstützt virtuelle Konsolen. Dies ist eine Methode, um Ihren Bildschirm und die Tastatur
 
(sowie die Maus, falls das Programm gpm installiert wurde) so benutzen zu können, als wenn Sie an mehreren
 
Geräten gleichzeitig arbeiten würden und diese alle mit dem gleichen Rechner-System verbunden wären.
 
Die Benutzung der virtuellen Konsolen ist sehr einfach. Über die Tastenkombinationen ALT+F1, ALT+F2,
 
ALT+F3 bis ALT+F6 können Sie zwischen den verschiedenen virtuellen Bildschirmen umschalten. Probieren
 
Sie es aus, indem Sie sich mehrfach einloggen und auf den verschiedenen Konsolen unterschiedliche Befehle
 
ausführen.
 
Debian GNU/Linux ist standardmäßig für die Benutzung von sechs virtuellen Konsolen eingerichtet, auf diesen
 
wird automatisch das Programm login gestartet. Sie können auf diese mit den Funktionstasten F1 bis F6
 
zugreifen (jeweils zusammen mit der ALT-Taste). Technisch sind auch noch mehr virtuelle Konsolen möglich,
 
Debian GNU/Linux verwendet die siebte Konsole (ALT+F7) für das X-Window-System, die grafische
 
Benutzeroberfläche.
 
97
 
Kapitel 3. Betrieb
 
Wenn Sie X benutzen, so verwendet dies automatisch die siebte virtuelle Konsole. Diese wird beim Start von X
 
automatisch aktiviert, unabhängig davon, ob Sie das Kommando startx benutzen oder X über xdm oder ein
 
anderes Programm starten.
 
Um von der grafischen Oberfläche X wieder auf die textbasierte Konsole zu wechseln, drücken Sie die
 
Tastenkombination CTRL+ALT+F1 (oder +F2, +F3 usw. ...).
 
Sie müssen sich also nur merken, daß – wenn Sie von X auf eine Konsole wechseln möchten – zusätzlich die
 
Taste CTRL zu drücken ist.
 
Wenn Sie sich einmal mit der Arbeitsweise der virtuellen Konsolen vertraut gemacht haben, werden Sie diese
 
zu schätzen wissen. Sie können so schnell zwischen einem Editor und dem Compiler umschalten und auf der
 
dritten Konsole noch die Logdateien im Auge behalten! Dies können Sie auch unter X erreichen, indem Sie
 
mehrere Fenster öffnen, in vielen Fällen ist es aber gar nicht nötig, auf einem Rechner X zu installieren –
 
beispielsweise bei einem Server.
 
Es ist sogar möglich, mehrere X-Server auf verschiedenen virtuellen Konsolen zu starten. Dies kann für den
 
gleichzeitigen Betrieb von X mit verschiedenen Farbtiefen sinnvoll sein.
 
3.8. System herunterfahren
 
Schalten Sie Ihr Debian GNU/Linux-System niemals einfach aus! Sie riskieren in diesem Fall einen Verlust
 
Ihrer Daten!
 
Wenn Sie Ihren Computer zu Hause benutzen, möchten Sie ihn vielleicht nachts abschalten (eigentlich schaltet
 
kein richtiger Linux-Fan seinen Computer jemals ab, aber trotzdem wollen wir diesen Ausnahmefall kurz
 
besprechen...).
 
Es ist eine sehr schlechte Idee, einen Linux-Computer nach der Arbeit einfach auszuschalten oder die
 
RESET-Taste zu drücken. Der Linux-Kernel hat, um die Performance zu erhöhen, einen internen
 
Festplatten-Cache. Das bedeutet, daß Informationen temporär im Speicher (RAM) des Computers abgelegt
 
werden, bevor sie auf der Festplatte gespeichert werden. Die beschleunigt viele Aktionen stark. Periodisch
 
werden diese Informationen auf die Festplatte gespeichert. Dies können Sie auch selber durch das Kommando
 
sync erreichen.
 
Um Ihren Rechner ordnungsgemäß herunterzufahren, benutzen Sie bitte das Kommando reboot oder drücken
 
Sie CTRL+ALT- und DEL-Tasten gleichzeitig. Debian GNU/Linux wird nun unmittelbar alle Programme
 
beenden, alle Daten auf Festplatte speichern und den Rechner neu starten.
 
Um den Rechner abzuschalten, müssen Sie Superuser (root) sein. Benutzen Sie das Kommando shutdown -h
 
now. Wenn Sie die Zeile System halted, it’s safe to turn off the computer. sehen, können Sie
 
den Rechner ausschalten.
 
Bei neueren Computern mit Advanced Power Management-Unterstützung (APM) und einem Kernel, der dies
 
unterstützt, schaltet sich der Rechner selbsttätig ab.
 
Sie können aber auch als normaler User den Rechner jederzeit mit der Tastenkombination CTRL-ALT-ENTF
 
herunterfahren, wenn der Superuser dies nicht deaktiviert hat (in /etc/inittab). Keine Angst, das System
 
wird auch so korrekt runtergefahren.
 
3.9. Kommandozeile und Dokumentation
 
Einige einfache Beispiele für die Kommandozeile (alles das, was Sie hinter dem Shell-Prompt eingeben) wurden
 
bereits ein paar Seiten zuvor besprochen. Nun beschäftigen wir uns mit etwas umfangreicheren Beispielen.
 
Eine minimale Kommandozeile enthält lediglich einen einzigen Befehl, ohne Parameter, z.B. whoami. Aber
 
auch dies läßt sich noch ausbauen, geben Sie einfach mal man whoami ein.
 
Der Befehl man ruft die Bedienungsanleitung (manual page) für das Programm whoami auf. Mit der Taste
 
SPACE können Sie in der Anleitung weiterblättern, die Taste q beendet das Programm man.
 
Hier ein noch erweitertes Beispiel:
 
man -k Postscript
 
98
 
Kapitel 3. Betrieb
 
Diese Kommando besteht aus 3 Teilen: Zuerst der eigentlich Name des Kommandos, man, gefolgt von einer
 
sogenannten Option, - hier -k, abschließend dann das Argument Postscript.
 
Optionen verändern das Verhalten eines Programms. In den meisten Fällen werden Optionen mit dem Zeichen -
 
eingeleitet. Die GNU-Programme kennen außerdem eine ausführliche Form der Optionen; für die Option -k
 
wäre dies dann --apropos.
 
Probieren Sie dies nun einmal mit dem Befehl man, gefolgt von der Option -h und einmal in der ausführlichen
 
Form mit der Option -help aus. Die Ergebnisse sind gleich.
 
Jedes Kommando hat seine eigenen Optionen. Es wird versucht, diese soweit möglich zu vereinheitlichen, so
 
daß Sie die Optionen -help und --version bei allen GNU-Programmen antreffen sollten. Probieren Sie das
 
ruhig einmal mit einigen verschiedenen Kommandos aus.
 
Aus historischen Gründen gibt es einige – manchmal geradezu bizarre – Abweichungen, die sich bis heute
 
erhalten haben. So ist es z.B. möglich, bei den Kommandos tar oder ps das Zeichen „-“ vor den Optionen
 
einfach wegzulassen.
 
Alle Zeichen, die nicht zu einer Option gehören und kein Kommandoname sind, nennt man Argumente.
 
Argumente können verschiedene Zwecke erfüllen. Meistens handelt es sich um Namen von Dateien, die mit
 
dem entsprechenden Kommando bearbeitet werden sollen. In dem oben genannten Beispiel (man -k
 
Postscript) ist Postscript das Wort, welches vom Kommando man gesucht werden soll. Es wird dann
 
nicht die Anleitung zum Programm Postscript gesucht, sondern es wird in allen Anleitungen nach dem Wort
 
Postscript gesucht und alle Namen der entsprechenden Anleitungen angezeigt. Im Beispiel von man
 
whoami ist man das Kommando und whoami das zu suchende Argument.
 
Wenn Sie nur wenige Programme auf Ihrem System installiert haben, sehen Sie wenige Suchergebnisse oder
 
sogar nur die Meldung: Postscript: nothing appropriate.
 
3.10. Befehle wiederholen und ändern auf der Kommandozeile
 
Alles was Sie hinter einem Shell-Prompt eingeben, ist in irgendeiner Form Teil eines Kommandos. Die bei
 
Debian GNU/Linux standardmäßig genutzte Shell (bash) hat verschiedene Funktionen, um das Eingeben und
 
nachträgliche Ändern von Befehlszeilen zu erleichtern.
 
Sie können bereits eingegebene Kommandos wiederholen oder leicht verändern, um sie dann auszuführen.
 
Probieren Sie es aus: Führen Sie irgendein Kommando, zum Beispiel whoami aus; drücken Sie dann die Taste
 
PFEIL-OBEN. Der letzte Befehl erscheint wieder am Shell-Prompt. Sie brauchen nun nur noch RETURN zu
 
drücken, um ihn noch einmal auszuführen.
 
Wenn Sie einige Befehle eingegeben haben, können Sie mit den Tasten PFEIL-OBEN und PFEIL-UNTEN
 
diese Befehle noch einmal anzeigen lassen. Sie können so Befehle mehrfach ausführen oder Tippfehler
 
nachträglich korrigieren, ohne die ganze Zeile nochmals eingeben zu müssen.
 
Am einfachsten können Sie den Cursor in der Befehlszeile mit den Pfeiltasten bewegen. Tippen Sie einfach mal
 
einen Befehl, z.B. whoami, ein. Gehen Sie nun mit dem Cursor an die Stelle mit dem Tippfehler und löschen
 
Sie mit BACKSPACE oder DELETE die gewünschten Zeichen. Geben Sie die noch fehlenden Zeichen ein und
 
drücken Sie RETURN.
 
Es gibt noch viele leistungsstarke Funktionen in der shell. Eine detaillierte Beschreibung bekommen Sie mit
 
dem Befehl man bash. Die komplette Dokumentation finden Sie unter /usr/share/doc/bash/.
 
An dieser Stelle möchten wir Ihnen nur einige, häufig benutze Funktionen vorstellen. Drücken Sie CTRL-a, der
 
Cursor springt damit an den Anfang der Zeile. CTRL-k löscht von der aktuellen Position bis zum Ende die
 
komplette Eingabe (k für „kill“). Probieren Sie dies mitten in einer längeren Zeile einmal aus. Die Kombination
 
CRTL-a, dann CTRL-k löscht die komplette Zeile. Die gelöschten Zeichen werden, unabhängig von der Länge,
 
„gespeichert“ und können mit CTRL-y wieder an jeder Stelle eingefügt werden. Und zu guter Letzt: CTRL-e
 
bringt den Cursor ans Zeilenende.
 
Spielen Sie einfach mal ein wenig mit diesen Funktionen herum: Sie werden schnell merken, daß sich mit ihnen
 
sehr effizient arbeiten läßt!
 
99
 
Kapitel 3. Betrieb
 
3.10.1. Beschreibung der Kommandozeile
 
Die Kommandos, die Sie an einem Shell-Prompt eingeben können, folgen einer bestimmten Syntax. Wenn Sie
 
beispielsweise man man eingeben, erhalten Sie die Anleitung (man page) zu dem Kommando man. In dieser
 
Anleitung finden Sie weitere Beschreibungen zum Kommando man und den Optionen dieses Kommandos.
 
Beispielsweise finden Sie dort:
 
man -k [-M path] keyword ...
 
Optionen, die in den eckigen Klammern ([]) stehen, sind optional und können ausgelassen werden. Sie können
 
also den Befehl man auch ohne die Option -M benutzen, wenn Sie diese aber doch einsetzen, müssen Sie als
 
Parameter den passenden Pfad angeben. Für die Option -k müssen Sie einen Suchbegriff (keyword) angeben.
 
Die drei Punkte (...) bedeuten, daß Sie nach mehreren Begriffen suchen können. Trennen Sie diese durch ein
 
Leerzeichen.
 
Hier noch ein Beispiel für eine etwas komplexere Beschreibung:
 
man [-c|-w|-tZT device] [-adhu7V] [-m system[,...]] [-L
 
locale] [-p string] [-M path] [-P pager] [-r prompt] [-S
 
list] [-e extension] [[section] page ...] ...
 
Sie müssen nicht jede kleine Option verstehen – wichtig ist das Prinzip.
 
Neu ist in dieser Beschreibung das Zeichen |, es steht für „oder“ – nicht zu verwechseln mit der Verwendung
 
dieses Zeichens in der Shell, hier ist nur die Man-Page gemeint. Sie können also eine der Optionen -c, -w oder
 
-tZT benutzen, zusammen mit einem Device als Argument.
 
Gruppen von Optionen, wie -adhu7V bedeuten, daß Sie eine oder mehrere dieser Optionen gleichzeitig nutzen
 
können. Dabei ist es nicht selbstverständlich, daß alle möglichen Kombinationen auch Sinn machen oder gar
 
funktionieren. Lesen Sie dazu die komplette Anleitung zu man.
 
Beachten Sie weiterhin, wie die eckigen Klammern verschachtelt sind: [[section] page]. Dies bedeutet:
 
wenn Sie eine section angeben, müssen Sie auch eine page angeben.
 
3.11. Dateien und Verzeichnisse
 
Dateien auf einer Festplatte dienen zur Organisation und Speicherung von Daten, ähnlich einem Blatt Papier.
 
Dateien können in Verzeichnissen (oder „Schubladen“) geordnet sein. Im folgenden einige Informationen über
 
die Organisation von Dateien und Verzeichnissen bei Debian GNU/Linux.
 
Das Zeichen / repräsentiert das sogenannte „root-“Verzeichnis. Alle weiteren Dateien und Verzeichnisse sind
 
hier angeordnet. Wenn Sie vorher schon mal mit einem DOS- oder Windows-System gearbeitet haben,
 
entspricht dies „in etwa“ dem Laufwerk C:. Machen Sie sich aber ab sofort mit dem Gedanken vertraut, daß es
 
unter Linux keine Laufwerksbuchstaben gibt! Unter Linux finden Sie alle Laufwerke (Festplatten, CD-ROMs,
 
Disketten...) unterhalb des „root-“Verzeichnisses (/).
 
Beispielsweise stellt /home/fr das User-Verzeichnis des Benutzers „fr“ dar. Unterhalb des
 
„root-“Verzeichnisses findet sich auf jedem Debian GNU/Linux-System das Verzeichnis home. In diesem
 
befinden sich weitere Unterverzeichnisse. Die Namensgebung dieser Verzeichnisse ist identisch mit den
 
Benutzernamen, die beim Einrichten neuer Benutzer vergeben werden.
 
/etc/X11/XF86Config, dies ist die Konfigurationsdatei für das X-Window-System.
 
Wichtig: Linux unterscheidet Groß- und Kleinschreibung bei den Pfaden und Dateinamen.
 
Die Verzeichnisse sind in einer Struktur ähnlich einem Baum angeordnet. Vom „root-“Verzeichnis / verzweigt
 
alles zu den weiteren Verzeichnissen. Unterhalb von / finden sich folgende Dateien und Verzeichnisse:
 
/
 
|-- System.map
 
|-- bin
 
|-- boot
 
|-- cdrom
 
100
 
Kapitel 3. Betrieb
 
|-- dev
 
|-- etc
 
|-- floppy
 
|-- home
 
|-- initrd
 
|-- lib
 
|-- lost+found
 
|-- mnt
 
|-- proc
 
|-- root
 
|-- sbin
 
|-- tmp
 
|-- usr
 
|-- var
 
|-- vmlinuz
 
Hier als Beispiel die weitere Verzweigung unterhalb von /usr (Sie finden hier hauptsächlich Programme, die
 
von allen Benutzern ausgeführt werden können):
 
/usr/
 
|-- X11R6
 
|-- bin
 
|-- dict
 
|-- doc
 
|-- games
 
|-- i486-linuxlibc1
 
|-- include
 
|-- info
 
|-- lib
 
|-- local
 
|-- man
 
|-- openwin -> X11R6
 
|-- sbin
 
|-- share
 
‘-- src
 
Bis hierhin sollten Sie auf Ihrem System (je nachdem welche Pakete Sie installiert haben) in etwa die gleiche
 
Struktur vorfinden. Deutliche Unterschiede von System zu System finden sich unterhalb von /home: die dortige
 
Struktur ist abhängig von den Benutzern, für die sie angelegt wurde:
 
/home
 
|-- fr
 
|-- ftp
 
|-- geka
 
‘-- mw
 
Diese Verzeichnisse stellen die sogenannten „Home-Verzeichnisse“ der Benutzer dar, nach dem Anmelden am
 
System befindet sich jeder Benutzer in seinem privaten Verzeichnis unterhalb von /home. In diesem Beispiel
 
existieren die User fr, geka und mw. Das Verzeichnis ftp wurde im Laufe der Installation des FTP-Servers
 
auf diesem Rechner eingerichtet. Dies stellt in diesem Sinne keinen eigentlichen Benutzer dar. Abweichend
 
davon finden Sie das Home-Verzeichnis des Superusers (root) unterhalb von / als /root/. So können Sie für
 
alle Benutzer des Systems die Homeverzeichnisse auf einer eigenen Partition halten. Für den Fall, daß das
 
System beim Starten in einen unstabilen Zustand gerät und die Partition mit den Home-Verzeichnissen der
 
Benutzer nicht mounten kann, besteht trotzdem für den Superuser die Möglichkeit, auf sein Home-Verzeichnis
 
zuzugreifen.
 
Keines der Verzeichnisse unterhalb von / entspricht einem physikalischem Gerät, wie zum Beispiel einer
 
Festplatte oder einem CD-ROM. Weiterhin verwendet Linux keine Buchstaben wie unter DOS zur Verwaltung
 
dieser Geräte. Der Verzeichnisbaum stellt eine Abstraktion der vorhandenen Hardware dar, Sie können die
 
Verzeichnisse benutzen, ohne Kenntnis von der eigentlichen Hardware zu haben. Alle Dateien Ihres Systems
 
können auf einer einzigen Festplatte liegen oder auf vielen verschiedenen, einige davon in Ihrem Rechner,
 
andere in anderen Rechnern irgendwo im Netzwerk.
 
101
 
Kapitel 3. Betrieb
 
Keine Panik, wenn Sie dies jetzt nicht völlig verstehen: die Idee dahinter ist anders als bei anderen
 
Betriebssystemen. Es reicht wenn Sie sich merken, daß es keine Laufwerksbuchstaben gibt, Laufwerke – so wie
 
Sie sie kennen – tauchen innerhalb des Verzeichnisbaumes auf, beispielsweise als /cdrom oder /floppy,
 
wobei diese auch an jeder anderen Stelle liegen können, häufig unterhalb von /mnt.
 
3.12. Gruppen und Zugriffsrechte
 
Unix-Betriebssysteme, und damit auch Debian GNU/Linux, sind dafür ausgelegt, daß mehrere Benutzer zur
 
gleichen Zeit am System arbeiten können. Dabei müssen bestimmte private Dateien vor anderen Benutzern
 
geschützt werden, aber auch Systemdateien vor den Benutzern geschützt werden. Sie können sie sehr leicht
 
selber überprüfen:
 
Melden Sie sich mit Ihrem Benutzernamen am System an, benutzen Sie nicht den Zugang des Superusers (root),
 
und geben Sie das Kommando: rm /etc/resolv.conf ein.
 
bash-2.03$ rm /etc/resolv.conf
 
rm: remove write-protected file ‘/etc/resolv.conf’? y
 
rm: cannot unlink ‘/etc/resolv.conf’: Permission denied
 
Das System schützt diese Datei vor Veränderungen durch andere Benutzer als dem Superuser. Wenn jeder
 
Benutzer Veränderungen an wichtigen Systemdateien vornehmen könnte, würde dies schnell zu Problemen
 
führen. Sehen wir uns die Datei einmal etwas näher an:
 
Geben Sie nun das Kommando ls -l /etc/resolv.conf ein. Sie bekommen diese Ausgabe:
 
-rw-r--r-- 1 root root 119 Nov 02 1999 /etc/resolv.conf
 
Die Option -l des Kommandos ls gibt den Dateinamen sowie alle weiteren Informationen zu der Datei aus.
 
Diese Informationen sind ziemlich einfach zu verstehen. Die Größe der Datei ist 119 Byte, die Datei wurde
 
zuletzt am 02. November 1999 geändert und der Dateiname ist /etc/resolv.conf. Weiter links wird die
 
Sache etwas komplizierter...
 
Kurz und knapp: -rw-r--r-- steht für die eigentlichen Zugriffsrechte der Datei, die 1 steht für die Anzahl der
 
(hard) Links auf diese Datei (oder die Anzahl der Dateien in einem Verzeichnis) und root root bezeichnet
 
den Besitzer sowie die Gruppe, zu der die Datei gehört.
 
Doch nun etwas ausführlicher...
 
3.12.1. Gruppen
 
Jede Datei auf Ihrem Debian GNU/Linux-System hat zwei Eigentümer: einen User und eine Gruppe. Das oben
 
angeführte Beispiel ist da etwas verwirrend, es gibt sowohl einen User als auch eine Gruppe root. Gruppen
 
sind, wie auch im echten Leben, Ansammlungen von Personen, sprich Benutzern auf einem System. Diese
 
Mitglieder einer Gruppe können gemeinsamen Zugriff auf bestimmte Dateien haben, beispielsweise auf alle
 
Dateien unterhalb von /var/www/projekte/debian/, wenn sie gemeinsam an den Webseiten zu einem
 
Debian-Projekt arbeiten sollen. Sie können auch beispielsweise bestimmte Benutzer der Gruppe dialout
 
(bedeutet soviel wie „rauswählen“) zuordnen, damit diese per Modem eine Verbindung ins Netz herstellen
 
können.
 
Das Kommando groups zeigt Ihnen an, zu welchen Gruppen Sie gehören. Dies ist abhängig von dem
 
Benutzernamen, mit dem Sie sich am System angemeldet haben.
 
Sehen Sie sich nun die Datei /etc/group an, benutzen Sie hierzu beispielsweise das Kommando more (more
 
/etc/group). Beachten Sie die Gruppe root, in dieser sollte als einziger der Benutzer root eingetragen sein
 
sowie Ihre eigene Gruppe, auch hier sollten nur Sie eingetragen sein. Es gibt einige weitere Gruppen in dieser
 
Datei, beispielsweise dialout (siehe oben), floppy – diese Benutzer können auf das Diskettenlaufwerk
 
zugreifen und andere. Nach der Installation sind keine weiteren Benutzer in den verschiedenen Gruppen
 
aufgeführt, dies ist die Aufgabe des Systemverwalters, also Ihre ;-). Hier ein Beispiel für eine veränderte Datei
 
/etc/group aus einem laufenden System:
 
root:x:0:
 
daemon:x:1:fr
 
102
 
Kapitel 3. Betrieb
 
bin:x:2:
 
sys:x:3:
 
adm:x:4:
 
tty:x:5:
 
disk:x:6:
 
lp:x:7:lp
 
mail:x:8:fr,geka,mw
 
news:x:9:
 
uucp:x:10:
 
proxy:x:13:
 
kmem:x:15:
 
dialout:x:20:fr
 
fax:x:21:fr
 
voice:x:22:fr
 
cdrom:x:24:fr
 
floppy:x:25:fr
 
tape:x:26:fr
 
sudo:x:27:fr
 
audio:x:29:fr
 
dip:x:30:
 
majordom:x:31:majordom
 
postgres:x:32:
 
www-data:x:33:fr
 
backup:x:34:fr
 
msql:x:36:fr
 
operator:x:37:fr
 
list:x:38:fr
 
irc:x:39:fr
 
src:x:40:fr
 
gnats:x:41:
 
shadow:x:42:
 
utmp:x:43:telnetd
 
video:*:44:
 
staff:x:50:fr
 
games:x:60:fr
 
qmail:x:70:
 
users:x:100:fr
 
telnetd:x:101:
 
fr:x:1000:
 
mw:x:1001:
 
geka:x:1002:
 
fr2:x:1003:
 
nogroup:x:65534:
 
mysql:x:102:
 
Weitere Informationen zu dieser Datei bekommen Sie mit dem Kommando man group.
 
Mit dem Kommando ls -l /home können Sie sich einen Überblick über die Stammverzeichnisse aller
 
Benutzer auf dem System verschaffen. Jedes Verzeichnis sollte auch dem dazugehörigen Benutzer gehören.
 
Wenn Sie das System neu installiert haben, werden Sie der einzige Benutzer sein. Deshalb auch hier ein
 
Beispiel aus der Praxis:
 
bash-2.03$ ls -l /home/
 
total 8
 
drwxr-sr-x 65 fr fr 5120 Jan 19 02:48 fr
 
dr-xr-xrwx 45 fr fr 1024 Jan 9 22:44 ftp
 
drwxr-sr-x 12 geka geka 1024 Jan 19 03:20 geka
 
drwxr-sr-x 5 mw mw 1024 Jan 4 08:27 mw
 
103
 
Kapitel 3. Betrieb
 
3.12.2. Zugriffsrechte
 
Neben dem Besitzer und der Gruppe, zu denen eine Datei gehört, verfügt jede Datei auch über Zugriffsrechte,
 
über die festgelegt wird, wer diese Datei lesen, schreiben oder ausführen darf. Es gibt noch weitere Details, die
 
wir aber übergehen wollen.
 
Wie wir schon vorher gesehen haben, werden die Zugriffsrechte bei dem Kommando ls -l ganz links an den
 
ersten zehn Stellen angezeigt. Die erste Stelle hat nicht direkt etwas mit den Zugriffsrechten zu tun, sie zeigt
 
vielmehr den Dateityp an. Ein „-“ steht für eine normale Datei, ein d kennzeichnet ein Verzeichnis und ein l
 
steht für einen Link.
 
Die weiteren neun Stellen lassen sich in drei Gruppen teilen. Dies sind von links nach rechts: der Besitzer der
 
Datei (owner), die Gruppe (group) und schließlich die Allgemeinheit (world). Jeder dieser drei Gruppen
 
gehören drei dieser neuen Stellen. Jeder dieser drei Stellen steht für r lesen (read), w schreiben (write) und x
 
ausführen (execute).
 
Im Detail bedeuten die drei Buchstaben r, w und x folgendes:
 
r – lesen : bei Dateien kann der Inhalt der Datei gelesen werden. Bei Verzeichnissen kann man den Inhalt des
 
Verzeichnisses auflisten lassen.
 
w – schreiben : bei Dateien kann diese Datei verändert und gespeichert werden. Bei Verzeichnissen können
 
neue Dateien angelegt und bereits bestehende Dateien gelöscht werden.
 
x – ausführen : Dateien können als Kommando ausgeführt werden. Dies macht nur Sinn, wenn diese Datei
 
wirklich ein Kommando darstellt. Sie können eine Grafik ausführbar machen, es ergibt aber keinen Sinn. Da
 
Verzeichnisse nicht ausgeführt werden können, bedeutet hier ein gesetztes x, daß Sie in dieses Verzeichnis
 
wechseln können. Um also in einem Verzeichnis mit Dateien arbeiten zu können, benötigen Sie die
 
Kombination x und r sowie gegebenenfalls auch w.
 
Für Verzeichnisse ist dies alles ein wenig verwirrend, daher hier einige Beispiele:
 
r--Eigentümer, Gruppe oder andere können den Inhalt dieses Verzeichnisses auflisten. Die Dateien selber in
 
dem Verzeichnis können gelesen, gelöscht oder verändert werden.
 
r-x Dieser Modus erlaubt das Auflisten der Dateien in dem Verzeichnis und gibt den Zugriff auf die Dateien
 
frei. Sie können allerdings keine neuen Dateien anlegen oder bestehende Dateien löschen. Das Ansehen und
 
Verändern von Dateien ist erlaubt, Programme können ausgeführt werden, wenn dies von den Rechten der
 
Dateien selber her erlaubt ist.
 
--x Sie können auf die Dateien in dem Verzeichnis zugreifen, diese aber nicht auflisten. Sie müssen also wissen
 
welche Dateien sich in dem Verzeichnis befinden, um auf diese zugreifen zu können.
 
rwx Sie können alles mit den Dateien anstellen, solange die Rechte der Dateien selber dies zulassen.
 
Daraus folgen einige interessante Tatsachen, die Sie beachten sollten:
 
Schreibrechte auf einem Verzeichnis entscheiden darüber, ob Sie eine Datei in einem Verzeichnis löschen
 
dürfen. Eine Datei deren Rechte auf nur-lesen gesetzt sind, kann gelöscht werden, wenn Sie die nötigen Rechte
 
haben um in diesem Verzeichnis zu schreiben! Weiterhin können Sie eine Datei in einem Nur-lesen-Verzeichnis
 
nicht löschen, auch wenn Sie die nötigen Zugriffsrechte auf die Datei selber haben.
 
Dies bedeutet auch, daß Sie, wenn Sie der Besitzer eines Verzeichnisses sind, auch die Dateien darin löschen
 
können, auch wenn diese dem Superuser (root) gehören.
 
Zugriffsrechte auf ein Verzeichnis haben also auch direkten Einfluß auf die Dateien in diesem Verzeichnis, an
 
dieser Stelle kommen die Zugriffsrechte auf Dateien ins Spiel. Wenn Sie keinen Zugriff auf das Verzeichnis
 
haben, spielen auch die Rechte an den Dateien für Sie keine Rollen, Sie kommen ja eh nicht an die Dateien...
 
3.12.2.1. Einige Beispiele
 
Um die Zugriffsrechte von Dateien und Verzeichnissen zu verändern, steht das Kommando chmod unter Debian
 
GNU/Linux zur Verfügung. Spielen wir einmal ein wenig damit herum:
 
Erzeugen Sie zunächst eine neue Datei, beispielsweise mit dem Kommando touch testdatei. Das
 
Kommando touch wird normalerweise dazu benutzt, die Datei mit einem aktuellen „Zeitstempel“ zu versehen.
 
Wenn Sie jedoch einen Dateinamen angeben, der noch nicht existiert, so wird diese Datei neu angelegt, mit
 
104
 
Kapitel 3. Betrieb
 
einer Länge von 0 Byte. Überprüfen Sie dies mit dem Kommando ls -l und werfen Sie einen Blick auf die
 
Zugriffsrechte:
 
bash-2.03$ touch testdatei
 
bash-2.03$ ls -l testdatei
 
-rw-r--r-- 1 fr fr 0 Jan 19 18:15 testdatei
 
Bei Ihrem Versuch wird die Datei natürlich einen anderen Zeitstempel haben und Benutzer- und
 
Gruppenzugehörigkeit entsprechen Ihrem Loginnamen. Die Zugriffsrechte (-rw-r--r--) werden von Debian
 
GNU/Linux automatisch für neue Dateien auf die gezeigten Werte gesetzt. Sie können diese Vorgabe mit dem
 
Kommando umask ändern.
 
Sehen Sie sich zunächst die Man-Page zu chmod mit dem Kommando man chmod an. Wir werden hier nicht
 
auf jedes Detail eingehen, sondern an einigen Beispielen zeigen, wie sich chmod mit verschiedenen Parametern
 
auswirkt.
 
Führen Sie das Kommando chmod u+x testdatei aus. Sehen Sie sich die Veränderung mit ls -l
 
testdatei an. Es wurden Rechte zum Ausführen (x - execute) der Datei für den Besitzer (u - User)
 
hinzugefügt (+ - Pluszeichen).
 
bash-2.03$ chmod u+x testdatei
 
bash-2.03$ ls -l testdatei
 
-rwxr--r-- 1 fr fr 0 Jan 19 18:15 testdatei
 
Ein solches Kommando können Sie beispielsweise auf ein selbstgeschriebenes Shellscript oder Perl-Programm
 
anwenden, damit es auch ausführbar ist.
 
Wenn Sie nun noch möchten, daß niemand außer Ihnen einen Blick in Ihre Arbeit werfen kann, so müssen Sie
 
die Rechte zum Lesen der Datei für die Gruppe (g - Group) sowie alle anderen Benutzer (o - Other) entfernen
 
(- - Minuszeichen). Sie können dies mit dem Kommando chmod go-r testdatei erreichen:
 
bash-2.03$ chmod go-r testdatei
 
bash-2.03$ ls -l testdatei
 
-rwx------ 1 fr fr 0 Jan 19 18:15 testdatei
 
Wie Sie gesehen haben, können Sie mit den Zeichen + (Plus) oder - (Minus) Rechte hinzufügen oder entfernen.
 
Manchmal ist es damit etwas verwirrend, einen gewünschten Zustand herzustellen. Daher bietet chmod noch die
 
Option = (Gleichheitszeichen), welche genau die angegebenen Rechte setzt und alle anderen löscht. Auch hier
 
können Sie wieder die Buchstaben ugo (User, Group, Other) benutzen:
 
bash-2.03$ chmod ugo=rx testdatei
 
bash-2.03$ ls -l testdatei
 
-r-xr-xr-x 1 fr fr 0 Jan 19 18:15 testdatei
 
Die Datei ist nun für jeden Benutzer lesbar und kann auch von jedem ausgeführt werden. Weiterhin kann keiner
 
der Benutzer diese Datei schreiben.
 
Entfernen Sie nun die Rechte zum Ausführen der Datei für alle Benutzer (chmod a-x testdatei), bei einer
 
Testdatei brauchen wir diese nicht.
 
Versuchen Sie einmal die Datei zu löschen. Zur Erinnerung: Sie hatten vor kurzem die Datei mit dem
 
Kommando chmod ugo=rx testdatei behandelt. Löschen Sie also die Datei mit dem Kommando rm
 
testdatei:
 
bash-2.03$ rm testdatei
 
rm: schreibgeschützte Datei »testdatei« entfernen?
 
Wenn Sie die Umgebungsvariablen nicht passend gesetzt haben, wird Ihnen die Fehlermeldung in englischer
 
Sprache präsentiert.
 
Da Sie (und auch kein anderer) keine Rechte haben, die Datei zu schreiben, fragt das Kommando rm, ob Sie
 
diese Aktion wirklich durchführen wollen. Dies ist eine spezielle Funktion von rm und hat eigentlich wenig mit
 
den Zugriffsrechten zu tun. Wenn Sie die Datei wirklich löschen möchten, können Sie die Frage bestätigen.
 
Stören Sie sich nicht an der Ausgabe der Rechte an Zahlenform, des Kommandos rm, Sie können die Bedeutung
 
in der Man-Page nachlesen.
 
105
 
Kapitel 3. Betrieb
 
3.13. Orientierung innerhalb von Debian
 
Es gibt einige Unterschiede zwischen Debian GNU/Linux und anderen Distributionen. Selbst wenn Sie Linux
 
und andere Distributionen bereits kennen, gibt es einige Dinge, die Sie wissen sollten, um Ihr System in einem
 
gut zu wartendem Zustand zu halten. Dieser Abschnitt dient Ihrer Orientierung.
 
Das wichtigste Konzept, das man verstehen muß, ist die Paketverwaltung von Debian. Im wesentlichen müssen
 
Sie akzeptieren, daß große Teile Ihres System unter der Kontrolle der Paketverwaltung stehen. Sie können nicht
 
so ohne weiteres „von Hand“ (zum Beispiel wenn Sie eine eigene Version des Apache-Servers aus den Sourcen
 
übersetzt haben) ein Paket aktualisieren. Diese Aufgabe nimmt Ihnen das Debian GNU/Linux-Paketsystem ab.
 
Nutzen Sie dies, um Pakete zu aktualisieren. Folgende Bereiche stehen unter der Kontrolle dieses Paketsystems:
 
• /usr (mit Ausnahme von /usr/local)
 
• /var (Sie können sich ggf. /var/local anlegen)
 
• /bin
 
• /sbin
 
• /lib
 
Wenn Sie zum Beispiel /usr/bin/perl ersetzen, weil Sie auf einer CD oder auf einem FTP-Server eine
 
aktuellere Version wie auf Ihren Debian GNU/Linux- CDs gefunden haben (kaum zu glauben, daß sowas
 
wirklich passiert...), wird das zunächst funktionieren.
 
Wenn Sie nun jedoch ein Paket mit dselect installieren, welches ebenfalls irgendeine Perl-Version benötigt, so
 
wird dselect immer die Version heranziehen, die auf Ihrem Installationspfad enthalten ist. Das heißt, daß dselect
 
unter Umständen eine ältere Version installiert, obwohl Sie schon eine neuere Version übersetzt hatten. Bitte
 
beachten Sie das!
 
Aktualisieren Sie jedoch Ihr Perl-Paket, über dpkg/dselect oder apt, dann wird die Datei durch die aus dem
 
Debian-Paket ersetzt. Erfahrene Anwender können dieses verhindern, indem Sie das entsprechende Paket auf
 
hold (in der Paketauswahl von dselect mit der Taste =) setzen oder dpkg-divert benutzen.
 
Wenn Sie bestimmte Pakete durch eigene, modifizierte Versionen ersetzen wollen, sollten Sie sich intensiv mit
 
dem Debian GNU/Linux-Paketmanagement befassen.
 
Eine der wichtigsten Vereinbarungen, an den Sie sich gewöhnen müssen, ist, daß sich alle
 
Konfigurationsdateien unterhalb von /etc/ befinden. Hierbei ist es vielfach so, daß für einzelne Programme
 
zusätzliche Verzeichnisse bei der Installation erzeugt werden, meist geschieht dies für Programme, die über
 
mehr als eine Konfigurationsdatei verfügen, beispielsweise für den Webserver apache.
 
Unter /usr/doc/ beziehungsweise /usr/share/doc/ finden Sie die Dokumentation zu den auf Ihrem
 
System installierten Paketen. Zu vielen Paketen finden Sie in dem entsprechenden Verzeichnis eine Datei
 
README.Debian (oder ähnlich), welche die speziellen Anpassungen an Debian GNU/Linux beschreibt.
 
Weiterhin befinden sich in jedem Verzeichnis auch die jeweiligen Lizenzen zu den Paketen.
 
3.14. Arbeiten mit Dateien – Mini-Workshop
 
Um mit Ihrem System arbeiten zu können, müssen Sie etwas über das Erzeugen, Verschieben, Umbenennen und
 
Löschen von Dateien und Verzeichnissen erfahren.
 
3.14.1. pwd – print working directory
 
Zunächst ist es jedoch wichtig zu wissen, an welcher Stelle des Verzeichnisbaumes man sich befindet. Wie
 
schon beschrieben, befinden Sie sich nach dem Anmelden am System in Ihrem Home-Verzeichnis. Sie können
 
dies mit dem Kommando pwd überprüfen. Die Ausgabe sollte in etwa so aussehen:
 
bash-2.02$ pwd
 
/home/fr
 
Wobei auf Ihrem System statt fr Ihr eigener Benutzername, mit dem Sie sich angemeldet haben, erscheint.
 
106
 
Kapitel 3. Betrieb
 
3.14.2. ls – list
 
Dieses Kommando zeigt, wenn es ohne weitere Parameter verwendet wird, alle Dateien in dem aktuellen
 
Verzeichnis an. Nach dem Anmelden an einem neu installierten Debian GNU/Linux-System befinden Sie sich in
 
Ihrem Home-Verzeichnis, und dieses ist leer. Das Kommando ls wird also nichts anzeigen. (Das Verzeichnis ist
 
nicht wirklich leer, Sie sehen lediglich mit dem Kommando ls ohne Parameter nicht die angelegten Dateien.)
 
Sie können aber auch das Kommando ls mit einem Pfad als Option aufrufen. Beispielsweise zeigt ls / das
 
„root-“Verzeichnis des Systems an.
 
3.14.3. cd - change directory
 
Mit diesem Kommando können Sie in ein anderes Verzeichnis (directory) wechseln. cd /tmp wechselt
 
beispielsweise in das Verzeichnis für temporäre Dateien unterhalb von /.
 
Auf zwei Besonderheiten möchte ich an dieser Stelle eingehen, die nicht nur mit dem Kommando cd
 
funktionieren, aber zum besseren Verständnis hier gut untergebracht sind.
 
Das Zeichen ~ steht als Abkürzung für den kompletten Pfad zu Ihrem privaten Home-Verzeichnis. cd mit der
 
Option ~, also cd ~, wechselt ins Home-Verzeichnis.
 
Weiterhin möchte man häufig in ein Verzeichnis in der Struktur höher wechseln. Sicher könnte man mit pwd
 
nachsehen, wo man sich gerade befindet und dann dem Kommando cd den passenden Pfad übergeben. Als
 
einfache Alternative steht aber das Kürzel .. für das übergeordnete Verzeichnis zur Verfügung. cd .. wechselt
 
also ins übergeordnete Verzeichnis (beachten Sie das Leerzeichen).
 
Eine weitere Abkürzung stellt . dar. Diese steht für das aktuelle Verzeichnis, in dem Sie sich gerade befinden,
 
doch dazu gleich in einem anderen Beispiel.
 
3.14.4. mkdir - make directory
 
Mit diesem Kommando können Sie weitere Verzeichnisse anlegen. Wechseln Sie in Ihr Home-Verzeichnis mit
 
cd ~ und erzeugen Sie ein Verzeichnis test (mit mkdir test). Überprüfen Sie mit ls, ob es funktioniert hat.
 
Erzeugen Sie nach Belieben einige weitere Verzeichnisse, auch unterhalb von test.
 
3.14.5. cp - copy
 
Mit diesem Kommando können Sie Kopien von Dateien erzeugen. Kopieren Sie die Datei /etc/profile in
 
Ihr Home-Verzeichnis mit cp /etc/profile . (Hier also das versprochene Beispiel mit nur einem Punkt.)
 
Prüfen Sie mit ls, ob sich in Ihrem Verzeichnis nun eine Datei profile befindet.
 
3.14.6. more - Anzeigen von Dateien
 
more profile zeigt Ihnen den Inhalt der Datei profile seitenweise auf der Konsole an. Sie können mit der
 
SPACE-Taste seitenweise weiterblättern und mit der Taste q das Programm more wieder verlassen. more zeigt
 
am unteren Bildschirmrand die aktuelle Position in der Datei in Prozent an. Am Ende einer Datei wird more
 
automatisch beendet. more kann, wie die meisten anderen Programme auch, über Optionen auf der
 
Kommandozeile gesteuert werden. Sie können diese Optionen auch in die Umgebungsvariable MORE schreiben,
 
die Optionen werden dann bei jedem Aufruf von more benutzt.
 
Lesen Sie die man-page zu more, das Programm hat noch einige andere interessante Möglichkeiten.
 
Tip: Sollten Sie auf eine gepackte Datei stoßen, so können Sie diese mit dem Kommando zmore ansehen.
 
Wenn Ihnen die Optionen von more nicht ausreichen, sollten Sie einen Blick auf das Programm less werfen.
 
Es verfügt über die gleichen Funktionen, wurde aber noch um einige nützliche Funktionen erweitert.
 
107
 
Kapitel 3. Betrieb
 
3.14.7. mv - move
 
Zum Verschieben von Dateien benötigt das Kommando mv zwei Parameter: der erste Parameter ist die
 
Quelldatei, der zweite die Zieldatei. Verschieben Sie die Datei profile in das erstellte Verzeichnis test, mit
 
mv profile test. mv dient aber auch zum Umbenennen von Dateien. Wechseln Sie in das Verzeichnis test
 
und benennen Sie die Datei profile in testdatei um (mv profile testdatei).
 
Weiterhin können Sie mit mv auch Verzeichnisse verschieben oder umbenennen, die Syntax unterscheidet sich
 
dabei nicht, egal ob Sie mit Dateien oder Verzeichnissen arbeiten.
 
Beachten Sie das es mit mv nicht möglich ist mehrere Dateien auf einmal umzubenennen. Hierzu bedarf es eines
 
kleinen Scriptes oder anderer entsprechender Hilfsmittel.
 
3.14.8. rm - remove
 
Mit dem Kommando rm können Sie eine oder mehrere Dateien löschen. Im einfachsten Fall geben Sie den
 
Namen der zu löschenden Datei an, also: rm ichwillweg.txt (Sollte diese nicht existieren, so können Sie
 
diese mit dem Kommando touch ichwillweg.txt anlegen). Als Parameter kann dem Kommando rm eine
 
Reihe von Dateinamen mitgegeben werden, diese werden durch Leerzeichen getrennt: rm ichwillweg.txt
 
ichauch.txt metoo.asc removeme.txt done.sh, dieses Kommando löscht fünf Dateien von der Platte.
 
An dieser Stelle ein wichtiger Hinweis: Es gibt kein undelete unter Linux. Dateien, die Sie mit rm gelöscht
 
haben, können Sie nicht zurückholen. (Es gibt Programme, die auch mit dem zur Zeit aktuellen
 
ext2-Dateisystem gelöschte Dateien zurückholen können. Dies ist aber momentan noch in der Entwicklung.
 
Besser ist es, auf ein „journaling Filesystem“ für Linux zu warten, ext3, XFS oder reiserFS sind da zu nennen,
 
diese werden solche Funktionen besser unterstützen.)
 
Wenn Sie ein Verzeichnis inklusive aller darin enthaltenen Dateien löschen möchten, können Sie dies auch mit
 
dem Kommando rm erledigen. Hierzu dient die Option -rf. Ein Beispiel: rm -rf /home/fr/test/ löscht
 
im Home-Verzeichnis das Verzeichnis test mit allen Dateien und Unterverzeichnissen. Etwas, was Sie nicht
 
ausprobieren sollten (man findet das manchmal, weil sich Leute einen Spaß daraus machen...). Als weiteres
 
Beispiel folgendes (nicht abtippen!!!): rm -rf / (nicht abtippen!!!). Wie schon beschrieben stellt / das
 
Startverzeichnis des gesamten Verzeichnisbaums dar. Sie würden also Ihr komplettes System von der Platte
 
verbannen.... Also nicht auf diesen kleinen Spaß hereinfallen...
 
3.14.9. rmdir - remove directory
 
Nun fehlt uns noch ein Kommando, um lediglich ein Verzeichnis, in dem sich keine Dateien befinden, zu
 
entfernen. rmdir mit dem Verzeichnisnamen erledigt dies für uns. Natürlich läßt sich auch rm dafür nutzen, mit
 
den entsprechenden Optionen, Sie können selbst entscheiden, welches Kommando Sie benutzen wollen... Noch
 
schnell ein Beispiel: rmdir test entfernt das Verzeichnis test im aktuellen Verzeichnis.
 
3.14.10. Versteckte Dateien (.datei)
 
Namen von versteckten Dateien oder Verzeichnissen beginnen mit einem Punkt (.). Sie können das Kommando
 
ls mit der Option -a dazu bringen, auch diese versteckten Dateien anzuzeigen. Sie können das sehr einfach in
 
Ihrem Homeverzeichnis ausprobieren, dort werden bei der Einrichtung eines neuen Benutzers und später durch
 
verschiedene Programme diverse versteckte Dateien und Verzeichnisse angelegt.
 
Wechseln Sie in Ihr Homeverzeichnis (mit dem Kommando cd) und sehen Sie sich den Inhalt des
 
Verzeichnisses einmal an, inklusive der versteckten Dateien (mit dem Kommando ls -la). Sie sehen nun die
 
„normalen“ Dateien sowie auch die versteckten Dateien. Dabei wird Ihnen vielleicht auffallen, daß es zwei
 
etwas außergewöhnliche Dateien, nämlich . und .. gibt. Diese stellen das aktuelle Verzeichnis „.“, in dem Sie
 
sich befinden, sowie das übergeordnete Verzeichnis .. dar. Wenn Sie das Kommando ls mit der Option -lA
 
benutzen, werden diese beiden Dateien nicht mit angezeigt.
 
Der Grund für versteckte Dateien liegt nicht in der Geheimhaltung von Daten. Vielmehr ist es im täglichen
 
Umgang mit dem System nicht sinnvoll, alle möglichen Dateien anzuzeigen, die sich in Ihrem Homeverzeichnis
 
befinden. Viele Programme legen dort auch individuelle Konfigurationsdateien ab, es hat sich eingebürgert,
 
108
 
Kapitel 3. Betrieb
 
diese Dateien oder Verzeichnisse mit einem Punkt beginnen zu lassen, so daß diese nicht bei der normalen
 
Arbeit mit Dateien stören.
 
Über diese Konfigurationsdateien in Ihrem Verzeichnis können Sie das Verhalten oder Aussehen von
 
Programmen verändern. Diese Änderungen sind nur wirksam, wenn Sie sich mit Ihrem Benutzernamen am
 
System angemeldet haben. Systemweite Konfigurationsdateien finden Sie im Verzeichnis /etc/.
 
3.14.11. find & locate - Finden von Dateien
 
Um Dateien in Ihrem System zu finden, stehen Ihnen auf der Kommandozeile zwei Programme zur Verfügung:
 
find und locate. Mit dem Programm find können Sie die Festplatte nach Dateien durchsuchen, dies kann je
 
nach Größe der Platten einige Zeit dauern. find verfügt über einige Parameter, die Sie in der Man-Page
 
nachlesen können.
 
bash-2.03$ find --help
 
Usage: find [path...] [expression]
 
default path is the current directory; default expression is -print
 
expression may consist of:
 
operators (decreasing precedence; -and is implicit where no others are given):
 
( EXPR ) ! EXPR -not EXPR EXPR1 -a EXPR2 EXPR1 -and EXPR2
 
EXPR1 -o EXPR2 EXPR1 -or EXPR2 EXPR1 , EXPR2
 
options (always true): -daystart -depth -follow --help
 
-maxdepth LEVELS -mindepth LEVELS -mount -noleaf --version -xdev
 
tests (N can be +N or -N or N): -amin N -anewer FILE -atime N -cmin N
 
-cnewer FILE -ctime N -empty -false -fstype TYPE -gid N -group NAME
 
-ilname PATTERN -iname PATTERN -inum N -ipath PATTERN -iregex PATTERN
 
-links N -lname PATTERN -mmin N -mtime N -name PATTERN -newer FILE
 
-nouser -nogroup -path PATTERN -perm [+-]MODE -regex PATTERN
 
-size N[bckw] -true -type [bcdpfls] -uid N -used N -user NAME
 
-xtype [bcdpfls]
 
actions: -exec COMMAND ; -fprint FILE -fprint0 FILE -fprintf FILE FORMAT
 
-ok COMMAND ; -print -print0 -printf FORMAT -prune -ls
 
Für den normalen Einsatz ist es allerdings ausreichend, wenn Sie sich folgendes Beispiel einprägen:
 
bash-2.02$ find / -name resolv.conf
 
/etc/resolv.conf
 
find: /var/spool/cron/atjobs: Permission denied
 
find: /var/spool/cron/atspool: Permission denied
 
find: /var/lib/xdm/authdir: Permission denied
 
Nach einiger Zeit hat find die Datei im Verzeichnis /etc/ gefunden. Verzeichnisse, auf die find keinen
 
Zugriff hat, werden als Fehlermeldung ausgegeben. Direkt hinter dem Kommando find können Sie das
 
Verzeichnis angeben, in dem mit der Suche begonnen werden soll. Im Beispiel wird das gesamte Dateisystem
 
(/) durchsucht. Wenn Sie den Namen einer Datei nicht genau kennen, können Sie auch nur einen Teil des
 
Namens angeben und den Rest mit den üblichen Wildcards ersetzen. Beachten Sie, daß jedes Kommando zuerst
 
von der Shell interpretiert und dann ausgeführt wird. Sie müssen also beispielsweise den * vor der Shell
 
„verstecken“, indem Sie das Zeichen \ voranstellen. Die Shell wird nun das folgende Zeichen ignorieren und
 
direkt an das Kommando weiterreichen:
 
bash-2.02$ find / -name resol\*
 
/etc/resolv.conf
 
find: /var/spool/cron/atjobs: Permission denied
 
find: /var/spool/cron/atspool: Permission denied
 
find: /var/lib/xdm/authdir: Permission denied
 
Der zweite Weg, um Dateien zu finden, bietet sich über das Programm locate. Dieses ist um einiges schneller
 
beim Finden von Dateien, da es eine Datenbank benutzt, die einmal am Tag aktualisiert wird. Es ist also nicht
 
notwendig, jedesmal die komplette Platte zu durchsuchen. Allerdings funktioniert das Aktualisieren der
 
Datenbank nur, wenn Ihr Rechner zu der Zeit in Betrieb ist, zu der auch diese Aktualisierung stattfindet. Da
 
hierbei die komplette Festplatte durchsucht wird, kann der Vorgang einige Zeit dauern.
 
109
 
Kapitel 3. Betrieb
 
Sollten Sie Ihren Rechner ausschalten, so können Sie auch (als Superuser) die Datenbank von locate – mit
 
dem Kommando updatedb zu jeder anderen Zeit aktualisieren. Sie können aber auch die Zeit, zu der
 
updatedb gestartet wird, in der Datei /etc/crontab Ihren Bedürfnissen anpassen.
 
Wenn Ihnen diese Änderungen zu kompliziert erscheinen, können Sie auch das Paket anacron installieren,
 
dieses sorgt dafür, daß Cronjobs, die eigentlich während der Zeit ausgeführt werden sollten, zu der Sie Ihren
 
Rechner ausgeschaltet hatten, nachträglich ausgeführt werden.
 
Dadurch, daß die Datenbank einmal täglich aktualisiert wird, kann locate natürlich auch nur Dateien finden,
 
die zu diesem Zeitpunkt bereits vorhanden waren. Später erzeugte Dateien werden von locate nicht angezeigt.
 
Das klang jetzt etwas aufwendig, locate ist aber sehr leicht zu bedienen, wie folgendes Beispiel beweist:
 
bash-2.02$ locate XF86Config
 
/etc/X11/XF86Config
 
/usr/X11R6/lib/X11/XF86Config
 
/usr/X11R6/lib/X11/XF86Config.eg
 
/usr/X11R6/man/man5/XF86Config.5x.gz
 
Wie Sie sehen, findet locate alle Dateien, die den Suchbegriff beinhalten, ohne daß Sie mit Wildcards arbeiten
 
müssen.
 
Wenn Sie find und locate vergleichen, werden Sie feststellen, daß find leistungsfähiger ist, locate
 
dagegen im täglichen Gebrauch Dateien wesentlich schneller finden kann.
 
Wenn Sie häufiger mit locate oder auch die Datenbank nicht als Superuser aktualisieren lassen, werden Sie
 
merken, daß unter Umständen nicht alle Dateien angezeigt werden. Dies liegt daran, daß nur Dateien in die
 
Datenbank wandern, auf die das Programm updatedb Zugriff hat.
 
Weiterhin zeigt locate aber auch Dateien an, die ein normaler User nicht sehen sollte, dies ist vielleicht nicht
 
gewünscht.
 
Debian GNU/Linux beinhaltet noch das Paket slocate. Diese spezielle Version zeigt nur die Dateien an, auf
 
die der jeweilige User auch Zugriff hat. Sie können zusätzlich das Paket suidmanager installieren, damit kann
 
slocate über das dazugehörige Programm suidregister Ihnen auch die Dateien anzeigen, auf die Sie
 
normalerweise keinen Zugriff haben, natürlich erst nach Angabe des entsprechenden Paßwortes.
 
Beachten Sie bitte auch den Hinweis am Ende der Installation von slocate:
 
sushi:/root# apt-get install slocate
 
Reading Package Lists... Done
 
Building Dependency Tree... Done
 
The following NEW packages will be installed:
 
slocate
 
0 packages upgraded, 1 newly installed, 0 to remove and 27 not upgraded.
 
Need to get 0B/23.2kB of archives. After unpacking 143kB will be used.
 
Selecting previously deselected package slocate.
 
(Reading database ... 67742 files and directories currently installed.)
 
Unpacking slocate (from .../utils/slocate_2.1-5.1.deb) ...
 
Adding ‘diversion of /usr/bin/locate to /usr/bin/locate.notslocate by slocate’
 
Adding ‘diversion of /usr/bin/updatedb to /usr/bin/updatedb.notslocate by slocate’
 
Adding ‘diversion of /usr/share/man/man1/locate.1.gz to /usr/share/man/man1/locate.notslocate.1.gz Adding ‘diversion of /usr/share/man/man1/updatedb.1.gz to /usr/share/man/man1/updatedb.notslocate.Adding ‘diversion of /etc/cron.daily/find to /etc/cron.daily/find.notslocate by slocate’
 
Setting up slocate (2.1-5.1) ...
 
Adding group slocate (104)...
 
Done.
 
Changing permissions on: /usr/bin/slocate
 
Changing permissions on: /var/lib/slocate to: 0750
 
WARNING: You should run ’/etc/cron.daily/slocate’ as root. locate will not work properly until you 110
 
Kapitel 3. Betrieb
 
3.14.12. gzip - gepackte Dateien
 
Manchmal ist es sinnvoll, große Dateien zu komprimieren, sei es um Plattenplatz zu sparen, sei es um die
 
Downloadzeiten zu verkürzen. Das Programm der Wahl unter Debian GNU/Linux ist gzip (GNU Zip).
 
Erstellen Sie zuerst eine Testdatei, um mit gzip experimentieren zu können, und sehen Sie sich die Größe
 
dieser Datei an.
 
bash-2.03$ cd
 
bash-2.03$ cp /etc/profile ./testdatei
 
bash-2.03$ ls -l testdatei
 
-rw-r--r-- 1 fr fr 359 Jan 20 20:10 testdatei
 
Komprimieren Sie nun die Datei testdatei mit gzip und sehen Sie sich wieder das Ergebnis an:
 
bash-2.03$ gzip testdatei
 
bash-2.03$ ls -l testdatei.gz
 
-rw-r--r-- 1 fr fr 275 Jan 20 20:10 testdatei.gz
 
Beachten Sie, daß die Datei nun die Endung .gz bekommen hat. Somit ist klar zu erkennen, mit welchem
 
Programm die Datei gepackt wurde und daß diese Datei überhaupt gepackt ist.
 
Um nun diese Datei wieder in den ursprünglichen Zustand zu versetzen, können Sie gzip mit der Option -d
 
aufrufen:
 
bash-2.03$ gzip -d testdatei.gz
 
bash-2.03$ ls -l testdatei
 
-rw-r--r-- 1 fr fr 359 Jan 20 20:10 testdatei
 
Somit ist der alte Zustand wieder hergestellt. Der Erfolg ist bei so kleinen Dateien nicht sehr groß, Sie können
 
das gleiche Experiment aber auch mit anderen, größeren Dateien probieren.
 
3.14.13. split - geteilte Dateien
 
Sicher standen Sie schon einmal vor dem Problem, daß eine Datei zu groß war. Sei es, um diese auf einem
 
Medium zu transportieren oder um diese übers Netz zu verschicken. Unter Debian GNU/Linux ist es mit den
 
Programmen split und cat möglich, Dateien zu zerteilen und wieder zusammenzufügen.
 
Kopieren Sie die Datei /bin/bash in Ihr Homeverzeichnis. Diese Datei hat eine Größe von etwas mehr als 450
 
Kilobyte.
 
bash-2.03$ cd
 
bash-2.03$ cp /bin/bash .
 
bash-2.03$ ls -l bash
 
-rwxr-xr-x 1 fr fr 461720 Jan 22 15:42 bash
 
Sie können nun diese Datei mit dem Kommando split in kleinere Stücke teilen. Hierzu benötigt split
 
Angaben über die maximale Größe der einzelnen Dateien sowie die Erweiterung des Dateinamens, die an jede
 
Datei angehängt werden soll.
 
Mit der Option -b teilen Sie split die Größe mit. Ohne weitere Angaben geht split davon aus, daß der Wert
 
in Byte angegeben wurde. Das ist natürlich nicht sehr praktikabel. Deshalb können Sie hinter dem Zahlenwert
 
die Buchstaben k für Kilobyte oder m für Megabyte angeben.
 
Als Kennung für die einzelnen Dateien erweitert split den Dateinamen der ersten Datei mit aa, den zweiten
 
mit ab und so weiter. Wenn Sie eine eigene Erweiterung (Prefix) zu jeder Datei erzeugen wollen, so können Sie
 
diese mit angeben, hier im Beispiel wird „einzel“ angegeben:
 
bash-2.03$ split -b100k bash einzel
 
bash-2.03$ ls -l einzel*
 
-rw-r--r-- 1 fr fr 102400 Jan 22 15:42 einzelaa
 
-rw-r--r-- 1 fr fr 102400 Jan 22 15:42 einzelab
 
-rw-r--r-- 1 fr fr 102400 Jan 22 15:42 einzelac
 
-rw-r--r-- 1 fr fr 102400 Jan 22 15:42 einzelad
 
111
 
Kapitel 3. Betrieb
 
-rw-r--r-- 1 fr fr 52120 Jan 22 15:42 einzelae
 
Das Zusammenfügen der Dateien ist ebenfalls sehr einfach.
 
bash-2.03$ cat einzel* > bash-neu
 
bash-2.03$ ls -l bash*
 
-rwxr-xr-x 1 fr fr 461720 Jan 22 15:42 bash
 
-rw-r--r-- 1 fr fr 461720 Jan 22 15:43 bash-neu
 
Anhand der Länge sehen wir, daß die Datei wieder hergestellt wurde.
 
3.14.14. tar - archivieren von Dateien
 
Häufig bekommt man Archive aus dem Netz in gepackter Form. Das Packen von Archiven beinhaltet zwei
 
Dinge: erstens die Zusammenfassung von mehreren Dateien zu einer einzigen und zweitens das Komprimieren
 
der Daten, um Plattenplatz zu sparen oder auch die Übertragungszeit zu verringern. Historisch gesehen verteilen
 
sich diese beiden Funktionen unter Unix auch auf zwei Programme. Üblicherweise benutzt man zum
 
Zusammenfassen der Dateien das Programm tar (Tape Archive) und zum Komprimieren das Programm gzip.
 
Etwas bessere Ergebnisse beim Komprimieren von Daten erreicht das (neuere) Programm bzip2. Die
 
GNU-Version des Programms tar, welche auch bei Debian GNU/Linux verwendet wird, kann beide
 
Komprimierungsverfahren benutzen, so daß man nicht mit verschiedenen Programmen hantieren muß.
 
Altgediente Programme, wie zum Beispiel tar, verfügen häufig über eine Vielzahl von Funktionen. Einige
 
davon werden heute kaum noch verwendet, sind aber trotzdem noch aus Kompatibilitätsgründen verfügbar,
 
beispielsweise können Sie die Blockgröße bestimmen, mit der die Daten auf das Medium geschrieben werden.
 
Eine solche Funktion werden Sie heute nur noch in sehr seltenen Fällen benötigen.
 
Einen Überblick über die Optionen von tar bekommen Sie mit der Option --help:
 
bash-2.03$ tar --help
 
GNU «tar» schreibt mehrere Dateien in ein Archiv auf Band oder Festplatte und
 
kann einzelne Dateien aus diesem Archiv herausholen.
 
Verwendung: tar [OPTION]... [Datei]...
 
Beispiele:
 
tar -cf archiv.tar foo bar # archiv.tar mit den Dateien foo und bar erzeugen.
 
tar -tvf archiv.tar # Inhalt von archiv.tar ausführlich anzeigen.
 
tar -xf archiv.tar # Alle Dateien aus archiv.tar extrahieren
 
Wenn eine lange Option ein Argument erfordert, ist es für die entsprechende
 
kurze Option auch erforderlich. Das gleich gilt für optionale Argumente.
 
Aktionen:
 
-t, --list Inhalt eines Archivs anzeigen
 
-x, --extract, --get Dateien aus Archiv holen
 
-c, --create neues Archiv erzeugen
 
-d, --diff, --compare Dateien im Archiv und im Dateisystem vergleichen
 
-r, --append Dateien an das Archiv anhängen
 
-u, --update nur Dateien anhängen, die jünger sind als ihre Archiv-Version
 
-A, --catenate »tar«-Dateien an ein Archiv anhängen
 
--concatenate wie ’-A’
 
--delete aus Archiv löschen (nicht auf Magnetbändern!)
 
Operation modifiers:
 
-W, --verify attempt to verify the archive after writing it
 
--remove-files remove files after adding them to the archive
 
-k, --keep-old-files don’t replace existing files when extracting
 
--overwrite overwrite existing files when extracting
 
-U, --unlink-first remove each file prior to extracting over it
 
--recursive-unlink empty hierarchies prior to extracting directory
 
-S, --sparse handle sparse files efficiently
 
112
 
Kapitel 3. Betrieb
 
-O, --to-stdout extract files to standard output
 
-G, --incremental handle old GNU-format incremental backup
 
-g, --listed-incremental=FILE
 
handle new GNU-format incremental backup
 
--ignore-failed-read do not exit with nonzero on unreadable files
 
Datei-Eigenschaften:
 
--owner=NAME Eigentümer für hinzugefügte Dateien auf NAME setzen
 
--group=NAME Gruppe für hinzugefügte Dateien auf NAME setzen
 
--mode=RECHTE Zugriffsrechte für hinzugefügte Dateien auf RECHTE setzen
 
--atime-preserve Zugriffszeit beim Auspacken erhalten
 
-m, --modification-time Änderungszeit beim Auspacken erhalten
 
--same-owner Eigentümer beim Auspacken erhalten
 
--no-same-owner Eigentümer beim Auspacken auf Ausführenden setzen
 
--numeric-owner Zahlen für Benutzer bzw. Gruppen benutzen
 
-p, --same-permissions Zugriffsrechte beim Auspacken erhalten
 
--no-same-permissions Keine Zugriffsrechte erhalten
 
--preserve-permissions wie ’-p’
 
-s, --same-order zu entpackende Dateinamen wie im Archiv sortieren
 
--preserve-order wie ’-s’
 
--preserve wie ’-p’ und ’-s’ zusammen
 
Geräteauswahl und -einstellung:
 
-f, --file=ARCHIV Gerät oder Datei ARCHIV benutzen
 
--force-local Archiv-Datei ist lokal, auch wenn der Name
 
einen Doppelpunkt enthält
 
--rsh-command=BEFEHL statt «rsh» den BEFEHL benutzen
 
-[0-7][lmh] Laufwerk und Schreibdichte angeben
 
-M, --multi-volume mehrteiliges Archiv anlegen/listen/herausholen
 
-L, --tape-length=ZAHL Medium wechseln, wenn ZAHL KBytes geschrieben sind
 
-F, --info-script=DATEI am Ende jedes Mediums das Skript DATEI
 
ausführen (impliziert ’-M’)
 
--new-volume-script=DATEI wie ’-F DATEI’
 
--volno-file=DATEI Teil-Nummer in DATEI benutzen/aktualisieren
 
Blockung des Gerätes:
 
-b, --block-size=BLÖCKE BLÖCKE à 512 Bytes pro Record
 
--record-size=GRÖSSE GRÖSSE Bytes pro Record, Vielfaches von 512
 
-i, --ignore-zeros Blöcke mit Nullen im Archiv ignorieren (heißt EOF)
 
-B, --read-full-blocks Blockung beim Lesen ändern (für 4.2BSD "Pipes")
 
Archive format selection:
 
-V, --label=NAME create archive with volume name NAME
 
PATTERN at list/extract time, a globbing PATTERN
 
-o, --old-archive, --portability write a V7 format archive
 
--posix write a POSIX format archive
 
-j, --bzip2 filter the archive through bzip2
 
-z, --gzip, --ungzip filter the archive through gzip
 
-Z, --compress, --uncompress filter the archive through compress
 
--use-compress-program=PROG filter through PROG (must accept -d)
 
Local file selection:
 
-C, --directory=DIR change to directory DIR
 
-T, --files-from=NAME get names to extract or create from file NAME
 
--null -T reads null-terminated names, disable -C
 
--exclude=PATTERN exclude files, given as a globbing PATTERN
 
-X, --exclude-from=FILE exclude globbing patterns listed in FILE
 
-P, --absolute-names don’t strip leading ‘/’s from file names
 
-h, --dereference dump instead the files symlinks point to
 
--no-recursion avoid descending automatically in directories
 
-l, --one-file-system stay in local file system when creating archive
 
-K, --starting-file=NAME begin at file NAME in the archive
 
-N, --newer=DATUM nur Dateien jünger als DATUM sichern
 
--newer-mtime Datum und Zeit nur vergleichen, wenn sich der
 
113
 
Kapitel 3. Betrieb
 
Datei-Inhalt geändert hat
 
--after-date=DATUM wie ’-N’
 
--backup[=CONTROL] Sicherheitskopie vor dem Löschen, wählt Versionskontrolle
 
--suffix=SUFFIX Sicherheitskopie vor dem Löschen, Namenserweiterung SUFFIX
 
Informationen:
 
--help Hilfe anzeigen und «tar» beenden
 
--version Versionsnummer anzeigen und «tar» benden
 
-v, --verbose zu bearbeitende Dateien ausführlich listen
 
--checkpoint Verzeichnisnamen beim Lesen des Archivs zeigen
 
--totals geschriebene Bytes beim Schreiben des Archivs zeigen
 
-R, --block-number Blocknummer innerhalb des Archivs mit jeder Meldung zeigen
 
-w, --interactive Bestätigung für jede Aktion verlangen
 
--confirmation wie ’-w’
 
Die Namenserweiterung für Sicherheitskopien ist ‘~’, wenn nicht mit --suffix oder
 
der Umgebungsvariablen SIMPLE_BACKUP_SUFFIX etwas anderes eingestellt ist.
 
Die Versionskontrolle kann mit --backup oder der Umgebungsvariablen VERSION_CONTROL
 
gesetzt werden. Mögliche Werte sind:
 
t, numbered nummerierte Sicherheitskopien
 
nil, existing nummerierte Sicherheitskopien, wenn schon nummerierte vorhanden sind,
 
sonst einfache
 
never, simple immer einfache Sicherheitskopien
 
GNU »tar« kann keine ’--posix’-Archive lesen. Wenn die
 
Umgebungsvariable POSIXLY_CORRECT gesetzt ist, sind GNU-Erweiterungen
 
mit ’--posix’ nicht zulässig.
 
Unterstützung für POSIX ist nur teilweise implementiert, rechne derzeit noch
 
nicht damit!
 
ARCHIV kann DATEI, RECHNER:DATEI oder BENUTZER@RECHNER:DATEI sein; DATEI kann
 
eine Datei oder ein Gerät (z.B. ein Streamer) sein.
 
Die Voreinstellung für _dieses_ »tar« ist ’-f- -b20’.
 
Fehlermeldungen an <bug-tar@gnu.org>.
 
Tip: Wenn die Anzeige eines längeren Textes nicht komplett auf dem Bildschirm erfolgen kann, können Sie
 
den Text seitenweise ausgeben lassen, indem Sie die Ausgabe über eine „Pipe“ an das Programm more
 
weiterreichen: tar --help | more
 
Für den täglichen Gebrauch kommen Sie aber mit maximal zehn von diesen vielen Optionen aus. Auch in
 
diesem Abschnitt zeigen wir einige Beispiele aus der Praxis auf.
 
3.14.14.1. tar - packen von Dateien
 
Um mehrere Dateien in einem Archiv zusammenzufassen, benutzen Sie die Optionen -cf (create – erzeugen
 
und file – Datei):
 
linux:/home/fr# tar -cf /tmp/test.tar /etc/
 
tar: Removing leading ‘/’ from member names
 
Dies erzeugt eine neue Datei (/tmp/test.tar) mit allen Dateien aus dem Verzeichnis /etc/. tar entfernt
 
automatisch das jedem Pfad vorangestellte /, bevor die Dateien in das Archiv aufgenommen werden. Dies
 
verhindert, daß beim späteren Entpacken versehentlich Daten überschrieben werden.
 
114
 
Kapitel 3. Betrieb
 
3.14.14.2. tar - Entpacken von Dateien
 
Um die Daten wieder zu entpacken, benutzen Sie die Option -x (extract – entpacken). Beachten Sie, daß die
 
Daten immer an der aktuellen Position im Dateisystem entpackt werden. Wenn Sie sich nicht sicher sind,
 
erstellen Sie ein temporäres Arbeitsverzeichnis und verschieben Sie danach die Daten an die gewünschte Stelle:
 
linux:/home/fr# mkdir bla
 
linux:/home/fr# cd bla
 
linux:/home/fr/bla# tar -xf /tmp/test.tar
 
linux:/home/fr/bla# ls
 
etc
 
tar zum Plaudern bringen...: Benutzen Sie die zusätzliche Option -v, um den Vorgang des Packens oder
 
Entpackens der Daten verfolgen zu können: tar -xvf /tmp/test.tar.
 
3.14.14.3. tar - Komprimieren der Archive
 
Bisher haben wir tar zum Zusammenfügen von Dateien benutzt, nun werden wir das Archiv zusätzlich noch
 
komprimieren. Hierzu stehen bei GNU-Tar die Optionen -z für das Komprimieren mit gzip und -I zum
 
komprimieren mit bzip2 zur Verfügung. Die Benutzung ist ganz einfach, verwenden Sie tar wie oben gezeigt
 
und fügen Sie beispielsweise die Option -z hinzu.
 
Jedes Zeichen zählt...: Zur Vereinfachnung können Sie den Strich - vor den Optionen einfach weglassen,
 
tar versucht die erste Zeichenkette hinter dem Kommando als Optionen zu interpretieren: tar xvf
 
/tmp/test.tar.
 
Hier ein Beispiel, wie Sie ein gepacktes Archiv erzeugen können:
 
linux:/home/fr# tar cvfz /tmp/test.tar.gz /etc/
 
Beachten Sie, daß es üblich ist, entweder wie hier gezeigt die Endung .gz anzuhängen, oder aber die Kurzform
 
.tgz zu verwenden.
 
tar kann mit beiden Endungen „umgehen“, genaugenommen ist der Dateiname völlig egal. Die Endungen
 
dienen nur der besseren Übersicht für den Benutzer.
 
3.14.14.4. tar - Benutzung von Bandlaufwerken / Streamer
 
Wenn Sie die Daten auf einem Tape-Streamer speichern wollen, können Sie die Daten auch direkt auf das Gerät
 
speichern. Geben Sie dazu statt dem Dateinamen des Archives einfach das entsprechende Device an:
 
linux:/home/fr# tar cvfz /dev/st0 /etc/
 
Das Device /dev/st0 wird von Streamern benutzt, die über einen SCSI-Anschluß verfügen. Wenn Sie die
 
Daten von diesem Gerät wieder einlesen wollen, benutzen Sie dazu ebenfalls das entsprechende Device.
 
linux:/home/fr# tar xvfz /dev/st0
 
115
 
Kapitel 3. Betrieb
 
3.14.15. file - Dateitypen
 
Es ist üblich, Dateien so zu benennen, daß der Typ der Datei aus dem Namen erkenntlich ist. Programme sind
 
nicht zwingend auf eine solche Endung angewiesen, diese dient nur der besseren Übersicht für den Benutzer
 
(mit Ausnahme von Dateinamen, die fest in das Programm einkompiliert sind, wie zum Beispiel Namen von
 
Konfigurationsdateien). Textdateien bekommen die Endung .txt, Perl-Programme die Endung .pl und Bilder
 
die Endung .jpeg oder .tiff und so weiter. Trotzdem kann es passieren, daß Dateien entweder keine oder
 
eine falsche Endung haben. Debian GNU/Linux stellt Ihnen das Programm file zur Verfügung, welches die
 
meisten Dateitypen ermitteln kann.
 
Die Benutzung von file ist denkbar einfach: rufen Sie das Programm einfach zusammen mit dem Namen der
 
zu bestimmenden Datei(en) auf, Sie können hier einen oder mehrere Dateinamen, auch mit Wildcards, angeben:
 
bash-2.03$ file /bin/bash /etc/passwd /etc/init.d/lpd
 
/bin/bash: ELF 32-bit LSB executable, Intel 80386, version 1, dynamically
 
linked (uses shared libs), stripped
 
/etc/passwd: ASCII text
 
/etc/init.d/lpd: Bourne shell script text
 
file listet nun die verschiedenen Dateinamen mit den Dateitypen auf.
 
3.15. Einige bash-Funktionen
 
Wir möchten hier nur kurz auf die Debian GNU/Linux-Standard-Shell, die bash, eingehen. Weitere
 
Informationen finden Sie in der Man-Page zur bash.
 
Eine der nützlichsten Funktionen der bash ist die Möglichkeit, Programm- und Dateinamen zu
 
vervollständigen. Sie können dies zu jeder Zeit am Shell-Prompt ausprobieren: tippen Sie ein paar Zeichen
 
eines Befehls und drücken Sie die TAB-Taste. Wenn die Eingabe bis zu der Stelle, an der Sie die TAB-Taste
 
gedrückt haben, eindeutig war, es also kein zweites Programm gibt, das mit den gleichen Buchstaben beginnt,
 
wird die Eingabe automatisch vervollständigt. Sollte es zwei oder mehr Möglichkeiten geben, so werden Sie
 
lediglich einen „Piepton“ hören. Ein nochmaliges Drücken der TAB-Taste zeigt Ihnen alle möglichen
 
Alternativen an. Probieren Sie es an einem Beispiel einmal aus: nehmen wir an, Sie möchten sich die Datei
 
/var/log/syslog ansehen. Dazu benutzen Sie das Programm more. Geben Sie also mo ein und drücken Sie
 
die TAB-Taste zweimal. Nun sollten Sie zumindest die Programme mount und more angezeigt bekommen.
 
Geben Sie nun so lange weitere Zeichen ein, bis die Eingabe eindeutig ist, in diesem Beispiel sollte also ein r
 
ausreichen. Drücken Sie nun die TAB-Taste, und der Befehl wird vervollständigt. Probieren Sie dies noch
 
einmal (als Superuser) mit dem Dateinamen /var/log/syslog aus. Probieren Sie immer nach einigen
 
Zeichen mit der TAB-Taste die Eingabe zu vervollständigen.
 
Eine weitere recht nützliche Funktion ist das Wiederholen von bereits eingegebenen Kommandos. Sie können
 
mit den Pfeiltasten (AUF und AB) durch die sogenannte „History“ der bash blättern und bereits ausgeführte
 
Kommandos noch einmal ausführen oder auch gleich auf der Kommandozeile ändern.
 
3.15.1. help
 
Die bash verfügt, neben der obligatorischen Manpage, auch über eine eingebaute Hilfe Funktion. Mit dem
 
Kommando help wird eine Übersicht der in der bash enthaltenen Kommandos angezeigt.
 
GNU bash, version 2.05a.0(1)-release (i386-pc-linux-gnu)
 
These shell commands are defined internally. Type ‘help’ to see this list.
 
Type ‘help name’ to find out more about the function ‘name’.
 
Use ‘info bash’ to find out more about the shell in general.
 
A star (*) next to a name means that the command is disabled.
 
%[DIGITS | WORD] [&] . filename
 
: [ arg... ]
 
alias [-p] [name[=value] ... ] bg [job_spec]
 
116
 
Kapitel 3. Betrieb
 
bind [-lpvsPVS] [-m keymap] [-f fi break [n]
 
builtin [shell-builtin [arg ...]] case WORD in [PATTERN [| PATTERN].
 
cd [-PL] [dir] command [-pVv] command [arg ...]
 
compgen [-abcdefgjkvu] [-o option] complete [-abcdefgjkvu] [-pr] [-o
 
continue [n] declare [-afFrxi] [-p] name[=value
 
dirs [-clpv] [+N] [-N] disown [-h] [-ar] [jobspec ...]
 
echo [-neE] [arg ...] enable [-pnds] [-a] [-f filename]
 
eval [arg ...] exec [-cl] [-a name] file [redirec
 
exit [n] export [-nf] [name ...] or export
 
false fc [-e ename] [-nlr] [first] [last
 
fg [job_spec] for NAME [in WORDS ... ;] do COMMA
 
function NAME { COMMANDS ; } or NA getopts optstring name [arg]
 
hash [-r] [-p pathname] [-t] [name help [-s] [pattern ...]
 
history [-c] [-d offset] [n] or hi if COMMANDS; then COMMANDS; [ elif
 
jobs [-lnprs] [jobspec ...] or job kill [-s sigspec | -n signum | -si
 
let arg [arg ...] local name[=value] ...
 
logout popd [+N | -N] [-n]
 
printf format [arguments] pushd [dir | +N | -N] [-n]
 
pwd [-PL] read [-ers] [-t timeout] [-p promp
 
readonly [-anf] [name ...] or read return [n]
 
select NAME [in WORDS ... ;] do CO set [--abefhkmnptuvxBCHP] [-o opti
 
shift [n] shopt [-pqsu] [-o long-option] opt
 
source filename suspend [-f]
 
test [expr] time [-p] PIPELINE
 
times trap [arg] [signal_spec ...] or tr
 
true type [-apt] name [name ...]
 
typeset [-afFrxi] [-p] name[=value ulimit [-SHacdflmnpstuv] [limit]
 
umask [-p] [-S] [mode] unalias [-a] [name ...]
 
unset [-f] [-v] [name ...] until COMMANDS; do COMMANDS; done
 
variables - Some variable names an wait [n]
 
while COMMANDS; do COMMANDS; done { COMMANDS ; }
 
Zu jedem der aufgelisteten Kommandos sind ebenfalls mit dem Kommando, help genauere Informationen zu
 
bekommen, beispielsweise zu shift.
 
shift: shift [n]
 
The positional parameters from $N+1 ... are renamed to $1 ... If N is
 
not given, it is assumed to be 1.
 
Wenn tiefergehende Informationen benötigt werden hilft ein Blick in die Manpage von bash weiter.
 
3.16. Pipes
 
Bereits sehr früh wurde das Prinzip der „Pipes“, Röhren ist keine schlechte Übersetzung, integriert. Sie können
 
etwas „hineinschieben“ und am anderen Ende kommt es wieder heraus. Wie bereits beschrieben, gibt es sehr
 
viele kleine, spezialisierte Programme unter Unix, die mit speziellen Parametern aufgerufen werden können.
 
Sinnvoll wäre eine Schnittstelle zwischen diesen Programmen, um Daten auszutauschen oder auch das Ergebnis
 
eines Programmlaufs in einem weiteren Programm aufzubereiten. Diese Schnittstelle ist in Form von „Pipes“
 
realisiert. Sicher haben Sie schon das Kommando ls benutzt, um sich die Dateien in einem Verzeichnis
 
anzeigen zu lassen. Wenn Sie aber in einem Verzeichnis mit sehr vielen Dateien die Anzahl der Dateien
 
ermitteln möchten, kann das Zählen leicht etwas umständlich werden. Um Zeichen, Wörter oder Zeilen in einer
 
Datei zu zählen, gibt es aber das Kommando wc (Word Count). Ein Weg wäre also, die Ausgabe von ls -l in
 
eine Datei zu schreiben und mittels wc -l die Zeilen zählen zu lassen. Der Umweg über eine Datei läßt sich
 
aber mittels einer Pipe umgehen.
 
Unix benutzt hierfür das Zeichen | (Pipe). Verknüpfen Sie einfach die beiden Kommandos mittels dieses
 
Zeichens zu einer Zeile: ls -l | wc -l, gibt Ihnen die Anzahl der Dateien im aktuellen Verzeichnis aus. Nur
 
117
 
Kapitel 3. Betrieb
 
ein kleiner Haken an dieser Stelle: ls gibt als erste Zeile keinen Dateinamen aus, sondern eine Zeile, in der
 
Informationen über das Verzeichnis aufgezeigt werden, Sie müssen also vom Ergebnis eine Zeile subtrahieren,
 
um auf das genaue Ergebnis zu kommen.
 
Wenn Sie sich die Rechnenarbeit ersparen wollen, können Sie auch die Option -1 statt -l beim Kommando ls
 
benutzen, doch das führt jetzt zu weit...
 
Ein weiteres Beispiel für die Benutzung von Pipes werden wir im folgenden Abschnitt zu ps aufzeigen. Sie
 
werden im Laufe der Zeit an vielen Stellen auf weitere Anwendungsfälle stoßen.
 
3.17. ps und /proc
 
Um auf einem Debian GNU/Linux-System die vielen gleichzeitig laufenden Programme im Zaum halten zu
 
können, muß man sich natürlich auch einen Überblick über diese verschaffen. Dazu dient unter anderem das
 
Programm ps. ps liest die benötigten Informationen unter Linux aus dem Verzeichnis /proc des Dateisystems.
 
/proc ist nicht tatsächlich auf einer Festplattenpartition abgelegt, sondern wird vom Kernel ständig aktualisiert
 
und in den Verzeichnisbaum eingeblendet. Somit hat der Benutzer auf einfachste Art und Weise Zugriff auf die
 
Informationen.
 
Rufen Sie ps einfach einmal ohne weitere Parameter in einer shell auf. Dies sollte Ihnen in etwa folgendes
 
Ergebnis anzeigen:
 
bash-2.02$ ps
 
PID TTY TIME CMD
 
3522 pts/5 00:00:00 bash
 
3523 pts/5 00:00:00 ps
 
Ohne weitere Optionen zeigt ps die Prozesse der aktuellen Shell an. In der ersten Spalte sehen Sie die
 
Prozeß-ID (PID), diese dient dazu, ein Programm im System eindeutig zu identifizieren. Zu diesem Zeitpunkt
 
sind das die Shell selber sowie das Programm ps, welches ja gerade gestartet wurde. ps verfügt über eine
 
Vielzahl von Optionen, mit denen Sie sich detailliertere Informationen zu den laufenden Programmen ansehen
 
können.
 
Eine Kurzübersicht über die verfügbaren Optionen erhalten Sie, wie bei allen GNU-Programmen, über die
 
Option --help.
 
bash-2.02$ ps --help
 
********* simple selection ********* ********* selection by list *********
 
-A all processes -C by command name
 
-N negate selection -G by real group ID (supports names)
 
-a all w/ tty except session leaders -U by real user ID (supports names)
 
-d all except session leaders -g by session leader OR by group name
 
-e all processes -p by process ID
 
T all processes on this terminal -s processes in the sessions given
 
a all w/ tty, including other users -t by tty
 
g all, even group leaders! -u by effective user ID (supports names)
 
r only running processes U processes for specified users
 
x processes w/o controlling ttys t by tty
 
*********** output format ********** *********** long options ***********
 
-o,o user-defined -f full --Group --User --pid --cols
 
-j,j job control s signal --group --user --sid --rows
 
-O,O preloaded -o v virtual memory --cumulative --format --deselect
 
-l,l long u user-oriented --sort --tty --forest --version
 
X registers --heading --no-heading
 
********* misc options *********
 
-V,V show version L list format codes f ASCII art forest
 
-m,m show threads S children in sum -y change -l format
 
-n,N set namelist file c true command name n numeric WCHAN,UID
 
-w,w wide output e show environment -H process heirarchy
 
118
 
Kapitel 3. Betrieb
 
Am häufigsten werden Sie sicher Optionen wie a, u, x und w benutzen. Diese werden nach dem Kommando
 
einfach zusammengefaßt, also beispielsweise ps auxw.
 
Nun noch das versprochene Beispiel zum Thema Pipe: Nehmen wir an, Sie benötigen die Prozeß-ID eines
 
Programms, um es mittels kill zu beenden. Auf einem System mit vielen Prozessen kann dies ein Problem
 
sein. Die Lösung ist eine Kombination aus den Programmen ps und grep, welche mittels einer Pipe verkettet
 
werden. Das benötigte Kommando würde wie folgt aussehen: ps aux|grep netscape. ps mit den Optionen
 
aux gibt alle laufenden Prozesse in einer ausführlichen Form aus. grep filtert aus der Ausgabe des Programms
 
ps alle Zeilen heraus, in denen die Zeichenfolge netscape vorkommt. Sie sollten nun eine recht knappe
 
Ausgabe bekommen und die gewünschte Prozeß-ID leicht finden können.
 
Weitere Informationen zu ps finden Sie in der Man-Page zu ps (man ps).
 
3.18. Links
 
Unter Unix werden sogenannte Links bereits seit vielen Jahren eingesetzt. Sie kennen diese vielleicht schon von
 
anderen Betriebssystemen unter dem Namen „Verknüpfungen“. Um einen Link zu erzeugen, bedient man sich
 
des Kommandos ln. Auch dieses Kommando verfügt über die Option --help, welche Ihnen eine kurze
 
Information zu den verfügbaren Optionen gibt:
 
bash-2.02$ ln --help
 
Benutzung: ln [OPTION]... ZIEL [VERKNÜPFUNGSNAME]
 
oder: ln [OPTION]... ZIEL... VERZEICHNIS
 
oder: ln [OPTION]... --target-directory=VERZEICHNIS ZIEL...
 
Erzeugen einer Verknüpfung des angegebenen ZIELES mit optionaler VERKNÜPFUNG.
 
Wenn mehr als ein ZIEL angegeben wird, muß das letzte Argument ein Verzeichnis
 
sein. Erzeugen von Verknüpfungen für jedes ZIEL in VERZEICHNIS. Als Standardvorgabe
 
werde harte Verknüpfungen erstellt, symbolische Verknüpfungen
 
mit --symbolic. Beim Erzeugen von harten Verknüpfungen muß jedes ZIEL
 
existieren.
 
--backup=[KONTROLLE] Erzeugen von Sicherungen für vorhandene Zieldateien.
 
-b Wie --backup, akzeptiert aber kein Argument.
 
-d, -F, --directory Verzeichnisse hart verknüpfen. (Nur Super-User)
 
-f, --force Vorhandene Ziele entfernen.
 
-n, --no-dereference Behandeln eines Zieles, das eine symbolische
 
Verknüpfung auf ein Verzeichnis ist, wie
 
normale Datei.
 
-i, --interactive Nachfrage vor Entfernen vorhandener Ziele.
 
-s, --symbolic Symbolische statt harter Verknüpfung erzeugen
 
-S, --suffix=SUFFIX Überschreiben der normalen Anhänge für
 
Sicherungen.
 
--target-directory=VERZ Angabe des VERZeichnisses in dem die Verknüpfungen
 
erstellt werden sollen.
 
-v, --verbose Ausgabe des Namens jeder Datei vor dem
 
Verknüpfen.
 
--help Anzeige dieser Hilfe und beenden.
 
--version Ausgabe der Versionsinformation und beenden.
 
Der Anhang für Sicherheitskopien ist ~, außer wenn er --suffix oder
 
SIMPLE_BACKUP_SUFFIX gesetzt wurde. Die Versionskontrolle kann mit
 
--backup oder VERSION_CONTROL gesetzt werden. Mögliche Werte sind:
 
none, off Niemals Sicherung erzeugen (selbst wenn --backup
 
angegeben wurde)
 
numbered, t Erzeugen von numerierten Sicherheitskopien
 
existing, nil Numeriert wenn numerierte Backups existieren, sonst einfach.
 
simple, never Immer einfache Sicherheitskopien erzeugen
 
119
 
Kapitel 3. Betrieb
 
Berichten Sie Fehler an <bug-fileutils@gnu.org>.
 
Aber das sieht komplizierter aus als, es ist. In 98% aller Fälle wird ihnen ln in der „Sparversion“ als ln -s
 
originaldatei link-zur-datei ausreichen. Weitere Informationen finden Sie wie immer auch in der
 
Man-Page.
 
3.19. vi
 
Der Unix-Standard-Editor vi ist nach der Installation des Basissystems auf jedem Debian GNU/Linux-System
 
verfügbar. vi wird schon seit vielen Jahren auf Unix-Systemen eingesetzt, seine für Anfänger kryptische
 
Bedienung rührt aus der langen Geschichte dieses Editors her. In der Urzeit der Computertechnik standen keine
 
aufwendigen grafischen Arbeitsplätze zur Verfügung. Textdrucker mit Tastatur oder – etwas moderner –
 
Text-Terminals ( VT100, ein Modell der Firma DEC, ist noch heute ein Begriff), die seriell an der Rechner
 
angeschlossen wurden, waren Stand der Technik.
 
Trotzdem ist es sinnvoll, ein paar wenige Grundlagen über den vi zu erfahren. Dieser Editor ist einfach immer
 
verfügbar, auch auf einem minimalem System. Wenn Sie sich etwas in den vi eingearbeitet haben, werfen Sie
 
mal einen Blick auf vim, vi improved, der eine erweiterte Version des vi ist.
 
Beim vi wird zwischen einem Kommando- und einem Eingabemodus unterschieden. Durch Drücken der Taste
 
i für „Input“ kommen Sie in den Eingabemodus. Ein Druck auf die Taste Esc beendet den Eingabemodus und
 
man befindet sich wieder im Kommandomodus. Zum Eingabemodus gibt es nicht viel zu sagen, es können
 
damit weitere Zeichen in die Datei eingegeben werden.
 
Interessanter ist der Kommando-Modus des vi. Mit einzelnen Tasten können Sie im Text navigieren oder auch
 
Zeichen/Zeilen löschen. Laden Sie einfach eine Datei, beispielsweise mit dem Kommando: cp /etc/hosts .
 
(legt eine Kopie der Datei im aktuellen Verzeichnis ab), vi ./hosts (startet vi und lädt die Datei). In dieser
 
Datei befinden sich die lokalen Zuordnungen des Rechnernamens zur IP-Nummer. Nach dem Start des vi
 
befinden Sie sich im Kommandomodus. Sie können nun ein einzelnes Zeichen löschen, indem Sie die Taste x
 
drücken. Ein solcher Befehl kann mit der Taste u rückgängig gemacht werden.
 
Um den Cursor im Text zu bewegen, können Sie die Pfeiltasten benutzen. Sollte dies aufgrund fehlerhafter
 
Einstellungen (zum Beispiel über eine telnet-Verbindung) einmal nicht funktionieren, können Sie in jedem Fall
 
mit den Tasten h (links), j (runter), k (rauf) und l (rechts) navigieren.
 
Viele der vi-Kommandos lassen sich auch „vervielfältigen“. Beispielsweise löscht 9x 9 Zeichen ab der
 
aktuellen Position. Dies funktioniert mit den meisten anderen Kommandos ebenso.
 
Wenn Sie die Änderungen in einer Datei speichern wollen, können Sie dies mit :w tun. Dateien unter einem
 
anderen Namen speichern Sie mit :w neu.txt. Sie können den vi beenden, indem Sie :q eingeben. Auch hier
 
sind Kombinationen möglich, so können Sie eine Datei mit :wq speichern und den Editor verlassen.
 
Häufig möchte man Zeilen kopieren: hierzu dient der Befehl yy. Dieser speichert die aktuelle Zeile in einem
 
Puffer, die gespeicherten Daten lassen sich mit p wieder an einer anderen Stelle einfügen. Analog dazu lassen
 
sich mit 7yy 7 Zeilen kopieren... und so weiter.
 
Soweit zu den Grundzügen des Editors vi. Mit diesen wenigen Kommandos sind Sie in der Lage, Anpassungen
 
an den Konfigurationsdateien Ihres Debian GNU/Linux-Systems vorzunehmen.
 
3.19.1. vi für Fortgeschrittene
 
Wenn Sie sich eine Zeit lang mit diesem Editor beschäftigt haben, können Sie folgende Liste verwenden um ihr
 
vi-Know-How zu vertiefen.
 
3.19.1.1. Programstart
 
Bereits beim Programstart können einige Optionen angegeben werden, diese sind unter anderem:
 
• vi name - Startet den Editor und lädt die Datei name.
 
• vi name1 name2 name3 - Startet den Editor und lädt die Dateien name1,name2 und name1.
 
120
 
Kapitel 3. Betrieb
 
• vi -R name - Startet den Editor und lädt die Datei name im Nur-Lese Modus.
 
• vi -r name - Startet den Editor und restauriert die Datei name nach einem Absturz.
 
3.19.1.2. Einstellungen
 
Wenn der Editor gestartet ist können einige Einstellungen verändert werden. Sollen diese Änderungen dauerhaft
 
gespeichert werden, so können diese in die Datei ~/.vimrc eingetragen werden.
 
• :set - zeigt die aktuellen Benutzereinstellungen.
 
• :set all - zeigt alle Einstellungen.
 
• :set option - Aktiviert eine Option. Beispiel: set number Aktiviert die Anzeige der Zeilennummern.
 
• :set nooption - Deaktiviert eine Option. Beispiel: set nonumber Deaktiviert die Anzeige der
 
Zeilennummern.
 
• :set option? - Zeigt die möglichen Werte dieser Option.
 
3.19.1.3. Dateioperationen
 
• ZZ - Speichert die Datei und beendet das Programm.
 
• :wq - Speichert die Datei und beendet das Programm.
 
• :w - Speichert die Datei.
 
• :w! - Speichert die Datei auch wenn de Zugriffsrechte auf Nur-Lesen gesetzt sind.
 
• :w name - Speichert die Datei unter dem Namen name.
 
• :q - Beendet das Programm.
 
• :q! - Beendet das Programm, Änderungen werden verworfen.
 
• :e name - Lädt die Datei name.
 
• :e! name - Lädt die Datei name erneut und verwirft alle bisherigen Änderungen.
 
• :e + name - Lädt die Datei name und springt ans Ende der Datei.
 
• :e +n name - Lädt die Datei name und springt in die Zeile n.
 
• :n - Geht zur nächsten der geladenen Dateien.
 
• :args - Listet die aktuelle Liste der Dateien.
 
• :rew - Springt zur ersten Datei in der Dateiliste.
 
• :f - zeigt den Namen der aktuellen Datei und die aktuelle Zeilennummer an.
 
• :q - Beendet das Programm.
 
• :q - Beendet das Programm.
 
• :q - Beendet das Programm.
 
• :q - Beendet das Programm.
 
121
 
Kapitel 3. Betrieb
 
3.19.1.4. Cursorbewegungen
 
• Pfeiltasten - Mit den Pfeiltasten kann der Cursor wie in anderen Anwendungen bewegt werden.
 
• CTRL - d - Springt eine halbe Seite nach unten.
 
• CTRL - u - Springt eine halbe Seite nach oben.
 
• CTRL - f - Springt eine Seite nach unten.
 
• CTRL - b - Springt eine Seite nach oben.
 
• :0 - Springt zum Anfang der Datei.
 
• :n - Springt zur Zeile n der Datei.
 
• :$ - Springt zum Ende der Datei.
 
• 0 - Springt zum Anfang der Zeile.
 
• ^ - Springt zum ersten Zeichen welches kein Leerzeichen ist.
 
• $ - Springt zum Ende der Zeile.
 
• RETURN - Springt zum Anfang der nächsten Zeile.
 
• % - Zeigt die zugehörige Klammer.
 
• G - Springt zu letzten Zeile.
 
• H - Springt zu erste Zeile im aktuellen Fenster.
 
• L - Springt zu letzten Zeile im aktuellen Fenster.
 
• M - Springt in die Mitte des aktuellen Fensters.
 
• - - Springt zum ersten Nicht-Leerzeichen der vorhergehenden Zeile.
 
• + - Springt zum ersten Nicht-Leerzeichen der nächsten Zeile.
 
• j - Springt zur nächsten Zeile, in der gleichen Spalte.
 
• k - Springt zur vorhergehenden Zeile, in der gleichen Spalte.
 
• h - ein Zeichen nach rechts.
 
• l - ein Zeichen nach links.
 
• w - ein Wort vorwärts.
 
• b - ein Wort rückwärts.
 
• e - zum Ende des Wortes.
 
• ) - zum nächsten Satz.
 
• ( - zum vorhergehenden Satz.
 
• } - zum nächsten Absatz.
 
• { - zum vorhergehenden Absatz.
 
3.19.1.5. Löschen
 
• x - Löscht das Zeichen unter dem Cursor.
 
• X - Löscht das Zeichen vor dem Cursor.
 
• D - Löscht alles bis zum Ende der Zeile.
 
• ^d - Löscht alles bis zum Anfang der Zeile.
 
• dd - Löscht die gesamte Zeile.
 
• ndd - Löscht n Zeilen.
 
122
 
Kapitel 3. Betrieb
 
• dnw - Löscht n Wörter ab der Cursorposition.
 
3.19.1.6. Einfügen und ändern
 
• i - aktiviert den Eingabemodus vor dem Cursor.
 
• I - aktiviert den Eingabemodus vor dem ersten Nicht-Leerzeichen.
 
• a - aktiviert den Eingabemodus nach dem Cursor.
 
• A - aktiviert den Eingabemodus nach dem Ende der Zeile.
 
• o - beginnt eine neue Zeile nach der aktuellen Zeile und aktiviert den Eingabemodus.
 
• O - beginnt eine neue Zeile über der aktuellen Zeile und aktiviert den Eingabemodus.
 
• rn - ersetzt das Zeichen unter dem Cursor durch das Zeichen n, der Eingabemodus wird nicht aktiviert.
 
• R - aktiviert den Eingabemodus, Zeichen werden überschrieben.
 
• C - Ändert den Text bis zum Zeilenende.
 
• D - Löscht den Text bis zum Zeilenende.
 
• s - ersetzt Zeichen.
 
• S - ersetzt Zeilen.
 
• J - ersetzt Zeilen.
 
3.19.1.7. Kopieren und einfügen
 
• y - kopiert die aktuelle Zeile.
 
• nyy - kopiert n Zeilen.
 
• p - fügt die kopierten Zeilen nach der aktuellen Zeile ein.
 
• P - fügt die kopierten Zeilen vor der aktuellen Zeile ein.
 
Auch gelöschte Zeilen können mit den aufgeführten Kommandos eingefügt werden.
 
3.19.1.8. Suchen und ersetzen
 
• /text - sucht vorwärts nach text.
 
• ?text - sucht rückwärts nach text.
 
• n - sucht nochmal in der gleichen Richtung.
 
• N - sucht nochmal in der umgekehrten Richtung.
 
• [ addr ] s/from/to/ [ g ] - ersetzt einmalig from durch to. Mit addr kann ein Bereich angegeben
 
werden in dem die Aktion durchgeführt werden soll. Die Zeilennummern sind durch ein Komma zu trennen.
 
g führt die Aktion an jeder gefundenen Stelle durch. Beispiel: :2,10s/a/b/g ersetzt in den Zeilen von 2 bis
 
10 alle Buchstaben a durch b.
 
123
 
Kapitel 3. Betrieb
 
3.19.1.9. Verschiedenes
 
• u - Undo, wiederruft die letzte Änderung.
 
• U - Stellt die aktuelle Zeile wieder her.
 
• ~ - Ändert Groß-/Kleinschreibung.
 
• . - Wiederholt das letzte Kommando.
 
Tip: Unter DOS/Windows erstellte Dateien erscheinen unter GNU/Linux häufig mit doppelten
 
Zeilenendezeichen, da auf diesen Systemen eine Kombination aus CR+LF verwendet wird. CR (Carriage
 
Return) hat den ASCII-Code 13, LF (Line Feed) den ASCII-Code 10.
 
Um diese Dateien zu konvertieren gibt es verschiedene Lösungsansätze, im vi benutzt man das Kommando
 
:se ff=unix. Sollten noch überflüssige RETURN-Zeichen (^M) am Zeilenende auftauchen, so lassen sich
 
diese mittels :1,$s/^M//g entfernen. Dabei muß man das ^M durch Drücken von STRG-V, gefolgt von
 
STRG-M, eingeben. STRG-V dient dazu, die nachfolgend gedrückte Taste(nkombination) direkt in den Text
 
zu übernehmen.
 
3.20. Dateisysteme
 
Als Dateisystem bezeichnet man auf einem Debian GNU/Linux (und auf allen anderen Unix-Systemen) den
 
kompletten Verzeichnisbaum ab dem „root-“Verzeichnis /. Als Dateisystem wird aber auch die
 
Organisationsform der Daten auf einem Medium (Festplatte, Diskette) bezeichnet, die von Betriebssystem zu
 
Betriebssystem unterschiedlich ist.
 
Jedes physikalische Gerät, auf dem Sie Daten speichern wollen, müssen Sie zunächst mit einem Dateisystem
 
versehen. Wenn Sie verschiedene Partitionen auf einem Medium erstellen, kann jede dieser Partitionen mit
 
einem anderen Dateisystemtyp versehen werden. Jedes Betriebssystem verwendet mindestens einen eigenen
 
Dateisystemtyp, viele verwenden auch mehrere oder können mit verschiedenen Typen umgehen.
 
Häufig sind im Debian GNU/Linux-Umfeld Kombinationen aus Linux und Windows-Dateisystemen
 
anzutreffen. Debian GNU/Linux kann mit einer großen Zahl von Dateisystemen umgehen, Sie können somit
 
sehr einfach Ihre Daten von anderen Betriebssystemen auf Ihr Debian GNU/Linux-System übernehmen.
 
3.20.1. cfdisk und mount - Einbinden eines Dateisystems
 
Unter Debian GNU/Linux gibt nur einen einzigen Verzeichnisbaum (beginnend mit /). In diesem sind, als
 
Unterverzeichnisse, alle physikalischen Geräte zu finden. Es werden keine Buchstaben zu Identifikation der
 
Geräte benutzt.
 
Mit Ausnahme des Root-Dateisystems (/, welches beim Systemstart automatisch angemeldet wird) müssen Sie
 
alle weiteren Dateisysteme erst einmal in das System einbinden. Dabei kann, wie bereits beschrieben, jedes
 
physikalische Gerät über mehrere Partitionen verfügen. Jedes dieser Dateisysteme wird im System in einem
 
Verzeichnis (dem sogenannten „mount-point“) „eingehängt“. Das ist so einfach, wie es sich anhört, Sie können
 
einen Mountpoint mit dem Kommando mkdir erzeugen und an dieser Stelle im Dateisystem das Medium
 
einhängen.
 
Um dem System weitere Dateisysteme hinzuzufügen (dies können Sie im Normalfall nur als Superuser tun),
 
dient das Kommando mount. Bei der Installation von Debian GNU/Linux von CD-ROM wurde das
 
Dateisystem (/cdrom) bereits benutzt und vom Installationsprogramm ins System eingebunden. Hierbei wurde
 
ein Link von dem entsprechenden Device auf das neue Device: /dev/cdrom angelegt. Sie müssen sich somit
 
nicht das Device Ihres CD-ROMs merken (oder herausfinden), sondern können diesen Link benutzen. Weiterhin
 
wurde bei der Installation das Verzeichnis /cdrom angelegt. Sie können nun eine eingelegte CD sehr leicht mit
 
dem Kommando mount /dev/cdrom /cdrom „mounten“.
 
124
 
Kapitel 3. Betrieb
 
Der Mount-Point kann anstelle von /cdrom jedes andere, beliebige Verzeichnis sein. Beachten Sie jedoch, daß
 
Verzeichnisse, an deren Stelle Sie ein Dateisystem mounten möchten, keine weiteren Dateien enthalten sollten.
 
Das Mounten eines Dateisystems funktioniert auch, wenn sich bereits Dateien in dem Verzeichnis befinden, Sie
 
können lediglich nicht mehr auf diese Dateien zugreifen. Die Dateien werden nicht gelöscht, sie werden
 
praktisch von dem gemounteten Dateisystem „überlagert“.
 
In der Praxis reicht dieses Wissen jedoch nicht lange aus. Sicher werden Sie irgendwann den Wunsch haben,
 
den Festplattenplatz Ihres Systems zu erweitern. Der erste Schritt ist natürlich der mechanische Einbau der
 
Festplatte. Schon hierbei (eigentlich schon beim Kauf der Platte) müssen Sie sich für den Anschluß an einem
 
der beiden IDE-Busse oder am SCSI-Hostadapter entscheiden.
 
Bei einem IDE-System notieren Sie sich, ob Sie die Platte am ersten (primary) oder am zweiten (secondary)
 
Bus und ob die Platte als erste ( Master) oder zweite ( Slave) am jeweiligen Bus betrieben wird.
 
Am SCSI-Bus notieren Sie sich die ID der Platte und kontrollieren ob, und wenn ja mit welcher ID, noch
 
weitere Geräte angeschlossen sind. Beachten Sie hierbei auch externe Geräte!
 
Im nächsten Schritt müssen Sie mindestens eine Partition auf der neuen Platte anlegen. Diese kann den
 
gesamten Festplattenplatz in Anspruch nehmen, Sie können aber auch mehrere, kleine Partitionen anlegen.
 
Unter Debian GNU/Linux haben Sie die Auswahl zwischen zwei Programmen: fdisk und cfdisk. Wir
 
werden im folgenden cfdisk, aufgrund der ansprechenderen Oberfläche, vorstellen.
 
Ermitteln Sie zunächst das entsprechende Device für die neue Festplatte, mit Hilfe der zuvor notierten Daten.
 
Für IDE-Laufwerke ist die Bezeichnung folgende:
 
• /dev/hda - Master am primären Bus
 
• /dev/hdb - Slave am primären Bus
 
• /dev/hdc - Master am sekundären Bus
 
• /dev/hdd - Slave am sekundären Bus
 
Dabei ist unerheblich, ob es sich um eine Festplatte oder ein CD-ROM handelt.
 
Bei SCSI-Laufwerken ist die Bestimmung etwas anders. Zunächst ist zu beachten, daß zwischen Festplatten,
 
CD-ROMs/CD-Brennern und anderen Geräten unterschieden wird. Die Gerätedateien für SCSI-Festplatten
 
werden mit /dev/sdX bezeichnet, wobei X für einen Buchstaben steht, angefangen bei a und dann aufsteigend
 
nach SCSI-ID zugeordnet. Hier ein denkbares Beispiel:
 
• /dev/sda – SCSI-Platte mit der kleinsten ID (z.B.: 0)
 
• /dev/sdb – SCSI-Platte mit der mittleren ID (z.B.: 2)
 
• /dev/sdc – SCSI-Platte mit der größten ID (z.B.: 3)
 
SCSI CD-ROMs oder CD-Brenner werden ähnlich bezeichnet. Die Gerätedatei wird als /dev/scdX
 
bezeichnet, hier steht X für eine Zahl, beginnend bei 0. Beispielsweise:
 
• /dev/scd0 - SCSI CD-ROM/Brenner (z.B. ID: 3)
 
• /dev/scd1 - SCSI CD-ROM/Brenner (z.B. ID: 5)
 
Natürlich müssen/können Sie auf einer CD-ROM kein Dateisystem anlegen, dies sollte hier nur der
 
Anschauung dienen.
 
Nachdem Sie nun das Ihrer Platte entsprechende Device bestimmt haben, können Sie cfdisk mit dem
 
entsprechenden Device als Option starten, beispielsweise: cfdisk /dev/hdb. Bei einer neuen Festplatte
 
werden nach dem Programmstart keinerlei Partitionen angezeigt. In diesem Beispiel, mit einer 16GB-Festplatte,
 
wurde eine einzige Partition mit einem Linux Extended 2 (ext2-) Dateisystem angelegt.
 
125
 
Kapitel 3. Betrieb
 
Abbildung 3-1. cfdisk
 
Die erste Partition wird als /dev/hdb1 angelegt, eine zweite würde /dev/hdb2 genannt werden und so
 
weiter...
 
Sie können sich innerhalb von cfdisk mit den Cursortasten bewegen und mit der RETURN-Taste den
 
ausgewählten Menüpunkt auswählen.
 
Wenn Sie alle gewünschten Partitionen, oder auch nur eine einzige, angelegt haben, können Sie nun das
 
eigentliche Dateisystem auf der Partition erzeugen. Hierzu steht Ihnen unter Debian GNU/Linux das
 
Kommando mke2fs zu Verfügung. Auch diesem Kommando müssen Sie natürlich wieder angeben, welche
 
Festplatte und vor allem auch welche Partition Sie mit dem Dateisystem beschreiben wollen. Für unser Beispiel
 
beginnen wir mit der ersten Partition auf unserer Platte, also dem Device /dev/hdb1:
 
sushi:~# mke2fs /dev/hdc1
 
mke2fs 1.15, 18-Jul-1999 for EXT2 FS 0.5b, 95/08/09
 
Filesystem label=
 
OS type: Linux
 
Block size=4096 (log=2)
 
Fragment size=4096 (log=2)
 
128256 inodes, 256032 blocks
 
12801 blocks (5.00%) reserved for the super user
 
First data block=0
 
8 block groups
 
32768 blocks per group, 32768 fragments per group
 
16032 inodes per group
 
Superblock backups stored on blocks:
 
32768, 98304, 163840, 229376
 
Writing inode tables: done
 
Writing superblocks and filesystem accounting information: done
 
126
 
Kapitel 3. Betrieb
 
Die bei Ihnen angezeigten Werte werden, je nach verwendeter Platte, von den hier gezeigten abweichen. (Gute
 
Beobachter werden bemerken, daß in diesem Beispiel nicht die 16GB-Platte formatiert wurde, diese stand leider
 
nicht zur Verfügung...)
 
Nun können Sie die frisch formatierte Partition zu Ihrem Dateisystem hinzufügen: mount /dev/hdb1 /mnt
 
und mit dem Kommando df überprüfen, ob nichts schiefgelaufen ist.
 
Die Ausgabe könnte auf einem System mit mehreren Festplatten wie folgt aussehen:
 
sushi:~# df
 
Filesystem 1k-blocks Used Available Use% Mounted on
 
/dev/hda1 5767132 4352356 1121804 80% /
 
/dev/hdb1 16247612 14355348 1066928 94% /home/ftp
 
/dev/hdc1 24597980 21574360 1774080 93% /home/ftp/debian
 
/dev/hda2 18263244 15157492 2178016 88% /home/ftp/images
 
In dieser Auflistung sollten Sie dann auch die neu eingebundene Festplattenpartition finden.
 
3.20.2. /etc/fstab - Dateisysteme automatisch einbinden
 
Vielleicht werden Sie nach einem Neustart des Systems bemerkt haben, daß die neu eingebundene Festplatte
 
nicht automatisch ins System eingebunden wird. Wenn Sie möchten, daß bestimmte andere Partitionen
 
zusätzlich zu / (root) ins System eingebunden werden, so müssen Sie diese in die Datei /etc/ fstab (für:
 
„file system table“) aufnehmen. Weiterhin ist es sinnvoll, dort auch Dateisysteme einzutragen, die zwar nicht
 
automatisch gemountet werden sollen, auf die Sie aber trotzdem schnellen Zugriff haben möchten,
 
beispielsweise CD-ROMs, die öfter gewechselt werden.
 
Nach der Basisinstallation von Debian GNU/Linux sind bereits einige Einträge in der Datei /etc/fstab
 
vorhanden:
 
# /etc/fstab: static file system information.
 
#
 
# <file system> <mount point> <type> <options> <dump > <pass>
 
/dev/hda1 / ext2 defaults 0 1
 
/dev/hda2 none swap sw 0 0
 
proc /proc proc defaults 0 0
 
Bei der Installation wurden (mindestens) das Root-Dateisystem (/) sowie eine Swap-Partition angelegt. Der
 
dritte Eintrag dient dem „virtuellen“ Verzeichnis /proc, welches zur Laufzeit des Systems diverse
 
Informationen zum System und zur Hardware enthält. Dieses verbraucht keinen Festplattenplatz.
 
Die erste Spalte beschreibt das Device und die zu mountende Partition. Die zweite Spalte verweist auf das
 
Verzeichnis im Dateisystem, an der die Partition eingebunden werden soll. Beachten Sie, daß dieses Feld bei
 
einer Swap-Partition mit dem Text „none“ anstatt eines Verzeichnisses gefüllt wird. Die dritte Spalte beschreibt
 
den Typ des Dateisystems. Eine Beschreibung der weiteren Spalten finden Sie weiter unten, übernehmen Sie die
 
Werte erst einmal wie gezeigt.
 
Um die im vorigen Abschnitt beschriebene Festplatte /dev/hdc automatisch ins System einzubinden,
 
erweitern Sie die Datei um folgenden Eintrag:
 
/dev/hdc1 /mnt ext2 defaults 0 2
 
Weitere nützliche Einträge sind folgende:
 
/dev/hdc /cdrom iso9660 ro 0 0
 
/dev/fd0 /floppy auto noauto,sync 0 0
 
Der erste Eintrag ermöglicht es Ihnen, eine CD-ROM einfach mit dem Kommando mount /cdrom anstatt
 
mount /dev/cdrom /cdrom einzubinden. Gleiches gilt für die zweite Zeile, diesmal aber für das
 
Diskettenlaufwerk. Um mit DOS-formatierten Disketten umzugehen, sehen Sie sich das Paket mtools an.
 
127
 
Kapitel 3. Betrieb
 
3.20.2.1. /etc/fstab - im Detail
 
Wie Sie schon gesehen haben, sind die Einträge in der Datei /etc/fstab in tabellarischer Form angeordnet:
 
# /etc/fstab: static file system information.
 
#
 
# <file system> <mount point> <type> <options> <dump > <pass>
 
/dev/hda1 / ext2 defaults 0 1
 
/dev/hda2 none swap sw 0 0
 
proc /proc proc defaults 0 0
 
Zeilen, die mit einem Kommentar (# - „Gartenzaun“) beginnen, können Sie ignorieren, das System tut dies auch.
 
Mit den ersten drei Spalten haben wir uns ja schon kurz beschäftigt, diese enthalten die Einträge für die
 
Partition, den Mount-Punkt und den Dateisystemtyp. Die letzten drei Spalten bedürfen einiger Erklärungen.
 
Die fünfte Spalte wird von dem Programm dump benutzt um festzustellen, wann diese Partition gesichert
 
werden soll. dump und restore dienen zur Sicherung von Daten.
 
Die sechste Spalte wird beim Systemstart von dem Programm fsck ausgewertet. Damit wird festgestellt, in
 
welcher Reihenfolge die Dateisysteme beim Systemstart geprüft werden sollen. Die Root-Partition (/) sollte
 
hier den Wert 1 erhalten. Dateisysteme, die nicht überprüft werden sollen, wie zum Beispiel swap oder
 
CD-ROMs, bekommen den Wert 0, alle anderen Dateisysteme bekommen eine 2.
 
Nein, das ist kein Fehler im Text... zur vierten Spalte kommen wir jetzt. Diese bedarf einiger Erklärungen. Die
 
Einträge in der vierten Spalte werden beim Mounten des Dateisystems benutzt. Sie können hier einen (im
 
einfachsten Fall den Text: default) oder mehrere Werte angeben.
 
• async oder sync - Stellt die Datenübertragung (I/O) auf synchronen oder asynchronen Modus. Im
 
synchronen Modus werden alle veränderten Daten sofort auf das Medium geschrieben, der asynchrone
 
Modus speichert diese zwischen und schreibt später auf das Medium.
 
• ro oder rw - Mountet das Dateisystem zum „Nur-lesen“ (ro - read-only) oder zum Lesen und Schreiben (rw -
 
read-write). Wenn Sie keine Änderungen an einem Dateisystem vornehmen wollen, so können sie dieses „ro“
 
mounten, um versehentliche Änderungen zu verhindern. Ebenso ist dieser Modus für CD-ROMs geeignet.
 
• auto oder noauto - Beim Systemstart oder wenn Sie das Kommando mount -a benutzen, werden alle
 
Dateisysteme gemountet, welche Sie mit dem Eintrag auto versehen haben. Dateisysteme, die nicht
 
dauerhaft zur Verfügung stehen, wie zum Beispiel Disketten oder CD-ROMs, sollten den Eintrag noauto
 
bekommen. Sie verhindern so eine Fehlermeldung beim Systemstart, müssen diese Dateisysteme allerdings
 
dann von Hand einbinden.
 
• dev oder nodev - nodev ignoriert die Gerätedateien auf dem gemounteten Dateisystem.
 
• user oder nouser - Normalerweise können Dateisysteme nur vom Superuser (root) in das System
 
eingebunden werden. Mit dem Wert user erlauben Sie auch normalern Benutzern das Mounten von
 
Dateisystemen. Sie können so beispielsweise den Zugriff auf das Diskettenlaufwerk oder das CD-ROM für
 
alle Benutzer erlauben.
 
• exec oder noexec - Erlaubt oder verbietet das Ausführen von Programmen, die sich auf diesem Dateisystem
 
befinden.
 
• suid oder nosuid - Wertet das Suid-Bit aus oder nicht.
 
• defaults - Der eigentlich wichtigste Wert, den dieses Feld annehmen kann. Aktiviert die Optionen: rw,
 
dev, suid, exec, auto, nouser, async. Sie können einzelne Werte mit weiteren Parametern
 
überschreiben.
 
128
 
Kapitel 3. Betrieb
 
3.21. Internationalisierung und Lokalisierung
 
Die im Debian Projekt eingesetzte Software ist in weiten Bereichen bereits auf die Belange der
 
nicht-englischsprachigen Benutzer angepasst. Diese Aufgabe ist für die Entwickler und Übersetzer nicht leicht
 
zu bewerkstelligen da in den seltensten Fällen eine wörtliche Übersetzung ausreichen würde. In den
 
Programmmenüs könnte man die meisten Ergebnisse noch akzeptieren, die Übersetzung der Onlinehilfe, der
 
manpages und der Dokumentation stellt aber eine echte Herausforderung dar.
 
Ein Vorteil den die Freie Software in diesem Bereich ausspielen kann ist aber sicher die weltweit verteilte
 
Entwicklung. Hierdurch wird es jedem Benutzer, auch Nicht-Programmierern, ermöglich an
 
Entwicklungsprojekten teilzunehmen.
 
Doch wie benutzt man nun die bereits übersetzten Programme? Die Steuerung der gewünschten Sprache erfolgt
 
über eine Umgebungsvariable. Wenn Sie nach der Installation keine Veränderungen an Ihrem System
 
vorgenommen haben, so sollte die Variable LANG den Wert C haben, somit wird die Sprache Englisch
 
verwendet. Sie können den Wert der Variablen mit dem Kommando echo auf der Kommandozeile prüfen.
 
fr@sushi:~$ echo $LANG
 
C
 
Das Verhalten läßt sich recht gut an weit verbreiteten Kommandos prüfen, bei denen man davon ausgehen kann
 
das bereits eine Übersetzung in viele Sprachen existiert. Das Kommando ls ist recht gut geeignet.
 
fr@sushi:~$ ls --help
 
Usage: ls [OPTION]... [FILE]...
 
List information about the FILEs (the current directory by default).
 
Sort entries alphabetically if none of -cftuSUX nor --sort.
 
-a, --all do not hide entries starting with .
 
...
 
Das war zu erwarten und sollte soweit bekannt sein... Setzen Sie nun die Variable auf einen anderen Wert, da Sie
 
dieses Buch lesen wird Sie vielleicht die deutsche Sprache interessieren.
 
fr@sushi:~$ export LANG=de_DE
 
fr@sushi:~$ ls --help
 
Benutzung: ls [OPTION]... [DATEI]...
 
Auflistung von Informationen der DATEIen (Standardvorgabe ist das momentante
 
Verzeichnis). Alphabetsches Sortieren der Einträge, falls weder -cftuSUX
 
noch --sort angegeben.
 
-a, --all Einträge, die mit . beginnen, nicht verstecken.
 
...
 
Diese Einstellungen sind in dieser Form lediglich für die aktuelle Shell gültig. Wenn die Spracheinstellungen
 
für das gesammte System geändert werden sollen, so können die Veränderungen in den Konfigurationsdateien
 
im Verzeichnis /etc vorgenommen werden. Eleganter ist es aber die Debian Werkzeuge für diese Aktionen zu
 
benutzen.
 
Das Paket locales enthält zunächst die notwendigen Dateien um verschiedene Sprachen auf einem Debian
 
System nutzen zu können. Diese nehmen relativ viel Platz auf der Festplatte ein, normalerweise werden auf
 
einem System nur die wenigsten der enthaltenen Sprachen benötigt. Wenn das Paket localepurge installiert
 
wird, so wird regelmässig geprüft welche dieser Dateien wirklich benötigt werden, alle anderen werden
 
gelöscht.
 
Während der Installation des Paketes locales wird die Konfiguration des Paketes vorgenommen, nachträglich
 
kann dies mittels dpkg-reconfigure locales geschehen.
 
129
 
Kapitel 3. Betrieb
 
Abbildung 3-2. Locales Konfiguration
 
Zunächst sind die auf dem System gewünschten Sprachen und Zeichensätze zu wählen. Die hier gemachten
 
Angaben werden in der Datei /etc/locale-gen gespeichert. Einträge in dieser Datei können auch von Hand
 
vorgenommen werden, in diesem Fall ist nach der Änderung das Kommando locale-gen auszuführen. Im hier
 
gezeigten Beispiel werden alle mit de_DE beginnenden Werte ausgewählt, insbesondere auch die Euro Variante.
 
Die Benutzung des Euro Zeichens ist unter Debian GNU sehr einfach möglich, Informationen hierzu finden sich
 
im Abschnitt Euro Symbol
 
Abbildung 3-3. Locales Konfiguration
 
130
 
Kapitel 3. Betrieb
 
Im nächsten Schritt kann nun, aus den eben gewählten Sprachen, die für das gesamte System gültige Sprache
 
gewählt werden. Dieser Wert sollte nur auf einen anderen Wert wie „C“ gestellt werden wenn Sie sicher sind
 
das dies keinen Einfluss auf wichtige Funktionen hat. Sind beispielsweise Scripte zur Systemadministration
 
geschrieben worden die Ausgaben von Programmen auswerten, so kann es nun passieren das diese Ausgaben in
 
einer anderen Sprache erscheinen. Das Script kann diese Ausgaben nun nicht mehr korrekt auswerten. In
 
diesem Fall wird die Einstellung besser auf dem Wert „C“ belassen.
 
Tip: Scripte sollte immer selbst dafür sorgen das alle Umgebungsvariablen richtig gesetzt sind. Um die
 
Spracheinstellungen zu setzten kann in jedes Script die Zeile export LANG=C eingefügt werden.
 
131
 
Kapitel 4. Installation weiterer Pakete
 
Um weitere Pakete auf einem Debian GNU/Linux-System zu installieren, stehen mehrere Programme zur
 
Verfügung. dselect ist das älteste von diesen. dselect stellt ein überaus mächtiges Programm mit vielen
 
Möglichkeiten und allen Freiheiten dar. Dies hat aber leider nicht bei allen Anwendern (gerade bei Einsteigern)
 
zur Beliebtheit beigetragen. dselect verfügt über eine sehr ausführliche Online-Hilfe, aber mal ehrlich: wer
 
liest so etwas schon... Aber wer über einige wenige Kenntnisse von dselect verfügt, wird sehen, daß alles
 
ganz einfach ist, und die Mächtigkeit dieses Werkzeuges schnell zu schätzen wissen.
 
Die nächste Generation der Debian GNU/Linux-Installationsprogramme stellt apt dar. Mit der Version 3.0 von
 
Debian GNU/Linux ist die komplette Umstellung des Paketmanagements auf apt erfolgt.
 
Unabhängig davon, welches Programm Sie zur Installation benutzen, Sie müssen in jedem Fall auswählen,
 
welche Pakete Sie installieren möchten. Dies ist bei Debian GNU/Linux keine leichte Aufgabe, mittlerweile
 
umfaßt die Distribution einige tausend Pakete! Um Ihnen die Auswahl zu erleichtern, wurden von den
 
Entwicklern sogenannte „task“-Pakete zusammengestellt. Diese „Gruppierung“ von Paketen vereinfacht Ihnen
 
die Auswahl. Wählen Sie beispielsweise das Paket task-gnome-desktop aus, so werden alle nötigen Pakete
 
für einen GNOME Desktop ausgewählt und installiert. Weitere Informationen zu diesen Paketen finden Sie im
 
Abschnitt task-Pakete.
 
Programme wie apt-get oder gnome-apt oder auch das bereits erwähnte dselect können zum Auswählen
 
und Installieren einzelner Pakete benutzt werden.
 
Die Paketverwaltung unter Debian GNU/Linux stellt eines der Highlights dieser Distribution dar. Wir wollen
 
hier nicht auf jedes Detail eingehen, hier aber trotzdem ein paar Sätze zu den grundsätzlichen Vorgängen bei der
 
Installation eines Paketes sagen.
 
Jedes Programmpaket enthält in der Regel einige verschiedene Dateien, die zur Funktion dieses Programms
 
benötigt werden. Hierzu gehören natürlich das Programm selber, die Bibliotheken, Dateien mit Daten wie zum
 
Beispiel Grafiken für Spiele, die Anleitung (man-pages) usw. Bei der Installation eines Programms muß
 
sichergestellt sein, daß alle Dateien am richtigen Platz im Verzeichnisbaum installiert werden.
 
Wenn Sie später ein Programm wieder von Ihrem System entfernen wollen, ist es ebenfalls wichtig zu wissen,
 
welche Dateien zu einem Programm gehören und wo sie sich befinden. Weiterhin ist festzustellen, ob Dateien
 
installiert wurden, die mittlerweile von anderen Programmen benutzt werden. In diesem Fall darf das Paket
 
unter Umständen nicht entfernt werden.
 
Ebenso kann der Fall eintreten, daß ein Programm auf den neuesten Stand gebracht werden soll. Bei diesem
 
Vorgang werden Dateien aktualisiert und eventuell auch einige Dateien gelöscht, die von der neuen Version
 
nicht mehr benötigt werden. Auch dies muß so durchgeführt werden, daß nicht andere Programme danach nicht
 
mehr funktionsfähig sind.
 
Das Debian GNU/Linux-Paketsystem wacht über alle diese Vorgänge und hält Ihr System immer in einem
 
benutzbaren Zustand.
 
4.1. Organisation der Pakete
 
Debian GNU/Linux organisiert die Pakete in einer festgelegten Hierarchie. Unter anderem werden Bereiche mit
 
allgemeiner, freier Software (main), die den DFSG ( Debian Free Software Guidelines - Die Debian-Richtlinien
 
für freie Software) entspricht, und Bereiche mit Software, die nicht unter solchen freien Lizenzen steht
 
(non-free), unterschieden. Die nächste Ebene beschreibt die Architektur, also die Prozessorfamilie, auf der die
 
Binärpakete laufen. Auch die Sourcen (Quellcodes) zu den Paketen sind in dieser Ebene angesiedelt. In der
 
letzten Ebene finden sich diverse Verzeichnisse, in denen die eigentlichen Pakete zu Gruppen, wie zum Beispiel
 
„Games“ oder „X11“, zusammengefaßt werden.
 
Hier nun eine Übersicht der verschiedenen Ebenen.
 
4.1.1. Distribution
 
Die sogenannten „Distributionen“ innerhalb der gesamten Debian GNU/Linux Distribution bezeichnen
 
verschiedene Bereiche, die sich durch die Lizenzen, unter denen die Pakete die in diesen Bereichen stehen,
 
132
 
Kapitel 4. Installation weiterer Pakete
 
unterscheiden.
 
• Main - Dies ist der Hauptbestandteil von Debian. Diese Pakete sind unter einem Copyright veröffentlicht, das
 
eine freie Weiterverteilung ermöglicht, und enthalten den vollständigen Quellcode.
 
• Contrib - Die Pakete in diesem Verzeichnis sind für sich frei, jedoch benötigen sie nichtfreie (Non-Free)
 
Software oder Bibliotheken (z.B. Motif oder Qt), um zu funktionieren. Sie können daher nicht in den Bereich
 
„main“ von Debian GNU/Linux einfließen.
 
• Non-Free - Pakete in diesem Verzeichnis müssen nicht unbedingt Geld kosten, jedoch haben sie einige
 
Bedingungen, die eine Weiterverteilung der Software einschränken. Beispielsweise kann ein Autor die
 
Verbreitung der Software auf CD-ROM untersagen.
 
• Non-US - Diese Pakete dürfen nicht aus den USA exportiert werden, es handelt sich meist um
 
Verschlüsselungssoftware. Einige sind, aufgrund der Lizenzen, ebenfalls nichtfreie Software.
 
4.1.2. Architektur
 
Hier eine Übersicht der von Debian GNU/Linux unterstützten beziehungsweise in der Entwicklung befindlichen
 
Architekturen. Nicht alle hier vorgestellten Architekturen wurden mit den Debian GNU/Linux-Versionen 2.1
 
oder 2.2 „released“, sprich freigegeben. Bitte beachten Sie auch, daß nicht alle auf CD-ROM im Handel
 
erhältlich sind. Am einfachsten sind CDs für die i386-Architektur zu bekommen. Einen „normalen PC“ hat
 
einfach fast jeder.
 
• Intel x86 (i386)
 
Die erste Architektur und nicht direkt eine Portierung. Mit dieser Architektur begann alles.
 
• DEC Alpha (alpha)
 
Der erste Release erfolgte mit Debian 2.1. Eine der länger bestehenden Portierungen und ziemlich stabil.
 
• ARM (arm)
 
Eine neue Portierungs-Bestrebung, motiviert durch Rebels (ehemals Corel) interessante-NetWinder
 
Maschine.
 
• Motorola 68k (m68k)
 
Erster Release war mit Debian 2.0. Der am meisten etablierte Port nach dem Intel x86. Der Debian m68k Port
 
läuft auf einer großen Bandbreite von Computern, die auf der Motorola 68k-Prozessorfamilie basieren - im
 
besonderen die Sun3-Workstationfamilie, die Apple Macintosh Personal-Computer und die Atari und Amiga
 
Personal-Computer, aber auch einigen aus dem Industriebereich stammenden VME-Bus Boards.
 
• MIPS
 
Es wurde schon etwas an der Portierung von Debian auf die MIPS-Architektur, die u.a. in SGI-Computern
 
verwendet wird, gearbeitet. Wenn Sie eine SGI besitzen und daran interessiert sind, die Portierung voran zu
 
bringen, senden Sie eine E-Mail an debian-mips@lists.debian.org. Prozessoren der Firma MIPS
 
finden sich aber auch in Rechnern der Firma DEC, der sogenannten DECStation-Familie.
 
• Motorola/IBM PowerPC (powerpc)
 
Diese Portierung läuft auf vielen Apple Macintosh PowerMac-Rechnern und kann auch auf den meisten
 
Motorola-Computern laufen. Ältere Macintosh-Rechner benutzen die m68k-Prozessoren, diese werden nicht
 
als PowerMac bezeichnet.
 
133
 
Kapitel 4. Installation weiterer Pakete
 
• Sun SPARC (sparc)
 
Zum ersten Mal mit Debian 2.1 veröffentlicht. Diese Portierung läuft sowohl auf der SPARCstation-Familie
 
von Workstations als auch auf einem Teil ihrer Nachfolger in der Sun4-Architektur.
 
• Sun UltraSPARC(sparc64)
 
Dies ist auch der Beginn einer Portierung auf die Sun UltraSPARC (sun4u) Workstation-Familie. Dieser
 
64bit-Prozessor hat den Vorteil der Rückwärts-Kompatibilität mit seinem Vorgänger, so daß die
 
UltraSPARC-Portierung in der Lage sein wird, Sparc-Binärfiles auszuführen. Dieses Projekt braucht zur Zeit
 
Entwickler. Wenn Sie einen UltraSPARC-basierenden Computer haben und helfen möchten, senden Sie bitte
 
eine E-Mail an die Liste unter debian-ultralinux@lists.debian.org, um Ihre Mitarbeit anzubieten.
 
• Debian GNU/Hurd (hurd-i386)
 
GNU Hurd ist ein völlig neues Betriebssystem, das von der GNU-Gruppe aufgebaut wird. Hurd wird in der
 
Debian Distribution den Linux-Kernel ersetzen, daher der Name Debian GNU/Hurd.
 
• Debian Beowulf
 
Obwohl nicht wirklich eine Portierung, so wird Beowulf doch ein Ersatz für viele Großrechner in Forschung
 
und Entwicklung sein. Deshalb scheint hier der richtige Platz zu sein. Dieses Projekt arbeitet daran,
 
Beowulf-Cluster unter Debian laufen zu lassen und ein Netzwerk der beteiligten Menschen ganz nach dem
 
Bazar-Modell zu schaffen.
 
4.1.3. Gruppen
 
Innerhalb der hier vorgestellten Gruppen (als Verzeichnisse auf den CDs oder auf den FTP-Servern angelegt)
 
finden Sie die eigentlichen Pakete.
 
• Administration - Programme zur Systemadministration.
 
• Base - Teile des Basissystems, wie zum Beispiel verschiedene Kernel.
 
• Communication - Terminalprogramme usw. .
 
• Development - Diverse Programmiersprachen, Compiler, Interpreters, C/C++ Header, usw.
 
• Documentation - HOWTOs, FAQs und andere Dokumentation sowie Programme, um diese zu lesen.
 
• Editors - Textverarbeitungen, Editoren für Programmierer.
 
• Electronics - Simulatoren für elektronische Schaltungen usw.
 
• Games - Spiele.
 
• Graphics - Grafikprogramme.
 
• Ham Radio - Programme für Amateurfunker.
 
• Interpreters - Interpreter wie Perl, Python und Tcl/Tk.
 
• Libraries - Bibliotheken, die von verschiedenen Programmen genutzt werden.
 
• Mail - Alles rund um E-Mail. Mailserver, Mailprogramme usw.
 
• Mathematics - Mathematische und wissenschaftliche Programme.
 
• Miscellaneous - Diverses, was sonst nirgends hineinpaßt.
 
• Network - Netzwerkserver und Clientprogramme.
 
134
 
Kapitel 4. Installation weiterer Pakete
 
• Newsgroups - Software für öffentliche Diskussionsforen.
 
• Old Libraries - ältere Versionen von Bibliotheken.
 
• Other Operating Systems and File Systems - Zugriff auf andere Betriebs- oder Dateisysteme.
 
• Shells - verschiedene Shells.
 
• Sound - Alles für den guten Ton.
 
• TeX - Donald Knuth’s Schriftsatzprogramm.
 
• Text Processing - Werkzeuge zum Umgang mit Textdateien.
 
• Utilities - verschiedene Werkzeuge.
 
• - Programme für das WWW, Server und Clients.
 
• X Window - X Servers, Window Managers und anderes.
 
4.1.4. Das Debian-Paketformat - .deb
 
Das Debian-Paketformat beinhaltet eine Vielzahl von Informationen zu jedem Paket um sicherzustellen, das
 
sich jedes einzelne perfekt in das System integriert. Debian-Paketnamen enden immer mit .deb, somit können
 
sie leicht von anderen Dateien oder von Paketen aus anderen Distributionen unterschieden werden. Das
 
bekannteste Feature des Debian-Paketformates sind die Abhängigkeiten ( dependency) zwischen den Paketen.
 
Abhängigkeiten zwischen den Paketen erlauben es zum Beispiel einzelnen Programmen, auf gemeinsame
 
Bestandteile anderer Pakete zuzugreifen, meist sind dies Libraries ( Systembibliotheken). Dies verhindert ein
 
unnötiges, doppeltes Installieren von Dateien, auf einem durchschnittlichen System kann so die Zahl der
 
installierten Dateien deutlich reduziert werden.
 
Betrachten wir uns zunächst einmal den einfachsten Fall: ein Paket benötigt zwingend ein zweites Paket, um zu
 
funktionieren. Das Paket mail-crypt ist eine Erweiterung zu Emacs, um E-Mail mit PGP zu verschlüsseln.
 
Wenn PGP nicht installiert ist, wird auch mail-crypt nicht funktionieren. Somit wurde vom Debian
 
Paket-Betreuer (Maintainer) dem Paket die Abhängigkeit zu PGP mitgegeben. Ebenso bedingt mail-crypt die
 
Installation von emacs, da es eine Erweiterung dazu ist, macht es keinen Sinn, dies alleine zu installieren.
 
Weiterhin sind in den Paketbeschreibungen auch Konflikte zwischen den Paketen festgelegt. So ist es unter
 
Debian GNU/Linux nicht möglich, zwei oder mehrere der Programme exim, smail, sendmail, postfix oder
 
qmail zu installieren, da diese alle das virtuelle Paket mail delivery agent zur Verfügung stellen. Die
 
Abhängigkeiten erlauben es, daß genau ein Programm, welches für den Mailtransport zuständig ist, installiert
 
werden kann. Dann haben Sie aber die freie Auswahl zwischen den verfügbaren Paketen.
 
Nun wäre es denkbar, daß ein Programm zum Erstellen von E-Mail (beispielsweise mutt), da es ja eine
 
Möglichkeit benötigt, auch Mails auszuliefern, von smail abhängt. Damit würde man dem Benutzer von mutt
 
vorschreiben, welchen MTA (Mail Transfer Agent) er zu benutzen hat. Debian GNU/Linux-Pakete gehen auch
 
hier einen besonderen Weg. Von den Maintainern der Pakete wird zusätzlich ein „virtueller“ Name festgelegt.
 
Die Programme exim, smail, sendmail und qmail beispielsweise verfügen noch über die Information, daß
 
Sie einen „mail-transport-agent“ zur Verfügung stellen. Somit bleibt Ihnen die freie Auswahl zwischen einem
 
dieser Programme.
 
Das Debian-Paketsystem überwacht zu jeder Zeit alle diese Abhängigkeiten und sorgt dafür, daß Ihr System in
 
einem sicheren, lauffähigen Zustand bleibt.
 
4.2. dselect
 
Im Laufe der Basisinstallation von Debian GNU/Linux konnten Sie aus einigen vorab zusammengestellten
 
Konfigurationen ein System auswählen. Die ausgewählten Pakete wurden aber noch nicht installiert. Im
 
folgenden wird die Bedienung von dselect beschrieben und die fehlenden Pakete installiert.
 
Starten Sie nun das Programm dselect.
 
135
 
Kapitel 4. Installation weiterer Pakete
 
Abbildung 4-1. dselect Startbild
 
Wenn Sie dselect zum ersten Mal aufrufen, ist es unbedingt notwendig, die ersten vier Menüpunkte (Access,
 
Update, Select und Install) genau in dieser Reihenfolge aufzurufen.
 
4.2.1. Access
 
Mit diesem Menüpunkt legen Sie fest, von welchem Medium Sie die weiteren Pakete installieren wollen. Sie
 
finden hier auch einen Eintrag für das Programm apt, welches im nächsten Abschnitt beschrieben wird. Dieses
 
sollte auch mit dselect die bevorzugte Installationsmethode sein.
 
Abbildung 4-2. dselect - access
 
136
 
Kapitel 4. Installation weiterer Pakete
 
Wenn Sie andere Installationsmethoden verwenden wollen, lesen Sie in der Dokumentation zu dselect nach,
 
welche Schritte dazu notwendig sind.
 
4.2.2. Update
 
Update liest die Dateien mit den Paketinformationen ein und erstellt daraus eine Liste der verfügbaren Pakete.
 
Wenn Sie mehrere CDs zur Verfügung haben, werden Sie aufgefordert, diese nacheinander einzulegen.
 
4.2.3. Select
 
Unter diesem Punkt können Sie weitere Pakete zur Installation auswählen. Sie bekommen zuerst eine kurze
 
Hilfe angezeigt, die mit der SPACE-Taste verlassen werden kann. Sie können zu jeder Zeit mit der Taste ? ein
 
Hilfe-Menü aufrufen. Debian GNU/Linux organisiert die Pakete nach verschiedenen Gruppen, wie zum
 
Beispiel base oder x11. Sie können einzelne Pakete oder ganze Gruppen von Paketen mit der Taste +
 
auswählen oder mit der Taste - von der Auswahl ausschliessen.
 
Debian GNU/Linux umfaßt einige Pakete, die unbedingt zum reibungslosen Betrieb benötigt werden, zum
 
Beispiel die bash oder login. Diese Pakete können natürlich nicht entfernt werden. Wenn diese Pakete fehlen
 
würden, würde Ihr System unbenutzbar werden.
 
Abbildung 4-3. dselect - select
 
Debian GNU/Linux überprüft schon bei der Auswahl von Paketen die Abhängigkeiten zwischen den mit +
 
markierten Paketen. Sollte es zu Problemen kommen, sei es weil Pakete sich im Betrieb stören würden oder
 
weil ein anderes Paket unbedingt zur Installation des gewählten Paketes benötigt wird, so wird das
 
Installationsprogramm Sie darauf hinweisen. Zwingend benötigte Pakete werden schon ausgewählt,
 
überflüssige Pakete abgewählt. Weiterhin werden Ihnen auch Pakete zur Auswahl angeboten, deren Installation
 
im Zusammenhang mit den ausgewählten Paketen sinnvoll ist.
 
Sollten Sie einmal nicht mit dem Vorschlag des Installationsprogramms einverstanden sein, können Sie den
 
Vorschlag des Programms mit der Taste R wieder rückgängig machen.
 
Mit den Tasten o und I können Sie die Ansicht der Paketliste verändern. o Beeinflußt die Sortierung und
 
blendet die Informationen zu den Gruppen ein oder aus, I verändert die Anzeige der Paketinformationen.
 
Normalerweise wird der Bildschirm horizontal zur Hälfte geteilt, wobei in der oberen Hälfte die Paketliste und
 
137
 
Kapitel 4. Installation weiterer Pakete
 
in der unteren Hälfte die Informationen zum gerade ausgewählten Paket zu sehen sind. I verändert die Länge
 
der Paketinformationen oder blendet diese komplett aus.
 
Wenn Sie ein bestimmtes Paket suchen, können Sie mit der Taste / eine Suchroutine aktivieren und einen
 
Suchbegriff eingeben. Mit der Taste \ können Sie den gleichen Begriff noch einmal suchen.
 
Wenn Sie Ihre Paketauswahl abgeschlossen haben, drücken Sie die Eingabetaste, und das
 
Installationsprogramm überprüft noch einmal Ihre Auswahl auf eventuelle Konflikte oder Probleme. Sollten
 
noch Konflikte bei der Auswahl auftreten, so wird Sie das Installationsprogramm darauf hinweisen. Sie können
 
bei Konflikten auch wieder mit den Tasten + und - die Probleme beheben. Wenn Sie es trotz allem nicht
 
schaffen, alle Konflikte zu beseitigen (was bei der Installation von Paketen aus dem Debian
 
GNU/Linux-Entwicklungsbereich unstable passieren kann), so können Sie auch noch bestehende Konflikte
 
mit der Taste Q akzeptieren und den Menüpunkt select verlassen. Dies sollte aber der Ausnahmefall sein.
 
4.2.4. Install
 
Mit diesem Menüpunkt können Sie die ausgewählten Pakete auf Ihrem System installieren. Je nach der
 
Installationsmethode, die Sie unter Access gewählt haben, werden Sie aufgefordert, die passenden CDs
 
einzulegen, oder die Pakete werden übers Netzwerk installiert oder von einer anderen Partition installiert... oder,
 
oder, oder...
 
Die Installation der meisten Pakete erfolgt ohne weitere Rückfragen. Bei einigen Paketen werden aber weitere
 
Angaben benötigt, beispielsweise bei der Installation von exim, welches von Debian GNU/Linux zum
 
Versenden von E-Mail verwendet wird. Auf die wichtigsten solcher Pakete werden wir in den weiteren Kapiteln
 
eingehen, bitte sehen Sie in den entsprechenden Kapitel, nach (exim finden Sie im Kapitel „Internet“, Abschnitt
 
„E-Mail“ beschrieben).
 
4.2.5. Config
 
Sie können diesen Menüpunkt auswählen, wenn es während der Installation von Paketen zu Problemen
 
gekommen ist. Für alle bereits installierten, aber noch nicht konfigurierten Pakete wird die dazugehörige
 
Konfigurationsroutine aufgerufen. Sie können dies aber auch jederzeit aus einer Shell heraus mit dgkp
 
--pending --configure durchführen.
 
4.2.6. Remove
 
Hiermit können Sie Pakete, die Sie unter Select mit der Taste - zum Löschen markiert haben, von Ihrer
 
Festplatte entfernen. Ein großer Vorteil von Debian GNU/Linux ist es, daß mit diesem Verfahren nur die
 
Programme selber entfernt werden, alle Konfigurationsdateien verbleiben auf der Festplatte. Wenn Sie zu einem
 
späteren Zeitpunkt ein Paket, welches Sie schon einmal installiert hatten, wieder installieren, so werden die
 
noch vorhandenen Konfigurationsdateien verwendet.
 
Wenn Sie ein Programm inklusive der Konfigurationsdateien von Ihrem System entfernen wollen, benutzen Sie
 
den Befehl: dgpk --purge irgendeinpaket.
 
4.2.7. Quit
 
Dieser Menüpunkt stellt die höchsten Ansprüche an den Benutzer, wer möchte schon an dieser Stelle das
 
Installationsprogramm beenden...? Also auf keinen Fall die Eingabetaste drücken, bevor die Festplatte gut
 
gefüllt ist...
 
4.2.8. Beispiel: boot-floppies
 
Am Beispiel des Paketes boot-floppies wird nun exemplarisch die Installation von Software vorgestellt.
 
boot-floppies dient zur Erstellung eigener Installationsdisketten für Debian GNU/Linux. Sie werden dieses
 
Paket vielleicht nicht benötigen, es soll aber auch nur als Beispiel dienen, Sie können es später wieder entfernen.
 
138
 
Kapitel 4. Installation weiterer Pakete
 
Starten Sie nun dselect (als Superuser), falls Sie es schon beendet haben. Wählen Sie nun den Punkt „Select“
 
aus und suchen Sie das Paket boot-floppies. Markieren Sie das Paket mit der Taste + zur Installation. Der
 
Entwickler dieses Pakets hat festgelegt, daß es ohne die folgenden Pakete nicht funktionieren wird:
 
• libc6-pic
 
• slang1-pic
 
• sysutils
 
• makedev (>= 1.6-15)
 
• newt0.25
 
• newt0.25-dev
 
• popt
 
• zlib1g
 
• zlib1g-dev
 
• recode
 
• make
 
• gettext
 
• slice
 
• m4
 
• lynx (>= 2.6)
 
• debiandoc-sgml (>= 1.1.10)
 
• man-db
 
• tetex-bin
 
• tetex-extra
 
Weiterhin empfiehlt er, daß die Pakete lynx (>= 2.6) und sgml-tools vorhanden sein sollten. Die Ziffern hinter
 
den Namen sind die Versionsnummer, die das betreffende Paket erfüllen sollte.
 
Wird das Boot-floppies-Paket nun mit dem Pluszeichen ausgewählt, so erscheint das folgende Fenster (in
 
diesem Fall sind die Pakete libc6-dev und newt0.25 schon installiert):
 
dselect - recursive package listing mark:+/=/- verbose:v help:?
 
EIOM Pri Section Package Description
 
_* Opt admin boot-floppie Scripts to create the Debian installation floppy
 
_* Opt devel libc6-pic The GNU C library version 2 (PIC library)
 
_* Opt devel slang1-pic The S-Lang programming library, shared library su
 
_* Opt devel newt0.25-dev Developer’s toolkit for newt windowing library
 
_* Opt devel popt C library for parsing command line parameters
 
*** Std devel libc6-dev The GNU C library version 2 (development files).
 
_* Opt devel slang1-dev The S-Lang programming library, development versi
 
*** Opt base newt0.25 Not Erik’s Windowing Toolkit - text mode windowin
 
Zur Erklärung steht dann im unteren Teil:
 
boot-floppies depends on libc6-pic
 
boot-floppies depends on slang1-pic
 
boot-floppies depends on newt0.25-dev
 
boot-floppies depends on popt
 
Mit großem R kann der Ursprungszustand, also vor Eingabe des Pluszeichens, wieder hergestellt werden. Dies
 
kann sinnvoll sein, wenn Sie versehentlich ein falsches Paket ausgewählt haben oder der Installationsvorgang
 
andere, noch benötigte Pakete entfernen würde:
 
139
 
Kapitel 4. Installation weiterer Pakete
 
dselect - recursive package listing mark:+/=/- verbose:v help:?
 
EIOM Pri Section Package Description
 
__ Opt admin boot-floppie Scripts to create the Debian installation floppy
 
__ Opt devel libc6-pic The GNU C library version 2 (PIC library)
 
__ Opt devel slang1-pic The S-Lang programming library, shared library su
 
__ Opt devel newt0.25-dev Developer’s toolkit for newt windowing library
 
__ Opt devel popt C library for parsing command line parameters
 
*** Std devel libc6-dev The GNU C library version 2 (development files).
 
__ Opt devel slang1-dev The S-Lang programming library, development versi
 
*** Opt base newt0.25 Not Erik’s Windowing Toolkit - text mode windowin
 
Mit großem D werden die Veränderungen, die dselect vorgenommen hat, wieder rückgängig gemacht:
 
dselect - recursive package listing mark:+/=/- verbose:v help:?
 
EIOM Pri Section Package Description
 
_* Opt admin boot-floppie Scripts to create the Debian installation floppy
 
__ Opt devel libc6-pic The GNU C library version 2 (PIC library)
 
__ Opt devel libc6-pic The GNU C library version 2 (PIC library)
 
__ Opt devel slang1-pic The S-Lang programming library, shared library su
 
__ Opt devel newt0.25-dev Developer’s toolkit for newt windowing library
 
__ Opt devel popt C library for parsing command line parameters
 
*** Std devel libc6-dev The GNU C library version 2 (development files).
 
__ Opt devel slang1-dev The S-Lang programming library, development versi
 
*** Opt base newt0.25 Not Erik’s Windowing Toolkit - text mode windowin
 
Mit dem großem U werden die Vorschläge von dselect wiederhergestellt:
 
dselect - recursive package listing mark:+/=/- verbose:v help:?
 
EIOM Pri Section Package Description
 
_* Opt admin boot-floppie Scripts to create the Debian installation floppy
 
_* Opt devel libc6-pic The GNU C library version 2 (PIC library)
 
_* Opt devel slang1-pic The S-Lang programming library, shared library su
 
*** Opt base newt0.25 Not Erik’s Windowing Toolkit - text mode windowin
 
Sie können mit diesen Tasten also die Vorschläge von dselect für das aktuelle Paket akzeptieren oder auch
 
rückgängig machen sowie individuelle Pakete, für die dselect Ihnen nur eine Installationsempfehlung gibt,
 
ebenfalls installieren.
 
Durch die mehrfache Eingabe des kleinen i können Informationen über das aktuelle Paket abgerufen werden.
 
Nach der abschließenden Auswahl betätigen Sie die Return-Taste und gelangen dann zurück zum Hauptmenü.
 
Sie können nun mit „Install“ die gewünschten Pakete installieren.
 
Soweit zur Beschreibung von dselect. Dieses Programm wird in naher Zukunft von apt, beziehungsweise
 
einem auf apt basierendem Programm, abgelöst werden. Im folgenden werden wir Ihnen diese Programme
 
vorstellen.
 
4.3. Apt
 
Apt stellt die nächste Generation der Debian GNU/Linux-Paketverwaltung dar. Die „Backends“, also die
 
Programme im Hintergrund, welche die eigentliche Arbeit verrichten, sind zum großen Teil fertiggestellt. Die
 
„Frontends“, Programme mit einer Benutzeroberfläche, befinden sich noch in der Entwicklung.
 
Zunächst werden wir Ihnen zeigen, wie Sie Apt konfigurieren und mit Hilfe der Kommandozeile Pakete
 
verwalten. Später stellen wir Ihnen einige der Frontends zu Apt vor.
 
140
 
Kapitel 4. Installation weiterer Pakete
 
4.3.1. Apt konfigurieren
 
Wenn Sie Apt bereits über das Programm dselect als Installationsmethode benutzt haben, so haben Sie
 
wahrscheinlich bereits Apt auf Ihre Bedürfnisse angepaßt. Hier noch einige weitergehende Informationen zu
 
Apt:
 
Apt steht für „A Package Tool“, ein Programm also, welches den Systemadministrator (also Sie :-) ) bei der
 
Installation und Verwaltung von Programmen unterstützen soll. Der erste Schritt zur Benutzung von Apt ist die
 
Anpassung der Konfigurationsdatei /etc/apt/sources.list . In dieser Datei befinden sich die
 
Informationen, von welcher Quelle die Pakete geholt werden sollen. Apt unterstützt eine große Zahl
 
verschiedener Installationsquellen. Momentan sind dies: cdrom, file, http und ftp. Jede dieser Quellen
 
wird in einer einzelnen Zeile in der Datei beschrieben. Dabei wird auch die Reihenfolge berücksichtigt, weiter
 
oben stehende Einträge haben eine höhere Priorität. Das Format der Einträge läßt sich wie folgt beschreiben:
 
deb uri distribution [component1] [component2] [...]
 
Ein Eintrag könnte also wie folgt aussehen:
 
deb ftp://ftp.debian.org/debian stable main
 
In der ersten Spalte findet sich der Hinweis auf die Art der Quelle. Mögliche Werte sind hier deb für Debian
 
Pakete im Binärformat (dies ist der gebräuchliste Wert) oder aber deb-src für Pakete die im Quellcode
 
vorliegen. Einträge der letztere Art benötigt man beispielsweise um ein Paket aus den Quellpaketen neu zu
 
übersetzen.
 
Das Feld uri beschreibt die Installationsquelle und den Pfad zum „root-“Verzeichnis der Debian Distribution.
 
Auf einer CD-ROM ist der Pfad im Normalfall das Verzeichnis /debian .
 
Mit dem Feld distribution stellen Sie die gewünschte Version ein, die Sie installieren möchten.
 
Normalerweise wird man sich zwischen stable für die aktuelle, stabile Version oder für unstable, die
 
Entwicklerversion, entscheiden. Wie schon am Anfang dieses Buches beschrieben, bekommt jede
 
Debian-Version einen Namen. Sie können auch diesen Namen hier einsetzen, also slink für die Version 2.1
 
oder potato für die Version 2.2 .
 
Die Felder „component“ werden mit den einzelnen Bereichen der Distribution gefüllt. Hier können
 
beispielsweise: main, contrib, non-free, non-US stehen. Zulässig sind ein oder mehrere Einträge, die durch
 
Leerzeichen voneinander getrennt werden.
 
Nun noch einige genauere Informationen zu den Installationsquellen:
 
file
 
dient zur Benutzung eines Verzeichnisses als Quelle für die Pakete. Dies kann ein lokales oder ein per NFS
 
gemountetes Verzeichnis sein.
 
cdrom
 
benutzt ein lokal installiertes CD-ROM als Installationsquelle. Wenn die Distribution auf mehreren CDs
 
vorliegt, wird auch dies unterstützt. Benutzen Sie das Programm apt-cdrom, um die nötigen Einträge in
 
der Datei /etc/apt/sources.list vorzunehmen, oder benutzen Sie das Programm apt-setup.
 
http
 
benutzt einen HTTP-Server als Installationsquelle. Wenn die Shell-Umgebungsvariable $http_proxy
 
gesetzt ist (im Format: http://server:port/ ), so wird dieser anstelle einer direkten Verbindung zum
 
Server benutzt. Sie können auch Proxy-Server, die eine Authentifizierung verlangen, benutzen. Hierzu ist
 
der Proxy im Format: http://user:pass@server:port/ anzugeben. Bitte beachten Sie, daß die
 
Benutzernamen und Paßwörter auf diesem Wege unverschlüsselt übertragen werden.
 
ftp
 
stellt sicher die am häufigsten verwendete Methode für Apt dar. Die Daten werden per FTP (File Transfer
 
Protocol) auf den Rechner übertragen. Ein Beispiel finden Sie weiter unten.
 
141
 
Kapitel 4. Installation weiterer Pakete
 
copy
 
Diese Methode ist identisch mit der Methode „file“, mit dem Unterschied, daß die Pakete vor der
 
Installation in das Verzeichnis /var/apt/cache/archives/ kopiert werden. Dies kann zum Beispiel
 
auf Systemen Sinn machen, die keine Verbindung zum Netz haben und per ZIP-Medium aktualisiert
 
werden sollen.
 
Hier nun einige Beispiele. Denken Sie daran, daß Sie durchaus mehrere dieser Einträge in der
 
Konfigurationsdatei gleichzeitig verwenden können.
 
deb http://www.debian.org/archive stable main contrib
 
Ein solcher Eintrag benutzt das Archiv auf http://www.debian.org mit den Bereichen stable/main und
 
stable/contrib.
 
Folgender Eintrag holt die Dateien via FTP aus dem Verzeichnis /debian , es wird die noch nicht fertige
 
„unstable“ Version von Debian GNU/Linux benutzt und auf die Bereiche main, contrib und non-free
 
zugegriffen:
 
deb ftp://ftp.debian.org/debian unstable main contrib non-free
 
Nochmal ein ähnlicher Eintrag, diesmal für die stabile Version und lediglich den Bereich main.
 
deb ftp://ftp.debian.org/debian stable main
 
Wenn Sie die beiden vorhergehenden Zeilen in Ihrer Konfiguration einsetzen, werden beide Zeilen in einem
 
FTP-Zugriff bearbeitet.
 
deb file:/home/vincent/debian stable main contrib non-free
 
Ein solcher Eintrag benutzt eine lokale Kopie der Daten auf der Festplatte. Dies kann auch ein per NFS
 
gemountetes Verzeichnis sein.
 
4.3.2. apt-setup
 
Mit apt-setup können Sie über eine Benutzeroberfläche die Einträge in der Datei /etc/apt/sources.list
 
ergänzen. apt-setup kann hierzu die Methoden „http“, „ftp“ und „filesystem“ benutzen, für die Methode
 
„cdrom“ wird auf das Programm apt-cdrom zurückgegriffen. Ein weiteren Menüpunkt („edit sources list by
 
hand“) ruft einen Editor (vi) auf, Sie können dann weitere Einträge von Hand aufnehmen. Nach Verlassen des
 
Editors wird versucht, von den angegebenen Quellen die Package-Dateien zu lesen.
 
Abbildung 4-4. apt-setup
 
142
 
Kapitel 4. Installation weiterer Pakete
 
Als einzige Option kann beim Starten der Wert „probe“ übergeben werden. Dies führt dazu, daß eine eingelegte
 
CD-ROM sofort eingelesen wird.
 
4.3.3. apt-cdrom
 
Dieses Kommando wird von apt-setup zur Integration von neuen CD-ROMs verwendet, kann aber auch
 
eigenständig eingesetzt werden.
 
Im einfachsten Fall führt das Kommando apt-cdrom add dazu das die eingelegte CD mit den entsprechenden
 
Werten in die Datei sources.list aufgenommen wird. Hierzu ist ein entsprechender Eintrag in der Datei
 
/etc/fstab notwendig. Ein solcher Eintrag wird bereits bei der Installation angelegt und muss normalerweise
 
nur bei Veränderungen an der Hardware angepasst werden.
 
Wird apt-cdrom ohne weitere Angaben aufgerufen, so werden Informationen über weitere Optionen
 
ausgegeben.
 
apt 0.5.4 for linux i386 compiled on Aug 19 2001 01:02:40
 
Usage: apt-cdrom [options] command
 
apt-cdrom is a tool to add CDROM’s to APT’s source list. The
 
CDROM mount point and device information is taken from apt.conf
 
and /etc/fstab.
 
Commands:
 
add - Add a CDROM
 
ident - Report the identity of a CDROM
 
Options:
 
-h This help text
 
-d CD-ROM mount point
 
-r Rename a recognized CD-ROM
 
-m No mounting
 
-f Fast mode, don’t check package files
 
-a Thorough scan mode
 
-c=? Read this configuration file
 
-o=? Set an arbitary configuration option, eg -o dir::cache=/tmp
 
See fstab(5)
 
4.3.4. apt-get
 
apt-get ist die eigentliche Benutzerschnittstelle zur Verwaltung von Paketen. Dieses Programm ohne grafische
 
Benutzeroberfläche ist recht einfach zu bedienen. Grafische Alternativen befinden sich in der Entwicklung, dazu
 
später mehr.
 
4.3.4.1. Status-Report
 
Bevor apt-get die gewünschten Aktionen, wie zum Beispiel das Löschen oder die Installation einzelner
 
Pakete, ausführt die das System verändern, werden Sie über den zukünftigen Zustand des Systems informiert.
 
Es werden folgende Informationen angezeigt: die Anzahl der Pakete, die aktualisiert werden (neuere Version),
 
die Anzahl der Pakete, die nicht verändert werden (kept back), die Anzahl der zu löschenden Pakete sowie die
 
Anzahl der neu zu installierenden Pakete.
 
Zusätzlich werden, wenn Sie die Option install benutzen, die Pakete ausgewählt und angezeigt, die aufgrund
 
der Abhängigkeiten der zu installierenden Pakete benötigt werden.
 
The following extra packages will be installed:
 
143
 
Kapitel 4. Installation weiterer Pakete
 
libdbd-mysql-perl xlib6 zlib1 xzx libreadline2 libdbd-msql-perl
 
mailpgp xdpkg fileutils pinepgp zlib1g xlib6g perl-base
 
bin86 libgdbm1 libgdbmg1 quake-lib gmp2 bcc xbuffy
 
squake pgp-i python-base debmake ldso perl libreadlineg2
 
ssh
 
Sollte es notwendig sein, Pakete zu löschen, oder Sie haben selber entschieden, Pakete zu entfernen, so werden
 
auch diese gesondert angezeigt.
 
The following packages will be REMOVED:
 
xlib6-dev xpat2 tk40-dev xkeycaps xbattle xonix
 
xdaliclock tk40 tk41 xforms0.86 ghostview xloadimage xcolorsel
 
xadmin xboard perl-debug tkined xtetris libreadline2-dev perl-suid
 
nas xpilot xfig
 
Sehen Sie sich diese Liste in jedem Fall aufmerksam an. So stellen Sie sicher, daß keine Pakete gelöscht
 
werden, die Sie noch benötigen.
 
Wenn Sie Pakete neu installieren, werden Sie auch darüber informiert:
 
The following NEW packages will installed:
 
zlib1g xlib6g perl-base libgdbmg1 quake-lib gmp2 pgp-i python-base
 
Dies dient nur zu Ihrer Information, diese Pakete sind bisher nicht auf Ihrem System installiert.
 
Bei der Auswahl der Pakete haben Sie die Möglichkeit, einzelne Pakete in der aktuellen Version zu behalten,
 
diese werden nicht aktualisiert (kept back).
 
The following packages have been kept back
 
compface man-db tetex-base msql libpaper svgalib1
 
gs snmp arena lynx xpat2 groff xscreensaver
 
Immer wenn Sie Ihr System mit der Option upgrade aktualisieren, kann es passieren, daß einzelne Pakete nicht
 
aktualisiert werden können, weil sie auf Paketen basieren, die noch nicht in der benötigten Version verfügbar
 
sind, oder aber es gibt Konflikte mit bereits installierten Paketen. In diesem Fall werden die Pakete im aktuellen
 
Zustand gehalten. Sie können apt-get install benutzen, um diese Pakete trotzdem zu aktualisieren.
 
The following held packages will be changed:
 
cvs
 
Wenn Sie ein auf „hold“ gesetztes Paket aktualisieren, bekommen Sie die Meldung, daß dieses Paket verändert
 
(changed) wird. Außer bei apt-get install kann Ihnen diese Meldung auch bei apt-get dist-upgrade
 
begegnen.
 
Abschließend finden Sie noch eine Zusammenfassung über die Anzahl der betroffenen Pakete. Weiterhin wird
 
angezeigt, welches Datenvolumen übertragen werden muß und wieviel Festplattenplatz zusätzlich benötigt wird
 
(oder auch frei wird).
 
206 packages upgraded, 8 newly installed, 23 to remove and 51 not upgraded.
 
12 packages not fully installed or removed.
 
Need to get 65.7M/66.7M of archives. After unpacking 26.5M will be used.
 
Die erste Zeile ist eine knappe Zusammenfassung in Zahlen zu den bereits vorher ausgegebenen Informationen.
 
In der zweiten Zeile finden Sie die nicht installierten Pakete, die bereits entpackt, aber nicht konfiguriert
 
wurden. In der dritten Zeile finden Sie die Informationen über den benötigten Platz und die zu übertragenden
 
Daten. Hierbei steht die erste Zahl für die tatsächlich noch zu übertragenden Daten und die zweite für den
 
Gesamtwert. Wenn bereits Pakete bei einer vorherigen Installation übertragen wurden, aber nicht installiert
 
werden konnten, so werden diese gespeichert und nicht noch einmal übertragen.
 
Wenn Sie nun mit der Installation beginnen (dies müssen Sie bei apt-get install mit einem y anstoßen),
 
werden die Pakete von dem ausgewählten Medium gelesen und installiert.
 
144
 
Kapitel 4. Installation weiterer Pakete
 
4.3.4.2. Status-Anzeige
 
Während des Downloads von Archiven und Paketdateien zeigt apt-get eine Reihe von Informationen an:
 
sushi:/root# apt-get update
 
Get:1 ftp://linux frozen/main Packages [833kB]
 
Get:2 ftp://linux frozen/main Release [93B]
 
Get:3 ftp://linux frozen/contrib Packages [33.4kB]
 
Get:4 ftp://linux frozen/contrib Release [96B]
 
Get:5 ftp://linux frozen/non-free Packages [78.1kB]
 
Get:6 ftp://linux frozen/non-free Release [97B]
 
Get:7 ftp://linux stable/non-US Packages [8880B]
 
Get:8 ftp://linux stable/non-US Release [95B]
 
Fetched 953kB in 12s (74.1kB/s)
 
Reading Package Lists... Done
 
Building Dependency Tree... Done
 
Unmittelbar während des Downloads wird auch der Fortschritt angezeigt, inklusive der voraussichtlich
 
benötigten Zeit für die Übertragung:
 
11% [5 frozen/non-free ‘Waiting for file’ 0/32.1k 0%] 2203b/s 1m52s
 
In den mit Get: beginnenden Zeilen steht die benutzte Methode (hier ftp) und der benutzte Server. Den
 
Servernamen können Sie in einem lokalen Netz auch verkürzt angeben, wie hier mit linux gezeigt. Weiterhin
 
wird der Bereich (frozen und stable) angezeigt sowie die Verzeichnisse ( main, contrib usw.) und die
 
Dateinamen mit der Dateigröße.
 
Bei der Installation von Paketen sieht der Vorgang ähnlich aus:
 
sushi:/root# apt-get install aptitude
 
Reading Package Lists... Done
 
Building Dependency Tree... Done
 
The following NEW packages will be installed:
 
aptitude
 
0 packages upgraded, 1 newly installed, 0 to remove and 3 not upgraded.
 
Need to get 148kB of archives. After unpacking 471kB will be used.
 
Get:1 ftp://ftp.debian.de potato/main aptitude 0.0.4a-3 [148kB]
 
Fetched 148kB in 5s (25.3kB/s)
 
Selecting previously deselected package aptitude.
 
(Reading database ... 22625 files and directories currently installed.)
 
Unpacking aptitude (from .../aptitude_0.0.4a-3_i386.deb) ...
 
Setting up aptitude (0.0.4a-3) ...
 
Hier wird, in der Zeile „Get:“, der Dateiname der zu installierenden Datei angezeigt und danach das Paket
 
entpackt und installiert.
 
4.3.4.3. Optionen und Kommandos
 
apt-get benutzt folgende Syntax:
 
apt-get [options] [command] [package ...]
 
Die Optionen werden Sie sicher seltener benötigen, daher zuerst einige Worte zu den einzelnen Kommandos:
 
check
 
Bei jedem Start von apt (mit der Ausnahme, wenn Sie die Option update benutzen) wird eine Reihe von
 
Prüfungen durchgeführt, um sicherzustellen, daß apt funktionsfähig und Ihr System in einem guten
 
Zustand ist. Sie können diese Prüfungen auch zu jeder Zeit selber anstoßen:
 
sushi:/root# apt-get check
 
Reading Package Lists... Done
 
Building Dependency Tree... Done
 
145
 
Kapitel 4. Installation weiterer Pakete
 
Als erstes werden die Paketdateien anhand der Informationen in /etc/apt/sources.list eingelesen.
 
Wenn Sie diesen Vorgang noch einmal wiederholen, werden Sie feststellen, daß der zweite Test deutlich
 
schneller beendet ist, die Informationen werden von apt gecacht. Für Paketdateien, die nicht gefunden
 
werden, wird ggf. eine Warnung ausgegeben, diese Pakete werden dann ignoriert.
 
Im zweiten Schritt wird eine detaillierte Analyse des Systems durchgeführt, inklusive aller
 
Abhängigkeiten. Es werden von jedem installierten oder bereits entpackten, aber noch nicht konfiguriertem
 
Paket die Abhängigkeiten geprüft. Wenn dabei ein Problem auftaucht, wird dies angezeigt und apt-get
 
bricht die weitere Bearbeitung ab.
 
sushi:/root# apt-get check
 
Reading Package Lists... Done
 
Building Dependancy Tree... Done
 
You might want to run apt-get -f install’ to correct these.
 
Sorry, but the following packages have unmet dependencies:
 
9fonts: Depends: xlib6g but it is not installed
 
uucp: Depends: mailx but it is not installed
 
blast: Depends: xlib6g (>= 3.3-5) but it is not installed
 
adduser: Depends: perl-base but it is not installed
 
aumix: Depends: libgpmg1 but it is not installed
 
debiandoc-sgml: Depends: sgml-base but it is not installed
 
bash-builtins: Depends: bash (>= 2.01) but 2.0-3 is installed
 
cthugha: Depends: svgalibg1 but it is not installed
 
Depends: xlib6g (>= 3.3-5) but it is not installed
 
libreadlineg2: Conflicts:libreadline2 (<< 2.1-2.1)
 
In diesem Beispiel gibt es eine ganze Reihe Probleme, einige Pakete sind gar nicht installiert, oder es sind
 
falsche Versionen installiert. Für jedes einzelne Paket, bei dem ein Problem festgestellt wurde, wird eine
 
Zeile ausgegeben, mit den Informationen, um welches Paket es sich handelt und welches Problem
 
festgestellt wurde.
 
Es gibt zwei Möglichkeiten, wie es zu solchen Problemen kommen kann: Bei einem „Upgrade“ kann es
 
passieren, daß ein benötigtes Paket fehlt, oder aber während der Installation eines Paketes ist ein Problem
 
aufgetreten. Wenn letzteres aufgetreten ist, dann wurde das Paket zwar entpackt, aber nicht korrekt
 
konfiguriert.
 
Beide Situationen können von apt in den meisten Fällen mit der Option -f selbst behoben werden. Wenn
 
Sie dselect mit der Methode apt benutzen, wird immer die Option -f verwendet, um eine einfache
 
Bedienung zu gewährleisten.
 
Trotzdem kann es passieren, daß bei einem schweren Problem apt nicht in der Lage ist, das Problem zu
 
beheben. In diesem Fall müssen Sie von Hand mit dem Programm dpkg den Konflikt beseitigen. Sie
 
können danach mit apt-get fortfahren.
 
update
 
aktualisiert die Übersicht der verfügbaren Pakete, liest also die Informationen aus den Dateien
 
Packages.gz der jeweiligen Distribution ein. Sie sollten update immer ausführen, wenn Sie wissen, daß
 
sich die Inhalte der Paketdateien beziehungsweise die verfügbaren Pakete auf dem Server geändert haben.
 
Auf jeden Fall sollten Sie update vor dem Aufruf von upgrade oder dist-upgrade aufrufen.
 
upgrade
 
Um alle auf dem System installierten Pakete auf die aktuelle Version zu bringen, können Sie upgrade
 
benutzen. Alle bereits installierten Pakete, von denen eine neuere Version verfügbar ist, werden
 
aktualisiert. Es werden keine Pakete gelöscht, die bereits installiert sind (und in den neuen Paketdateien
 
nicht mehr enthalten sind), oder Pakete installiert, die noch nicht auf dem System vorhanden sind. Pakete,
 
die bereits installiert sind und es bei einem Upgrade erforderlich machen, den Status anderer Pakete zu
 
verändern, werden nicht aktualisiert. apt-get update muß vorab ausgeführt werden, so daß
 
sichergestellt ist, daß die Paketinformationen auf dem neuesten Stand sind.
 
146
 
Kapitel 4. Installation weiterer Pakete
 
dist-upgrade
 
ist eigentlich eine Ergänzung oder Erweiterung zu upgrade. Es wird hierbei dafür Sorge getragen, daß für
 
das System wichtigere Pakete zuerst installiert werden. Hierbei werden in engen Grenzen auch
 
Abhängigkeiten verändert, um ein Paket installieren zu können. Dies ist dann notwendig, wenn ein System
 
komplett auf eine neue Version umgestellt werden soll und kein „sanfter“ Übergang gewährleistet werden
 
kann.
 
dselect-upgrade
 
Mit dieser Option werden auch die Paketinformationen „recommends“ und „suggests“ ausgewertet. dies ist
 
sonst nur mittels dselect möglich. Diese Vörschläge für weitere Pakete sind zur Funktion des
 
gewünschten Paketes nicht zwingend erforderlich, können aber durchaus sinnvoll sein.
 
install
 
Diese Option benötigt noch einen oder mehrere Paketnamen. Jedes dieser Pakete (der Paketname, also
 
beispielsweise sendmail, reicht hierbei aus) sowie die noch benötigten Pakete (diese werden automatisch
 
ermittelt) werden auf Basis der Informationen in /etc/apt/sources.list geholt und installiert. Wenn
 
Sie hinter den Namen des Paketes ein Minuszeichen (-) setzen, wird das Paket aus dem System entfernt,
 
wenn es bereits installiert ist. Achten Sie darauf, daß das Minuszeichen direkt nach dem Paketnamen steht,
 
ohne ein Leerzeichen dazwischen. Diese Funktion kann auch bei Konflikten bei der Installation einzelner
 
Pakete sehr nützlich sein, Sie können so Pakete in einem Vorgang löschen und installieren. Die Option
 
„install“ wählt immer die aktuellste verfügbare Version eines Paketes aus. Es kann jedoch sinnvoll sein
 
auch Zugriff auf ältere Programmversionen zu haben. Hierzu kann aber der Version 0.5.3 von apt
 
folgende Syntax verwendet werden: apt-get install sane/unstable. Durch einen Slash getrennt
 
kann hinter dem Paketnamen die gewünschte Release eines Paketes angegeben werden.
 
remove
 
Diese Funktion ist identisch mit der vorherigen, nur mit dem Unterschied, daß die Pakete standardmäßig
 
entfernt werden, statt sie zu installieren. Analog zu dem eben Beschriebenen können Sie hier in
 
Pluszeichen (+) verwenden, um Pakete zu installieren.
 
check
 
dient lediglich zur Diagnose. Es wird überprüft, ob sich irgendwelche Unstimmigkeiten in den Paketen
 
finden.
 
clean
 
Dies löscht das lokale Verzeichnis, in dem sich die zu installierenden Pakete befinden. Alles, mit
 
Ausnahme der lock-Datei, wird aus /var/cache/apt/archives/ und
 
/var/cache/apt/archives/partial/ gelöscht.
 
source
 
Dieses Kommando holt die notwendigen Dateien zur Erzeugung eines Binärpaketes. Es können so
 
angepasste Pakete erzeugt werden oder aber Pakete auf einer anderen Architektur übersetzt werden.
 
Wichtig ist hier bei ein entsprechender „deb-src“ Eintrag in der Datei sources.list. Um alle zu einem
 
Paket gehörenden Dateien von einem Server zu holen, reicht das Kommando apt-get source
 
paketname. Es werden die aktuellen Versionen der Dateien paketname.orig.tar.gz,
 
paketname.dsc und paketname.diff.gz im aktuellen Verzeichnis gespeichert.
 
Um aus den Quellen direkt in Binärpaket zu erzeugen, kann die Option -b angegeben werden. Das
 
komplette Kommando lautet dann apt-get source -b paketname. Wenn die benötigten Source
 
Pakete bereits vorliegen, kann ds Binärpaket auch direkt mit dem Kommando dpkg-buildpackage
 
-rfakeroot -us -uc erzeugt werden.
 
build-dep
 
Die meisten Softwarepakete benötigen bei der Übersetzung aus den Quellpaketen weiter
 
Entwicklungspakete wie Librarys und Header Dateien. Diese werden häufig nicht mitgeliefert und liegen
 
147
 
Kapitel 4. Installation weiterer Pakete
 
in gesonderten Paketen vor. Das Debian Paketsystem sieht sogenannte „build dependencies“ vor in denen
 
alle Abhängigkeiten zur Erzeugung eines Paketes beschrieben sind.
 
Das Kommando apt-get build-dep paketname sorgt dafür das alle zur Übersetzung eines Paketes
 
benötigten Dateien auf dem System vorhanden sind.
 
moo
 
Als kleine versteckte Option haben die Entwickler auch noch noch ein sogenanntes „Easter-Egg“
 
eingebaut:
 
fr@nigiri:~$ apt-get moo
 
(__)
 
(oo)
 
/------\/
 
/ | ||
 
* /\---/\
 
~~ ~~
 
...."Have you mooed today?"...
 
Soweit zu den Parametern. Sie können noch folgende Optionen benutzen um apt-get zu steuern.
 
-h
 
Zeigt die Hilfe zu apt-get an.
 
-m
 
Ignoriere eventuell fehlende Pakete
 
-d
 
Holt die gewünschten Pakete vom Server, ohne diese zu installieren.
 
-f
 
Behebt die defekten Abhängigkeiten zwischen den Paketen. apt-get -f install versucht, diese
 
automatisch zu reparieren.
 
-s
 
Simulation, führt keine Aktionen aus.
 
-u
 
Zeigt auch die zu aktualisierenden Pakete an.
 
-y
 
Aktualisiert alle Pakete automatisch indem alle Fragen mit „Yes“ beantwortet werden.
 
Hier nun ein Beispiel aus der Praxis zur Benutzung von Apt:
 
Beachten Sie bitte, daß Pakete nur mit Superuser-Rechten (root) installiert werden können.
 
Zuallererst muß apt die Informationen über die verfügbaren Pakete erhalten, hierzu dient das Kommando
 
apt-get update.
 
sushi:/root # apt-get update
 
Hit ftp://192.168.0.5 potato/main Packages
 
148
 
Kapitel 4. Installation weiterer Pakete
 
Hit ftp://192.168.0.5 potato/main Release
 
Get:1 ftp://192.168.0.5 potato/non-free Packages [78.6kB]
 
Get:2 ftp://192.168.0.5 potato/non-free Release [99B]
 
Fetched 68.5kB in 0s (104kB/s)
 
Reading Package Lists... Done
 
Building Dependency Tree... Done
 
Nachdem das System nun über den aktuellen Stand der Pakete informiert ist, können Sie weitere Pakete mittels
 
Apt installieren, hier gezeigt am Beispiel von sane:
 
sushi:/root# apt-get install sane
 
Reading Package Lists... Done
 
Building Dependency Tree... Done
 
The following extra packages will be installed:
 
libgimp1 libsane
 
The following NEW packages will be installed:
 
libgimp1 libsane sane
 
0 packages upgraded, 3 newly installed, 0 to remove and 3 not upgraded.
 
Need to get 703kB of archives. After unpacking 1729kB will be used.
 
Do you want to continue? [Y/n]
 
Beachten Sie hierbei, daß automatisch die benötigten Pakete libgimp1 und libsane ausgewählt wurden.
 
Insgesamt werden also drei Pakete installiert. Weiter unten erhalten Sie noch Informationen über den später
 
benötigten Plattenplatz der Pakete sowie über die Größe der Pakete, die ja eventuell via FTP erst übertragen
 
werden müssen. Wenn Sie mit den Angaben so einverstanden sind, bestätigen Sie dies mit der Eingabetaste,
 
oder drücken Sie die Taste n und danach die Eingabetaste, um den Vorgang zu beenden.
 
Wenn mehrere Pakete gleichzeitig installiert werden sollen, so können diese einfach hintereinander auf der
 
Kommandozeile angegeben werden.
 
4.3.5. apt - Offline nutzen
 
Normalerweise wird apt mit einem direkten Zugriff zu einem Archiv benutzt, sei es daß die Daten auf einer
 
lokalen Festplatte liegen oder von einer CD-ROM kommen oder über ein Netzwerk installiert werden sollen.
 
Trotzdem kann es sinnvoll sein, wenn Sie keine aktuellen CDs zur Hand haben oder Ihnen der Download der
 
Dateien zu langwierig ist, die Daten auf einem anderen Medium, zum Beispiel ein ZIP, von einem Rechner mit
 
den aktuellen Paketen zu kopieren und zu installieren.
 
Problematisch ist dabei, daß ein solches Medium nicht ausreicht, um eine komplette Debian-Distribution
 
aufzunehmen. Aber es reicht ja auch aus, nur die benötigten Pakete zu kopieren. Sie müssen also mittels apt
 
eine Liste der benötigten Pakete erstellen und diese auf dem Rechner mit einer schnellen Anbindung ans Netz
 
downloaden. Für den Download der Dateien ist das Programm wget gut geeignet.
 
Weiterhin müssen Sie apt dazu bringen, die Paketdateien von dem neuen Medium zu lesen. Dieses sollte mit
 
einem Dateisystem formatiert sein, welches mit langen Dateinamen umgehen kann; dies wären zum Beispiel:
 
ext2, vfat oder fat32.
 
4.3.5.1. apt, auf beiden Rechnern
 
Wenn apt auf beiden Rechnern installiert ist, können Sie über die Statusdatei (status) feststellen lassen,
 
welche Pakete auf dem Zielrechner fehlen. Die Verzeichnisstruktur auf dem Medium sollte wie folgt aussehen:
 
/medium/
 
archives/
 
partial/
 
lists/
 
partial/
 
status
 
sources.list
 
apt.conf
 
149
 
Kapitel 4. Installation weiterer Pakete
 
4.3.5.2. Die Konfigurationsdatei
 
In der Konfigurationsdatei teilen Sie apt mit, daß die Debian-Pakete auf dem Medium zu speichern sind und
 
daß dort auch die Konfigurationsdateien zu finden sind. Die Datei sources.list sollte den Server enthalten,
 
von dem die Pakete geholt werden sollen. Die Datei status ist eine Kopie der Datei
 
/var/lib/dpkg/status von Ihrem Zielrechner.
 
Die Datei apt.conf enthält die nötigen Informationen, um das Medium zu benutzen:
 
APT
 
{
 
/* nur notwendig, wenn die beiden Rechner nicht die gleiche Architektur haben */
 
Architecture "i386";
 
Get::Download-Only "true";
 
};
 
Dir
 
{
 
/* die status-Datei auf dem Medium nutzen. */
 
State "/medium/";
 
State::status "status";
 
/* auf dem Medium cachen */
 
Cache::archives "/medium/archives/";
 
/* da ist auch die Datei sources.list */
 
Etc "/medium/";
 
};
 
Auf Ihrem Zielrechner mounten Sie zuerst das Medium und kopieren die Datei /var/lib/dpkg/status
 
dorthin. Erzeugen Sie dann die Verzeichnisse, die oben in der Struktur gezeigt sind (archives/partial/ und
 
lists/partial/).
 
Die weiteren Schritte können Sie auf dem zweiten Rechner durchführen. Passen Sie die Datei sources.list
 
an. Dann führen Sie folgendes auf diesem Rechner aus:
 
export APT_CONFIG="/medium/apt.conf"
 
apt-get update
 
apt-get dist-upgrade
 
Sie können auch alle anderen apt-Optionen oder auch gnome-apt benutzen.
 
Wenn alle Dateien auf das Medium übertragen wurden, können Sie diese zu Ihrem Zielrechner transportieren
 
und die Pakete wie folgt installieren:
 
export APT_CONFIG="/medium/apt.conf"
 
apt-get check
 
apt-get --no-d -o dir::etc::status=/var/lib/dpkg/status dist-upgrade
 
Bitte beachten Sie, daß hierbei wieder die lokale status-Datei benutzt wird!
 
4.3.5.3. Kopieren der Dateien mit wget
 
Wenn Sie nicht die Möglichkeit haben, die Dateien auf einem Rechner mit apt aus dem Netz zu kopieren,
 
können Sie alternativ auch das Programm wget benutzen. Dieses ist nicht Teil der Debian
 
GNU/Linux-Basisinstallation, Sie müssen also zunächst das Paket installieren.
 
wget dient zum Kopieren von Webseiten inklusive der dazugehörigen Grafiken und eventueller weiterer mit
 
dieser Seite verlinkten Seiten. Wir werden wget aber zum gezielten Kopieren der benötigten Debian-Pakete von
 
einem Server benutzen.
 
150
 
Kapitel 4. Installation weiterer Pakete
 
Sie können die Pakete mittels wget kopieren, indem Sie apt-get mit der Option -*-print-uris dazu
 
benutzen, um eine Liste der benötigten Pakete mit der kompletten URL für wget zu erzeugen.
 
Entgegen dem eben vorgestellten Beispiel brauchen Sie hier keine extra Konfigurationsdateien (außer natürlich
 
der Datei /etc/apt/sources.list, welche von apt benötigt wird). Führen Sie die folgenden Kommandos
 
auf dem Rechner aus, auf dem die Pakete später installiert werden sollen.
 
apt-get dist-upgrade
 
apt-get -qq --print-uris dist-upgrade > uris
 
awk ’{print "wget -O " $2 " " $1}’ < uris > /medium/wget-script
 
Drücken Sie „n“ nach dem ersten Kommando und prüfen Sie, daß die Auswahl korrekt ist. Die benötigten
 
Pakete wurden nun zur späteren Installation markiert. In der zweiten Zeile wird mit apt-get und den
 
entsprechenden Optionen eine Liste der zu installierenden Pakete erzeugt und in die Datei uris geschrieben.
 
Das letzte Kommando ergänzt die Liste der Pakete um die nötigen Aufrufe des Kommandos wget.
 
Die Datei /medium/wget-script enthält nun eine Liste mit Kommandos, welche die benötigten Pakete aus
 
dem Netz holen. Sie können dieses jetzt auf dem Medium ausführen:
 
cd /medium
 
sh -x ./wget-script
 
Hierbei ist es unerheblich, ob das Transportmedium sich noch in dem Rechner befindet, auf dem die Pakete
 
installiert werden sollen (was keinen Sinn machen würde, Sie könnten sich den Umweg über wget dann
 
sparen), oder ob Sie das Medium in einem Rechner mit einer besseren Netzanbindung anmelden und dort das
 
Script ausführen. Die Pakete werden lediglich auf das Medium übertragen und nicht installiert.
 
Wenn alle Dateien übertragen wurden, können Sie das Medium zu Ihrem Zielrechner transportieren und die
 
Pakete mit folgendem Kommando installieren:
 
apt-get -o dir::cache::archives="/medium/" dist-upgrade
 
4.3.6. apt-cache
 
Mit apt-cache können die verschiedensten Abfragen zu den bekannten Paketen (also auch zu den noch nicht
 
installierten) erstellt werden. Dies beschränkt sich nicht nur auf Paketnamen oder die zu einem Paket
 
gehörenden Dateinamen sondern es können auch Informationen zu den Metadaten erfragt werden.
 
Wenn Sie nicht die Option -h oder --help benutzen muß mindestens eines der folgenden Kommandos
 
angegeben werden.
 
add
 
fügt die angegebene Package-Datei dem Package-Cache hinzu.
 
gencaches
 
diese Option bewirkt das gleiche wie apt-get check. Es werden die Source und Package Caches aus
 
den Informationen in /etc/apt/sources.list und /var/lib/dpkg/status erstellt.
 
showpkg
 
diese Option zeigt Informationen über die weiterhin auf der Kommandozeile angegebenen Pakete. Es
 
werden die verfügbaren Versionen der Pakete sowie die gesammten Abhängigkeiten dieser Pakete
 
angezeigt. Hierbei wird zwischen sogenannten „forward“-Dependencies und „reverse“-Dependencies
 
unterschieden. Forward-Dependencies (dies sind die im normalen Sprachgebrauch verwendeten
 
Abhängigkeiten) beziehen sich auf die Pakete die das angefragte Paket benötigt um einwandfrei zu
 
funktionieren. Reverse-Dependecies beschreiben die Pakete die das angefragte Paket benötigen um zu
 
funktionieren. Ein Beispiel: apt-cache showpkg bash gibt folgendes Ergebnis aus:
 
151
 
Kapitel 4. Installation weiterer Pakete
 
Package: bash
 
Versions:
 
2.05a-12(/var/lib/apt/lists/192.168.1.1_home_ftp_debian_dists_sid_
 
main_binary-i386_Packages)(/var/lib/dpkg/status)
 
2.05a-11(/var/lib/apt/lists/192.168.1.1_home_ftp_debian_dists_woody_
 
main_binary-i386_Packages)
 
Reverse Depends:
 
kernel-patch-ltt,bash 2.0
 
kernel-patch-lkcd,bash 2.0
 
kernel-patch-kdb,bash 2.0
 
kernel-patch-acl,bash 2.0
 
horde2,bash
 
cron-apt,bash 2.03-6
 
common-lisp-controller,bash 2.04-9
 
cdcontrol,bash 2.0
 
bash-doc,bash 2.03-1
 
bash-builtins,bash 2.05a-12
 
base-files,bash 2.03-3
 
txt2regex,bash 2.04
 
openmosix,bash 2.0
 
mosix,bash 2.0
 
mkrboot,bash
 
mason,bash
 
kernel-patch-ulog,bash 2.0
 
kernel-patch-ttl,bash 2.0
 
kernel-patch-ltt,bash 2.0
 
kernel-patch-kiobuf-bigmem,bash 2.0
 
kernel-patch-kiobuf,bash 2.0
 
kernel-patch-kdb,bash 2.0
 
kernel-patch-irc,bash 2.0
 
kernel-patch-badram,bash 2.0
 
htmlheadline,bash 2.04-1
 
horde,bash 2.03-6
 
gopherweblink,bash
 
gibraltar-bootsupport,bash
 
foomatic-bin,bash 2.05
 
diffmon,bash 2.0
 
cron-apt,bash 2.03-6
 
common-lisp-controller,bash 2.04-9
 
colorgcc,bash
 
cdcontrol,bash 2.0
 
bug,bash 2.04-1
 
bash-doc,bash 2.03-1
 
bash-builtins,bash 2.05a-11
 
base-files,bash 2.03-3
 
Dependencies:
 
2.05a-12 - base-files (2 2.1.12) libc6 (2 2.2.4-4) libncurses5 (2 5.2.20020112a-1) grep-dctrl (2.05a-11 - base-files (2 2.1.12) libc6 (2 2.2.4-4) libncurses5 (2 5.2.20020112a-1) bash-completion Provides:
 
2.05a-12 -
 
2.05a-11 -
 
Reverse Provides:
 
Es müssen also, damit dieses Paket funktioniert, mindestens die unter „Dependencies:“ aufgeführten
 
Pakete installiert sein. Eine weitere wichtige Information sind die „Reverse Depends:“. Dies sind Pakete
 
die von diesem Paket (bash) abhängen.
 
152
 
Kapitel 4. Installation weiterer Pakete
 
stats
 
Es wird eine Statistik über den aktuellen Cache ausgegeben. Es sind keine weiteren Argumente notwendig.
 
Folgende Informationen werden ausgegeben:
 
fr@sushi:~$ apt-cache stat
 
Total Package Names : 8953 (358k)
 
Normal Packages: 6872
 
Pure Virtual Packages: 259
 
Single Virtual Packages: 176
 
Mixed Virtual Packages: 115
 
Missing: 1531
 
Total Distinct Versions: 9133 (438k)
 
Total Dependencies: 47613 (1143k)
 
Total Ver/File relations: 19322 (309k)
 
Total Provides Mappings: 1889 (37.8k)
 
Total Globbed Strings: 110 (1273)
 
Total Dependency Version space: 179k
 
Total Slack space: 86.3k
 
Total Space Accounted for: 2374k
 
Total Package Names Anzahl der Paketnamen die im Cache gefunden wurden
 
Normal Packages Dies sind Pakete deren Namen in einer Abhängigkeit zu einem anderen Paket stehen,
 
hierunter fällt eine große Zahl der Pakete.
 
Pure Virtual Packages Anzahl der „virtuellen“ Paketnamen im Cache. Dies sind Pakete die ein Paket zur
 
Verfügung stellen, deren Name aber nicht mit diesem zu tun hat, als Beispiel sein hier
 
mail-transport-agent genannt, einige Pakete (beispielsweise exim, qmail und sendmail) stellen
 
das Paket mail-transport-agent zur Verfügung, es gibt aber kein Paket mit dem Namen
 
mail-transport-agent.
 
Single Virtual Packages Dies ist die Anzahl der Pakete die ein virtuelles Paket zur Verfügung stellen, dies
 
aber nur einmalig im Cache auftaucht. Das virtuelle Paket X11-text-viewer wird beispielsweise nur von
 
xless zur Verfügung gestellt.
 
Mixed Virtual Packages Anzahl der Pakete die sowohl als virtuelle als auch als reale Pakete vorhanden
 
sind. debconf ist als reales Paket vorhanden, wird aber auch von debconf-tiny zur Verfügung gestellt.
 
Missing Pakete die in einer Abhängigkeit benannt werden, aber nicht im Cache zu finden sind. Dies kann
 
vorkommen wenn kein Zugriff auf eine komplette Debian Distribution gegeben ist oder wenn Pakete aus
 
der Distribution entfernt wurden.
 
Total Distinct Versions Die Anzahl der Paketversionen im Cache. Diese ist im Normalfall gleich der
 
Anzahl der gesamten Pakete. Wenn jedoch zwei Distributionen (beispielsweise „stable“ und „testing“)
 
benutzt werden, kann es vorkommen das mehrere Versionen eines Paketes verfügbar sind. In diesem Fall
 
kann die Zahl deutlich über der der gesamten Pakete liegen.
 
Total Dependencies Die Anzahl der gesamten Abhängigkeiten zwischen allen Paketen im Cache.
 
Total Ver/File relations
 
Total Provides Mappings
 
Total Globbed Strings
 
Total Dependency Version space
 
Total Slack space
 
Total Space Accounted for
 
dump
 
Zeigt eine kurze Information zu jedem Paket an, dies ist für den normalen Benutzer wenig sinnvoll und ist
 
zur Fehlersuche für Entwickler gedacht.
 
153
 
Kapitel 4. Installation weiterer Pakete
 
dumpavail
 
Zeigt eine Liste der verfügbaren Pakete.
 
unmet
 
Zeigt eine Zusammanfassung aller nicht erfüllten Abhängigkeiten.
 
show
 
Hat einen ähnliche Effekt wie das Kommando dpkg --print-avail und zeigt die Paketinformationen
 
für die angegebenen Pakete.
 
search
 
Führt eine Volltextsuche über alle verfügbaren Paketdateien durch. Es können Reguläre Ausdrücke benutzt
 
werden. Es werden die Paketnamen und Beschreibungen nach dem Suchbegriff durchsucht und es wird der
 
Paketname und die Kurzbeschreibung der entsprechenden Pakete ausgegeben. Wenn die Option --full
 
angegeben wird, entspricht die Ausgabe der von show. Mit der Option --names-only wird die
 
Paketbeschreibung nicht durchsucht, die Suche beschränkt sich auf den Paketnamen.
 
Mehrere Suchargumente können angegeben werden und werden dann über eine UND-Verknüpfung
 
ausgewertet.
 
depends
 
Zeigt alle Abhängigkeiten eines Paketes an. Weiterhin werden alle anderen Pakete angezeigt die die
 
geforderten Abhängigkeiten erfüllten können.
 
fr@wasabi@sushi:~$ apt-cache depends bash
 
bash
 
Depends: base-files
 
PreDepends: libc6
 
PreDepends: libncurses5
 
Suggests: grep-dctrl
 
Conflicts: <bash-completion>
 
Replaces: bash-doc
 
Replaces: <bash-completion>
 
policy
 
Die Option policy zeigt zu einem Paket die installierte sowie die verfügbaren Versionen aus den
 
erreichbaren Quellen an.
 
fr@nigiri:~$ apt-cache policy bash
 
bash:
 
Installed: 2.05b-5
 
Candidate: 2.05b-5
 
Version Table:
 
*** 2.05b-5 0
 
500 ftp://ftp.freenet.de sid/main Packages
 
100 /var/lib/dpkg/status
 
2.05b-3 0
 
500 ftp://ftp.freenet.de testing/main Packages
 
500 ftp://ftp.freenet.de sarge/main Packages
 
2.05a-11 0
 
500 ftp://ftp.freenet.de woody/main Packages
 
154
 
Kapitel 4. Installation weiterer Pakete
 
pkgnames
 
Zeigt eine Liste aller Paketnamen. Optional kann eine Zeichenkette angegeben werden die als Suchprefix
 
verwendet wird.
 
dotty
 
Dieser Option kann eine Liste von Paketnamen mitgegeben werden. Die Ausgabe erfolgt in einem Format
 
welches vom Programm dotty aus dem Paket GraphVis (http://www.research.att.com/sw/tools/graphviz/)
 
gelesen werden kann. So kann eine grafische Darstellung der Paketabhängigkeiten erstellt werden.
 
Normalerweise werden alle Abhängigkeiten verfolgt, was zu sehr großen Dateien führen kann. Dies kann
 
mit der Option APT::Cache::GivenOnly in der Datei /etc/apt/config deaktiviert werden.
 
4.3.7. apt-proxy
 
apt-proxy ist ein Cache der zusammen mit APT von allen Debian Systemen aus im Netz genutzt werden
 
kann. Lokale Netzwerke verfügen normalerweise über eine höhere Bandbreite wie für das gesammte Netz nach
 
aussen ins Internet zur Verfügung steht. Durch einen gemeinsam genutzten Cache können bereits auf einem
 
System installierte Pakete auch allen anderen Systemen verfügbar gemacht werden, ohne das diese Pakete
 
nochmals aus dem Internet geholt werden.
 
apt-proxy kann als Cache effizienter mit Debian Paketen umgehen wie beispielsweise Squid. Dies liegt zum
 
einen daran das apt-proxy die Paketdateien auswertet und alte Versionen löscht die nicht mehr benötigt
 
werden. Zum anderen verwendet apt-proxy zur Übertragung von Dateien das Programm rsync, so daß
 
abgebrochene Downloads fortgesetzt werden können. Alternativ können auch die Protokolle HTTP und FTP
 
zum Download genutzt werden.
 
Nach der Installation muss zunächst in der Datei apt-proxy.conf ein gut erreichbarer Debian Server
 
eingetragen werden, von diesem werden dann alle Pakete geholt. Auf alle Clients die den APT Proxy benutzen
 
sollen ist die Konfiguration so anzupassen das der Rechner auf dem apt-proxy installiert ist als Quelle
 
verwendet wird. apt-proxy läuft auf dem Port 9999, die Einträge in der Datei sources.list auf den Clients
 
müssen folgendes Format haben
 
deb http://SERVER:9999/main woody main contrib non-free
 
deb http://SERVER:9999/non-US woody/non-US main contrib non-free
 
deb-src http://SERVER:9999/main woody main contrib non-free
 
deb-src http://SERVER:9999/non-US woody/non-US main contrib non-free
 
Hierbei ist zu beachten das „SERVER“ durch den entsprechenden Rechnernamen/IP Nummer ersetzt wird.
 
Nachdem diese Anpassungen vorgenommen worden sind, wird auf einem der Clients das Kommando apt-get
 
update aufgerufen um auf dem Server die Verzeichnisse zu initialisieren und die Paketlisten verfügbar zu
 
machen. Nun können alle Clients diesen zentralen Dienst transparent nutzen.
 
Wenn bereits auf dem Server ein Verzeichnis mit Debian Paketen vorliegt, so kann dies mittels
 
apt-proxy-import in den Cache von apt-proxy integriert werden.
 
4.3.8. apt-move
 
apt-move ist ein Shell-Skript mit dem eine Anzahl von lokal vorliegenden Debian Paketen in eine
 
Verzeichnisstruktur verschoben werden kann die wiederrum einem Debian Archiv entspricht. Die Dateien
 
werden dabei in einer Verzeichnisstruktur unterhalb von $LOCALDIR/pool/... abgelegt, die Variable
 
$LOCALDIR kann dabei in der Konfigurationsdatei festgelegt werden. Hauptsächlich wurde apt-move
 
entwickelt um via apt-get aus dem Netz übertragene Dateien aus dem Datei-Cache in ein Debian-Archiv zu
 
übernehmen, die Konfiguration kann jedoch so angepasst werden das jede beliebige Sammlung von Paketen
 
(beispielsweise von CD-ROMs) dem Archiv hinzugefügt werden kann.
 
155
 
Kapitel 4. Installation weiterer Pakete
 
Weiterhin besteht die Möglichkeit mittels der Optionen sync und mirror eine Kopie, auch von Teilen, eines
 
Debian Servers zu erstellen. Auch können überflüssige, veraltete Pakete gelöscht werden und es können lokale
 
Packages.gz und Sources.gz Dateien erzeugt werden.
 
apt-move kennt eine ganze Reihe von Kommandos und Optionen:
 
$Id: apt-move,v 1.79 2002/10/23 22:16:33 herbert Exp $
 
Usage: apt-move [-c conffile] [-d dist] [-fqt] COMMAND
 
Commands:
 
get - update your master files from local apt.
 
getlocal - alias of get.
 
fsck - fix broken repositories, use with caution.
 
move - move cache files into mirror tree.
 
movefile - move files specified on the command line.
 
delete - delete obsolete packages.
 
packages - create new local Packages files.
 
update - alias for ’get move delete packages’.
 
local - alias for ’move delete packages’.
 
localupdate - alias for ’getlocal move delete packages’.
 
mirror - update your local mirror from remote rsync site.
 
sync - same as mirror, but only gets packages that
 
you currently have installed on your system.
 
exclude - prints a list of all packages EXCLUDED from the
 
mirror by the .exclude file (ignores -t).
 
listbin - prints lists of packages which can serve as the
 
input to mirrorbin. Takes the arguments mirror,
 
sync, or repo.
 
listsrc - same as listbin, but lists source packages.
 
mirrorbin - same as mirror, but gets the packages specified
 
on stdin.
 
mirrorsrc - same as mirrorbin, but gets source packages.
 
Options:
 
-c Specify an alternative configuration file.
 
-d Override the DIST setting.
 
-f Override the MAXDELETE setting (use with caution).
 
-q Be quiet; suppress normal output.
 
-t Show what apt-move would do, but do not actually do anything.
 
See the apt-move(8) manpage for further details.
 
Bevor apt-move eingesetzt werden kann, ist die Konfigurationsdatei /etc/apt-move.conf anzupassen.
 
Diese Datei ist, wie alle Konfigurationsdateien auf einem Debian System, recht gut kommentiert. Wichtig ist es
 
die Optionen APTSITES (entsprechend den Einträgen in der Datei /etc/apt/sources.list), LOCALDIR und
 
DIST anzupassen. Diese beschreiben die Server von denen die Dateien geholt werden sollen, die lokalen
 
Bereich in dem die Pakete gespeichert werden sollen und die gewünschte Distribution.
 
Nach der Anpassung dieser drei Optionen wird apt-move zumindest keinen größeren Schaden anrichten....
 
;-). Weitere Anpassungen können später noch vorgenommen werden, beispielsweise ist es sinnvoll nach
 
einiger Zeit nicht mehr benötigte Dateien zu löschen, dies wird durch setzen der Option DELETE auf yes
 
erreicht.
 
In jedem Fall sollten die ersten Versuche mit apt-move immer den Parameter -t beinhalten, dieser testet nur
 
die Einstellungen und es werden keine Aktionen durchgeführt.
 
Sollen bestimmte Dateien (beispielsweise Kernel-Sourcen) ausgeschlossen werden, so können diese in einer
 
Exclude-Datei festgelegt werden. Ein Beispiel für eine solche Datei findet sich unter
 
/usr/share/doc/apt-move/examples/SAMPLE.exclude.
 
156
 
Kapitel 4. Installation weiterer Pakete
 
4.3.9. apt-ftparchive
 
apt-ftparchive erzeugt Index Dateien die von APT benutzt werden können um auf ein Paketverzeichnis
 
zuzugreifen. Die Funktionalität ist vergleichbar mit der von dpkg-scanpackages und dpkg-scansources
 
und kann diese Programme ersetzen.
 
Die wichtigsten Kombinationen sind:
 
packages binarypath [overridefile [pathprefix]]
 
sources srcpath [overridefile [pathprefix]]
 
contents path
 
generate config [groups]
 
clean config
 
4.3.10. apt-show-source
 
Dieses Programm vergleicht die APT Listen mit Source Dateien sowie das dpkg Status File und zeigt auf von
 
welchen Paketen höhere Versionsnummer wie bereits installiert verfügbar sind. Um festzustellen welche
 
Version die Sourcen eines Programmes haben, müssen natürlich entsprechende Einträge in der sources.list
 
vorhanden sein. Hierbei ist auch darauf zu achten welche Release (potato, woody usw.) in den jeweiligen Zeilen
 
angegeben ist.
 
fr@wasabi:~$ apt-show-source -p bash
 
Sorry, no newer source package available for bash
 
In diesem Beispiel ist keine aktuellere Version dieses Pakete als Source Paket verfügbar. Zeigt jedoch die
 
„deb-src“ Zeile auf eine ältere Release, so kann durchaus der Fall eintreten das das Source Paket auf einem
 
älteren Stand ist.
 
fr@wasabi:~$ apt-show-source -p bash
 
Inst. Package (Version) | Newest Source Package (Version)
 
-------------------------------------------------------------------------------
 
bash (2.05a-12) | bash (2.05a-11)
 
4.3.11. apt-show-versions
 
Dieses Kommando zeigt die aktuell installierten Pakete, die Version und die Release an. Mittels der Option -p
 
kann nur ein bestimmtes Paket angegeben werden, -r erlaubt die Filterung mittels Wildcard. Die Option -u
 
zeigt alle Pakete die aktualisiert werden können.
 
fr@surimi:~$ apt-show-versions -h
 
Apt-Show-Versions v.0.02 (c) Christoph Martin
 
Usage:
 
apt-show-versions shows available versions of installed packages.
 
Options:
 
-stf|--status-file=<file> Use <file> as the dpkg status file instead
 
of /var/lib/dpkg/status
 
-ld|list-dir=<directory> Use <directory> as path to apt’s list files instead
 
of /var/state/apt/lists/ or /var/lib/apt/lists/
 
157
 
Kapitel 4. Installation weiterer Pakete
 
-p|--package=<package> Print versions for <package>.
 
-r|--regex Read package with -p as regex
 
-u|--upgradeable Print only upgradeable packages
 
-a|--allversions Print all available versions.
 
-b|--brief Short output.
 
-v|--verbose Verbose messages.
 
-h|--help Print this help.
 
fr@surimi:~$ apt-show-versions -r -p kernel*
 
kernel-image-2.4.13-686: No available version
 
kernel-image-2.2.20-udma100-ext3/unstable upgradeable from 2.2.20-6 to 2.2.20-7
 
kernel-source-2.2.20/testing uptodate 2.2.20-5
 
kernel-image-2.4.5-686-smp: No available version
 
kernel-headers-2.2.20-udma100-ext3/unstable uptodate 2.2.20-7
 
kernel-package/unstable uptodate 8.004
 
4.3.12. auto-apt
 
auto-apt dient zur Installation von Programmen „bei Bedarf“. Dies kann beispielsweise bei der
 
Softwareentwicklung oder auch schon beim einfachen übersetzen eines neuen Kernel sinnvoll sein. Mitunter
 
fehlt auf frisch installierten Debian Systemen noch das Paket bin86 welches für das erzeugen eines Kernels
 
benötigt wird. Um automatisch die fehlenden Pakete zu installieren wird einfach dem Aufruf von make das
 
Kommando auto-apt vorangestellt: auto-apt make bzImage. Werden nun während des Durchlaufes
 
fehlende Programme festgestellt, so ermittelt auto-apt zu welchem Paket diese gehören und installiert die
 
fehlenden Pakete inklusive aller Abhängigkeiten.
 
4.3.13. apt-listchanges
 
In den meisten Debian Paketen sind sogenannte „changelog“ Dateien enthalten. In diesen dokumentiert der
 
Betreuer eines Paketes die Änderungen zu vorhergehenden Version. Ein Blick in diese Dateien nach einem
 
Update ist bei der Fehlersuche hilfreich wenn Probleme aufgetreten sind. Beispielsweise können in der neuen
 
Version eines Paketes Dateien an einem anderen Ort liegen oder ein Dienst „horcht“ plötzlich auf einem
 
anderen Port.
 
Da diese Änderungen erst nach der Installation bemerkt werden kann es zu unerwünschten Unterbrechungen im
 
Betrieb kommen. Abhilfe schafft hier das Paket apt-listchanges. Dieses zeigt vor der Installation eines
 
Paketes die Veränderungen die im Changelog dokumentiert sind an, der Administrator hat die Möglichkeit den
 
Installationsvorgang an dieser Stelle abzubrechen.
 
fr@wasabi:~# apt-get install libmng1
 
...
 
Reading changelogs... Done
 
libmng (1.0.3-4) unstable; urgency=low
 
* Build with renamed version of lcms.
 
-- Luis Arocha <data@debian.org> Mon, 3 Jun 2002 18:27:19 +0100
 
apt-listchanges: Mailing changelogs to fr
 
Selecting previously deselected package liblcms1-dev.
 
(Reading database ... 115754 files and directories currently installed.)
 
...
 
158
 
Kapitel 4. Installation weiterer Pakete
 
apt-listchanges wird bei der Installation über Debconf konfiguriert, es kann dort eine E-Mailadresse
 
angegeben werden an die die Changelog Informationen gesendet werden. Weiterhin kann bei der KOnfiguration
 
gewählt werden ,ob nach dem Anzeigen des Changelogs die Installation fortgesetzt werden soll oder, (wie in
 
diesem Beispiel, die Installation abgebrochen werden soll.
 
4.3.14. apt-config
 
MIttels apt-config läßt sich der Inhalt der Datei /etc/apt/config sowie die voreingestellten Werte
 
anzeigen. Weiterhin lassen sich auch einzelne Werte mit diesem Tool setzen.
 
Die Optionen von apt-config lesen sich recht übersichtlich:
 
apt 0.5.4 for linux i386 compiled on Aug 19 2001 01:02:39
 
Usage: apt-config [options] command
 
apt-config is a simple tool to read the APT config file
 
Commands:
 
shell - Shell mode
 
dump - Show the configuration
 
Options:
 
-h This help text.
 
-c=? Read this configuration file
 
-o=? Set an arbitary configuration option, eg -o dir::cache=/tmp
 
apt-config sollte nicht als Kommando eingesetzt werden, es ist eigentlich als Systemkommando für die
 
Verwendung innerhalb von Installations Skripten vorgesehen.
 
4.3.15. console-apt
 
Mit Console-Apt oder auch capt können Sie über eine textbasierte Oberfläche, ähnlich wie bei dselect, die
 
Pakete auf Ihrem System verwalten.
 
Abbildung 4-5. capt - Startbild
 
159
 
Kapitel 4. Installation weiterer Pakete
 
Sie können capt auch als console-apt oder apt-find aufrufen (apt-find war der Vorgänger von capt).
 
capt kann aber auch apt-get ersetzen. Hierzu wurden alle nötigen Kommandozeilenparameter, die von
 
apt-get bekannt sind, auch in capt umgesetzt.
 
-U, \-upgrade
 
Aktualisiert alle installierten Pakete, von denen eine neuere Version verfügbar ist.
 
-u, \-update
 
Aktualisiert die Liste der verfügbaren Pakete.
 
-i, \-install <package>
 
Installiert die gewünschten Pakete und führt ggf. vorher einen Download durch.
 
-r, \-remove <package>
 
Entfernt Pakete aus dem System.
 
-h, \-help
 
Zeigt eine kurze Hilfe zu den verfügbaren Optionen an.
 
-v, \-version
 
Zeigt die Programmversion (von capt an.
 
Mit diesen Parametern haben Sie also die Möglichkeit, alle Funktionen von apt-get nachzubilden. Doch capt
 
kann natürlich noch mehr. Starten Sie capt ohne Parameter und Sie können nun capt über eine textbasierte
 
Oberfläche bedienen. Die wichtigste Taste (zumindest am Anfang) ist das Fragezeichen (?), mit dem Sie eine
 
Übersicht der Tastaturbelegung aufrufen können. Grundsätzlich ist die Bedienung von capt an die auch bei
 
vielen anderen Programmen bekannten Konventionen angelehnt. Wenn Sie sich ein wenig mit more oder vi
 
auskennen, werden Sie sich auch schnell in capt zurechtfinden.
 
Hier eine Übersicht der Tastaturbelegung von capt:
 
RETURN
 
Zeigt die Paketabhängigkeiten (dependencies) an.
 
d
 
Zeigt die Paketbeschreibung (description) an.
 
s
 
Ändert die Sortierung in der Anzeige. Sie können zwischen einer Sortierung nach Namen, nach Sektion
 
und Namen, nach Archivgröße, nach installierter Größe und nach Status und Namen wählen.
 
/
 
Suchen nach Programmnamen.
 
r
 
Setzt die beim Suchen markierten Einträge zurück.
 
n
 
Springt zum nächsten Eintrag, der dem Suchbegriff entspricht.
 
+ oder SPACE
 
Markiert ein Paket zur Installation/Upgrade.
 
160
 
Kapitel 4. Installation weiterer Pakete
 
- oder TAB
 
Markiert ein Paket zum Löschen.
 
U
 
Aktualisiert alle älteren Pakete (Upgrade).
 
c oder BACKSPACE
 
Vervollständigt alle noch offenen Installations- oder Löschvorgänge, bei denen zuvor Probleme aufgetreten
 
sind.
 
u
 
Aktualisiert die Liste der verfügbaren Pakete.
 
R
 
Liste den Cache für Apt neu ein.
 
j oder PFEIL-UNTEN
 
Bewegt den Auswahlbalken zum nächsten Eintrag.
 
k oder PFEIL-OBEN
 
Bewegt den Auswahlbalken zum vorherigen Eintrag.
 
^ oder g
 
Springt an den Anfang der Liste.
 
$ oder G
 
Springt ans Ende der Liste.
 
CTRL+F oder PAGE-UP
 
Springt eine Bildschirmlänge nach oben.
 
CTRL+B oder PAGE-DOWN
 
Springt eine Bildschirmlänge nach unten.
 
[
 
Scrollt in der Paketbeschreibung nach oben.
 
]
 
Scrollt in der Paketbeschreibung nach unten.
 
?
 
Ruft die Hilfeseiten auf.
 
q
 
Beendet das Programm beziehungsweise verläßt die Hilfeseite.
 
4.3.16. aptitude
 
aptitude verfolgt eine etwas andere Philosophie wie dselect. Es wird streng nach installierten, nicht
 
installierten, virtuellen Paketen und Paketen mit einer neueren Version unterschieden. Innerhalb dieser vier
 
Gruppen werden alle Pakete in einer Baumstruktur dargestellt, die auch die Verzeichnisstruktur innerhalb des
 
Debian Archives darstellt, also beispielsweise: main/admin oder non-US/non-free.
 
161
 
Kapitel 4. Installation weiterer Pakete
 
Sie können einzelne Teile der Struktur aufklappen und in den einzelnen Bereichen Pakete auswählen.
 
Abbildung 4-6. aptitude
 
Auch bei aptitude decken sich die meisten Tastaturbelegungen mit dselect beziehungsweise capt.
 
PFEIL-UNTEN
 
Bewegt den Auswahlbalken zum nächsten Eintrag.
 
PFEIL-OBEN
 
Bewegt den Auswahlbalken zum vorherigen Eintrag.
 
RETURN
 
Klappt ein Verzeichnis auf/zu.
 
^
 
Springt zum Verzeichnis zu dem das Paket gehört.
 
+
 
Markiert ein Paket zur Installation. Bitte beachten Sie, daß aptitude momentan noch nicht die
 
Abhängigkeiten prüft! Diese Funktion ist noch nicht realisiert.
 
-
 
Markiert ein Paket zum Löschen. Momentan ist es nicht möglich, das Paket zusammen mit den
 
Konfigurationsdateien über aptitude zu löschen (purge).
 
i
 
Zeigt die Beschreibung des Paketes an.
 
d
 
Zeigt die Abhängigkeiten des Paketes an.
 
162
 
Kapitel 4. Installation weiterer Pakete
 
v
 
Zeigt die verfügbaren Versionen des Paketes an.
 
u
 
Aktualisiert die Liste der verfügbaren Pakete.
 
g
 
Startet die Installation der ausgewählten Pakete.
 
Die Bedeutung der verschiedenen Hintergrundfarben innerhalb des Programms:
 
schwarz
 
„Normalzustand“ eines Paketes. Beim nächsten Installationsdurchlauf wird dieses Paket nicht verändert.
 
Fett geschriebene Pakete sind bereits installiert.
 
rot
 
Paket ist in einem unbrauchbaren Zustand oder kann nicht installiert werden.
 
blau
 
Paket wird mit einer neueren Programmversion aktualisiert.
 
weiß
 
Dieses Paket könnte aktualisiert werden, es wurde aber auf dem aktuellen Stand fixiert (hold).
 
grün
 
Paket wird installiert.
 
magenta
 
Paket wird gelöscht.
 
4.3.17. gnome-apt
 
Dieses Programm passt sich mit seiner GTK+-basierten Oberfläche perfekt in den aktuellen Debian GNOME
 
Desktop ein. Auch mit gnome-apt können Sie alle wichtigen Aufgaben erfüllen, die bei der Paketverwaltung
 
anfallen.
 
163
 
Kapitel 4. Installation weiterer Pakete
 
Abbildung 4-7. GNOME apt
 
Sehen wir uns zunächst die Menüs der Reihe nach an.
 
„File“ – hier finden sich zwei Einträge zur Konfiguration des Programms sowie der Punkt „Quit“, welcher das
 
Programm beendet. „General Preferences“ bietet die Möglichkeit, die Paketbeschreibung im Hauptfenster des
 
Programms auszublenden („Show package details in main window“). Sie haben so mehr Platz, um die Paketliste
 
mit den verschiedenen Kategorien anzeigen zu lassen. Weiterhin können Sie hier die Reihenfolge der Spalten in
 
der Paketliste verändern.
 
Interessanter ist der zweite Eintrag „Sources“. Hier können Sie die Quellen angeben, von denen aus die
 
Paketinformationen sowie die eigentlichen Debian-Pakete installiert werden sollen. An dieser Stelle können Sie
 
zum ersten Mal Abschied vom Texteditor nehmen, um die Datei /etc/apt/sources.list zu bearbeiten.
 
Abbildung 4-8. GNOME apt - source
 
164
 
Kapitel 4. Installation weiterer Pakete
 
Hinter der Schaltfläche „Add source“ verbirgt sich ein Assistent, der Sie durch die notwendigen Einstellungen
 
führt. Ein Bild sagt wie so oft mehr als viele Worte, hier ein Beispiel für die Konfiguration einer neuen
 
Installationsquelle:
 
Abbildung 4-9. GNOME apt - source
 
Im ersten Dialog können Sie die gewünschte Version von Debian GNU/Linux auswählen. Normalerweise wird
 
dies „stable“ für die stabile Version sein. Wenn Sie mit der Entwicklerversion experimentieren wollen, wählen
 
Sie „unstable“, und wenn die Ihnen vorliegenden Pakete in kein Schema passen, steht Ihnen auch noch „other“
 
zur Auswahl.
 
165
 
Kapitel 4. Installation weiterer Pakete
 
Abbildung 4-10. GNOME apt - source
 
Geben Sie hier nun die Adresse an, unter der die Pakete zu finden sind. Dies bezieht sich auf den Punkt im
 
Verzeichnisbaum, an dem sich das Verzeichnis „dists“ befindet. Sie können auch einen bestehenden Eintrag aus
 
der Liste wählen.
 
166
 
Kapitel 4. Installation weiterer Pakete
 
Abbildung 4-11. GNOME apt - source
 
Wählen Sie hier nun eine oder mehrere Optionen aus. Sie bestimmen hier, aus welchen Bereichen der
 
Distribution Pakete installiert werden sollen.
 
Die neue Quelle erscheint danach in der Liste und kann über „Remove source“ wieder entfernt werden oder
 
über „Edit source“ nachträglich verändert werden. Allein diese Funktion wird einigen Nutzern so gut gefallen,
 
daß Sie daraufhin nicht mehr auf gnome-apt verzichten wollen...
 
Hinter dem zweiten Menüpunkt „Actions“ finden Sie die eigentlichen Funktionen, die die notwendigen
 
Aktionen auslösen, die Sie in der Paketliste eingestellt haben. „Update“ liest die Paketdateien neu ein und
 
aktualisiert die Übersicht. Falls die Dateien nicht auf einem lokalen Medium vorliegen (CD-ROM oder
 
Festplatte), werden diese per ftp oder http-Protokoll vom angegebenen Server geholt. „Complete run“ installiert
 
die ausgewählten Pakete beziehungsweise entfernt die nicht mehr gewünschten Pakete aus dem System. „Mark
 
upgrades“ entspricht einem apt-get upgrade und markiert alle neuen Pakete, so daß diese beim nächsten
 
Anwählen von „Complete run“ aktualisiert werden. „Mark smart upgrade“ hingegen dient zur Aktualisierung
 
eines Debian-Systems auf die nächste Version. Dies entspricht einem apt-get dist-upgrade.
 
„Package“ – hier ist der wichtigste Menüpunkt sicherlich „Search“. Hierunter verbirgt sich ein recht mächtiges
 
Werkzeug, um aus der umfangreichen Liste einzelne Pakete zu finden.
 
167
 
Kapitel 4. Installation weiterer Pakete
 
Abbildung 4-12. GNOME apt - suchen
 
Beachten Sie, daß hierbei nicht nur nach Namen von Paketen gesucht wird, sondern auch die
 
Paketbeschreibungen sowie alle anderen verfügbaren Informationen durchsucht werden. Unix-Kundige
 
erreichen sowas auch mit einem geschickten grep auf die passenden Dateien, aber hier steht Ihnen diese
 
Funktion direkt zur Verfügung.
 
Die weiteren Einträge im Menü „Package“ ändern den Status eines Paketes, dies läßt sich aber auch mit einem
 
Mausklick in der Paketliste in der passenden Spalte erreichen.
 
Das nächste Menü – „View“ – erlaubt Ihnen, auf vielfältige Weise die Anzeige der Paketliste zu verändern. Der
 
erste Eintrag „Details“ entspricht der Anzeige der Paketinformationen im Hauptfenster und wird nur benötigt,
 
falls Sie dieses in den Einstellungen für das Hauptfenster ausgeschaltet haben. Hinter dem Menüpunkt
 
„Columns“ können Sie wählen, welche Spalten im Hauptfenster angezeigt werden sollen.
 
Am spannendsten sind die letzten beiden Einträge: hier können Sie sehr detailliert beeinflussen, in welcher
 
Reihenfolge die Pakete in der Paketliste angezeigt werden sollen. Mittels „Group“ beeinflussen Sie die Anzeige
 
der gesamten Pakete. Sie können hier zwischen einer alphabetischen Sortierung, nach Sektion, nach Priorität
 
oder nach Status wählen. Die Sortierung nach Sektion wird Ihnen von dselect her bekannt vorkommen. Dabei
 
werden die Pakete nach ihrer Zugehörigkeit, zum Beispiel „admin“ oder „x11“, angezeigt. Eine Sortierung nach
 
Status wird Ihnen im allgemeinen lediglich die installierten und die noch nicht installierten Pakete anzeigen,
 
also zwei Gruppen. Weiterhin lassen sich die Pakete nach Priorität anzeigen, hierbei wird unterschieden in
 
„Extra“, „Important“, „No version available“, „Optional“, „Required“ sowie „Standard“
 
Der Menüpunkt „Order“ dient der Sortierung innerhalb der eben beschriebenen Gruppen, auch hier können Sie
 
wieder zwischen den oben genannten vier Varianten wählen.
 
Die Einträge im Menü „Advanced“ sind momentan noch ohne Funktion, hier können Sie später Paketlisten imund
 
exportieren. Im Menü „Help“ verbergen sich allgemeine Informationen zu gnome-apt (Eintrag „About...“)
 
sowie eine Übersicht über die Bedeutung der verwendeten Symbole:
 
168
 
Kapitel 4. Installation weiterer Pakete
 
Abbildung 4-13. GNOME apt - Symbole
 
Sie werden gnome-apt normalerweise zur Installation neuer Pakete auf Ihrem System einsetzen. Wählen Sie
 
hierzu im Menü „Actions“ den Eintrag „Update“, um die Paketinformationen zu aktualisieren. Danach wählen
 
Sie die gewünschten Pakete aus, hier am Beispiel von 2utf gezeigt.
 
Abbildung 4-14. GNOME apt
 
169
 
Kapitel 4. Installation weiterer Pakete
 
Sie können natürlich noch weitere Pakete auswählen, dies soll lediglich ein einfaches Beispiel sein. Wenn Sie
 
lediglich dieses eine neue Paket installieren möchten, wählen Sie nun aus dem Menü „Action“ den Eintrag
 
„Complete run“ aus. Sie bekommen noch einmal angezeigt, welche Aktionen nun durchgeführt werden, mit
 
einem Mausklick auf „OK“ wird das gewünschte Paket installiert.
 
Abbildung 4-15. GNOME apt - Installation
 
Wenn Sie auch die Pakete, die seit der letzten Installation auf dem Server aktualisiert wurden, auf Ihrem System
 
aktualisieren möchten, wählen Sie vor der Installation aus dem Menü „Action“ noch den Eintrag „Mark
 
upgrades“ aus.
 
170
 
Kapitel 4. Installation weiterer Pakete
 
Abbildung 4-16. GNOME apt - Installation
 
4.4. APT Pinning
 
Eine besondere Stärke des Debian Paketmanagements ist das unterschiedliche Release Stände verwendet
 
werden können. Hierzu sind zumindest zwei Releases (beispielsweise „woody“ und „testing“) mit
 
entsprechenden Einträgen in der Datei /etc/apt/sources.list anzugeben. Nun kann mittels apt-get
 
--target-release der gewünschte Release Stand für ein Paket gewählt werden.
 
Sinnvoll ist dieses Feature leider nur mit zwei Releases einsetzbar, werden drei Debian Releases (beispielsweise
 
zusätzlich „testing“) oder aber eine Nicht-Debian Paketquelle gemischt, so kommt es zu seltsamen Ergebnissen.
 
Die Lösung für dieses Problem ist eine Erweiterung der Datei /etc/apt/preferences.
 
Hier zunächst ein Beispiel für eine sinnvolle /etc/apt/preferences Datei, auf den meisten Systemen wird
 
diese Datei nicht existieren (sie wird auch nicht zwingend benötigt) und muss daher neu angelegt werden.
 
* Track stable:
 
Explanation: see http://www.argon.org/~roderick/apt-pinning.html
 
Package: *
 
Pin: release o=Debian,a=stable
 
Pin-Priority: 900
 
Package: *
 
Pin: release o=Debian,a=testing
 
Pin-Priority: 400
 
Package: *
 
Pin: release o=Debian,a=unstable
 
Pin-Priority: 300
 
Package: *
 
Pin: release o=Debian
 
171
 
Kapitel 4. Installation weiterer Pakete
 
Pin-Priority: -1
 
* Track testing:
 
Explanation: see http://www.argon.org/~roderick/apt-pinning.html
 
Package: *
 
Pin: release o=Debian,a=testing
 
Pin-Priority: 900
 
Package: *
 
Pin: release o=Debian,a=unstable
 
Pin-Priority: 300
 
Package: *
 
Pin: release o=Debian
 
Pin-Priority: -1
 
Bereits beim einmaligen Aufruf von apt-get kann mittels der Option -t der Wert für „APT::Default-Release“
 
gesetzt werden. Diese Einstellung gilt jedoch lediglich für diesen einen Aufruf von apt-get. Beispiel:
 
apt-get --t unstable install paketname. Dies kann durchaus ein sehr nützliches Feature sein, kann
 
sich aber in anderen Fällen auch problematisch auswirken.
 
Die gute Seite: Sind in der sources.list die Releases „testing“ und unstable definiert und in der Datei
 
apt.conf ist der Wert für APT::Default-Release auf „testing“ gesetzt, so ergeben sich folgende Prioritäten
 
für das Paket „foo“:
 
release version priority
 
no -t switch -t unstable
 
testing 1.1 990 500
 
unstable 1.2 500 990
 
Ist das Paket „foo“ nicht installiert und es wird apt-get install foo aufgerufen, so wird die Version 1.1
 
aus „testing“ installiert, da diese die höchste Priorität hat.
 
Mittels apt-get -t unstable install foo kann gezielt die Version 1.2 aus „unstable“ installiert werden,
 
da für diesen einen Aufruf von apt-get die Priorität erhöht wird.
 
4.5. dpkg
 
dpkg ist die Basis der Debian Paketverwaltung. Mit diesem Programm kommen Sie nur in seltenen Fällen in
 
Berührung, meist werden Sie Frontends wie APT benutzen. Hier trotzdem einigen nützliche Beisþiele.
 
4.5.1. -l
 
Mit der Option -l können die tatsächlichen Paketnamen ermittelt werden. Diese weichen häufig von den
 
eigentlichen Befehlen ab.
 
wasabi:~$ dpkg -l mozilla*
 
Gewünscht=Unbekannt/Installieren/R=Entfernen/P=Säubern/Halten
 
| Status=Nicht/Installiert/Config/U=Entpackt/Fehlgeschl. Konf./Halb install.
 
|/ Fehler?=(keiner)/Halten/R=Neuinst. notw/X=beides (Status, Fehler: GROß=schlecht)
 
||/ Name Version Beschreibung
 
+++-==============-==============-============================================
 
ii mozilla 1.0.0-1 Mozilla Web Browser - dummy package
 
ii mozilla-browse 1.0.0-1 Mozilla Web Browser - core and browser
 
rc mozilla-browse 0.0.20020226.1 An Open Source WWW browser for X and GTK+ (C
 
ii mozilla-browse 0.0.20020610.0 An Open Source WWW browser for X and GTK+ (C
 
ii mozilla-chatzi 1.0.0-1 Mozilla Web Browser - irc client
 
pn mozilla-chatzi <keine> (keine Beschreibung vorhanden)
 
172
 
Kapitel 4. Installation weiterer Pakete
 
pn mozilla-chatzi <keine> (keine Beschreibung vorhanden)
 
pn mozilla-cvs <keine> (keine Beschreibung vorhanden)
 
pn mozilla-cvs-de <keine> (keine Beschreibung vorhanden)
 
ii mozilla-dev 1.0.0-1 Mozilla Web Browser - development files
 
un mozilla-dmotif <keine> (keine Beschreibung vorhanden)
 
ii mozilla-dom-in 1.0.0-1 A tool for inspecting the DOM of pages in Mo
 
ii mozilla-dom-in 0.0.20020610.0 A tool for inspecting the DOM of pages in Mo
 
ii mozilla-js-deb 1.0.0-1 JavaScript debugger for use with Mozilla
 
pn mozilla-js-deb <keine> (keine Beschreibung vorhanden)
 
rc mozilla-locale 0.9.9-3 Mozilla German Language/Region Package.
 
pn mozilla-locale <keine> (keine Beschreibung vorhanden)
 
pn mozilla-locale <keine> (keine Beschreibung vorhanden)
 
ii mozilla-mailne 1.0.0-1 Mozilla Web Browser - mail and news support
 
pn mozilla-mailne <keine> (keine Beschreibung vorhanden)
 
pn mozilla-mailne <keine> (keine Beschreibung vorhanden)
 
ii mozilla-psm 1.0.0-1 Mozilla Web Browser - Personal Security Mana
 
pn mozilla-psm-cv <keine> (keine Beschreibung vorhanden)
 
ii mozilla-psm-sn 0.0.20020610.0 PSM - Personal Security Manager for Mozilla
 
un mozilla-smotif <keine> (keine Beschreibung vorhanden)
 
pn mozilla-snapsh <keine> (keine Beschreibung vorhanden)
 
pn mozilla-snapsh <keine> (keine Beschreibung vorhanden)
 
ii mozilla-xmlter 1.0.0-1 Mozilla Web Browser - XML enabled
 
pn mozilla-xmlter <keine> (keine Beschreibung vorhanden)
 
pn mozilla-xmlter <keine> (keine Beschreibung vorhanden)
 
Problematisch ist hierbei das der Name des Paketes abgeschnitten wird, dies kann durch setzen der Variablen
 
COLUMNS verändert werden: COLUMNS=132 dpkg -l mozilla*.
 
4.5.2. -S
 
Mit der Option -S kann ermittelt werden zu welchem Paket eine Datei gehört. Dies trifft lediglich auf bereits
 
installierte Pakete zu. Eine Suche in nicht installierten Paketen ist auf diesem Wege nicht möglich.
 
fr@wasabi:~$ dpkg -S gdm.conf
 
gdm: /etc/gdm/factory-gdm.conf
 
gdm: /etc/gdm/gdm.conf
 
fr@wasabi:~$ dpkg -S /etc/gdm/gdm.conf
 
gdm: /etc/gdm/gdm.conf
 
Hierbei kann das weglassen oder hinzufügen des Pfades zu der gesuchten Datei zu unterschiedlichen
 
Ergebnissen führen.
 
4.5.3. --force-confnew
 
Sollte ein mal aus Versehen eine der Konfigurationsdateien verschwunden sein oder eine andere wichtige Datei
 
fehlen, so kann ein komplettes Paket einfach erneut installiert werden. Hierzu ist zunächst das betroffene Paket
 
zu besorgen, beispielsweise mit apt-get -d install paket. Nun kann das Paket installiert werden, die
 
Option --force-confnew überschreibt dabei alle Konfigurationsdateien: dpkg -i --force-confnew
 
/var/cache/apt/archives/paket.deb.
 
173
 
Kapitel 4. Installation weiterer Pakete
 
4.5.4. dpkg-scanpackage
 
Pakete die aus dem Internet geholt wurden und in irgendeinem Verzeichnis auf der Festplatte schlummern
 
lassen sich mit den bisher beschriebenen Methoden nur mühsam installieren. Eleganter wäre es auch diese
 
Pakete in die sources.list einzubinden. Doch leider scheitert dies an der fehlenden Datei Packages.gz.
 
Diese Datei kann mit dem Programm dpkg-scanpackage erzeugt werden.
 
Die Datei Packages.gz enthält Informationen darüber, welche Pakete sich in diesem Verzeichnis befinden.
 
Mit dem Kommando dpkg-scanpackages ./ /dev/null | gzip > Packages.gz, welches direkt in
 
dem Verzeichnis aufgerufen wird in dem sich die Pakete befinden, läßt sich diese Datei erzeugen. Wenn weitere
 
oder aktualisierte Pakete in diesem Verzeichnis abgelegt werden muß das Kommandos natürlich erneut
 
aufgerufen werden.
 
Wenn die Pakete auf dem System im Verzeichnis /home/ftp/meinepakete/ abgelegt sind, lautet der Eintrag
 
in der Datei /etc/apt/sources.list:
 
deb file:/home/ftp/meinepakete ./
 
Der Pfad ist den lokalen Gegebenheiten anzupassen.
 
4.5.5. dpkg-scansources
 
Natürlich ist es nicht nur möglich für Binärpakete entsprechende Package Dateien zu erzeugen, dies kann auch
 
für die Source Pakete geschehen.
 
Es werden zunächst die drei, den Binärpaket zugehörigen, Sourcedateien mit den Endungen .orig.tar.gz,
 
.dsc und .diff.gz benötigt. Diese werden in einem eigenen Verzeichnis abgelegt. Die Programme zur
 
Verwaltung von Debian Paketen greifen bei Source Paketen auf die Datei Sources.gz zu. Diese kann mit dem
 
Kommando dpkg-scansources ./ | gzip > Sources.gz erzeugt werden. Hierbei ist zu beachten das
 
dpkg-scansources kein Override-File benötigt. Die Angabe „/dev/null“ muss hierbei also entfallen.
 
4.6. netselect
 
Debian GNU kann sehr komfortabel mittels apt-get und entsprechenden Einträgen in der Datei
 
sources.list über das Internet aktualisiert werden. Der Zugriff auf die via HTTP oder FTP verfügbaren
 
Debian-Server ist dabei unterschiedlich schnell. Natürlich möchte man einen netzwerktechnisch besonders gut
 
erreichbaren Server zur Installation nutzen, doch welcher ist das...? Hier hilft das Paket netselect.
 
netselect prüft aus der Liste der Debian Mirrors die Verfügbarkeit und die Übertragungsrate jedes einzelnen
 
Servers. Abschliessend wird der am besten erreichbare Server ausgegeben. Anhand dieser Angaben kann ein
 
Eintrag in der Datei sources.list erfolgen.
 
Eine detailierte Statistik aller angefragten Server kann mit der Option -vv ausgegeben werden. Weiterhin ist es
 
möglich auf der Kommandozeile nur eine Auswahl von Servern anzugeben, aus diesen wird dann der schnellste
 
ermittelt.
 
fr@sushi:~$ netselect ftp.debian.org ftp.de.debian.org ftp.fr.debian.org
 
0 ftp.debian.org
 
fr@sushi:~$ netselect -vv ftp.debian.org ftp.de.debian.org ftp.fr.debian.org
 
Running netselect to choose 1 out of 3 addresses.
 
..............................
 
ftp.debian.org 0 ms 2 hops 90% ok ( 9/10) [ 0]
 
ftp.de.debian.org 0 ms 2 hops 90% ok ( 9/10) [ 0]
 
ftp.fr.debian.org 0 ms 2 hops 90% ok ( 9/10) [ 0]
 
0 ftp.debian.org
 
174
 
Kapitel 4. Installation weiterer Pakete
 
Ab der Version 0.3 von netselect ist das Kommando netselect-apt im Paket enthalten. Als Parameter kann die
 
gewünschte Release („potato“, „woody“, „sid“ usw.) angegeben werden. netselect-apt holt zunächst die
 
Liste aller Debian Mirrors, ermittelt den schnellsten Server und erzeugt (Achtung: im aktuellen Verzeichnis!)
 
eine entsprechende Datei sources.list.
 
fr@sushi:~$ netselect-apt woody
 
Retrieving the list of mirrors from www.debian.org...
 
--16:09:46-- http://www.debian.org/mirror/mirrors_full
 
=> ‘mirrors_full’
 
...(weitere Aktivitäten)
 
Writing the sources.list in the current directory.
 
Done.
 
fr@sushi:~$ ls -l sources.list
 
-rw-rw-r-- 1 fr fr 545 Mai 23 2002 sources.list
 
Die so entstandene Datei kann nun an die bestehende sources.list angehängt werden oder diese komplett
 
ersetzen.
 
4.7. apt-spy
 
apt-spy dient zur automatischen Erzeugung einer sources.list für apt. Hierzu wird aus dem Netz die
 
Datei ftp://ftp.us.debian.org/debian/README.mirrors geholt und auf Einträge für Debian
 
Mirror-Server hin untersucht. Alle diese Server werden hinsichtlich Antwortzeit und Bandbreite getestet. Die
 
drei am besten zu erreichenden Server, dies müssen nicht zwingend die geographisch am nächsten gelegenen
 
Server sein, werden dann in die Datei /etc/apt/sources.list aufgenommen.
 
4.8. deborphan
 
deborphan ist ein Programm, das Pakete auf einem Debian-/GNU System überprüft. Wird ein Paket gefunden
 
von dem keine anderen Pakete abhängig sind, so wird der Name ausgegeben. Dies ist hauptsächlich sinnvoll um
 
installierte Bibliotheken zu finden die nicht mehr benötigt werden.
 
surimi:~# deborphan
 
libxosd0
 
libwww0
 
libgsm1
 
libqxt0
 
libwnck4
 
libavifile0.6
 
lapack
 
libzvt2-0
 
libid3-3.7-13
 
libgtop2
 
libflac1
 
libnautilus0
 
libpanel-applet2-0
 
libstdc++2.10
 
Die angezeigten Paketen können nun mit den üblichen Tools entfernt werden. Wenn die Liste zunächst genau
 
kontrolliert wurde (um zu verhindern das noch benötigte Pakete versehentlich gelöscht werden), können die
 
175
 
Kapitel 4. Installation weiterer Pakete
 
nicht benötigten Pakete mit dpkg --purge ‘deborphan‘ oder dpkg --purge ‘deborphan
 
--guess-all‘ gelöscht werden.
 
Es stehen weiterhin zwei Frontends für deborphan zur Verfügung. Das Programm orphaner läßt Sie
 
„rekursiv“ Pakete entfernen.
 
Abbildung 4-17. orphaner
 
Mit editkeep kann verwendet werden, um eine Liste der Pakete zu erstellen die nicht mehr von deborphan
 
angezeigt werden sollen.
 
176
 
Kapitel 4. Installation weiterer Pakete
 
Abbildung 4-18. editkeep
 
4.9. debfoster
 
debfoster entfernt automatisch nicht zwingend auf dem System benötigte Pakete. Hierzu wird eine Liste aller
 
Pakete welche zur Installation ausgewählt wurden erstellen. In dieser Liste sind keine Pakete aufgeführt die
 
aufgrund einer Abhängigkeit zu einem Paket installiert wurden. debfoster kann nach jedem Start von dpkg
 
oder apt aufgerufen werden um nicht länger benötigte Pakete aus dem System zu entfernen.
 
debfoster erfordert zunächst einen höheren Aufwand nach dem ersten Start. Es wird eine Liste aller Pakete
 
definiert, die Antworten werden gespeichert, so daß beim nächsten Start nur bei veränderten Paketen
 
nachgefragt wird.
 
gnome-office is keeping the following 24 packages installed:
 
abiword-gnome bonobo-conf dia-common dia-gnome evolution ganso gnucash
 
gnumeric gtkhtml guile1.4-slib libbonobo-conf0 libcamel0 libdate-manip-perl
 
libfinance-quote-perl libgnome-pilot1 libgtkhtml-data libguppi16
 
libgwrapguile1 libhtml-tableextract-perl libole2-0 libpisock4 libunicode0
 
mrproject slib
 
Keep gnome-office? [Ynpsiuqx?], [H]elp: Y
 
nautilus1.1 is keeping the following 10 packages installed:
 
libeel2-1 libeel2-data libgail-common libgail13 libgail15
 
libgnome-desktop-0 libgtkhtml2-0 libnautilus1.1-2 nautilus1.1-data
 
nautilus1.1-gtkhtml
 
Keep nautilus1.1? [Ynpsiuqx?], [H]elp: Y
 
aptconf is keeping the following 11 packages installed:
 
configlet-frontends gnome-sudo libxml-grove-perl libxml-perl
 
177
 
Kapitel 4. Installation weiterer Pakete
 
python-configlet python-gdk-imlib python-glade python-gnome python-gtk
 
python-xml python2.1-xml
 
Keep aptconf? [Ynpsiuqx?], [H]elp:
 
Weiterhin läßt sich debfoster über die Kommandozeile steuern. Somit lassen sich viele Aktionen
 
automatisieren.
 
Usage: debfoster [-ck FILE] [-adefhinopqrsvV] package1 package2-
 
Installs package1, deinstalls package2
 
-v, --verbose Be a loudmouth
 
-V, --version Show version and copyright information
 
-h, --help Show this message
 
-q, --quiet Silently build keeper file
 
-f, --force Force system to conform to keeper file
 
-m, --mark-only Do not install or delete packages
 
-u, --upgrade Try to upgrade dependencies
 
-c, --config FILE Specify configuration file
 
-k, --keeperfile FILE Specify keeper file
 
-n, --no-keeperfile Don’t read keeper file
 
-i, --ignore-default-rules Ignore default rules
 
-a, --show-keepers Show packages on keeper list
 
-s, --show-orphans Show orphaned packages
 
-d, --show-depends PACKAGE Show all depends of PACKAGE
 
-e, --show-dependents PACKAGE Show dependents of PACKAGE
 
-p, --show-providers PACKAGE Show packages providing PACKAGE
 
-r, --show-related PACKAGE Show packages brought in by PACKAGE
 
-t, --use-tasks Make tasks visible as packages
 
-o, --option OPT=VAL Override any configuration option
 
See also: debfoster(8)
 
debfoster 2.5 -- Copyright (C) 2000,2001 Wessel Dankers.
 
Distributed under the GNU General Public License.
 
4.10. task-Pakete
 
Die Auswahl aus einigen tausend Debian GNU/Linux-Paketen ist gerade für den Einsteiger nicht einfach. Aber
 
auch Profis verlieren in der Masse der Pakete leicht den Überblick. Wer nicht zu jedem Paket die Beschreibung
 
lesen und anhand dieser entscheiden will, ob ein Paket installiert werden soll oder nicht, kann sich in die Hände
 
der Debian-Entwickler begeben und bereits sorgfältig zusammengestellte Paketgruppen installieren. Es stehen
 
mittlerweile eine ganze Reihe solcher task- Pakete zur Verfügung. Alle diese Pakete beginnen im Paketnamen
 
mit task-, so daß Sie diese beispielsweise in dselect leicht heraussuchen (mit der Taste / ) und installieren
 
können.
 
task- Pakete stehen in verschiedenen Bereichen der Debian GNU/Linux-Distribution zur Verfügung. Anhand
 
des Bereiches und des Namens läßt sich schon der Anwendungsbereich erkennen. Im Bereich net finden sich
 
die Pakete task-dialup, task-dialup-isdn, task-gnome-net und task-samba. Alle diese Pakete
 
beinhalten eine Auswahl von nützlichen Paketen im Bereich Netzwerk, hierzu gehören auch
 
Netzwerkverbindungen über analoge oder digitale (ISDN) Telefonverbindungen.
 
Wenn Sie ein solches Paket installieren, hier zum Beispiel das Paket task-dialup-isdn, werden eine ganze
 
Reihe weiterer Pakete ausgewählt und einige andere zur Installation vorgeschlagen. Benutzen Sie hierzu
 
zunächst einmal dselect:
 
dselect - recursive package listing mark:+/=/- verbose:v help:?
 
EIOM Pri Section Package Description
 
_* Opt net task-dialup- Dialup utilities
 
178
 
Kapitel 4. Installation weiterer Pakete
 
_* Opt net task-dialup Dialup utilities
 
_* Xtr net isdnutils ISDN utilities
 
_* Xtr net diald dial on demand daemon for PPP and SLIP.
 
_* Xtr admin dialdcost Cost estimation and X Control panel for DIALD
 
_* Opt mail fetchmail POP2/3, APOP, IMAP mail gatherer/forwarder
 
_* Opt web junkbuster The Internet Junkbuster!
 
_* Xtr web wwwoffle World Wide Web OFFline Explorer
 
__ Xtr news leafnode NNTP server for small leaf sites
 
_* Opt news inn News transport system ‘InterNetNews’ by the ISC a
 
__ Xtr news cnews Simple News Server for Usenet news.
 
__ Opt non-free diablo News transport system without reader support.
 
_* Opt net lftp Sophisticated command-line FTP/HTTP client progra
 
_* Opt admin suidmanager Manage File Permissions
 
__ Xtr comm mgetty Smart Modem getty replacement
 
__ Xtr net isdnbutton Start and Stop ISDN connections and display statu
 
__ Opt interpre python-tk Writing Tk applications with Python (Tkinter).
 
__ Opt web htdig WWW search system for an intranet or small intern
 
_* Opt news inewsinn NNTP client news injector, from InterNetNews (INN
 
__ Opt news innfeed This is the new INN feeder program ‘innfeed.’
 
Wenn Sie mit der Auswahl einverstanden sind, übernehmen Sie die Vorgaben einfach mit der Eingabetaste. Sie
 
können aber auch weitere Pakete auswählen, nützlich ist beispielsweise das Paket isdnbutton.
 
Neben der Auswahl dieser task- Pakete via dselect oder Apt steht mittlerweile auch ein spezielles
 
Programm zur Verfügung, welches sich speziell der task- Pakete annimmt: taskselect.
 
4.10.1. tasksel
 
Mit dem Programm tasksel können Sie auf alle verfügbaren task-Pakete zugreifen. Nach dem Start
 
bekommen Sie eine Liste der verfügbaren Pakete angezeigt. Sie können mit den Cursortasten zwischen den
 
Paketen wechseln und mit der Taste ENTER oder SPACE ein Paket zur Installation auswählen. Nochmaliges
 
Drücken der Taste hebt diese Auswahl wieder auf.
 
Abbildung 4-19. tasksel
 
Mit der Taste a wählen Sie alle verfügbaren Task-Pakete aus, mit der Taste n wird die Auswahl für alle bereits
 
ausgewählten Pakete umgekehrt. Über die Taste i bekommen Sie weitere Informationen zu dem angewählten
 
Paket, dort werden Ihnen auch die zu diesem Paket gehörenden, weiteren Pakete angezeigt. Die Taste q beendet
 
das Programm.
 
179
 
Kapitel 4. Installation weiterer Pakete
 
tasksel ist sehr nützlich wenn Sie sich nicht lange Gedanken über jedes einzelne zu installierende Paket
 
machen wollen. Viele Anwender kennen sicher noch eine ähnliche Funktion aus der Installation von Debian 2.1.
 
Dort konnte vor dem ersten Start von dselect auch eine solche Vorauswahl getroffen werden. Leider kam man
 
zu einem späteren Zeitpunkt nie wieder an diese Stelle... Dieser Mangel wurde nun mit tasksel behoben.
 
4.11. Weitere wichtige Pakete
 
Im folgenden werden wir einige Programme vorstellen, die aus unserer Sicht auf keinem System fehlen sollten.
 
Die Auswahl ist sicherlich Geschmacksache und läßt sich noch weiter fortsetzen. Sie werden im Laufe der Zeit
 
sicher Ihre eigenen Lieblingstools finden.
 
4.11.1. base-config
 
Mittels base-config können die bereits bei der Installation vorgenommenen Einstellungen für die Zeitzone
 
sowie die APT-Quellen zur Installation weiterer Pakete neu festgelegt werden. Abschliessend kann direkt ein
 
Frontend zur Paketauswahl (dselect, aptitude, taskselect o.ä., je nachdem welche Programme bereits
 
installiert wurden) aufgerufen werden.
 
Alternativ können für diese beiden Schritte (Zeitzone, Paketquellen) auch die Programme tzconfig und
 
apt-setup aufgerufen werden.
 
4.11.2. modconf
 
Mittels modconf können zusätzliche Module in den Kernel geladen werden. modconf stellt ein einfaches
 
Interface für die Kommandozeile Tools insmod bzw. modprobe dar. modprobe wird ohne weitere Parameter
 
aufgerufen.
 
Abbildung 4-20. Module installieren - modconf
 
Wie schon bei der Installation des Basissystems ist es notwendig das zur Hardware passende Modul zu
 
ermitteln und ggf. notwendige Parameter anzugeben.
 
180
 
Kapitel 4. Installation weiterer Pakete
 
4.11.3. shadowconfig
 
Hiermit kann die Verwendung von Shadow-Passwörter ein- und ausgeschaltet werden. Auch diese Option
 
konnte bereits bei der Systeminstallation gewählt werden.
 
nigiri:~# shadowconfig
 
Usage: /sbin/shadowconfig on | off
 
Als einzige Option kann diesem Kommando der Wert „on“ oder „off“ übergeben werden. Zubeachten ist das
 
beim aus- und wieder einschalten dieser Option alle Informationen über den Gültigkeitszeitraum eines
 
Passwortes verloren gehen.
 
4.11.4. tzconfig
 
Mit dem Kommando tzconfig kann die Zeitzone erneut eingestellt werden. Hier eine Beispielsitzung mit
 
diesem Programm:
 
nigiri:~# tzconfig
 
Your current time zone is set to Australia/Victoria
 
Do you want to change that? [n]: y
 
Please enter the number of the geographic area in which you live:
 
1) Africa 7) Australia
 
2) America 8) Europe
 
3) US time zones 9) Indian Ocean
 
4) Canada time zones 10) Pacific Ocean
 
5) Asia 11) Use System V style time zones
 
6) Atlantic Ocean 12) None of the above
 
Then you will be shown a list of cities which represent the time zone
 
in which they are located. You should choose a city in your time zone.
 
Number: 8
 
Amsterdam Andorra Athens Belfast Belgrade Berlin Bratislava Brussels
 
Bucharest Budapest Chisinau Copenhagen Dublin Gibraltar Helsinki Istanbul
 
Kaliningrad Kiev Lisbon Ljubljana London Luxembourg Madrid Malta Minsk
 
Monaco Moscow Nicosia Oslo Paris Prague Riga Rome Samara San_Marino
 
Sarajevo Simferopol Skopje Sofia Stockholm Tallinn Tirane Tiraspol
 
Uzhgorod Vaduz Vatican Vienna Vilnius Warsaw Zagreb Zaporozhye Zurich
 
Please enter the name of one of these cities or zones
 
You just need to type enough letters to resolve ambiguities
 
Press Enter to view all of them again
 
Name: [] Berlin
 
Your default time zone is set to ’Europe/Berlin’.
 
Local time is now: Mit Okt 30 08:32:26 CET 2002.
 
Universal Time is now: Mit Okt 30 07:32:26 UTC 2002.
 
nigiri:~#
 
181
 
Kapitel 4. Installation weiterer Pakete
 
4.11.5. dlocate
 
Wenn Sie sich ein wenig mit den Internas des Debian-Paket-Systems auseinandergesetzt haben, sind Sie mit
 
Sicherheit auch auf dpkg, das ursprüngliche Programm zum Paketmanagement gestoßen. dpkg kann mit den
 
Optionen -L und -S dazu benutzt werden, in den Paketdateien nach den Paketnamen zu suchen, in denen sich
 
bestimmte Dateien befinden. Als schnelle Alternative dazu bietet sich das Programm dlocate an. Intern
 
benutzt dlocate das GNU-Programm locate und kann über Parameter auch beispielsweise alle Dateien, die
 
zu einem Paket gehören, anzeigen, den benötigten Plattenplatz und Checksummen berechnen oder auch die
 
passenden Man-Pages auflisten.
 
Wenn Sie dlocate ohne weitere Parameter aufrufen, bekommen Sie eine kurze Übersicht der Optionen:
 
linux:/home/fr/buch# dlocate
 
Usage: dlocate [option] [string...]
 
Options:
 
(no option) string list all records that match
 
-S string list records where files match
 
-L package list all files in package
 
-l package almost-emulation of ’dpkg -l’
 
-s package print package’s status
 
-ls package ’ls -ldF’ of all files in package
 
-du package ’du -sck’ of all files in package
 
-conf package list conffiles in package
 
-lsconf package ’ls -ldF’ of conffiles in package
 
-md5sum package list package’s md5sums (if any)
 
-md5check package check package’s md5sums (if any)
 
-man package list package’s man pages (if any)
 
The -L, -s, and -S commands are roughly analagous to the
 
equivalent dpkg commands.
 
Suchen von nicht installierten Dateien: Die Programme dlocate oder auch dpkg -S können nur Dateien
 
finden, die bereits auf Ihrem System installiert sind. Manchmal kommt es aber vor, daß Sie eine Datei oder
 
ein Programm benötigen, von dem Sie den Namen kennen, aber nicht wissen, in welchem Paket es sich
 
verbirgt. Sie können mit dem Kommando apt-cache search exim.conf nach der gewünschten Datei
 
suchen.
 
Die zweite Möglichkeit ist folgende: Datei Contents-i386.gz (auf anderen Architekturen wie i386 setzen Sie
 
bitte die entsprechende Architektur ein) enthält eine Liste aller Dateien mit den entsprechenden Paketnamen.
 
Das Kommando zcat Contents-i386.gz | grep exim.conf sucht aus dieser Datei den Paketnamen
 
heraus, in der sich die Datei exim.conf befindet.
 
4.11.6. gpm
 
gpm erlaubt ihnen die Benutzung der Maus, soweit Sie eine an Ihrem Rechner angeschlossen haben, auch auf
 
der textbasierten Konsole. Installieren Sie das Paket mit dselect oder apt. Während der Installation wird ein
 
Konfigurationsscript aufgerufen, welches nach dem Anschluß der Maus, dem Typ sowie einigen anderen
 
Parametern fragt.
 
Sie können dieses Konfigurationsscript auch später jederzeit verwenden, entweder wenn es bei der
 
Erstkonfiguration Probleme gab oder wenn Sie eine andere Maus angeschlossen haben. Hierzu rufen Sie als
 
Superuser (root) das Script mit gpmconfig auf.
 
182
 
Kapitel 4. Installation weiterer Pakete
 
Am Beispiel einer Maus mit PS/2-Anschluß, wie sie an den meisten neueren Rechnern zu finden ist, werden wir
 
die Konfiguration aufzeigen. Installieren Sie zunächst das Paket gpm, zum Beispiel mit apt-get install
 
gpm.
 
Unpacking gpm (from .../misc/gpm_1.17.8-6.deb) ...
 
Setting up gpm (1.17.8-6) ...
 
Configuring gpm (mouse event server):
 
Current configuration: -m /dev/ttyS0 -t ms -l "a-zA-Z0-9_.:~/\300-\326\330-\366\370-\377"
 
Device: /dev/ttyS0
 
Type: ms
 
Append: -l "a-zA-Z0-9_.:~/\300-\326\330-\366\370-\377"
 
Do you want to change anything (Y/n)?
 
Die vorgegebenen Werte sind für eine, ebenfalls recht verbreitete Maus an der seriellen Schnittstelle (COM1)
 
passend. Wenn Sie über eine solche Maus verfügen, können Sie die vorgegebenen Werte beibehalten. Bei einer
 
PS/2-Maus sind aber einige andere Einstellungen nötig. Wählen Sie also Y und fahren Sie mit der Installation
 
wie folgt fort:
 
gpm has an experimental mouse test program which may help you determine
 
your mouse’s type and which device it’s attatched to.
 
You *must* not run any other software which needs the mouse, e.g. X,
 
selection or gpm, while running this program.
 
Do you want to run gpm’s mouse-test program (Y/n)?
 
Wenn Sie sich sicher sind, daß Ihre Maus am PS/2-Anschluß angeschlossen ist, können Sie dieses
 
Testprogramm überspringen, es schadet aber auch nicht, es zu benutzen. Probieren Sie es ruhig mal aus:
 
This program is designed to help you in detecting what type your
 
mouse is. Please follow the instructions of this program. If you’re
 
bored before it is done, you can always press your ’Interrupt’ key
 
(usually Ctrl-C)
 
*** Remember: don’t run any software which reads the mouse device
 
*** while making this test. This includes "gpm","selection", "X"
 
Note that this program is by no means complete, and its main role is
 
to detect how does the middle button work on serial mice
 
/dev/atibm: No such device
 
/dev/inportbm: No such device
 
/dev/jbm: No such device
 
/dev/logibm: No such device
 
ttyS1: No such file or directory
 
Trying with 1200 baud
 
The possible device nodes are:
 
/dev/psaux
 
/dev/rtc
 
/dev/ttyS0
 
/dev/ttyS1
 
/dev/ttyS2
 
/dev/ttyS3
 
I’ve still 6 devices which may be your mouse,
 
Please move the mouse. Press any key when done
 
(You can specify your device name on cmdline, in order to
 
avoid this step.
 
Different baud rates are tried at different times
 
183
 
Kapitel 4. Installation weiterer Pakete
 
Das Testprogramm hat auf unserem Beispielrechner 6 mögliche Gerätedateien festgestellt, an denen die Maus
 
angeschlossen sein könnte. Für die PS/2-Maus ist gleich das erste, also /dev/psaux zuständig. Bewegen Sie nun
 
die Maus und drücken Sie danach eine Taste.
 
removing "/dev/ttyS0" from the list
 
removing "/dev/ttyS1" from the list
 
removing "/dev/ttyS2" from the list
 
removing "/dev/ttyS3" from the list
 
Trying with 9600 baud
 
The possible device nodes are:
 
/dev/psaux
 
Where is your mouse [/dev/psaux]?
 
Das Testprogramm hat nun alle Anschlüsse, an denen es keine Maus festgestellt hat, aus der Liste entfernt,
 
geben Sie nun das gefundene Device an.
 
> /dev/psaux
 
What type is your mouse (or help) [ps2]?
 
Der Maustyp ist bei einer PS/2-Maus recht leicht zu bestimmen, wenn Sie eine andere Maus benutzen, werfen
 
Sie einfach mal mit help einen Blick in die Liste:
 
> help
 
gpm-Linux 1.17.8, $Date: 1999/01/03 21:02:51 $
 
Available mouse types are:
 
name (synonym) description
 
mman (Mouseman) - The MouseMan protocol used by new Logitech mice.
 
ms - For Microsoft mice (2 or 3 buttons). Some old 2 button mice
 
send some spurious packets, which can be misunderstood as
 
middle-button events. If this is happens to you, use the
 
’bare’ mouse type.
 
ms+ - Like ’ms’, but allows dragging with the middle button.
 
ms+lr - ’ms+’, but you can reset m by pressing lr (see man page).
 
bare (Microsoft) - For some 2 button Microsoft mice. Same as ’ms’ except that
 
gpm will not attempt to simulate a third button.
 
msc (MouseSystems) - For most 3 button serial mice.
 
sun - For Sparc mice.
 
mm (MMSeries) - For MM series mice.
 
logi (Logitech) - For old serial Logitech mice.
 
bm (BusMouse) - For some busmice, including Microsoft and Logitech busmice.
 
ps2 (PS/2) - For most busmice connected to a PS/2 port (round with 6 metal pins).
 
ncr - For pointing pens found on some laptops.
 
wacom - For Wacom tablets.
 
genitizer - For "Genitizer" tablets. They are used in relative mode.
 
logim - For turning on the MouseSystems compatible mode (3 buttons)
 
of some Logitech mice.
 
pnp - For the new ’plug and play’ mice produced by Microsoft.
 
Try it if ’-t ms’ does not work.
 
imps2 - For the Microsoft IntelliMouse on a PS/2 port (round
 
connector with 6 pins), 3 buttons (wheel is unused).
 
ms3 - For the Microsoft IntelliMouse (serial), 3 buttons (wheel is unused).
 
netmouse - For the "Genius NetMouse". This one has two normal buttons
 
plus ’up’/’down’ buttons.
 
cal - For a Calcomp UltraSlate.
 
calr - For a Calcomp UltraSlate in relative mode.
 
twid - For the "Twidddler" keyboard.
 
syn (synaptics) - For the "Synaptics" serial TouchPad.
 
synps2 (synaptics_ps2) - For the "Synaptics" PS/2 TouchPad.
 
184
 
Kapitel 4. Installation weiterer Pakete
 
brw - For the Fellowes Browser - 4 buttons (and a wheel) (dual protocol?).
 
js (Joystick) - For "Joystick" mouse emulation.
 
summa - For a Summa/Genius tablet in absolute mode (906,1212B,EasyPainter...).
 
mtouch - For MicroTouch touch-screens (only button-1 events right now).
 
acecad - For Acecad tablet in absolute mode (Sumagrapics MM-Series mode).
 
kmiabps2 - For the Kensignton Mouse in a box on a PS/2 port (round
 
connector with 6 pins), 3 buttons.
 
Default for i386 is ms
 
What type is your mouse (or help) [ps2]?
 
> ps2
 
Der erkannte Maustyp ist für unser Beispiel aber korrekt und kann so beibehalten werden.
 
Set the responsiveness (normally not needed) []?
 
>
 
Repeat protocol (leave blank to turn repeating off) []?
 
>
 
Do you want to add any additional arguments [-l "a-zA-Z0-9_.:~/\300-\326\330-\366\370-\377"]?
 
>
 
Do you want to test this configuration (y/N)?
 
Diese vier Punkte können Sie erst einmal so belassen. Sie können u.a. die Empfindlichkeit der Maus einstellen,
 
dies können Sie aber auch jederzeit später nach dem Studium der Man-Page zu gpm detailliert erledigen.
 
Current configuration: -m ttyS1 -t ps2 -l "a-zA-Z0-9_.:~/\300-\326\330-\366\370-\377"
 
Device: ttyS1
 
Type: ps2
 
Append: -l "a-zA-Z0-9_.:~/\300-\326\330-\366\370-\377"
 
Abschließend bekommen Sie noch einmal alle Daten angezeigt und können diese auch noch einmal ändern
 
(dazu müssen Sie aber die ganze Konfiguration noch einmal durchgehen...).
 
Do you want to change anything (Y/n)? n
 
Starting mouse interface server: gpm.
 
Wenn Sie mit den Einstellungen zufrieden sind, geben Sie ein n ein, und die Konfiguration wird gesichert und
 
der gpm-Server gestartet. Sie können nun, wenn alles korrekt konfiguriert wurde, mit der Maus auf der Konsole
 
Bereiche markieren und kopieren. Programme, die die Maus auch auf der Konsole unterstützen, wie zum
 
Beispiel mc, können Sie auch mit der Maus bedienen.
 
4.11.7. mc
 
mc und gmc (welcher weiter unten beschrieben wird) basieren beide auf dem Paket mc-common, welches die
 
grundlegenden Funktionen für beide Pakete zur Verfügung stellt.
 
mc ähnelt stark dem aus der DOS-Welt bekannten Norton Commander. Soweit möglich wird auch die Maus auf
 
der textbasierten Oberfläche unterstützt.
 
Einige Höhepunkte des mc sind:
 
• Arbeiten mit gepackten Dateien.
 
• Wiederherstellen von gelöschten Dateien, dies unterliegt einigen Einschränkungen (benötigt mindestens
 
Kernel 2.1.x).
 
Wenn Sie bereits mit dem nc unter DOS gearbeitet haben, werden Ihnen viele Dinge vertraut vorkommen.
 
185
 
Kapitel 4. Installation weiterer Pakete
 
Abbildung 4-21. Midnight Commander
 
4.11.8. gmc
 
Eine Version des Programms Midnight Commander mit grafischer Benutzeroberfläche, der gmc, steht erst nach
 
der Installation von X11 sowie natürlich des Paketes gmc zur Verfügung. gmc steht für „GNU Midnight
 
Commander“ und stammt aus dem GNOME-Projekt. gmc ist der Standard-Dateimanager unter GNOME.
 
Abbildung 4-22. GNU Midnight Commander
 
186
 
Kapitel 4. Installation weiterer Pakete
 
Das Fenster des GNU Midnight Commanders teilt sich in zwei Bereiche. Das linke Fenster zeigt den
 
Verzeichnisbaum, das rechte Fenster stellt den aktuellen Inhalt des ausgewählten Verzeichnisses dar. Um den
 
Inhalt eines anderen Verzeichnisses anzeigen zu lassen, reicht ein einfacher Mausklick auf das gewünschte
 
Verzeichnis im linken Fenster. Wenn im Verzeichnisbaum neben dem Verzeichnisnamen ein + Zeichen
 
angezeigt wird, können Sie mit einem Mausklick auf dieses Zeichen die weiteren Unterverzeichnisse anzeigen
 
lassen. Das + Zeichen wird dann zu einem - Zeichen, mit einem weiteren Mausklick können Sie die
 
Unterverzeichnisse wieder ausblenden.
 
4.11.9. screen
 
screen ist ein sehr nützliches Programm im Zusammenhang mit virtuellen Konsolen. In der Urzeit der
 
Unix-Geschichte waren ASCII-Terminals, die an den Rechner über die serielle Schnittstelle angeschlossen
 
wurden, sehr verbreitet. Manchmal findet man solche Geräte auch noch heute im Einsatz oder kann diese
 
günstig erstehen. Einem Einsatz an der seriellen Schnittestelle eines handelsüblichen PCs steht, außer dem
 
passenden Kabel, nichts im Weg. Leider stehen dann an einem solchen Terminal keine virtuellen Konsolen zur
 
Verfügung.
 
Das gleiche Problem stellt sich beispielsweise, wenn man sich von außen über eine Modemverbindung an
 
einem Rechner anmeldet, auch hier ist man auf ein einziges Terminal festgelegt.
 
Abhilfe schafft hier das Programm screen, dieses „emuliert“ mehrere virtuelle Terminals und kann auch die
 
Sitzung nach dem Abbruch der Verbindung aufrechterhalten. Sie können, wenn Sie einen Account auf einem
 
Rechner mit einer guten Internetanbindung haben, sich beispielsweise auf diesem einloggen, einen Download
 
starten, sich abmelden und Stunden oder Tage später wieder anmelden und die Sitzung mit screen wieder
 
aufnehmen: der Download wird mittlerweile beendet sein und Sie können sich die Daten mit voller
 
Geschwindigkeit auf Ihren Rechner holen.
 
screen ist so etwas wie ein Full-screen-Windowmanager für die Konsole, welcher mehrere Prozesse, meist
 
interaktive Shells, verwaltet. Jedes virtuelle Terminal hat die Funktionalität eines VT100-Terminals, mit
 
zusätzlichen Funktionen aus anderen Standards wie zum Beispiel ANSI X3.64 und ISO 2022 (hier wurden
 
Funktionen wie Einfügen und Löschen von Zeilen und die Unterstützung von verschiedenen Zeichensätzen
 
entliehen). Jedes Terminal besitzt eine History-Funktion und Daten können per cut+paste zwischen den
 
Terminals kopiert werden.
 
Wenn Sie screen starten, wird ein Terminal mit einer Shell (oder einem anderen Programm) gestartet, Sie
 
werden zunächst keinen Unterschied zu einer anderen Shell feststellen. Sie können aber nun zu jeder Zeit neue
 
Terminals erzeugen, jedes mit einer neuen Shell, ebenso wie bei den „richtigen“ Terminals unter der
 
Linux-Konsole. Sie können natürlich auch Terminals schließen, eine Liste der aktiven Terminals ansehen, die
 
Ausgaben in einer Datei aufzeichnen und so weiter. Alle gestarteten Programme laufen weiter, auch wenn Sie
 
zwischen den Terminals umschalten.
 
screen-Kommandos werden generell mit der Tastenkombination CRTL+a eingeleitet. Mit der Kombination
 
CRTL+a+? bekommen Sie eine Hilfe zu screen in Form einer Befehlsübersicht. Hier eine kurze Übersicht der
 
wichtigsten Kommandos:
 
• ? - Übersicht der Kommandos
 
• c - erzeugt ein neues Terminal
 
• n - wechselt zum nächsten Terminal
 
• w - zeigt an, wie viele Terminals aktiv sind
 
Weitere Informationen zu screen finden Sie auf der Seite http://www.gnu.org/software/screen/ sowie auf den
 
Seiten von Sven Guckes unter: http://www.math.fu-berlin.de/~guckes/screen/.
 
187
 
Kapitel 4. Installation weiterer Pakete
 
4.11.10. ssh
 
Secure Shell (ssh) ist ein Ersatz für rlogin und rsh und stellt eine verschlüsselte Verbindung in einem
 
(unsicheren) Netzwerk – allen voran dem Internet – her. Sie sollten generell auf die Verwendung von
 
Programmen verzichten, die insbesondere Paßwörter, aber auch Daten, unverschlüsselt übermitteln. Vermeiden
 
Sie wenn möglich auch die Benutzung von telnet. Die Telnet-Version, die von Debian GNU/Linux verwendet
 
wird, unterstützt ebenfalls eine verschlüsselte Übertragung, aber gewöhnen Sie sich nicht daran, auf anderen
 
Systemen ist dies kein Standard.
 
ssh verschlüsselt eine Verbindung bereits vor der Übertragung des Paßwortes. Sie können also einigermaßen
 
sicher von jedem Ort aus sich auf einem Rechner einloggen. Ein Angreifer, der versucht auf einem Rechner auf
 
der Übertragungsstrecke Ihr Paßwort aus dem Datenstrom zu filtern, hat so nur eine geringe Chance auf Erfolg.
 
Er müßte genau zu dem Zeitpunkt das Datenpaket erwischen, mit dem Sie bei den ssh-Instanzen den Key
 
austauschen!
 
Die einfachste Form der Benutzung von ssh ist der Aufruf mit der Angabe des gewünschten Zielrechners. Das
 
Kommando: ssh hoshi.openoffice.de stellt eine verschlüsselte Verbindung zu diesem Rechner her und
 
meldet Sie mit dem gleichen Benutzernamen wie auf dem lokalen Rechner an. Sie können zusätzlich einen
 
anderen Benutzernamen mit der Option -l angeben: ssh -l fr hoshi.openoffice.de.
 
Wenn die beiden Benutzernamen identisch sind und der Rechner, von dem aus Sie sich einloggen, in der Datei
 
/etc/hosts.equiv oder /etc/ssh/shosts.equiv aufgeführt ist, können Sie sich ohne Paßwortabfrage
 
anmelden.
 
Weitere Informationen finden Sie in der Man-Page zu ssh (man ssh).
 
4.12. Euro Symbol
 
Um auf einem Debian System auch das Euro Symbol auf der Konsole und unter X benutzen zu können wurde
 
von Javier Fernández-Sanguino Peña das „Debian Euro HOWTO“
 
(http://www.debian.org/doc/manuals/debian-euro-support/) geschrieben. Weiterhin stehen die beiden Pakete
 
euro-support und tetex-eurosym zur Verfügung.
 
4.13. Menü-System
 
Über das Debian GNU-Menüsystem werden alle auf dem System installierten Pakete automatisch in die Menüs
 
und Menüleisten der Windowmanager oder auch des GNOME-Panels eingebunden. Neu installierte Pakete
 
werden automatisch den Menüs hinzugefügt, dies erledigen die Installationsscripte der einzelnen Pakete. Sie
 
können diese Einträge in den Menüs als Systemadministrator für alle Benutzer auf dem System ändern oder
 
aber Ihre eigenen Menüs erzeugen bzw. die systemweit installierten verändern.
 
Die Debian GNU-Menüstruktur stellt sich wie folgt dar:
 
Apps -- Menü für Anwendungen
 
Editors -- Programme zur Bearbeitung von Texten
 
Net -- E-Mail, News, Webbrowser, IRC, etc.
 
Programming -- Debugger, etc.
 
Shells -- bash, ksh, zsh, etc.
 
Tools -- Diverse Tools: xclock, xmag, xman, etc.
 
Viewers -- Bildbetrachter, gs, xawtv, etc.
 
Math -- gnuplot, octave, oleo, etc.
 
Graphics -- xpaint, xfig, xtiff, etc.
 
Emulators -- dosemu, etc.
 
Sound -- TkMidity, etc.
 
System -- System Verwaltung und Beobachtung
 
Games -- Menü für Spiele
 
Adventure -- Abenteuer, zork, MOO’s, etc
 
Arcade -- alles was schnell ist...
 
Board -- Brettspiele: Gnuchess, pente, gnugo
 
Card -- Solitare, etc
 
188
 
Kapitel 4. Installation weiterer Pakete
 
Puzzles -- xpuzzles, ...
 
Sports -- Sportliche Spiele
 
Strategy -- lincity, freeciv
 
Tetris-like -- Alles was runterf&auml;llt....
 
Toys -- oneko, xeyes, etc.
 
Screen --
 
Lock -- xlock, etc.
 
Screen-saver -- Bildschirmschoner
 
Root-window -- Hintergründe
 
Window-managers -- Umschalten zwischen verschiedenen Windowmanagern
 
Modules -- fvwm modules, etc.
 
XShells -- shells (xterm, rxvt, ...)
 
Verändern Sie nichts an dieser Struktur. Die Paketbetreuer haben die Möglichkeit, Ergänzungen zu dieser
 
Struktur einzubringen, als Anwender sollten Sie dies aber so belassen.
 
Nach jeder Veränderung an den Menüeintragen müssen Sie das Programm update-menus aufrufen. Beachten
 
Sie hierbei, daß dies jeweils mit dem Benutzernamen erfolgen muß zu dem auch die Menüeinträge geändert
 
wurden. Systemweite Änderungen werden vom Superuser (root) mittels update-menus dem System
 
bekanntgegeben. Bei der Installation von Paketen wird update-menus automatisch aufgerufen.
 
Für jedes unter Debian GNU/Linux installierte Paket wird im Verzeichniss /usr/lib/menu/ mit dem
 
jeweiligen Namen des Paketes (also zum Beispiel xterm) eine Datei angelegt. In dieser stehen Informationen
 
zum Namen des Paketes, zum Text, der in den Menüs erscheinen soll und zur Position des Eintrages in den
 
Menüs. Ändern Sie nichts in diesen Dateien, diese können bei einem Update des Paketes überschrieben werden.
 
Für systemweite Veränderungen steht das Verzeichniss /etc/menu/ zur Verfügung. In diesem kann der
 
Systemadministrator eigene Dateien erzeugen oder Kopien einzelner Dateien aus /usr/lib/menu/ ablegen
 
und diese verändern.
 
Hier eine Übersicht der Syntax dieser Dateien am Beispiel von GNUPlot:
 
?package(gnuplot):\ der Name des Paketes
 
needs=text\ Benutzeroberfläche die von diesem Programm benötigt wird,
 
die möglichen Parameter dazu sind:
 
needs=X11: dieses Programm benötigt X11
 
needs=text: für Programme die nur im Text-Modus laufen
 
(unter X11 muß der Windowmanager hierzu ein
 
xterm oder rxvt starten)
 
needs=vc: Programm läuft nur auf der Linux Konsole
 
needs=wm: Programm startet einen anderen Windowmanager
 
section=Apps/Math\ bezeichnet den Eintrag im Menübaum
 
title="Gnuplot"\ der Text für den Eintrag (nicht zu lang)
 
command="/usr/bin/gnuplot" der Pfad und Programmname der aufgerufen werden soll
 
Wenn Sie beispielsweise den Text, der für das Programm GNUPlot in den Menüs erscheint, ändern wollen,
 
können Sie den Text in der Zeile title="Gnuplot"\ zwischen den Anführungszeichen ändern. Vergessen Sie
 
nicht, danach update-menus aufzurufen.
 
Um einzelne Anwendungen an anderer Stelle im Menubaum erscheinen zu lassen, verändern Sie einfach die
 
Zeile section=Apps/Math\.
 
Änderungen an den persönlichen Einstellungen für das Debian GNU/Linux-Menüsystem kann jeder Benutzer
 
individuell in seinem Homeverzeichniss, unterhalb von .menu vornehmen. Wenn dieses Verzeichnis noch nicht
 
existiert, können Sie dieses mit mkdir .menu anlegen. Sie können nun in diesem Verzeichnis eigene Dateien
 
anlegen oder Dateien aus /usr/lib/menu/ kopieren und verändern. Diese Änderungen sind nicht Systemweit
 
gültig und werden nur für den jeweiligen Benutzer wirksam. Auch hier ist anschließend wieder das Programm
 
update-menus aufzurufen, diesmal aber nicht als Superuser, sondern mit dem zugehörigen Account des
 
Benutzers.
 
Neben dem Verändern von Einträgen besteht auch die Möglichkeit, Menüeinträge komplett auszublenden.
 
Hierzu erzeugt man einfach eine leere Datei mit dem Namen des Paketes, welches nicht mehr im Menübaum
 
auftauchen soll. Das Kommando touch ist hierzu hervorragend geeignet:
 
189
 
Kapitel 4. Installation weiterer Pakete
 
cd ~/.menu
 
touch gnuplot
 
...würde also beispielsweise den Eintrag für Gnuplot aus den Menüs entfernen. Auch dies funktioniert natürlich
 
für jeden Benutzer im Verzeichnis ~/.menu/ oder systemweit unter /etc/menu/. Weitere Informationen zum
 
Debian GNU/Linux-Menüsystem finden Sie in der Dokumentation zu dem Paket menu oder auf den Webseiten
 
http://www.debian.org/doc/packaging-manuals/menu.html/. Dort sind auch weitere Internas beschrieben, wie
 
zum Beispiel Informationen darüber, was zu tun ist, wenn man ein eigenes Debian-Paket bei der Installation
 
automatisch ins Menüsystem einbinden möchte.
 
4.14. Paketmanagement für Umsteiger
 
Dieser Abschnitt soll Umsteigern von anderen GNU Linux Distributionen das Paketmanagement erleichtern.
 
Wenn Sie sich bereits in die Syntax von RPM eingearbeitet haben und mit den wichtigsten Kommandos vertraut
 
sind, finden Sie hier schnell die entsprechenden Kommandos für Ihr neues Debian GNU System.
 
Tabelle 4-1. RPM / DEB Paketmanagement
 
RPM DEB Aktion
 
rpm -i name dpkg -i name Installiert das Paket name
 
rpm -Va debsums -a Überprüft die Checksummen aller
 
installierten Dateien auf dem System
 
rpm -qf /etc/syslog.conf dpkg -S /etc/syslog.conf Zeigt an zu welchem Paket die Datei
 
/etc/syslog.conf gehört
 
rpm -ql name dpkg -L name Listet alle Dateien des Paketes name
 
auf
 
rpm -qpi name.rpm dpkg -I name.deb Zeigt die Informationen zum
 
Paketarchiv name.xxx
 
rpm -qpl name.rpm dpkg -c name.deb Listet alle Dateien des Paketarchives
 
name.xxx auf
 
rpm -qia dpkg -l Listet alle Pakete mit Informationen
 
zu den Paketen. Das rpm-Kommando
 
zeigt alle Paketinformationen, die
 
dpkg-Variante nur die
 
Kurzinformationen.
 
Kurzinformationen können mit rpm
 
über das Kommando rpm -qa
 
--qf ’%-20{NAME}
 
%-10{VERSION} %{SUMMARY}\n’
 
ausgegeben werden.
 
rpm: Funktion nicht implementiert dpkg -r name Entfernt das Paket name,
 
Konfigurationsdateien werden nicht
 
gelöscht
 
rpm -e name dpkg --purge name Entfernt das Paket name inklusive
 
aller Konfigurationsdateien
 
rpm -qi name dpkg -s name Zeigt die Paketinformationen (Name,
 
Status, Version, Abhängigkeiten
 
usw.) zu dem Paket name an.
 
rpm -q --qf ’%-20{NAME}
 
%-10{VERSION}
 
%{SUMMARY}\n’name
 
dpkg --list name Zeigt eine Kurzbeschreibung zu dem
 
Paket name an.
 
190
 
Kapitel 4. Installation weiterer Pakete
 
RPM DEB Aktion
 
rpm -qa --qf ’[%{=NAME}:
 
%{FILENAMES}\n]’ string
 
dpkg -S string Sucht nach dem String string in den
 
Paketinformationen/Dateilisten aller
 
installierten Pakete
 
rpm -q --whatrequires name dpkg Welche Pakete hängen von dem
 
Paket string ab.
 
rpm -q -requires name dpkg Welche Abhängigkeiten hat das
 
Paket string.
 
rpm -q --scripts name dpkg Zeigt die Scripte des Paketes string
 
an.
 
4.15. Installation von fremden Paketen
 
Debian GNU/Linux verwendet ein eigenes Paketformat, welches von keiner anderen Distribution (außer
 
solchen, die auf Debian GNU/Linux basieren) verwendet wird. Natürlich sind aus diesem Grunde alle
 
Programme zur Installation auf dieses Paketformat abgestimmt. Wir sind sicher, daß Sie alle benötigten Pakete
 
in der Debian GNU/Linux-Distribution finden werden, trotzdem zeigen wir Ihnen hier einen Weg, um fremde
 
Pakete auf einem Debian GNU/Linux-System zu installieren. Dies kann auch zur Installation von
 
kommerzieller Software nützlich sein, die häufig im rpm-Format vorliegt.
 
4.16. alien
 
Um Pakete in fremden Formaten auf einem Debian GNU/Linux zu installieren, dient das Programm alien.
 
alien ist natürlich auf allen Linux-Distributionen lauffähig und kann alle verbreiteten Paketformate entpacken
 
und in das Format der verwendeten Distribution konvertieren.
 
Natürlich gibt es bei solchen Konvertierungen manchmal Probleme. Das zu installierende Paket wird in den
 
meisten Fällen Bibliotheken verwenden, die nicht zwingend auf dem Zielsystem vorhanden sind, oder eventuell
 
nicht in der passenden Version vorliegen. Gegebenenfalls sind auch diese Bibliotheken via alien zu
 
installieren. In den meisten Fällen geht die Installation aber problemlos über die Bühne.
 
alien hat eine Reihe von Optionen, eine Übersicht bekommen Sie, wenn Sie alien ohne weitere Optionen
 
aufrufen.
 
linux:/home/fr/rpm2deb# alien
 
Usage: alien [options ...] file [...]
 
file [...] Package file or files to convert.
 
-d, --to-deb Generate a Debian deb package. (default)
 
Enables the following options:
 
--patch=<patch> Specify patch file to use instead of automatically
 
looking for patch in /var/lib/alien.
 
--nopatch Do not use patches.
 
-r, --to-rpm Generate a RedHat rpm package.
 
-t, --to-tgz Generate a Slackware tgz package.
 
--to-slp Generate a Stampede .slp package.
 
-i, --install Install generated package.
 
-g, --generate Unpack, but do not generate a new package.
 
-s, --single Like --generate, but do not create .orig directory.
 
-c, --scripts Include scripts in package.
 
-k, --keep-version Do not change version of generated package.
 
--description=<desc> Specify package description.
 
-h, --help Display this help message.
 
-v, --version Display alien’s version number.
 
Die Benutzung von alien ist denkbar einfach. Im einfachsten Fall gibt man alien einfach den Namen des zu
 
konvertierenden Paketes, alien erstellt dann daraus ein Paket mit der Endung .deb. Dieses können Sie dann
 
191
 
Kapitel 4. Installation weiterer Pakete
 
wie jedes andere Paket unter Debian GNU/Linux installieren. Als Beispiel soll uns das Programm pi-address
 
dienen. Wenn Sie über einen Palm-Pilot verfügen, sollten Sie das Debian Paket nach dem Versuch nicht
 
löschen, wir kommen später noch einmal darauf zurück.
 
linux:/home/fr/rpm2deb# alien pilot-address-0.3.0-1.i386.rpm
 
-- Examining pilot-address-0.3.0-1.i386.rpm
 
-- Unpacking pilot-address-0.3.0-1.i386.rpm
 
2813 blocks
 
----
 
-- Automatic package debianization
 
-- Building the package pilot-address_0.3.0-2_i386.deb
 
dh_testdir
 
# Nothing to do.
 
dh_testdir
 
dh_testroot
 
dh_clean -k
 
dh_installdirs
 
cp -a ‘ls |grep -v debian‘ debian/tmp
 
dh_installdocs
 
dh_installexamples
 
dh_installmenu
 
dh_installcron
 
dh_installchangelogs
 
dh_compress
 
dh_suidregister
 
dh_installdeb
 
dh_shlibdeps
 
dh_gencontrol
 
dh_makeshlibs
 
dh_md5sums
 
dh_builddeb
 
dpkg-deb: building package ‘pilot-address’ in ‘../pilot-address_0.3.0-2_i386.deb’.
 
Generation of pilot-address_0.3.0-2_i386.deb complete.
 
-- Successfully finished
 
linux:/home/fr/rpm2deb# ls -l
 
total 860
 
-rw-r--r-- 1 root root 437258 Feb 2 16:22 pilot-address-0.3.0-1.i386.rpm
 
-rw-r--r-- 1 root root 435982 Feb 2 16:23 pilot-address_0.3.0-2_i386.deb
 
Sie können beispielsweise ein RedHat-Paket mit dem Kommando alien paket.rpm konvertieren, Sie
 
erhalten dann ein Debian-Paket mit der Endung .deb. In diesem Beispiel würde die Datei also paket.deb
 
heißen. Sie können dieses dann wie üblich mit dpkg -i paket.deb installieren.
 
192
 
Kapitel 5. X11
 
Die Basisinstallation von Debian GNU/Linux sieht keine grafische Benutzeroberfläche vor. Aus Sicht des
 
Einsteigers macht das die Installation nicht gerade leichter, da heute jeder mit der Handhabung einer Maus
 
vertraut ist. Wie Sie aber gesehen haben, stellt eine textbasierte Installationsroutine auch kein wirkliches
 
Hindernis dar. Für eine textbasierte Installation sprechen zwei Gründe: zum einen wird nicht auf allen Systemen
 
eine grafische Benutzeroberfläche benötigt (zum Beispiel Server), und zweitens sind nicht alle von Debian
 
GNU/Linux unterstützten Architekturen (z. B. m68k) von der Hardwareausstattung her in der Lage, eine
 
sinnvolle grafische Installation durchzuführen.
 
Debian GNU/Linux verwendet, wie alle anderen Linux-Distributionen auch, das X-Window-System zur
 
Darstellung der grafischen Benutzeroberfläche. Die Treiber für die verschiedenen Grafikkarten werden vom
 
XFree86-Team entwickelt (http://www.xfree86.org). XFree86 ist eine freie Implementation des
 
X-Window-Systems, welches auf allen Unix-ähnlichen Betriebssystemen läuft. Die „86“ im Namen läßt
 
vermuten, daß diese Software nur auf 3/4/586er-Prozessoren lauffähig ist. Ursprünglich wurde XFree86 auch
 
dafür entwickelt, mittlerweile ist XFree86 aber auch auf anderen Prozessor-Architekturen lauffähig. Somit
 
müssen Debian GNU/Linux-Benutzer auf keiner Architektur auf den Luxus einer grafischen Oberfläche
 
verzichten.
 
X11 selbst entstand im Jahre 1986 als Ergebnis der beiden Vorgängerprojekte V und W. Im Laufe der
 
Entwicklung wurden die grundlegenden Protokolle weiterentwickelt, blieben aber immer zu den älteren
 
Versionen kompatibel. 1992 erschien dann die erste Version von X11 für PCs. Das XFree86-Projekt selbst
 
startete mit einem Referenzserver für die PC-Plattform, welcher von Thomas Röll (heute Xi Graphics)
 
geschrieben wurde, welcher dem Projekt zur Verfügung gestellt wurde.
 
Ungeachtet dessen ist es natürlich ohne weiteres möglich, auch mit Debian GNU/Linux in den Genuß einer
 
grafischen Benutzeroberfläche zu kommen. Um eine Grafikkarte zu benutzen benötigt man, wie bei anderen
 
Betriebssystemen auch, einen Treiber. Diese Treiber stehen in Form sogenannter „X-Server“ zur Verfügung. Es
 
werden im folgenden die Installation dieses Servers und einige ausgewählte Anwendungen vorgestellt.
 
Die aktuelle Version 4 von XFree86 ist ab der Version „woody“, also Debian GNU/Linux 3.0, in die
 
Distribution integriert worden. Die ältere Version 3.3.6 ist jedoch weiterhin verfügbar, so das bei Problemen mit
 
den Treibern aus XFree 4 jederzeit auf die Version 3 zurückgegriffen werden kann.
 
5.1. Installation von XFree86 3.3.x
 
Wie bei allen neuen Treibern, die man in ein Debian GNU/Linux-System einbindet, ist es vorteilhaft, möglichst
 
genaue Informationen über die verwendete Hardware zu haben. Bei der Vielfalt der auf dem Markt angebotenen
 
Grafikkarten kann es da schon manchmal etwas schwierig sein, herauszufinden, welches Modell man in seinem
 
Rechner hat. Gerade bei Komplettgeräten hat man nicht unbedingt die genaue Modellbezeichnung zur Hand.
 
Schwierig wird es auch bei Motherboards mit einem integrierten Grafikchip. Eine Übersicht der unterstützten
 
Chipsets für die zur Zeit aktuelle Version 3.3.6 von XFree86 finden Sie unter der URL:
 
http://www.xfree86.org/3.3.6/README3.html#3 . Bitte beachten Sie: Dies ist eine Liste der Grafikchips auf
 
den jeweiligen Karten, Sie finden keine Namen der Kartenhersteller. Wenn größere Probleme bei der
 
Installation der Grafikkarte auftauchen, müssen Sie im schlimmsten Fall Ihren Rechner öffnen und einen Blick
 
auf die Grafikkarte werfen. Aber meist ist das nicht notwendig. Das Programm xviddetect erkennt die
 
meisten Grafikkarten und gibt auch gleich den Namen des passenden X-Servers aus:
 
fr@linux:~$ xviddetect
 
The XFree86 server for Matrox Graphics, Inc. MGA G400 AGP is
 
svga
 
Wenn Sie lediglich auf den Namen des benötigten X-Servers Wert legen, können Sie xviddetect mit der
 
Option -q aufrufen.
 
Hier noch ein anderes Beispiel, diesmal ist xviddetect allerdings nicht in der Lage die Karte zu erkennen:
 
fr@linux:~$ xviddetect
 
Sorry, I wasn’t able to determine a driver for your video card. This script
 
193
 
Kapitel 5. X11
 
only detects PCI and some SBUS devices. If you know, or figure out, which X
 
driver to use, please submit a wishlist bug against this package with the
 
appropriate info. Please see http://bugs.debian.org/ for information about
 
submitting bugs.
 
I will now display a list of PCI devices I found on your computer. Please
 
send the line associated with your video device if you do find a driver.
 
80867190|i386|Intel Corporation|440BX/ZX - 82443BX/ZX Host bridge
 
80867191|i386|Intel Corporation|440BX/ZX - 82443BX/ZX AGP bridge
 
80867110|i386|Intel Corporation|82371AB PIIX4 ISA
 
80867111|i386|Intel Corporation|82371AB PIIX4 IDE
 
80867112|i386|Intel Corporation|82371AB PIIX4 USB
 
80867113|i386|Intel Corporation|82371AB PIIX4 ACPI
 
10222020|i386|Advanced Micro Devices [AMD]|53c974 [PCscsi]
 
109e0350|i386|Brooktree Corporation|Bt848 TV with DMA push
 
12741371|i386|Ensoniq|ES1371 [AudioPCI-97]
 
10b79050|i386|3Com Corporation|3c905 100BaseTX [Boomerang]
 
11030004|i386|unknown manufacturer|unknown model
 
11030004|i386|unknown manufacturer|unknown model
 
105d5348|i386|Number 9 Computer Company|Revolution 4
 
Wenn Sie einen genaueren Blick auf die Liste der gefundenen PCI-Geräte werfen, werden Sie sicher Ihre
 
Grafikkarte darunter finden. In diesem Fall ist es der Eintrag in der letzten Zeile. Sie können mit diesen
 
Angaben die entsprechende Karte und den dazugehörigen X-Server bestimmen. Eine weitere Hilfe ist
 
SuperProbe, doch dazu gleich mehr.
 
Für die Konfiguration von XFree86 stehen bei Debian GNU/Linux drei Programme zur Auswahl, zwei
 
Versionen mit textbasierter und eine Version mit grafischer Oberfläche. Installieren Sie zunächst die benötigten
 
Pakete. Ein sinnvoller Start ist das Paket xf86setup, in diesem befinden sich die Konfigurationsprogramme
 
xf86config und XF86Setup. Das Paket xf86setup benötigt einige weitere Pakete, wie immer werden Sie
 
während der Installation mit dselect oder apt darüber informiert, welche weiteren Pakete benötigt werden.
 
Das dritte Konfigurationsprogramm, anXious, finden Sie im Paket xviddetect.
 
Folgende Pakete, die zum X-Window-System gehören, werden benötigt: xbase-clients, xfonts-100dpi
 
oder xfonts-75dpi, xfonts-base, xserver-common, xserver-vga16 oder ein anderer xserver,
 
tcl8.0, tk8.0, xlib6g.
 
Während der Installation dieser Pakete werden Sie gefragt, ob Sie den gerade installierten X-Server als
 
„default“ einstellen wollen und ob Sie eine Konfigurationsdatei für XFree86 erzeugen wollen. Wenn Sie dies
 
tun wollen, wird das textbasierte Installationsprogramm xf86config gestartet. Es schadet nicht diesen Schritt
 
zu überspringen, Sie können später xf86config immer noch von Hand starten.
 
Versuchen Sie zunächst, einige nähere Informationen zu Ihrer Grafikkarte herauszubekommen. Im Paket
 
xf86setup befindet sich das sehr nützliche Programm SuperProbe (beachten Sie die Groß- und
 
Kleinschreibung!). Führen Sie dieses Programm einmal als Superuser aus, erhalten Sie beispielsweise folgende
 
Informationen:
 
SuperProbe Version 2.20 (17 June 1999)
 
(c) Copyright 1993,1994 by David Wexelblat <dwex@xfree86.org>
 
(c) Copyright 1994-1998 by The XFree86 Project, Inc
 
This work is derived from the ’vgadoc2.zip’ and
 
’vgadoc3.zip’ documentation packages produced by Finn
 
Thoegersen, and released with all appropriate permissions
 
having been obtained. Additional information obtained from
 
’Programmer’s Guide to the EGA and VGA, 2nd ed’, by Richard
 
Ferraro, and from manufacturer’s data books
 
Bug reports are welcome, and should be sent to XFree86@XFree86.org.
 
In particular, reports of chipsets that this program fails to
 
correctly detect are appreciated.
 
194
 
Kapitel 5. X11
 
Before submitting a report, please make sure that you have the
 
latest version of SuperProbe (see http://www.xfree86.org/FAQ).
 
First video: Super-VGA
 
Chipset: Matrox (chipset unknown) (PCI Probed)
 
Signature data: 8 (please report)
 
RAMDAC: Generic 8-bit pseudo-color DAC
 
(with 6-bit wide lookup tables (or in 6-bit mode))
 
Entscheidend sind die letzten Zeilen. Das Testprogramm hat in diesem Beispiel eine Grafikkarte der Firma
 
Matrox gefunden. Diese wird von XFree86-Server „SVGA“ unterstützt.
 
Eine weitere Möglichkeit – neben dem Öffnen des Rechners – Informationen über die Grafikkarte zu
 
bekommen, besteht darin, die Ausgabe des Kommandos cat /proc/pci nach Informationen zu durchsuchen.
 
Hier ein Ausschnitt der Ausgabe des Befehls mit den Informationen zu der gleichen Karte:
 
Bus 1, device 0, function 0:
 
VGA compatible controller: Matrox Unknown device (rev 3).
 
Vendor id=102b. Device id=525.
 
Medium devsel. Fast back-to-back capable.
 
Master Capable. Latency=32. Min Gnt=16.Max Lat=32.
 
Prefetchable 32 bit memory at 0xe8000000 [0xe8000008].
 
Non-prefetchable 32 bit memory at 0xe4000000 [0xe4000000].
 
Non-prefetchable 32 bit memory at 0xe5000000 [0xe5000000].
 
Auch hier ist wieder die Information, daß es sich um eine Matrox-Karte handelt, zu finden. Alternativ läßt sich
 
auch das Programm lspci aus dem Paket pciutils einsetzen, dieses bereitet die Ausgabe etwas
 
ansprechender auf.
 
Sollten Sie mit diesen Methoden keine ausreichenden Informationen über die im Rechner eingebaute
 
Grafikkarte bekommen, können Sie immer noch probieren, das X-Window-System mit dem SVGA-Treiber zum
 
Laufen zu bekommen. Dieser unterstützt die gebräuchlichsten Karten. Ansonsten hilft in vielen Fällen auch ein
 
Blick in den Rechner. Meist sind die benötigten Informationen auf dem größten Chip zu finden, oder aber die
 
Platine wurde vom Hersteller mit nützlichen Informationen bedruckt. Wer seinen Rechner aber individuell
 
zusammengestellt hat, wird wissen, welche Karte im Rechner steckt.
 
Weiterhin ist es wichtig festzustellen, an welchem Anschluß die Maus steckt und um was für ein Maus-Modell
 
es sich handelt. Wenn Sie das Programm gpm bereits installiert haben, sind Ihnen diese Angaben aber vertraut.
 
Doch nun zu den eigentlichen Konfigurationsprogrammen.
 
5.1.1. XF86Setup
 
Einen ersten Versuch sollten Sie mit XF86Setup starten.
 
195
 
Kapitel 5. X11
 
Abbildung 5-1. XF86 Setup
 
XF86Setup erlaubt die Konfiguration des X-Window-Systems über eine grafische Oberfläche. Hierzu wird
 
bereits ein X-Server gestartet (VGA16), der auf allen Grafikkarten in einer minimalen Auflösung lauffähig ist.
 
Nach dem Start können Sie, falls die Maus noch nicht funktioniert, mit den Tasten TAB, SPACE und RETURN
 
durch die Menüs wandern und die gewünschten Einstellungen vornehmen. Am besten fangen Sie mit den
 
Einstellungen zur Maus an, Sie haben es dann einfacher, den Rest zu konfigurieren.
 
Wenn Sie den Menüpunkt Mouse wählen, bekommen Sie zuerst eine kurze Hilfe angezeigt. Sie finden hier u. a.
 
Angaben zu den üblichen Gerätedateien (Devices, z.B. /dev/psaux oder /dev/ttyS0), an denen die Maus
 
angeschlossen sein könnte. Verlassen Sie die Hilfe mit der RETURN
 
Im folgenden können Sie alle Einstellungen für die Maus vornehmen. Die beiden wichtigsten Parameter sind
 
das sogenannte „Mouse Protocol“ und das „Mouse Device“. Sollte die Maus bereits funktionieren, sind hier im
 
allgemeinen keine Einstellungen nötig.
 
196
 
Kapitel 5. X11
 
Abbildung 5-2. XF86 Setup
 
Im hier gezeigten Beispiel wird eine PS/2-Maus verwendet. Wählen Sie also das gewünschte Protokoll der
 
Maus (den Maus-Typ) und das dazugehörige Device aus. Wenn es Ihnen zu mühselig ist, aus der langen Liste
 
das passende Device auswählen, können Sie das Device auch von Hand eingeben. Haben Sie alle Einstellungen
 
vorgenommen, so aktivieren Sie die Schaltfläche Apply unten rechts auf dem Bildschirm. Die bisher
 
vorgenommenen Einstellungen für die Maus werden damit übernommen und wenn alles korrekt angegeben
 
wurde, können Sie alle weiteren Einstellungen per Maus vornehmen.
 
Zur Einstellung der Tastatur gibt es nicht viel zu sagen, wählen Sie die passende Sprache aus.
 
197
 
Kapitel 5. X11
 
Abbildung 5-3. XF86 Setup
 
Stellen Sie nun unter Card den Typ Ihrer Grafikkarte ein. Sie können den Hersteller und das Modell aus einer
 
sehr umfangreichen Liste auswählen. Bei einigen Karten können genauere Einstellungen über die Schaltfläche
 
„Detailed Setup“ gemacht werden, beispielsweise wenn der Speicherausbau der Karte nicht korrekt erkannt
 
wird. Im allgemeinen sind dort aber keine Einstellungen nötig.
 
198
 
Kapitel 5. X11
 
Abbildung 5-4. XF86 Setup
 
Auch die Einstellungen für den Monitor sind recht einfach vorzunehmen, wählen Sie einen passenden Monitor
 
aus der Liste aus, von dem Sie glauben, daß er Ihrem Modell am nächsten kommt. Wenn Sie sich nicht sicher
 
sind, wählen Sie lieber erst mal einen kleineren, leistungsschwächeren Monitor aus, Sie können sonst Ihren
 
Monitor beschädigen. Wenn Sie in Ihrem Handbuch zum Monitor die technischen Daten für die horizontalen
 
und vertikalen Frequenzen finden können, können Sie diese auch unter „Monitor sync rates“ eintragen, so
 
nutzen Sie die Möglichkeiten Ihres Gerätes optimal.
 
199
 
Kapitel 5. X11
 
Abbildung 5-5. XF86 Setup
 
Unter „modeselection“ stellen Sie die gewünschten Auflösungen und die Anzahl der gewünschten Farben ein.
 
Sie können mehrere Auflösungen vorauswählen, zwischen denen Sie später mit STRG + ALT + + oder STRG
 
+ ALT + - (auf dem Zehnerblock) umschalten können. Dies funktioniert natürlich im laufenden Betrieb, ohne
 
Neustart des Systems. Wenn Sie nur über eine sehr einfache Grafikkarte mit sehr wenig Speicher verfügen,
 
wählen Sie besser eine Farbtiefe von 8 Bit (8 bpp), aber im allgemeinen sollten Sie mindestens 16 Bit zum
 
vernünftigen Arbeiten mit X auswählen.
 
200
 
Kapitel 5. X11
 
Abbildung 5-6. XF86 Setup
 
Unter „Other“ verbergen sich einige momentan weniger wichtige Einstellungen, die wir hier nur kurz
 
beschreiben wollen:
 
201
 
Kapitel 5. X11
 
Abbildung 5-7. XF86 Setup
 
• Allow server to be killed with hotkey sequence (Ctrl-Alt-Backspace)
 
Hier können Sie das Beenden des X-Servers mit dieser Tastenkombination unterbinden.
 
• Allow video mode switching
 
Wenn Sie unter „Modeselection“ verschiedene Auflösungen gleichzeitig gewählt haben, können Sie während
 
des Betriebes zwischen diesen mit der Tastenkombination STRG+ALT sowie + oder - auf dem Zehnerblock
 
der Tastatur umschalten. Sie können diese Funktion hier ausschalten.
 
• Don’t Trap Signals - prevents the server from exiting cleanly
 
Wenn diese Option nicht aktiviert ist, kann der X-Server Signale wie zum Beispiel SIGTERM abfangen.
 
• Allow video mode changes from other hosts
 
Erlaubt Änderungen der Bildschirmauflösung während der Laufzeit des Servers auch von anderen Rechnern
 
aus.
 
• Allow changes to keyboard and mouse settings from other hosts
 
Erlaubt die Änderung von Tastatur und Mauseinstellungen von anderen Rechnern aus.
 
202
 
Kapitel 5. X11
 
Wählen Sie nun die Schaltfläche „Done“ und bestätigen Sie die nächste Mitteilung mit „OK“. Es wird nun
 
versucht, den X-Server mit den eingestellten Parametern zu starten. Sollte dies fehlschlagen, d. h. der Server
 
kann gar nicht gestartet werden, versuchen Sie es noch einmal mit der Konfiguration. Stellen Sie dann aber nicht
 
zu hohe Werte ein und achten Sie darauf, daß Sie auch den benötigten X-Server installiert haben. Ein fehlender
 
X-Server macht sich durch eine solche Zeile: couldn’t execute "usr/X11R6/bin/XF86_SVGA" no
 
such file or directory bemerkbar. In diesem Fall installieren Sie das benötigte Paket.
 
Zur Auswahl stehen Ihnen folgende X-Server (XFree 3.3.5):
 
• xserver-3dlabs
 
• xserver-8514
 
• xserver-agx
 
• xserver-common
 
• xserver-fbdev
 
• xserver-ggi
 
• xserver-i128
 
• xserver-mach32
 
• xserver-mach64
 
• xserver-mach8
 
• xserver-mono
 
• xserver-p9000
 
• xserver-s3v
 
• xserver-s3
 
• xserver-svga
 
• xserver-vga16
 
• xserver-w32
 
Genauere Informationen, welche Karte von welchem Server unterstützt wird, finden Sie auf den Seiten des
 
XFree-Projektes unter http://www.xfree86.org .
 
Wenn der X-Server gestartet wird, können Sie die Konfigurationsdatei abspeichern. Unter Debian GNU/Linux
 
finden Sie die Datei XF86Config unter /etc/X11/.
 
Normalerweise wird der X-Server in der niedrigsten Auflösung, die in der Konfigurationsdatei eingetragen ist,
 
gestartet. Wenn Sie dies ändern wollen, um nicht immer von Hand umschalten zu müssen, können Sie die nicht
 
benötigten Einträge aus der Konfigurationsdatei löschen oder den gewünschten Eintrag als ersten in die Teile
 
mit den Auflösungen eintragen.
 
Suchen Sie hierzu in der Datei /etc/X11/XF86Config nach einem Eintrag in der Form:
 
Section "Screen"
 
Driver "SVGA"
 
Die Zeile „Driver“ beschreibt hierbei den installierten X-Server. Einige Zeilen tiefer finden Sie einen Abschnitt
 
„Display“ zu jeder möglichen Farbtiefe („Depth“)
 
SubSection "Display"
 
Depth 16
 
Modes "1600x1200" "800x600" "1280x1024"
 
ViewPort 0 0
 
EndSubSection
 
In diesem Beispiel würde der X-Server (SVGA) immer mit der Auflösung 1600x1200 Punkte starten, mit der
 
Möglichkeit, auf 800x600 und 1280x1024 Punkte herunterzuschalten, bei einer Farbtiefe von 16 Bit. Wenn Sie
 
203
 
Kapitel 5. X11
 
die Konfigurationsdatei neu erstellen, zum Beispiel wie hier beschrieben mit dem Programm XF86Config,
 
werden die Einträge zur Sicherheit immer aufsteigend sortiert in die Zeile geschrieben. Somit ist sichergestellt,
 
daß immer zuerst mit einer kleinen Auflösung gestartet wird, so daß Ihr Monitor nicht überlastet wird.
 
Wenn Sie mit der Konfiguration von X über das Programm XF86Setup keinen Erfolg hatten, probieren Sie es
 
mit dem Programm xf86config.
 
5.1.2. xf86config
 
Dieses zweite, textorientierte, Programm erlaubt es Ihnen ebenfalls, eine Konfigurationsdatei für XFree86 zu
 
erstellen. Auch dieses Programm müssen Sie als Superuser (root) starten.
 
linux:~# xf86config
 
This program will create a basic XF86Config file, based on menu selections you
 
make.
 
In the Debian system, the XF86Config file resides in /etc/X11. A sample
 
XF86Config file is supplied in the directory
 
/usr/share/doc/xserver-common/examples; it is configured for a standard VGA
 
card and monitor with 640x480 resolution. This program will ask for a pathname
 
when it is ready to write the file.
 
You can either take the sample XF86Config as a base and edit it for your
 
configuration, or let this program produce a base XF86Config file for your
 
configuration and fine-tune it. Refer to the file
 
/usr/share/doc/xserver-common/README.Config.gz for a detailed overview of the
 
configuration process.
 
For accelerated servers (including accelerated drivers in the SVGA server),
 
there are many chipset and card-specific options and settings. This program
 
does not know about these. On some configurations some of these settings must
 
be specified. Refer to the server manual pages and chipset-specific READMEs.
 
Before continuing with this program, make sure you know the chipset and amount
 
of video memory on your video card. The SuperProbe program can help with
 
this. It is also helpful if you know what server you want to run.
 
Press enter to continue, or CTRL-C to abort.
 
Zunächst sehen Sie einige Informationen speziell zur Debian GNU/Linux-Version dieses Programms. Da
 
XFree86 nicht nur auf GNU/Linux-Systemen lauffähig ist, finden sich die Konfigurationsdateien standardmäßig
 
nicht an der auf Debian-Systemen üblichen Stelle. Dies wurde für das Debian-Paket korrigiert. Wenn Sie
 
Probleme mit der Konfiguration haben oder weitere Informationen benötigen, finden Sie an dieser Stelle einen
 
Hinweis auf die entsprechenden Dateien in Ihrem System.
 
Zunächst müssen Sie die angeschlossene Maus bestimmen.
 
First specify a mouse protocol type. Choose one from the following list:
 
1. Microsoft compatible (2-button protocol)
 
2. Mouse Systems (3-button protocol)
 
3. Bus Mouse
 
4. PS/2 Mouse
 
5. Logitech Mouse (serial, old type, Logitech protocol)
 
6. Logitech MouseMan (Microsoft compatible)
 
7. MM Series
 
8. MM HitTablet
 
9. Microsoft IntelliMouse
 
10. Acecad tablet
 
If you have a two-button mouse, it is most likely of type 1, and if you have
 
a three-button mouse, it can probably support both protocol 1 and 2. There are
 
204
 
Kapitel 5. X11
 
two main varieties of the latter type: mice with a switch to select the
 
protocol, and mice that default to 1 and require a button to be held at
 
boot-time to select protocol 2. Some mice can be convinced to do 2 by sending
 
a special sequence to the serial port (see the ClearDTR/ClearRTS options).
 
If you have a PS/2 mouse, you should use type 4 regardless of how many
 
buttons it has.
 
Enter a protocol number: 4
 
If your mouse has only two buttons, it is recommended that you enable
 
Emulate3Buttons.
 
Please answer the following question with either ’y’ or ’n’.
 
Do you want to enable Emulate3Buttons? n
 
Now give the full device name that the mouse is connected to, for example
 
/dev/tty00. Just pressing enter will use the default, /dev/mouse.
 
Mouse device: /dev/psaux
 
Zum Arbeiten unter X11 ist es sehr nützlich, wenn Sie über eine Maus mit drei Tasten verfügen, dies erleichtert
 
viele Operationen, wie zum Beispiel das Kopieren und Einfügen von Texten. Auch viele Windowmanager
 
benutzen alle drei Maustasten.
 
Am weitesten verbreitet sind Mäuse mit PS/2-Anschluß, für diese ist in jedem Fall der Typ 4 zu wählen,
 
unabhängig davon, wie viele Tasten die Maus tatsächlich hat. Serielle Mäuse werden je nach Anzahl der Tasten
 
über den Typ 1 oder 2 aktiviert.
 
Die zweite Frage sollten Sie mit „y“ beantworten, wenn Ihre Maus nur über zwei Tasten verfügt. Sie können
 
dann die dritte Maustaste durch gleichzeitiges Drücken beider Tasten simulieren. Bei einer Dreitastenmaus
 
können Sie die Frage mit „n“ beantworten.
 
Die nächste Frage bezieht sich auf den Anschluß der Maus. Wenn Sie bereits einen Link /dev/mouse auf das
 
entsprechende Device angelegt haben, können Sie an dieser Stelle einfach die Eingabetaste drücken. Bei einer
 
Maus am PS/2-Anschluß lautet das passende Device: /dev/psaux, serielle Mäuse werden über /dev/ttyS0
 
oder /dev/ttyS1 angesprochen.
 
Beginning with XFree86 3.1.2D, the X server uses the new X11R6.1 XKEYBOARD
 
extension to manage the keyboard layout. This requires you to answer a
 
number of questions to add certain entries to the XF86Config file.
 
The following dialogue will allow you to select from a list of already
 
preconfigured keymaps. If you don’t find a suitable keymap in the list,
 
the program will try to combine a keymap from additional information you
 
are asked then. Such a keymap is by default untested and may require
 
manual tuning. Please report success or required changes for such a
 
keymap to XFREE86@XFREE86.ORG for addition to the list of preconfigured
 
keymaps in the future.
 
Press enter to continue, or CTRL-C to abort.
 
Dies sind einige Hinweise, daß seit einigen Versionen von XFree86 die XKEYBOARD-Erweiterung zur
 
Unterstützung von Tastaturen aktiviert wurde, dies ist für Sie nicht weiter interessant.
 
List of preconfigured keymaps:
 
1 Standard 101-key, US encoding
 
2 Microsoft Natural, US encoding
 
3 KeyTronic FlexPro, US encoding
 
4 Standard 101-key, US encoding with ISO9995-3 extensions
 
5 Standard 101-key, German encoding
 
6 Standard 101-key, French encoding
 
7 Standard 101-key, Thai encoding
 
8 Standard 101-key, Swiss/German encoding
 
205
 
Kapitel 5. X11
 
9 Standard 101-key, Swiss/French encoding
 
10 Standard 101-key, US international
 
11 Brazilian ABNT2
 
12 None of the above
 
Enter a number to choose the keymap.
 
5
 
Wählen Sie nun aus der Liste der angezeigten Tastaturbelegungen eine passende aus. Für den deutschsprachigen
 
Raum ist dies die Nummer 5, oder auch die Nummer 8 für weiter südlich wohnende Pinguine...
 
Now we want to set the specifications of the monitor. The two critical
 
parameters are the vertical refresh rate, which is the rate at which the
 
the whole screen is refreshed, and most importantly the horizontal sync rate,
 
which is the rate at which scanlines are displayed.
 
The valid range for horizontal sync and vertical sync should be documented
 
in the manual of your monitor. If in doubt, check the monitor database
 
/usr/share/doc/xserver-common/Monitors.gz to see if your monitor is there.
 
Press enter to continue, or CTRL-C to abort.
 
Im nächsten Schritt werden Sie nach einigen Angaben zu Ihrem Monitor gefragt. Wenn Sie im Handbuch keine
 
technischen Daten finden oder das Handbuch verschwunden ist, finden Sie vielleicht in der Datei
 
/usr/share/doc/xserver-common/Monitors.gz die passenden Angaben (benutzen Sie das Kommando
 
zmore, um mit gzip gepackte Dateien anzusehen).
 
You must indicate the horizontal sync range of your monitor. You can either
 
select one of the predefined ranges below that correspond to industrystandard
 
monitor types, or give a specific range.
 
It is VERY IMPORTANT that you do not specify a monitor type with a horizontal
 
sync range that is beyond the capabilities of your monitor. If in doubt,
 
choose a conservative setting.
 
hsync in kHz; monitor type with characteristic modes
 
1 31.5; Standard VGA, 640x480 @ 60 Hz
 
2 31.5 - 35.1; Super VGA, 800x600 @ 56 Hz
 
3 31.5, 35.5; 8514 Compatible, 1024x768 @ 87 Hz interlaced (no 800x600)
 
4 31.5, 35.15, 35.5; Super VGA, 1024x768 @ 87 Hz interlaced, 800x600 @ 56 Hz
 
5 31.5 - 37.9; Extended Super VGA, 800x600 @ 60 Hz, 640x480 @ 72 Hz
 
6 31.5 - 48.5; Non-Interlaced SVGA, 1024x768 @ 60 Hz, 800x600 @ 72 Hz
 
7 31.5 - 57.0; High Frequency SVGA, 1024x768 @ 70 Hz
 
8 31.5 - 64.3; Monitor that can do 1280x1024 @ 60 Hz
 
9 31.5 - 82.0; Monitor that can do 1280x1024 @ 76 Hz
 
10 31.5 - 95.0; Monitor that can do 1280x1024 @ 85 Hz
 
11 Enter your own horizontal sync range
 
Enter your choice (1-11): 9
 
You must indicate the vertical sync range of your monitor. You can either
 
select one of the predefined ranges below that correspond to industrystandard
 
monitor types, or give a specific range. For interlaced modes,
 
the number that counts is the high one (e.g. 87 Hz rather than 43 Hz).
 
1 50-70
 
2 50-90
 
3 50-100
 
4 40-150
 
5 Enter your own vertical sync range
 
Enter your choice: 4
 
206
 
Kapitel 5. X11
 
You must now enter a few identification/description strings, namely an
 
identifier, a vendor name, and a model name. Just pressing enter will fill
 
in default names.
 
The strings are free-form, spaces are allowed.
 
Enter an identifier for your monitor definition: monitor
 
Enter the vendor name of your monitor: no-name
 
Enter the model name of your monitor: nichts
 
Zunächst müssen Sie Angaben zur horizontalen Frequenz des Monitors machen, Sie können einen passenden
 
Typ aus der Liste wählen oder über die Auswahl „11“ die genauen Angaben aus dem Handbuch des Monitors
 
eingeben.
 
Im nächsten Schritt wählen Sie einen der vorgegebenen Werte für die vertikale Frequenz aus, oder geben Sie die
 
genauen Werte über die Auswahl „5“ ein.
 
Danach können Sie beliebige Angaben zur Definition Ihres Monitors in der Konfigurationsdatei machen.
 
Now we must configure video card specific settings. At this point you can
 
choose to make a selection out of a database of video card definitions.
 
Because there can be variation in Ramdacs and clock generators even
 
between cards of the same model, it is not sensible to blindly copy
 
the settings (e.g. a Device section). For this reason, after you make a
 
selection, you will still be asked about the components of the card, with
 
the settings from the chosen database entry presented as a strong hint.
 
The database entries include information about the chipset, what server to
 
run, the Ramdac and ClockChip, and comments that will be included in the
 
Device section. However, a lot of definitions only hint about what server
 
to run (based on the chipset the card uses) and are untested.
 
If you can’t find your card in the database, there’s nothing to worry about.
 
You should only choose a database entry that is exactly the same model as
 
your card; choosing one that looks similar is just a bad idea (e.g. a
 
GemStone Snail 64 may be as different from a GemStone Snail 64+ in terms of
 
hardware as can be).
 
Do you want to look at the card database? y
 
0 2 the Max MAXColor S3 Trio64V+ S3 Trio64V+
 
1 3DLabs Oxygen GMX PERMEDIA 2
 
2 3DVision-i740 AGP Intel 740
 
3 3Dlabs Permedia2 (generic) PERMEDIA 2
 
4 928Movie S3 928
 
5 ABIT G740 8MB SDRAM Intel 740
 
6 AGP 2D/3D V. 1N, AGP-740D Intel 740
 
7 AGX (generic) AGX-014/15/16
 
8 ALG-5434(E) CL-GD5434
 
9 AOpen AGP 2X 3D Navigator PA740 Intel 740
 
10 AOpen PA2010 Voodoo Banshee
 
11 AOpen PA45 SiS6326
 
12 AOpen PA50D SiS6326
 
13 AOpen PA50E SiS6326
 
14 AOpen PA50V SiS6326
 
15 AOpen PA80/DVD SiS6326
 
16 AOpen PG128 S3 Trio3D
 
17 AOpen PG975 3dimage975
 
Enter a number to choose the corresponding card definition.
 
Press enter for the next page, q to continue configuration.
 
Im folgenden können Sie den Typ Ihrer Grafikkarte festlegen. Am besten benutzen Sie hierzu die mitgelieferte
 
Datenbank, beantworten Sie also die Frage mit „y“.
 
207
 
Kapitel 5. X11
 
Sie bekommen nun die erste Seite der Datenbank angezeigt. Die Liste ist alphabetisch, aufsteigend sortiert. Sie
 
können mit der Taste RETURN weiterblättern. Wenn Sie die passende Grafikkarte gefunden haben, geben Sie
 
die Zahl ein, die Sie in der entsprechenden Zeile am linken Bildschirmrand sehen.
 
414 Matrox Millennium G200 SD 4MB mgag200
 
415 Matrox Millennium G200 SD 8MB mgag200
 
416 Matrox Millennium G400 16MB mgag400
 
417 Matrox Millennium G400 32MB mgag400
 
418 Matrox Millennium II 16MB mga2164w
 
419 Matrox Millennium II 4MB mga2164w
 
420 Matrox Millennium II 8MB mga2164w
 
421 Matrox Mystique mga1064sg
 
422 Matrox Mystique G200 16MB mgag200
 
423 Matrox Mystique G200 4MB mgag200
 
424 Matrox Mystique G200 8MB mgag200
 
425 Matrox Productiva G100 4MB mgag100
 
426 Matrox Productiva G100 8MB mgag100
 
427 MediaGX mediagx
 
428 MediaVision Proaxcel 128 ET6000
 
429 Mirage Z-128 ET6000
 
430 Miro CRYSTAL VRX Verite 1000
 
431 Miro Crystal 10SD with GenDAC S3 801/805
 
Enter a number to choose the corresponding card definition.
 
Press enter for the next page, q to continue configuration.
 
417
 
Your selected card definition:
 
Identifier: Matrox Millennium G400 32MB
 
Chipset: mgag400
 
Server: XF86_SVGA
 
Do NOT probe clocks or use any Clocks line.
 
Press enter to continue, or CTRL-C to abort.
 
Hier als Beispiel die schon anfangs vorgestellte Matrox-Karte, nach einigen Seiten werden Sie sicher auch Ihre
 
Karte in der Liste finden. Häufig gibt es mehrere Einträge für die gleiche Karte, sie unterscheiden sich meist in
 
der Speicherausstattung oder auch im benutzten Chipset. Für viele Karten gibt es auch einen allgemeingültigen
 
Eintrag in der Datenbank (generic), diesen können Sie verwenden, wenn Sie nicht ganz genau den
 
gewünschten Typ finden.
 
Nach der Auswahl der Karte wird das verwendete Chipset sowie der benötigte X-Server angezeigt. Beachten
 
Sie, daß Sie genau diesen X-Server auch als Debian-Paket installieren müssen, der Ihrer Karte entspricht.
 
Wichtig ist auch die nächste Zeile, hier finden Sie für diese Karte den Hinweis, daß es nicht nötig ist, weitere
 
Angaben zu den Frequenzen der Karte zu machen oder diese automatisch ermitteln zu lassen. Der X-Server
 
kann anhand der bisherigen Angaben alle weiteren Parameter ermitteln.
 
Now you must determine which server to run. Refer to the manpages and other
 
documentation. The following servers are available (they may not all be
 
installed on your system):
 
1 The XF86_Mono server. This a monochrome server that should work on any
 
VGA-compatible card, in 640x480 (more on some SVGA chipsets).
 
2 The XF86_VGA16 server. This is a 16-color VGA server that should work on
 
any VGA-compatible card.
 
3 The XF86_SVGA server. This is a 256 color SVGA server that supports
 
a number of SVGA chipsets. On some chipsets it is accelerated or
 
supports higher color depths.
 
4 The accelerated servers. These include XF86_S3, XF86_Mach32, XF86_Mach8,
 
XF86_8514, XF86_P9000, XF86_AGX, XF86_W32, XF86_Mach64, XF86_I128,
 
XF86_S3V, and XF86_3DLabs.
 
208
 
Kapitel 5. X11
 
These four server types correspond to the four different "Screen" sections in
 
XF86Config (vga2, vga16, svga, accel).
 
5 Choose the server from the card definition, XF86_SVGA.
 
Which one of these screen types do you intend to run by default (1-5)? 5
 
The server to run is selected by changing the first line of the
 
/etc/X11/Xserver file. For example, setting it to "/usr/bin/X11/XF86_SVGA"
 
selects the SVGA server.
 
Please answer the following question with either ’y’ or ’n’.
 
Do you want this program to modify the /etc/X11/Xserver file? y
 
Sie müssen nun den passenden X-Server bestimmen. Im Normalfall sollten Sie hier die „5“ auswählen, der
 
X-Server wurde ja bereits bei der Auswahl der Grafikkarte bestimmt.
 
Die nächste Frage sollten Sie auf alle Fälle mit „y“ beantworten, das Konfigurationsprogramm wird dann die
 
Datei /etc/X11/Xserver entsprechend Ihrer Auswahl modifizieren, so daß der passende X-Server gestartet
 
werden kann.
 
Now you must give information about your video card. This will be used for
 
the "Device" section of your video card in XF86Config.
 
You must indicate how much video memory you have. It is probably a good
 
idea to use the same approximate amount as that detected by the server you
 
intend to use. If you encounter problems that are due to the used server
 
not supporting the amount memory you have (e.g. ATI Mach64 is limited to
 
1024K with the SVGA server), specify the maximum amount supported by the
 
server.
 
How much video memory do you have on your video card:
 
1 256K
 
2 512K
 
3 1024K
 
4 2048K
 
5 4096K
 
6 Other
 
Enter your choice:
 
You must now enter a few identification/description strings, namely an
 
identifier, a vendor name, and a model name. Just pressing enter will fill
 
in default names (possibly from a card definition).
 
Your card definition is Matrox Millennium G400 32MB.
 
The strings are free-form, spaces are allowed.
 
Enter an identifier for your video card definition:
 
You can simply press enter here if you have a generic card, or want to
 
describe your card with one string.
 
Enter the vendor name of your video card:
 
Enter the model (board) name of your video card:
 
Die nächste Frage nach der Speicherausstattung Ihrer Karte können Sie anhand der Vorgaben aus der Liste
 
beantworten oder auch mit RETURN übergehen, der vorhandene Speicher wird vom X-Server im allgemeinen
 
automatisch erkannt.
 
Auch für die Grafikkarten müssen Sie eine ID, den Hersteller und das Modell angeben. Wenn Sie die Karte aus
 
der Datenbank ausgewählt haben, können Sie die Werte mit RETURN einfach übernehmen.
 
209
 
Kapitel 5. X11
 
A Clockchip line in the Device section forces the detection of a
 
programmable clock device. With a clockchip enabled, any required
 
clock can be programmed without requiring probing of clocks or a
 
Clocks line. Some cards don’t have a programmable clock chip.
 
Choose from the following list:
 
1 Chrontel 8391 ch8391
 
2 ICD2061A and compatibles (ICS9161A, DCS2824) icd2061a
 
3 ICS2595 ics2595
 
4 ICS5342 (similar to SDAC, but not completely compatible) ics5342
 
5 ICS5341 ics5341
 
6 S3 GenDAC (86C708) and ICS5300 (autodetected) s3gendac
 
7 S3 SDAC (86C716) s3_sdac
 
8 STG 1703 (autodetected) stg1703
 
9 Sierra SC11412 sc11412
 
10 TI 3025 (autodetected) ti3025
 
11 TI 3026 (autodetected) ti3026
 
12 IBM RGB 51x/52x (autodetected) ibm_rgb5xx
 
Just press enter if you don’t want a Clockchip setting.
 
What Clockchip setting do you want (1-12)?
 
Bei einigen Karten ist es notwendig, explizit den verwendeten Clockchip anzugeben, Sie können dies im
 
allgemeinen aber mit RETURN übergehen und dem X-Server überlassen.
 
For most modern configurations, a Clocks line is neither required or
 
desirable. However for some older hardware it can be useful since it
 
prevents the slow and nasty sounding clock probing at server start-up.
 
Probed clocks are displayed at server startup, along with other server
 
and hardware configuration info. You can save this information in a file
 
by running ’X -probeonly 2>output_file’. Be warned that clock probing is
 
inherently imprecise; some clocks may be slightly too high (varies per run).
 
At this point X -probeonly can be run, and, if possible, clock information
 
extracted from the output. It is recommended that you do this yourself and if
 
a set of clocks is shown then you add a clocks line (note that the list of
 
clocks may be split over multiple Clocks lines) to your Device section
 
afterwards. Be aware that a clocks line is not appropriate for most modern
 
hardware that has programmable clocks.
 
You must be root to be able to run X -probeonly now.
 
The card definition says to NOT probe clocks.
 
Do you want me to run ’X -probeonly’ now? n
 
Zur Ermittlung einiger Werte kann nun der X-Server in einem Testmodus gestartet werden. In unserem Beispiel
 
ist dies nicht notwendig, übergehen Sie diesen Test, indem Sie „n“ eingeben.
 
For each depth, a list of modes (resolutions) is defined. The default
 
resolution that the server will start-up with will be the first listed
 
mode that can be supported by the monitor and card.
 
Currently it is set to:
 
"640x480" "800x600" "1024x768" "1280x1024" for 8bpp
 
"640x480" "800x600" "1024x768" "1280x1024" for 16bpp
 
"640x480" "800x600" "1024x768" "1280x1024" for 24bpp
 
"640x480" "800x600" "1024x768" for 32bpp
 
Note that 16, 24 and 32bpp are only supported on a few configurations.
 
Modes that cannot be supported due to monitor or clock constraints will
 
210
 
Kapitel 5. X11
 
be automatically skipped by the server.
 
1 Change the modes for 8bpp (256 colors)
 
2 Change the modes for 16bpp (32k/64k colors)
 
3 Change the modes for 24bpp (24-bit color, packed pixel)
 
4 Change the modes for 32bpp (24-bit color)
 
5 The modes are OK, continue.
 
Enter your choice: 5
 
Sie bekommen nun die anhand Ihrer Angaben ermittelten Auflösungen und Farbtiefen angezeigt. Sie sollten
 
diese Werte erst einmal so akzeptieren und später, wenn nötig, verfeinern.
 
The XF86Config file is about to be written. Ensure you do not accidentally
 
overwrite a previously configured one.
 
Write configuration to /etc/X11/XF86Config? y
 
Zuletzt wird die Konfigurationsdatei unter /etc/X11/ als XF86Config gespeichert. Wenn Sie die Datei an
 
einem anderen Ort sichern wollen, geben Sie hier „n“ ein. In diesem Fall ist aber nicht sichergestellt, daß der
 
X-Server die Datei findet, da diese bei Debian GNU/Linux immer unter /etc/X11/ gesucht wird.
 
Sie können nun versuchen, den X-Server mit dem Kommando startx zu starten.
 
5.1.3. anXious
 
anXious ist ein neues Programm zur Konfiguration des X-Servers und ist Bestandteil des Paketes xviddetect.
 
anXious benutzt das Programm xviddetect, um den benötigten X-Server für die Grafikkarte zu bestimmen,
 
abschließend werden die benötigten Pakete mit apt-get installiert.
 
Wie bei jedem kommandozeilenbasierten Programm kennt auch anXious die Option --help:
 
anXious - a X Configuration tool (c) 2000 Randolph Chung; GPLv2
 
anXious [--skipsetup] [--skipconfig] [--forcesetup] [--forceconfig] [--dodebug]
 
[--quiet]
 
anXious --help
 
--skipsetup: skip the setup phase; do not try to install a server
 
--skipconfig: skip the config phase; do not try to write a config file
 
--forcesetup: override automatic detection of phases; force setup step
 
--forceconfig: override automatic detection of phases; force config step
 
--quiet: runs anXious more quietly
 
--dodebug: Turns on debugging output
 
--help: shows this message
 
anXious has a setup stage, where it helps you determine what packages to
 
install, and a configuration stage, where it writes out an XF86Config file.
 
This program will automatically guess which step is needed based on
 
what is available on your system. You can force anXious to start from
 
scratch by using the --forcesetup and --forceconfig options.
 
Wie zu sehen ist, können Sie die einzelnen Phasen der Konfiguration überspringen und auch eine neue
 
Konfiguration erstellen, falls schon eine Datei existieren sollte.
 
Im folgenden wird eine komplette Neukonfiguration beschrieben, wie sie auch bei der Neuinstallation eines
 
Systems automatisch gestartet wird:
 
211
 
Kapitel 5. X11
 
Abbildung 5-8. Konfiguration von X11
 
anXious kann das Program xviddetect benutzen, um PCI (oder auf der Sparc-Architektur SBUS)
 
Grafikkarten zu erkennen und so den benötigten X-Server zu bestimmen. Sie können diese Überprüfung aber
 
auch übergehen.
 
Abbildung 5-9. Konfiguration von X11
 
212
 
Kapitel 5. X11
 
Hier als Beispiel ein automatisch bestimmter X-Server (VGA16). Im folgenden werden Sie durch einige weitere
 
Schritte zur Konfiguration geführt.
 
Abbildung 5-10. Konfiguration von X11
 
Nachdem die wichtigsten Einstellungen durchgeführt wurden, werden von anXious die benötigten X-Server
 
installiert. Sie können hier auswählen, ob weitere Schriften im gleichen Schritt installiert werden sollen. Auf
 
alle Fälle sollten Sie die 75dpi-Schriften installieren. In einigen Fällen kann es sinnvoll sein, auch die
 
100dpi-Schriften zu installieren. Hierzu finden Sie später noch weitere Informationen.
 
213
 
Kapitel 5. X11
 
Abbildung 5-11. Konfiguration von X11
 
Debian GNU/Linux enthält verschiedene Terminal-Emulatoren, je nachdem welche auf Ihrem
 
Installationsmedium verfügbar sind, können Sie hier nun einige auswählen, die nach der Konfiguration
 
installiert werden. Sie sollten hier in jedem Fall das normale xterm installieren. Alle anderen sind im
 
Funktionsumfang erweitert und im täglichen Betrieb vielleicht sinnvoller, Sie können diese aber später immer
 
noch installieren.
 
214
 
Kapitel 5. X11
 
Abbildung 5-12. Konfiguration von X11
 
In diesem Schritt können Sie zwischen verschiedenen Windowmanagern wählen. Debian GNU/Linux verfügt
 
über eine ganze Reihe verschiedener Windowmanager, Sie sehen hier nur die momentan, anhand der
 
Paketdateien gefundenen, verfügbaren. Sie können später problemlos weitere Windowmanager installieren.
 
Abbildung 5-13. Konfiguration von X11
 
215
 
Kapitel 5. X11
 
Im nächsten Schritt können Sie das Program xdm installieren lassen. Hiermit können Sie sich unter der
 
grafischen Oberfläche am System anmelden. Falls Sie bei der weiteren Konfiguration Schwierigkeiten haben
 
kann es vorkommen, daß der X-Server nicht lauffähig ist. Somit haben Sie auch keine Möglichkeit sich via xdm
 
anzumelden. An dieser Stelle sollten Sie darauf verzichten xdm zu installieren, um Schwierigkeiten zu
 
vermeiden. Sie können die Installation später noch nachholen oder eine der Alternativen zu xdm, auf die später
 
noch eingegangen wird, benutzen.
 
Abbildung 5-14. Konfiguration von X11
 
Im nächsten Schritt wählen Sie den Maustyp aus. Aktuelle Rechner verfügen meist über eine Maus mit
 
PS/2-Anschluß. Wenn Sie im Textmodus das Programm gpm benutzen, sollten Sie hier den Punkt 4, „GPM
 
Repeater“ auswählen. Die Auswahl „Other“ ist auszuwählen, wenn kein passendes Modell in der Liste zu
 
finden ist, zum Beispiel wenn Sie eine USB-Maus einsetzen. Sie müssen dann später noch von Hand die
 
entsprechende Änderung in der Konfigurationsdatei vornehmen.
 
216
 
Kapitel 5. X11
 
Abbildung 5-15. Konfiguration von X11
 
Wenn Sie eine Maus mit nur zwei Tasten einsetzen, können Sie hier die Emulation der dritten Taste (durch
 
gleichzeitiges Drücken beider Maustasten) aktivieren.
 
Abbildung 5-16. Konfiguration von X11
 
217
 
Kapitel 5. X11
 
Geben Sie hier das Ihrer Maus entsprechende Device oder einen Link darauf an. Wenn Sie das Programm gpm
 
einsetzen, so geben Sie hier das Device /dev/gpmdata an.
 
Abbildung 5-17. Konfiguration von X11
 
Hier nun die Auswahl der Tastatur, die Liste ist länger als hier angezeigt, Sie können mit den Pfeiltasten durch
 
die Liste wandern.
 
218
 
Kapitel 5. X11
 
Abbildung 5-18. Konfiguration von X11
 
Aus dieser Liste wählen Sie eine Auflösung, mit der Ihr Monitor optimal arbeitet. Wählen Sie in keinem Fall
 
einen zu großen Wert!
 
Abbildung 5-19. Konfiguration von X11
 
219
 
Kapitel 5. X11
 
Wählen Sie hier die vertikale Synchronisationsrate Ihres Monitors, Angaben hierzu finden Sie im Handbuch
 
Ihres Monitors.
 
Abbildung 5-20. Konfiguration von X11
 
Hier können Sie Ihrem Monitor eine Bezeichung geben, die innerhalb der Konfigurationsdatei verwendet wird.
 
220
 
Kapitel 5. X11
 
Abbildung 5-21. Konfiguration von X11
 
Wählen Sie hier aus, mit wie viel Videospeicher Ihre Grafikkarte bestückt ist.
 
Abbildung 5-22. Konfiguration von X11
 
221
 
Kapitel 5. X11
 
Auch für die Grafikkarte können Sie hier eine Bezeichnung eingeben.
 
Abbildung 5-23. Konfiguration von X11
 
Hier können Sie wählen, welcher Clockchip sich auf der Grafikkarte befindet. Meist kann dieser automatisch
 
bestimmt werden, so daß hier „none“ gewählt werden kann.
 
222
 
Kapitel 5. X11
 
Abbildung 5-24. Konfiguration von X11
 
Sie können nun ermitteln lassen, welche Frequenzen von der Grafikkarte unterstützt werden. Bei neueren
 
Karten ist dies nicht notwendig.
 
Abbildung 5-25. Konfiguration von X11
 
223
 
Kapitel 5. X11
 
Wählen Sie hier die gewünschte Farbtiefe aus. Für die ersten Versuche sind 256 Farben (8bpp) ausreichend,
 
später können Sie diesen Wert erhöhen.
 
Abbildung 5-26. Konfiguration von X11
 
Stellen Sie hier die gewünschte Auflösung ein, mit der der X-Server starten soll.
 
224
 
Kapitel 5. X11
 
Abbildung 5-27. Konfiguration von X11
 
Hier können Sie mehrere Auflösungen wählen zwischen denen Sie während des Betriebes umschalten können.
 
Abbildung 5-28. Konfiguration von X11
 
225
 
Kapitel 5. X11
 
Wenn Sie bereits eine funktionsfähige Konfiguration erstellt haben, können Sie die neue Konfiguration an einem
 
anderen Ort speichern.
 
Abbildung 5-29. Konfiguration von X11
 
Hiermit ist die Konfiguration abgeschlossen.
 
5.2. Installation von XFree86 4.x
 
Nach der Installation des Basissytems stehen zunächst alle notwendigen Programme zur Verwaltung und
 
Administration sowie für den grundlegenden Betrieb des Systems zur Verfügung. Dies umfasst noch keine
 
grafische Benutzeroberfläche, diese wird auch vielfach (beispielsweise bei Serversystemen) nicht benötigt.
 
Debian GNU/Linux verwendet, wie alle anderen Linux-Distributionen auch, das X-Window-System zur
 
Darstellung der grafischen Benutzeroberfläche. Die Treiber für die verschiedenen Grafikkarten werden vom
 
XFree86-Team entwickelt (http://www.xfree86.org). XFree86 ist eine freie Implementation des
 
X-Window-Systems, welches auf allen Unix-ähnlichen Betriebssystemen läuft. Die „86“ im Namen läßt
 
vermuten, daß diese Software nur auf 3/4/586er-Prozessoren lauffähig ist. Ursprünglich wurde XFree86 auch
 
dafür entwickelt, mittlerweile ist XFree86 aber auch auf anderen Prozessor-Architekturen lauffähig. Somit
 
müssen Debian GNU/Linux-Benutzer auf keiner Architektur auf den Luxus einer grafischen Oberfläche
 
verzichten.
 
X11 selbst entstand im Jahre 1986 als Ergebnis der beiden Vorgängerprojekte V und W. Im Laufe der
 
Entwicklung wurden die grundlegenden Protokolle weiterentwickelt, blieben aber immer zu den älteren
 
Versionen kompatibel. 1992 erschien dann die erste Version von X11 für PCs. Das XFree86-Projekt selbst
 
startete mit einem Referenzserver für die PC-Plattform, welcher von Thomas Röll (heute Xi Graphics)
 
geschrieben wurde, welcher dem Projekt zur Verfügung gestellt wurde.
 
226
 
Kapitel 5. X11
 
Ungeachtet dessen ist es natürlich ohne weiteres möglich, auch mit Debian GNU/Linux in den Genuß einer
 
grafischen Benutzeroberfläche zu kommen. Um eine Grafikkarte zu benutzen benötigt man, wie bei anderen
 
Betriebssystemen auch, einen Treiber. Diese Treiber stehen in Form sogenannter „X-Server“ zur Verfügung. Es
 
werden im folgenden die Installation dieses Servers und einige ausgewählte Anwendungen vorgestellt.
 
Wie bei allen neuen Treibern, die man in ein Debian GNU/Linux-System einbindet, ist es vorteilhaft, möglichst
 
genaue Informationen über die verwendete Hardware zu haben. Bei der Vielfalt der auf dem Markt angebotenen
 
Grafikkarten kann es da schon manchmal etwas schwierig sein, herauszufinden, welches Modell man in seinem
 
Rechner hat. Gerade bei Komplettgeräten hat man nicht unbedingt die genaue Modellbezeichnung zur Hand.
 
Schwierig wird es auch bei Motherboards mit einem integrierten Grafikchip. Eine Übersicht der unterstützten
 
Chipsets für die zur Zeit aktuelle Version 4 von XFree86 finden Sie unter der URL:
 
http://www.xfree86.org/4.1.1/Status.html . Bitte beachten Sie: Dies ist eine Liste der Grafikchips auf den
 
jeweiligen Karten, Sie finden keine Namen der Kartenhersteller. Wenn größere Probleme bei der Installation der
 
Grafikkarte auftauchen, müssen Sie im schlimmsten Fall Ihren Rechner öffnen und einen Blick auf die
 
Grafikkarte werfen. Aber meist ist das nicht notwendig.
 
Mit der Version 4 von XFree86 wird nur noch ein einziger X-Server benötigt. Die Treiber für die verschiedenen
 
Grafikkarten werden über Module, wie schon vom Linux Kernel her bekannt, geladen.
 
Zunächst müssen die benötigten Pakete installiert werden. Hierzu kann tasksel benutzt werden, hier ist das
 
Paket „X window system“ auszuwählen. Natürlich können auch gezielt die benötigten Pakete, beispielsweise
 
mit apt-get installiert werden. Dies sind mindestens: xserver-common und xserver-xfree86,
 
xfonts-base sowie eventuell weitere Fonts und natürlich ein Window Manager und ein grafischer Desktop,
 
wie in folgendem Beispiel:
 
debian:~# apt-get install xserver-xfree86 xserver-common xfonts-base gnome-core
 
gnome-panel gnome-control-center sawfish-gnome gnome-session gnome-terminal
 
Reading Package Lists... Done
 
Building Dependency Tree... Done
 
The following extra packages will be installed:
 
cpp cpp-2.95 defoma dialog docbook-xml esound-common file gconf gdk-imlib1
 
gnome-bin gnome-libs-data gnome-mime-data gnome-panel-data gs gs-common gsfonts
 
gsfonts-x11 imlib-base imlib1 libart2 libaudiofile0 libbz2-1.0 libcapplet0
 
libcapplet1 libcdparanoia0 libdps1 libesd0 libfreetype6 libgconf11
 
libgdk-pixbuf-gnome2 libgdk-pixbuf2 libgimpprint1 libglade-gnome0 libglade0
 
libglib1.2 libgmp3 libgnome-vfs-common libgnome-vfs0 libgnome32 libgnomeprint-bin
 
libgnomeprint-data libgnomeprint15 libgnomesupport0 libgnomeui32 libgnorba27
 
libgnorbagtk0 libgtk1.2 libgtk1.2-common libgtkxmhtml1 libjpeg62 liboaf0
 
liborbit0 libpanel-applet0 libpaperg libpng2 librep9 libscrollkeeper0 libtiff3g
 
libungif4g libxaw7 libxml1 libxml2 libxslt1 libzvt2 oaf perl perl-modules rep
 
rep-gtk rep-gtk-gnome scrollkeeper sgml-base sgml-data xbase-clients
 
xfree86-common xlibmesa3 xlibs xutils
 
The following NEW packages will be installed:
 
cpp cpp-2.95 defoma dialog docbook-xml esound-common file gconf gdk-imlib1
 
gnome-bin gnome-control-center gnome-core gnome-libs-data gnome-mime-data
 
gnome-panel gnome-panel-data gnome-session gnome-terminal gs gs-common
 
gsfonts gsfonts-x11 imlib-base imlib1 libart2 libaudiofile0 libbz2-1.0 libcapplet0
 
libcapplet1 libcdparanoia0 libdps1 libesd0 libfreetype6 libgconf11
 
libgdk-pixbuf-gnome2 libgdk-pixbuf2 libgimpprint1 libglade-gnome0 libglade0
 
libglib1.2 libgmp3 libgnome-vfs-common libgnome-vfs0 libgnome32 libgnomeprint-bin
 
libgnomeprint-data libgnomeprint15 libgnomesupport0 libgnomeui32 libgnorba27
 
libgnorbagtk0 libgtk1.2 libgtk1.2-common libgtkxmhtml1 libjpeg62 liboaf0 liborbit0
 
libpanel-applet0 libpaperg libpng2 librep9 libscrollkeeper0 libtiff3g libungif4g
 
libxaw7 libxml1 libxml2 libxslt1 libzvt2 oaf perl perl-modules rep rep-gtk
 
rep-gtk-gnome sawfish-gnome scrollkeeper sgml-base sgml-data xbase-clients
 
xfonts-base xfree86-common xlibmesa3 xlibs xserver-common xserver-xfree86 xutils
 
0 packages upgraded, 87 newly installed, 0 to remove and 0 not upgraded.
 
Need to get 0B/41.7MB of archives. After unpacking 117MB will be used.
 
Do you want to continue? [Y/n]
 
In der Version 3.0 von Debian verwenden fast alle Pakete zur Konfiguration das neu eingeführte „debconf“
 
System. Dies ermöglicht es vor der Installation eines Paketes alle benötigten Daten vom Administrator zu
 
erfragen. Für die XFree 4 Pakete ist dies auch der Fall.
 
227
 
Kapitel 5. X11
 
Natürlich ist es dem Systemadministrator freigestellt die Konfigurationsdateien von Hand, unter Umgehung von
 
Debconf, zu bearbeiten. In wenigen exotischen Fällen kann es notwendig sein Änderungen direkt in der Datei
 
/etc/X11/XF86Config-4 vorzunehmen. Die ersten beiden Dialoge beschäftigen sich mit genau dieser Frage,
 
wie hier gezeigt ist „Yes“ auszuwählen um die Konfigurationsdaten für das Xwrapper Script via Debconf zu
 
verwalten. Mit dem Xwrapper wir festgelegt welche XFree Version (es können gleichzeitig sowohl die Version
 
3.x als auch 4.x installiert werden) verwendet werden soll und mit welchen Parametern diese gestartet wird.
 
Abbildung 5-30. XFree 4.x Installation - Debconf Xwrapper
 
Im zweiten Schritt kann auch die Konfigurationsdatei für XFree86 selbst unter die Kontrolle von Debconf
 
gestellt werden.
 
228
 
Kapitel 5. X11
 
Abbildung 5-31. XFree 4.x Installation - Debconf XFree86 Konfigurationsdatei
 
Mit XFree86 4 steht nur noch ein XServer zur Verfügung, die Treiber für die einzelnen Grafikkarten werden als
 
Module hinzugeladen und können im nächsten Schritt aus einer Liste ausgewählt werden.
 
229
 
Kapitel 5. X11
 
Abbildung 5-32. XFree 4.x Installation - Treiber
 
Xfree86 unterstützt in der Version 4 Treiber für die verschiedenen Grafikkarten die als Modul hinzgeladen
 
werden können. Hier kann der für die verwendete Karte benötigte Treiber ausgewählt werden. Wenn Sie sich
 
nicht sicher sind welche Karte in Ihrem System steckt, so können Sie das Programm lspci zur Hilfe nehmen.
 
surimi:# lspci
 
00:00.0 Host bridge: Intel Corp. 440BX/ZX - 82443BX/ZX Host bridge (rev 03)
 
00:01.0 PCI bridge: Intel Corp. 440BX/ZX - 82443BX/ZX AGP bridge (rev 03)
 
00:07.0 ISA bridge: Intel Corp. 82371AB PIIX4 ISA (rev 02)
 
00:07.1 IDE interface: Intel Corp. 82371AB PIIX4 IDE (rev 01)
 
00:07.2 USB Controller: Intel Corp. 82371AB PIIX4 USB (rev 01)
 
00:07.3 Bridge: Intel Corp. 82371AB PIIX4 ACPI (rev 02)
 
00:0b.0 Multimedia audio controller: Ensoniq ES1371 [AudioPCI-97] (rev 06)
 
00:0d.0 SCSI storage controller: Advanced Micro Devices [AMD] 53c974 [PCscsi] (rev 10)
 
00:0f.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8029(AS)
 
00:11.0 Multimedia video controller: Brooktree Corporation Bt848 TV with DMA push (rev 12)
 
00:13.0 Unknown mass storage controller: Triones Technologies, Inc. HPT366 / HPT370 (rev 01)
 
00:13.1 Unknown mass storage controller: Triones Technologies, Inc. HPT366 / HPT370 (rev 01)
 
01:00.0 VGA compatible controller: Number 9 Computer Company Revolution 4 (rev 02)
 
lspci ist ein separates Paket welches Sie ggf. erst installieren müssen. Mit Unix Bordmittel läßt sich ein
 
ähnliches Ergebniss mit dem Kommando cat /proc/pci erziehlen. Die Ausgabe von lspci ist etwas
 
„aufgeräumter“. In dem hier gezeigten Beispiel ist die letzte Zeile entscheidend, suchen Sie in der Ausgabe
 
nach einer Zeile die mit „VGA“ beginnt. Neben dem Hersteller der Karte (Number Nine) wird auch der Typ
 
(Revolution 4) angezeigt. Bei sehr neuen Karten kann es vorkommen das diese noch nicht erkannt werden, die
 
230
 
Kapitel 5. X11
 
bedeutet aber nicht das die Karte nicht doch mit einem XFree Treiber funktioniert. Die meisten Karten
 
funktionieren auch mit dem Treiber eines älteren Modells.
 
Auch wenn Sie über eine Grafikkarte mit AGP Anschluss verfügen, können die Informationen wie beschrieben
 
über lspci abgerufen werden. Der Linux Kernel macht an dieser Stelle keine Unterscheidung.
 
Abbildung 5-33. XFree 4.x Installation - Kernel Framebuffer
 
Hier kann bestimmt werden ob die Kernel-Framebuffer-Schnittstelle verwendet werden soll.
 
231
 
Kapitel 5. X11
 
Abbildung 5-34. XFree 4.x Installation - Tastatur
 
XFree4 kann auf unterschiedliche Hardwarearchitekturen eingesetzt werden. Diese verwenden zum Teil sehr
 
unterschiedliche Tastaturen. Auf den meisten Systemen kann die vorgegebene Einstellung belassen werden.
 
232
 
Kapitel 5. X11
 
Abbildung 5-35. XFree 4.x Installation - Tastatur Schritt 2
 
Als nächstes folgt eine Hilfe zur Konfiguration des Tastaturtyps. Es sind in den verschiedenen Ländern sehr
 
vielen unterschiedliche Tastaturen im Umlauf, die Anzahl und Belegung der Tasten unterscheidet sich dabei
 
jeweils. Es werden einige Beispiele gezeigt für sinnvolle Werte.
 
233
 
Kapitel 5. X11
 
Abbildung 5-36. XFree 4.x Installation - Tastatur Schritt 3
 
Hier ist der gewünschte Tastaturtyp anzugeben.
 
234
 
Kapitel 5. X11
 
Abbildung 5-37. XFree 4.x Installation - Tastatur Schritt 4
 
Im nächsten Schritt kann das Layout der Tastatur gewählt werden, für den deutschsprachigen Bereich ist die
 
Angabe von „de“ ausreichend.
 
235
 
Kapitel 5. X11
 
Abbildung 5-38. XFree 4.x Installation - Tastatur Schritt 5
 
Hier kann das Verhalten bei der Eingabe von Akzenten auf der Tastatur verändert werden.
 
236
 
Kapitel 5. X11
 
Abbildung 5-39. XFree 4.x Installation - Tastatur Schritt 5
 
237
 
Kapitel 5. X11
 
Abbildung 5-40. XFree 4.x Installation - Maus Schnittstelle
 
Wählen Sie hier die Schnittstellen an der die Maus angeschlossen ist. Serielle Mäuse sind meist über einen
 
9-poligen, trapezförmigen Stecker angeschlossen. Ein PS/2 Anschluss ist rund mit 5 Anschlüssen, ein USB
 
Anschluss hat einen flachen, rechteckigen Stecker. Andere Anschlussformen sind eher unüblich.
 
238
 
Kapitel 5. X11
 
Abbildung 5-41. XFree 4.x Installation - Maus Protokoll
 
Hier ist das Protokoll der Maus auszuwählen. Bei PS/2 und seriellen Mäusen sind verschiedene Protokolle
 
gebräuchlich, manchmal sind auf der Verpackung oder der Unterseite der Maus Hinweise zur finden. Im
 
Zweifelsfall müssen verschiedene Alternativen ausprobiert werden.
 
239
 
Kapitel 5. X11
 
Abbildung 5-42. XFree 4.x Installation - Monitor Typ
 
Hier ist der Typ des Monitors auszuwählen. Wenn kein LCD Monitor angeschlossen ist so ist hier „No“
 
auszuwählen.
 
240
 
Kapitel 5. X11
 
Abbildung 5-43. XFree 4.x Installation - Monitor horizontaler Sync
 
Es können hier die Werte für die horizontaler Synchronisation des Monitors angegeben werden. Diese sind ggf.
 
dem Handbuch zu entnehmen.
 
241
 
Kapitel 5. X11
 
Abbildung 5-44. XFree 4.x Installation - Monitor vertikaler Sync
 
Es können hier die Werte für die vertikale Synchronisation des Monitors angegeben werden. Diese sind ggf.
 
dem Handbuch zu entnehmen.
 
242
 
Kapitel 5. X11
 
Abbildung 5-45. XFree 4.x Installation - Monitor horizontaler Sync
 
Hier können verschiedene Auflösungen gleichzeitig ausgewählt werden mit denen der X-Server betrieben
 
werden soll. Zwischen diesen Auflösungen kann im laufenden Betrieb umgeschaltet werden. Der X-Server wird
 
immer mit der höchsten hier ausgewählten Auflösung starten.
 
243
 
Kapitel 5. X11
 
Abbildung 5-46. XFree 4.x Installation - Auflösungen
 
Abschliessend kann noch die Farbtiefe des X-Servers gewählt werden. Moderne Grafikkarten verfügen über
 
ausreichend Speicher um auch in hohen Auflösungen mit 24 Bit arbeiten zu können.
 
Die eingegebenen Werte werden in der Systemdatenbank (via debconf) gespeichert. Wenn Sie später
 
Änderungen an den gespeicherten Werten vornehmen möchten, so kann hierzu das Kommando
 
dpkg-reconfigure xserver-xfree86 verwendet werden.
 
5.2.1. dexconf
 
Während der Installation von XFree 86 wurden verschiedene Werte abgefragt und mittels debconf in der
 
Systemdatenbank gespeichert. Aus diesen Angaben wurde eine Konfigurationsdatei erzeugt, so das das X
 
Window System lauffähig ist. Wenn Sie von Hand Veränderungen an der Konfigurationsdatei vorgenommen
 
haben oder gar die Datei versehentlich glöscht haben, so sind die ursprünglichen Einstellungen nicht verloren.
 
Um die Daten aus der Datenbank auszulesen und eine Konfigurationsdatei zu erzeugen kann das Programm
 
dexconf verwendet werden. Mit dexconf können keine Werte in der Datenbank verändert werden, benutzen
 
Sie hierzu dpkg-reconfigure und den Namen des zu konfigurierenden Paketes.
 
Ein simpler Aufruf von dexconf erzeugt die Konfigurationsdatei /etc/X11/XF86Config-4 mit den Werten
 
aus der Datenbank. Weitere Optimierungen können von Hand vorgenommen werden, oder Sie greifen auf eines
 
der folgenden Tools zurück. Im einfachsten Fall gelingt eine Neukonfiguration des X-Servers mittels
 
dpkg-reconfigure xserver-xfree86.
 
244
 
Kapitel 5. X11
 
5.2.2. xf86cfg
 
Auch mit der Version 4 von XFree86 wird ein eigenständiges Administrationswerkzeug geliefert. Zu beachten
 
ist das eine Konfiguration von XFree mit diesem Programm nicht via Debconf verwaltet wird.
 
xf86cfg ist auf die neuen Funktionen von XFree86 4 angepasst und unterstützt die Verwaltung von mehreren
 
Grafikkarten und Monitoren sowie verschiedene gleichzeitig angeschlossenen Eingabegeräte wie zum Beispiel
 
mehreren Mäuse oder eine Maus und ein Grafiktablett.
 
Beim ersten Start von xf86cfg wird die aktuelle Konfigurationsdatei eingelesen und die dort bereits definierten
 
Geräte dargestellt.
 
5.2.2.1. Textmodus
 
Der Textmodus bietet, ähnlich wie das Debian Installationsprogramm, die Möglichkeit über ein Menü zu den
 
verschiedenen Abschnitten der Konfiguration zu springen. Hier können Geräte hinzugefügt oder bereits
 
konfigurierte verändert werden.
 
Abbildung 5-47. xf86cfg - Textmodus
 
Hier ein Beispiel für die Auswahl der Grafikkarte.
 
245
 
Kapitel 5. X11
 
Abbildung 5-48. xf86cfg - Textmodus
 
5.2.2.2. Grafikmodus
 
Wird xf86cfg ohne weitere Parameter gestartet, so wird ein X Server initalisiert, die Konfiguration kann dann
 
bereits mit einer Grafischen Oberfläche erfolgen. Ist die Maus nach dem Start nicht funktionsfähig, so können
 
die Optionen über die Tastatur angewählt werden. Achten Sie darauf das neu hinzugefügte Geräte immer oben
 
links in der Ecke erscheinen, diese überdecken eventuell dort bereits vorhandene Geräte. Jedes Gerät kann mit
 
der Maus verschoben werden.
 
246
 
Kapitel 5. X11
 
Abbildung 5-49. xf86cfg - X11
 
Neue Geräte können über die Symbole am oberen Rand des Fensters hinzugefügt werden. Nachdem alle
 
Parameter für das neue Gerät eingestellt wurden, kann dieses mit „enable“ eingebunden werden. Dies wird
 
durch eine Verbindungslinie zum Rechner dargestellt.
 
5.3. Starten von X
 
Sie können nun, falls Sie bereits einen Windowmanager installiert haben, die grafische Oberfläche mit startx
 
starten. Wenn noch kein Windowmanager installiert ist, merken Sie das spätestens nach dem Start der
 
grafischen Oberfläche. Sie können dann keines der Fenster verschieben, verkleinern oder sonstwie damit
 
arbeiten. Im Abschnitt über Windowmanager finden Sie einige Vorschläge, installieren Sie mindestens eines
 
dieser Pakete. Wenn Sie verschiedene Windowmanager installieren, können Sie (bei den meisten) während des
 
Betriebes zwischen diesen umschalten. Sie müssen dazu weder Ihre Programme noch den X-Server oder gar
 
den Rechner neu starten.
 
Wenn Ihr Monitor nach einige Sekunden kein brauchbares Bild anzeigt, können Sie den X-Server mit der
 
Tastenkombination CTRL+ALT+BACKSPACE (oder CTRL+AUSSCHALTEN beim Macintosh) zwangsweise
 
beenden. Versuchen Sie dann noch einmal den X-Server zu konfigurieren.
 
247
 
Kapitel 5. X11
 
Wenn Sie sich gleich nach dem Start des Rechners auf der grafischen Oberfläche einloggen wollen, installieren
 
Sie eines der Pakete login.app, gdm oder auch xdm. Stellen Sie aber vorher unbedingt sicher, daß der
 
X-Server richtig konfiguriert und funktionsfähig ist. Es kann sonst dazu kommen, daß Sie sich überhaupt nicht
 
mehr am System anmelden können!
 
5.3.1. xdm
 
XDM ist die älteste und auch auf anderen Unix-Systemen weit verbreitete Methode zum Anmelden am System
 
mit einer grafischen Oberfläche. XDM wird auch häufig übers Netzwerk eingesetzt, um sich von einem
 
X-Terminal oder einem anderen Betriebssystem mit X11-Emulation auf einem Unix-System anzumelden.
 
Natürlich können Sie XDM auch auf Ihrem lokalen System einsetzen, es gibt aber verschiedene andere
 
Programme, die optisch ansprechender gestaltet sind und über mehr Funktionen verfügen.
 
5.3.2. gdm - GNOME Display Manager
 
GDM ist ein Ersatz für den bekannten XDM, einem Display Manager für X11. GDM wurde von Grund auf neu
 
geschrieben und enthält keinerlei Code aus anderen Programmen.
 
Abbildung 5-50. GNOME Display Manager
 
5.3.2.1. Der GDM-Daemon
 
GDM wurde im Hinblick auf größtmögliche Sicherheit entworfen. Beim Start liest GDM zunächst die
 
Konfigurationsdatei ein und startet für jedes lokale Display einen X-Server sowie einen eigenen Prozeß. Der
 
Hauptprozeß wartet dann auf eventuelle XDMCP Requests von anderen Rechnern oder Terminals und
 
überwacht auch die lokalen Display-Sitzungen.
 
248
 
Kapitel 5. X11
 
Ein gestarteter GDM-Prozeß ruft nach dem Start des X-Servers das Programm gdmlogin auf, welches das
 
eigentliche Programm zum Anmelden am System unter einer grafischen Oberfläche darstellt. Dieses Programm
 
läuft unter einer eigenen User-ID und kommuniziert mit dem Hauptprogramm.
 
GDM unterstützt neben den normalen Paßwortdateien die Benutzung von Shadow-Paßwörtern sowie PAM
 
(Pluggable Authentication Modules).
 
Entfernte Rechner oder X-Terminals können über den XDMCP Port auf den GDM-Daemon zugreifen. GDM
 
erlaubt allen Rechnern, die im Abschnitt „service“ der Konfigurationsdatei des TCP Wrappers beschrieben sind,
 
den Zugriff. Sie können die XDMCP-Unterstützung aber auch komplett deaktivieren.
 
Um widerstandfähiger gegen die in letzter Zeit leider sehr beliebten DOS (Denial of Service-) Angriffe zu sein,
 
wurden einige Überprüfungen eingebaut. Sie können über die Konfiguration viele Protokollparameter u.ä.
 
verändern. Wenn Sie sich nicht sicher sind, sollten Sie allerdings besser nichts an diesen Einstellungen
 
verändern. Für die meisten Anforderungen sind die Standardeinstellungen gut geeignet.
 
Alle Zugriffe auf Dateien werden von GDM mit der User-ID des jeweiligen Benutzers ausgeführt. GDM verfügt
 
über einen sogenannten „Face Browser“, mit diesem wird für jeden Benutzer des Systems ein Bild in der
 
Login-Maske angezeigt. Dieses kann vom Benutzer durch ein eigenes Foto ersetzt werden, die Dateigröße kann
 
vom Systemverwalter begrenzt werden, auf Systemen mit vielen Benutzern sollten Sie diese Funktion aus
 
Geschwindigkeitsgründen deaktivieren.
 
5.3.2.2. Der GDM Daemon
 
GDM unterstützt auch das X Display Manager Protocol (XDMCP), mit dem sich X-Sessions auf entfernten
 
Rechnern betreiben lassen.
 
GDM lauscht hierzu auf dem UDP Port 177 und beantwortet Anfragen (QUERYs und
 
BROADCAST_QUERYs), indem ein „WILLING“, also eine Bestätigung, gesendet wird.
 
GDM kann auch so konfiguriert werden, daß INDIRECT-Queries beantwortet werden und ein sogenannter
 
„host chosser“ auf dem entfernten Display angezeigt wird. GDM merkt sich die Auswahl des Benutzers und
 
leitet die Auswahl an den entsprechenden Server weiter.
 
GDM unterstützt lediglich den MIT-MAGIC-COOKIE-1 zur Authentifizierung. Da es recht einfach ist, bei der
 
Verwendung von XDMCP einen Rechner mit DOS (Denial of Service)-Angriffen lahmzulegen, wurden einige
 
Funktionen eingebaut, um diesem entgegenzuwirken. Detailliertere Informationen finden Sie weiter unten.
 
Obwohl GDM über diesen Schutz verfügt, sollten Sie sich nicht alleine darauf verlassen. Das X-Protokoll ist
 
anfällig gegen Angriffe und Sie sollten, wenn es möglich ist, den Port 177 in Ihrem Firewall sperren.
 
Bedenken Sie auch, daß bei der Verwendung von X übers Netzwerk alle Eingaben von der Tastatur (also auch
 
Paßwörter) unverschlüsselt übertragen werden. Eine weitere Gefahr sind Cookies, die auf einem per NFS
 
gemounteten Verzeichnis gespeichert werden.
 
5.3.2.3. Der „Greeter“
 
Der „Greeter“ dient zur „Begrüßung“ der Benutzer am System und stellt die eigentliche Eingabemaske für den
 
Benutzernamen und das Paßwort zur Verfügung. Am oberen Rand des Fensters finden Sie ein Menü mit
 
verschiedenen Einträgen. Das voreingestellte GNOME-Logo kann durch ein anderes ersetzt oder ganz
 
deaktiviert werden. Ebenso können Sie den „Face-Browser“, der normalerweise nicht aktiv ist, aktivieren.
 
5.3.2.3.1. Benutzername und Paßwort
 
In das Textfeld werden Benutzername und Paßwort eingegeben. gdmlogin kommuniziert dabei mit dem
 
darunterliegenden Daemon gdm und zeigt über dem Texteingabefeld die nächste benötigte Eingabe an. Diese
 
kann sich, je nach verwendetem Authentifizierungssystem, ändern.
 
249
 
Kapitel 5. X11
 
5.3.2.3.2. Menü
 
Über die Menüleiste können Sie verschiedene Desktop-Umgebungen auswählen sowie die gewünschte Sprache
 
einstellen. Weiterhin finden Sie hier die Möglichkeit, das System herunterzufahren oder einen Neustart zu
 
veranlassen; Sie müssen sich hier nicht erst komplett am System anmelden (natürlich werden Sie aber nach dem
 
entsprechenden Paßwort gefragt).
 
Wenn Sie auf dem Login-Bildschirm noch andere Anwendungen benutzen möchten, zum Beispiel um den
 
Systemstatus anzuzeigen, so können Sie das Fenster auch als Icon verkleinern.
 
5.3.2.3.3. Der „Face Browser“
 
Wenn Sie den Face Browser aktivieren, kann vom Systemadministrator oder von jedem einzelnen Benutzer ein
 
Bild zu dem entsprechenden Benutzernamen abgelegt werden. Sie können dann mit einem Mausklick auf das
 
passende Bild den Benutzer auswählen und müssen lediglich das entsprechende Paßwort angeben.
 
Da der „Greeter“ mit einer eigenen User-ID läuft (aus Sicherheitsgründen werden nicht die Administratorrechte
 
verwendet), müssen die Bilder für den entsprechenden User lesbar sein. Jeder Benutzer, der sein Bild mit dem
 
Dateinamen photo im Verzeichnis ~/.gnome/ ablegt, muß sein Homeverzeichnis und das Verzeichnis
 
~/.gnome/ sowie die Datei photo selber für die Benutzergruppe „other“ lesbar machen.
 
Wenn die Bilder systemweit vom Administrator installiert werden, müssen diese Dateien für den Benutzer
 
„gdm“ lesbar sein.
 
Sie können über die Konfigurationsdatei bestimmte Benutzer aus dem „Face Browser“ ausblenden. Hierzu
 
werden alle nicht gewünschten Benutzernamen in den Abschnitt Exclude eingetragen.
 
Bedenken Sie bitte, daß es ein Sicherheitsrisiko ist, alle Benutzernamen eines Systems preiszugeben, genau dies
 
geschieht mit dem „Face Browser“. Insbesondere sollten Sie diese Funktion nicht über das Internet benutzen.
 
Potentiellen Angreifern wird so der Zugriff erleichtert, der Benutzername ist schon mal bekannt. Das ist ein
 
Punkt, den ein Angreifer nicht mehr herausfinden muß.
 
5.3.2.3.4. Logo
 
Sie können das Logo durch ein eigenes ersetzen. Hierzu muß das Logo in einem Format vorliegen, welches von
 
der Imlib verarbeitet werden kann, also zum Beispiel: GIF, JPG, PNG, TIFF, XPM und einige andere...
 
Weiterhin muß das Logo natürlich auch für den Benutzer lesbar sein, unter dem der gdm-Prozeß läuft.
 
5.3.2.4. Konfiguration
 
Die Konfigurationsdateien zu GDM finden Sie unter /etc/gdm/. Dort befindet sich die Datei gdm.conf sowie
 
einige Unterverzeichnisse:
 
Init/
 
PostSession/
 
PreSession/
 
Sessions/
 
gdm.conf
 
In der Datei /etc/gdm/gdm.conf befinden sich die Parameter sowohl für gdmlogin als auch für
 
gdmchooser, da sich viele Funktionen dieser beiden Programme überschneiden.
 
Die restliche Konfiguration wird über Scripte vorgenommen, die von den Paketen in den anderen Verzeichnissen
 
abgelegt werden. So können von der Paketverwaltung ganz einfach zum Beispiel neue Windowmanager
 
hinzugefügt werden, ohne daß der Systemadministrator etwas an der Konfiguration ändern muß.
 
250
 
Kapitel 5. X11
 
5.3.2.4.1. Die Script-Verzeichnisse
 
In diesem Abschnitt werden die Verzeichnisse /Init, /PreRoot und /PostRoot beschrieben.
 
Wenn der X-Server erfolgreich gestartet wurde, versucht GDM das Script Init/<displayname> auszuführen.
 
Dies wird im Normalfall Init/:0 für das erste lokale Display sein. Wenn diese Datei nicht gefunden wird,
 
versucht GDM das Script Init/Default auszuführen. Dieses wird mit den Rechten des Superusers (root)
 
ausgeführt und GDM wird so lange blockiert, bis das Script beendet wird. Sie können in diesem Script zum
 
Beispiel Programme wie xconsole oder xsetroot aufrufen.
 
Der Systemadministrator kann bestimmen, ob Programme, die von dem Init-Script aufgerufen werden, vor dem
 
Starten der Benutzersitzung beendet werden sollen oder nicht. Dies wird über die Variable „KillInitClients“
 
gesteuert. Informationen hierzu finden weiter unten.
 
Wenn ein Benutzer sich erfolgreich am System angemeldet hat, versucht GDM ein „PreSession Script“ zu
 
starten. Diese Scripte verhalten sich sehr ähnlich wie die Init-Skripte, PreSession/<displayname> wird
 
zunächst ausgeführt. Sollte diese Datei nicht existieren, versucht GDM die Datei PreSession/Default
 
auszuführen. Auch diese Scripte werden mit „Root“-Rechten ausgeführt und GDM wird blockiert bis das Script
 
beendet ist. Sie können dieses Script zum Beispiel für Accounting-Zwecke nutzen. Die Umgebungsvariable
 
$USER enthält den Loginnamen des Benutzers. Wenn das Script ohne Fehler ausgeführt wurde, muß es den
 
Wert 0 zurückgeben, andernfalls bricht GDM den Loginvorgang ab.
 
Danach wird das „Session Script“ ausgeführt. Dieses befindet sich im Verzeichnis etc/gdm/Session.
 
Welches von diesen Scripten ausgeführt wird, hängt von der Auswahl des Benutzers aus dem „Session“-Menü
 
ab. Wenn keine Auswahl getroffen wird, und der Benutzer bisher keine Session in der Datei ~/.gnome/gdm
 
gespeichert hat, wird das Script Sessions/Default ausgeführt.
 
Wenn der Benutzer die Sitzung beendet, wird das „PostSession“-Script ausgeführt. Die Funktion ist ähnlich wie
 
bei den „Init“- und den „PreSession“-Scripten. Zunächst wird versucht das Script
 
PostSession/<displayname> auszuführen, wenn dieses nicht gefunden wird, wird mit dem Script
 
PostSession/Default fortgefahren. Auch diese Scripte werden mit Superuser-Rechten ausgeführt, der
 
Daemon wird während der Zeit gestoppt und die Umgebungsvariable $USER enthält den Benutzernamen
 
desjenigen Benutzers, der die Session beendet hat.
 
Beachten Sie bitte, daß dieses Script auch ausgeführt wird, wenn ein Fehler (zum Beispiel ein I/O Error)
 
aufgetreten ist. Es kann nicht immer sichergestellt werden, daß alle X-Anwendungen während der Laufzeit
 
dieses Scriptes funktionieren.
 
Keines der „Init“-, „PreSession“- oder „PostSession“- Scripte ist zwingend erforderlich. GDM funktioniert
 
hervorragend ohne diese Scripte. Allerdings benötigen Sie mindestens ein „Session“- Script, damit GDM
 
funktioniert.
 
5.3.2.4.2. Konfigurationsdatei - gdm.conf
 
Die GDM-Konfigurationsdatei /etc/gdm/gdm.conf unterteilt sich in verschiedene Bereiche, welche durch
 
Variablen die verschiedenen Teile von GDM beeinflussen.
 
Die Syntax dieser Datei entspricht der bei GNOME-Programmen Konventionen. Schlüsselwörter (Keywords) in
 
eckigen Klammern definieren die einzelnen Bereiche, Text vor einem Gleichheitszeichen stellt Variablen dar
 
und die nach dem Gleichheitszeichen folgenden Zeichen oder Zahlen stellen den Wert, der dieser Variablen
 
zugewiesen werden soll, dar. Wenn Sie eine bestimmte Funktion aktivieren oder deaktivieren möchten, werden
 
hierfür häufig die Zahlen 0 (für deaktiviert) und 1 (für aktiviert) benutzt.
 
5.3.2.4.3. Daemon-Konfiguration
 
[daemon]
 
Chooser
 
Chooser=bin/gdmchooser - -disable-sound
 
Programmname und kompletter Pfad für das Programm gdmchooser, gefolgt von weiteren Argumenten.
 
251
 
Kapitel 5. X11
 
DefaultPath
 
DefaultPath=/bin:/usr/bin:/usr/bin/X11:/usr/local/bin
 
Hier können Sie den Suchpfad angeben, der als Umgebungsvariable gesetzt werden soll. Wenn Sie aus
 
Ihrem System weitere Verzeichnisse mit Programmen angelegt haben, die allen Benutzern zugänglich sein
 
sollen, so können Sie diese Verzeichnisse hier mit angeben.
 
DisplayInitDir
 
DisplayInitDir=etc/gdm/Init
 
Diese Variable enthält das Verzeichnis, in dem sich die „Init-Skripte“ befinden. Weiter unten finden Sie
 
nähere Informationen zu den eigentlichen Scripten.
 
Greeter
 
Greeter=bin/gdmlogin - -disable-sound
 
Kompletter Pfad und Name für das Programm gdmlogin mit eventuellen weiteren Argumenten.
 
Group
 
Group=gdm
 
Die Benutzergruppe, unter der die Programme gdmlogin und gdmchooser laufen.
 
HaltCommand
 
HaltCommand=/sbin/shutdown -h now
 
Kompletter Pfad und Programmname sowie weitere Argumente, welches aufgerufen wird, wenn der
 
Benutzer aus dem Menü die Option „Halt“ aktiviert.
 
KillInitClients
 
KillInitClients=1
 
Mit dieser Option aktivieren oder deaktivieren Sie das Beenden aller Programme, die über die Init-Skripte
 
gestartet wurden, nachdem der Benutzer sich einloggt. Die Standard-Einstellung ist hier „1“, die
 
Programme werden damit beendet.
 
LogDir
 
LogDir=var/gdm
 
Diese Variable enthält das Verzeichnis, in dem sich die Logdateien von GDM befinden. Wenn Sie hier
 
keinen Wert angeben, wird der Wert der Variablen ServAuthDir verwendet. Angaben zu dieser Variablen
 
finden Sie weiter unten.
 
PidFile
 
PidFile=var/run/gdm.pid
 
Name und Pfad der Datei, welche die Prozeß-ID des Programms gdm enthält.
 
252
 
Kapitel 5. X11
 
PostSessionScriptDir
 
PostSessionScriptDir=etc/gdm/PostSession
 
Beschreibt das Verzeichnis, in dem sich die Scripte befinden, welche nach dem Ausloggen des Benutzers
 
ausgeführt werden. Weitere Informationen hierzu finden Sie unter „Script Directories“.
 
PreSessionScriptDir
 
PreSessionScriptDir=etc/gdm/PreSession
 
Das Verzeichnis, in dem sich die Scripts befinden, die vor dem Einloggen des Benutzers ausgeführt
 
werden. Auch hierzu finden Sie weitere Informationen unter „Script Directories“.
 
RebootCommand
 
RebootCommand=/sbin/shutdown -r now
 
Kompletter Pfad, Programmname und weitere Argumente für das Programm, welches ausgeführt wird,
 
wenn der Benutzer aus dem „System-Menü“ die Option „Reboot“ auswählt. Dies ist normalerweise das
 
Programm shutdown.
 
RootPath
 
RootPath=/sbin:/usr/sbin:/bin:/usr/bin:/usr/bin/X11:/usr/local/bin
 
Suchpfad, der für den Benutzer „root“ sowie für die Scripte (Init, PreSession, PostSession), die von GDM
 
ausgeführt werden, gesetzt wird.
 
ServAuthDir
 
ServAuthDir=/var/gdm
 
Das Verzeichnis, welches die X-Authentifizierungsdateien für die einzelnen Displays enthält. Dieses
 
Verzeichnis muß dem Benutzer und der Gruppe „gdm“ gehören und die Zugriffsrechte 750 haben.
 
SessionDir
 
SessionDir=etc/gdm/Sessions
 
Dieses Verzeichnis enthält die Scripte für die verschiedenen Session-Typen, die auf dem System verfügbar
 
sind.
 
User
 
User=gdm
 
Der Benutzername, unter dem gdmlogin und gdmchooser laufen.
 
UserAuthDir
 
UserAuthDir=
 
Das Verzeichnis, in dem die .Xauthority-Dateien der einzelnen Benutzer liegen. Wenn hier kein Wert
 
angegeben ist, wird die Datei im Homeverzeichnis des Benutzers verwendet.
 
253
 
Kapitel 5. X11
 
UserAuthFBDir
 
UserAuthFBDir=/tmp
 
Falls GDM die Datei .Xauthority eines Benutzers nicht aktualisieren kann, wird ein „Fallback cookie“
 
in diesem Verzeichnis erzeugt.
 
UserAuthFile
 
UserAuthFile=.Xauthority
 
Dateiname, in der die benutzerspezifischen Cookies gespeichert werden.
 
5.3.2.4.4. Sicherheitsoptionen
 
[security]
 
AllowRoot
 
AllowRoot=0
 
Normalerweise sind Logins des Systemadministrators verboten. Wenn Sie diese Variable auf den Wert „1“
 
setzen, kann sich auch der Systemadministrator auf der grafischen Oberfläche am System anmelden.
 
Auf Systemen, die PAM (Plugable Authentification Modules) unterstützen, wird dieser Parameter ignoriert.
 
Bei diesen Systemen entscheiden die PAM-Bibliotheken, ob ein Benutzer einloggen darf oder nicht.
 
RelaxPermissions
 
RelaxPermissions=0
 
GDM ignoriert normalerweise Dateien und Verzeichnisse, die für andere Benutzer wie den Besitzer
 
schreibbar sind.
 
Wenn Sie den Standardwert verändern, können Sie die im folgenden beschriebenen Verhaltensweisen
 
aktivieren:
 
0 - nur Verzeichnisse und Dateien, die dem Benutzer gehören, werden beachtet.
 
1 - Zugriff auf Dateien und Verzeichnisse, die von der Gruppe schreibbar sind.
 
2 - Zugriff auf von allen schreibbare Dateien und Verzeichnisse.
 
RetryDelay
 
RetryDelay=3
 
Zeit in Sekunden, die nach einem fehlgeschlagenen Login gewartet wird, bis eine erneute Eingabe im
 
Textfeld möglich ist.
 
UserMaxFile
 
UserMaxFile=65536
 
Begrenzung in Byte der von GDM lesbaren Dateigröße.
 
Beachten Sie in diesem Zusammenhang auch die Option „RelaxPermissions“. gdm und gdmlogin sind aus
 
Sicherheitsgründen sehr kleinlich beim Zugriff auf Dateien. Neben der Beachtung der Zugriffsrechte wird
 
darauf verzichtet, symbolische Links zu verfolgen. Auch Dateien, die von weiteren Benutzern wie dem
 
Besitzer der Datei schreibbar sind, können unter Umständen nicht gelesen werden.
 
254
 
Kapitel 5. X11
 
VerboseAuth
 
VerboseAuth=0
 
Hiermit beeinflussen Sie die Anzeige der Fehlermeldungen bei der Authentifizierung im „Greeter“.
 
Abhängig von den Systemeinstellungen können Benutzernamen angezeigt werden, wenn Sie diese Option
 
aktivieren.
 
5.3.2.4.5. XDCMP Support
 
[xdmcp]
 
DisplaysPerHost
 
DisplaysPerHost=1
 
Zur Verhinderung von DOS-Angriffen erlaubt GDM normalerweise nur ein Display je entferntem Host.
 
Sie können diesen Wert erhöhen, falls dies nicht ausreichend ist.
 
Enable
 
Enable=0
 
Wenn Sie diesen Wert auf 1 setzen, aktivieren Sie den XDMCP Support für Remote- bzw. X-Terminals.
 
GDM hört auf dem UDP Port 177 auf Anfragen, hierzu finden Sie weiter unten weitere Angaben.
 
Wenn GDM entsprechend übersetzt (compiliert) wurde, kann der Zugriff über die
 
TCP-Wrapper-Bibliothek gesteuert werden. Der Name für diesen Service lautet „gdm“.
 
Sie sollten dann:
 
gdm: .my.domain
 
in die Datei /etc/hosts.allow eintragen. In der Man-Page zu hosts_access(5) finden Sie weitere
 
Angaben hierzu.
 
HonorIndirect
 
HonorIndirect=1
 
Aktiviert XDMCP INDIRECT, also die remote Ausführung von gdmchooser, für X-Terminals, welche
 
keinen eigenen Display Browser unterstützen.
 
MaxPending
 
MaxPending=4
 
Maximale Anzahl der gleichzeitig offenen Verbindungen. Dient zur Verhinderung von DOS-Angriffen.
 
Dieser Parameter beschränkt nicht die Anzahl der maximal möglichen Remote-Displays. Es wird lediglich
 
die Anzahl der gleichzeitigen Verbindungen begrenzt.
 
MaxPendingIndirect
 
MaxPendingIndirect=4
 
Maximale Anzahl der „host chooser“.
 
255
 
Kapitel 5. X11
 
MaxSessions
 
MaxSessions=16
 
Maximale Anzahl der gleichzeitigen Remote-Display-Verbindungen.
 
MaxWait
 
MaxWait=30
 
Timeout in Sekunden, wie lange auf eine Antwort von einem Remote-Display gewartet werden soll.
 
Danach wird die Sitzung als beendet angesehen und für eine neue Anfrage freigegeben.
 
MaxWaitIndirect
 
MaxWaitIndirect=30
 
Maximale Zeit in Sekunden, die auf einen Display Request vom Chooser gewartet wird.
 
Port
 
Port=177
 
Die UDP-Portnummer, auf der GDM auf Anfragen wartet. Sie sollten diesen Wert nicht verändern.
 
5.3.2.4.6. Optionen zur Benutzeroberfläche
 
[gui]
 
Gtkrc
 
Gtkrc=
 
Pfad zur gtkrc mit dem „Theme“, welches bei den Programmen gdmlogin und gdmchooser benutzt
 
werden soll.
 
MaxIconWidth
 
MaxIconWidth=128
 
Maximale Breite der Icons (Symbole) in Pixeln, die im „Face-Browser“ angezeigt werden. Größere Bilder
 
werden entsprechen skaliert.
 
MaxIconHeight
 
MaxIconHeight=128
 
Maximale Höhe der Icons (Symbole) in Pixeln, die im „Face-Browser“ angezeigt werden. Größere Bilder
 
werden entsprechend skaliert.
 
5.3.2.4.7. Greeter-Konfiguration
 
[greeter]
 
Browser
 
Browser=0
 
256
 
Kapitel 5. X11
 
Wenn Sie diesen Wert auf „1“ setzen, wird der „Face-Browser“ aktiviert.
 
DefaultFace
 
DefaultFace=share/pixmaps/nophoto.png
 
Dieses Bild wird angezeigt, wenn der Benutzer kein persönliches Bild installiert hat. Geben Sie den Pfad
 
und Dateinamen an. Jeder Benutzer kann in seinem Homeverzeichnis unter .gnome/photo ein
 
persönliches Bild ablegen. Dieser Pfad und die Datei muß für den Benutzer „gdm“ lesbar sein. Das
 
Dateiformat muß von der Imlib unterstützt werden, also zum Beispiel PNG oder JPEG.
 
DefaultLocale
 
DefaultLocale=english
 
Die gewünschte Sprache, die für eine Session verwendet werden soll, solange keine anderen Informationen
 
in ~user/.gnome/gdm gefunden werden und der Benutzer keine andere Sprache aus dem Menü „Locale“
 
im „Greeter“ ausgewählt hat.
 
Dies funktioniert leider in der aktuellen Version von gdm noch nicht. Eine Lösung finden Sie weiter unten.
 
Exclude
 
Exclude=bin,daemon,adm,lp,sync,shutdown,halt,mail,...
 
Eine durch Kommata getrennte Liste der Benutzer des Systems, die nicht im „Face-Browser“ angezeigt
 
werden sollen. Benutzer, die auf diesem Wege ausgeklammert wurden, können sich trotzdem am System
 
anmelden.
 
Font
 
Font=-adobe-helvetica-bold-r-normal-*-*-180-*-*-*-*-*-*
 
Schriftart, die für den Begrüßungstext im „Greeter“ benutzt werden soll.
 
GlobalFaceDir
 
GlobalFaceDir=share/faces/
 
Systemweites Verzeichnis für Bilder der einzelnen Benutzer. In diesem kann der Systemadministrator für
 
jeden Benutzer ein Photo ablegen, ohne auf die Homeverzeichnisse der Benutzer zugreifen zu müssen. Die
 
Dateinamen entsprechen hierbei den Benutzernamen.
 
Ein Beispiel: <GlobalFaceDir>/fr enthält ein Photo des Benutzers „fr“. Sie müssen die Erweiterung
 
des Dateinamens nicht angeben. Die Dateinamen entsprechen den Namen der Benutzer.
 
Auch diese Datei muß in einem von der Imlib lesbaren Format vorliegen.
 
Wenn der Benutzer eine persönliche Datei in seinem Homeverzeichnis abgelegt hat, so wird diese immer
 
bevorzugt behandelt.
 
Icon
 
Icon=share/pixmaps/gdm.xpm
 
Ein Symbol, welches von gdmlogin benutzt wird, wenn das Fenster als Symbol (Icon) abgelegt wird.
 
Auch diese Grafik muß in einem von der Imlib lesbaren Format vorliegen und für den Benutzer „gdm“
 
lesbar sein. Wenn keine Datei angegeben wird, ist diese Funktion (Verkleinern des Fensters) deaktiviert.
 
257
 
Kapitel 5. X11
 
LocaleFile
 
LocaleFile=etc/gdm/locale.alias
 
Datei im GNU locale Format mit den Einträgen der unterstützten Sprachen auf dem aktuellen System.
 
Logo
 
Logo=share/pixmaps/gnome-logo-large.png
 
Pfad und Dateiname zur Grafik, die als Logo angezeigt wird. Wenn keine Datei angegeben wird, ist die
 
Funktion deaktiviert. Auch diese Datei muß von der Imlib unterstützt werden und für den Benutzer „gdm“
 
lesbar sein.
 
Quiver
 
Quiver=1
 
Wenn diese Option aktiv ist, „schüttelt“ sich das Login-Fenster, wenn ein falscher Benutzername oder ein
 
falsches Paßwort angegeben wird.
 
SystemMenu
 
SystemMenu=0
 
Schaltet die Menüs „Shutdown“ und „Halt“ aus.
 
Welcome
 
Welcome=Welcome to %n
 
Der Begrüßungstext, der im „Greeter“ in der Nähe des Logos angezeigt wird. Folgende Steuerzeichen
 
werden unterstützt:
 
%% Das ‘%’-Zeichen
 
%d Der Hostname des Systems
 
%h der komplette Name inklusive Domain
 
%m Prozessor-Typ
 
%n Nodename (meist Hostname ohne Domain)
 
%r Release (Betriebssystem-Version)
 
%s Sysname (Betriebssystem)
 
5.3.2.4.8. XDCMP-Chooser-Optionen
 
[chooser]
 
DefaultHostImage
 
DefaultHostImage=share/pixmaps/nohost.png
 
Dateiname und Pfad für das Symbol, welches angezeigt wird, falls kein spezielles Symbol für diesen Host
 
gefunden wird.
 
258
 
Kapitel 5. X11
 
HostImageDir
 
HostImageDir=share/hosts
 
Verzeichnis für spezielle Symbole für einzelne Hosts. Diese werden von gdmchooser angezeigt.
 
Der Dateiname entspricht dem kompletten Hostname (FQDN).
 
ScanTime
 
ScanTime=3
 
Wartezeit für eine Antwort auf einen BROADCAST_QUERY.
 
5.3.2.4.9. Konfiguration des lokalen X-Servers
 
[servers]
 
0
 
0=/usr/bin/X11/X
 
In diesem Abschnitt werden die lokalen X-Server definiert. Jede Zeile steht für eine Displaynummer und
 
das Kommando, welches zum Start des Servers aufgerufen wird.
 
GDM hängt "-auth <ServAuthDir>/:n.Xauth :n" hinter jede Zeile, wobei „n“ die Nummer des
 
Displays darstellt.
 
5.3.2.5. GDM in deutsch
 
Wie schon im Abschnitt zur Konfigurationsdatei von GDM beschrieben, ist die Auswahl der Sprache momentan
 
noch nicht komplett in GDM implementiert. Wenn Sie dennoch Wert auf eine deutschsprachige Begrüßung
 
legen, müssen Sie am Startscript von GDM eine kleine Veränderung vornehmen.
 
GDM wird über die Datei /etc/init.d/gdm gestartet. Mit dem Parameter „start“ beginnt in dieser Datei der
 
Abschnitt mit den zum Start von GDM nötigen Kommandos. Suchen Sie diesen Abschnitt und fügen Sie vor
 
dem Start von GDM die Zeile export LANG=de ein. Hier ein Ausschnitt aus der Datei:
 
...
 
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
 
DAEMON=/usr/bin/gdm
 
NAME=gdm
 
DESC="GNOME Display Manager"
 
test -f $DAEMON || exit 0
 
case "$1" in
 
start)
 
echo -n "Starting $DESC: "
 
# Ergänzung für deutsche Texte
 
export LANG=de
 
start-stop-daemon --start --quiet --pidfile /var/run/$NAME.pid --exec $DAEMON
 
echo "$NAME."
 
;;
 
stop)
 
...
 
259
 
Kapitel 5. X11
 
Wenn Sie nun GDM neu starten (mit dem Kommando: /etc/init.d/gdm stop ; /etc/init.d/gdm
 
start), sollten die Menüs in der gewünschten Sprache erscheinen.
 
Als Krönung können Sie nun noch den Text „Welcome to ...“ in der GDM-Konfigurationsdatei durch einen
 
passenden Text ersetzen.
 
Beachten Sie, daß dieser Eingriff die Sprache für alle Benutzer des Systems verändert und nur als
 
Zwischenlösung zu sehen ist, bis GDM in der Lage ist, die Sprache selber zu verwalten!
 
Nach dem Anmelden am System werden Sie bemerken, daß Programme, die auf GNOME basieren, immer
 
noch über englisch-sprachige Menüs verfügen. Auch dies ist auf die noch fehlende Implementation in GDM
 
zurückzuführen. Wenn Sie die komplette Benutzeroberfläche eindeutschen möchten, finden Sie im Abschnitt
 
über GNOME weitere Hinweise hierzu. Der Eingriff hierfür ist im Prinzip der gleiche wie hier für GDM
 
gezeigt.
 
5.3.3. login.app
 
Login.app ist kein Display-Manager wie xdm oder gdm, Sie können diesen also nicht verteilt im Netz nutzen,
 
sondern nur lokal auf einem Rechner. Dafür wurde Login.app aber auch nicht entworfen Ziel war es, ein
 
kleines, schnelles und gut aussehendes grafisches Login zu bieten.
 
Abbildung 5-51. Login.app
 
Sie können Ihr System auch von Login.app aus herunterfahren, geben Sie hierzu als Benutzernamen „halt“,
 
„reboot“ oder auch „suspend“, gefolgt vom Paßwort für den Superuser, an.
 
Die Homepage zu Login.app finden Sie unter: http://www.fukt.hk-r.se/~per/login/.
 
5.4. X11 Schriften
 
Wer viel mit Texten hantiert oder Debian GNU/Linux im grafischen Bereich einsetzt, kommt nicht um den
 
Einsatz von unterschiedlichsten Schriften herum. Die grafische Oberfläche X11 setzt standardmäßig Schriften
 
im Postscript-Format ein. Debian GNU/Linux liefert eine ganze Reihe von diesen Schriften mit. Auf anderen
 
Betriebssystemen haben sich aber auch Schriften im sogenannten True-Type-Format durchgesetzt, diese findet
 
man bei vielen kommerziellen Programmen oder als Zugabe auf CDs in diversen Computerzeitschriften sowie
 
im Internet. Im folgenden wird beschrieben, wie diese Schriften unter Debian GNU/Linux genutzt werden
 
können.
 
260
 
Kapitel 5. X11
 
Wenn Sie Display-Manager, wie zum Beispiel xdm oder gdm, einsetzen, sollten Sie diesen zuallererst
 
deaktivieren. Sie müssen einige Änderungen an den Konfigurationsdateien ihres X-Servers vornehmen, dies
 
kann dazu führen, daß dieser nicht mehr korrekt startet und das System in einen unbenutzbaren Zustand bringt.
 
Nach erfolgreicher Änderung können Sie den Display-Manager natürlich wieder aktivieren. Sie können xdm
 
deaktivieren, indem Sie das Kommando: /etc/init.d/xdm stop ausführen, beachten Sie jedoch, daß so
 
beim nächsten Neustart des Systems der xdm wieder gestartet wird. Um xdm dauerhaft zu deaktivieren, können
 
Sie einfach das Paket löschen (mit dpkg -r xdm) oder am Anfang der Datei /etc/init.d/xdm die Zeile
 
exit 0 einfügen. Für die folgenden Versuche können Sie mit dem Kommando startx den X-Server starten.
 
5.4.1. Allgemeines zu Schriften
 
Sicher ist Ihnen schon aufgefallen, daß viele Seiten im Web auf Ihrem Linux-System mit kleineren Schriften
 
dargestellt werden als auf anderen Betriebssystemen. Dies hängt mit der Auflösung unter den verschiedenen
 
Betriebssystemen zusammen. Der von anderen Betriebssystemen verwendeten Auflösung von 72 dpi (Dots per
 
Inch) stehen 75 dpi unter X11 gegenüber. Dies führt dazu, daß viele Schriften zu klein dargestellt werden, diese
 
erscheinen in ca. 2/3 der eigentlichen Größe. Eine 12-Punkte-Schrift erscheint somit nur als 9 Punkte und eine 9
 
Punkte als 6-Punkte-Schrift.
 
Es gibt drei Ansatzpunkte, um dies zu beheben. Zuerst können Sie dem X-Server die gewünschte Auflösung
 
mitteilen. Wenn Sie einen Login-Manager wie XDM benutzen, ändern Sie hierzu in der Datei
 
/etc/X11/xdm/Xservers die Zeile:
 
:0 local /usr/X11R6/bin/X
 
in
 
:0 local /usr/X11R6/bin/X -dpi 120
 
Wenn Sie GDM als Login-Manager benutzen, tragen Sie die Option -dpi 120 in die Datei
 
/etc/X11/gdm/gdm.conf, im Abschnitt „servers“, ein.
 
[servers]
 
0=/usr/bin/X11/X vt7 -dpi 120
 
Als nächsten Schritt sorgen Sie dafür, daß die X11-Schriften mit 100dpi installiert sind und vom X-Server
 
zuerst gefunden werden. Ändern Sie hierzu die Datei /etc/X11/XF86Config wie folgt:
 
Section "Files"
 
RgbPath "/usr/X11R6/lib/X11/rgb"
 
FontPath "/usr/X11R6/lib/X11/fonts/100dpi/"
 
FontPath "/usr/X11R6/lib/X11/fonts/75dpi/"
 
FontPath "/usr/X11R6/lib/X11/fonts/misc/"
 
FontPath "/usr/X11R6/lib/X11/fonts/Type1/"
 
FontPath "/usr/X11R6/lib/X11/fonts/Speedo/"
 
EndSection
 
Wichtig ist hierbei die Reihenfolge. Die Zeile mit dem Pfad zu den 100dpi-Schriften muß vor der Zeile mit den
 
75dpi-Schriften stehen.
 
Nun stehen wir noch vor dem Problem, daß Schriften, die nicht in der benötigten Größe auf dem System
 
vorhanden sind, vom X-Server automatisch durch Kopieren einzelner Pixel vergrößert werden. Dies führt zu
 
sehr häßlichen „Treppeneffekten“ bei den Schriften. Sie können diese umgehen, indem Sie den X-Server
 
anweisen, zuerst skalierbare Schriften zu nutzen, dann Bitmap-Schriften der passenden Größe und zuletzt die
 
Bitmap-Schriften zu skalieren. Dies erfordert etwas mehr Rechenaufwand vom System, führt aber zu den besten
 
Ergebnissen. Wenn Sie über einen langsamen Rechner verfügen sollten Sie sich überlegen, auf die skalierten
 
261
 
Kapitel 5. X11
 
Schriften zu verzichten. Hier ein Ausschnitt aus der Datei /etc/X11/XF86Config mit den passenden
 
Einträgen:
 
Section "Files"
 
RgbPath "/usr/X11R6/lib/X11/rgb"
 
FontPath "/usr/X11R6/lib/X11/fonts/Type1/"
 
FontPath "/usr/X11R6/lib/X11/fonts/Speedo/"
 
FontPath "/usr/X11R6/lib/X11/fonts/100dpi/:unscaled"
 
FontPath "/usr/X11R6/lib/X11/fonts/75dpi/:unscaled"
 
FontPath "/usr/X11R6/lib/X11/fonts/misc/"
 
FontPath "/usr/X11R6/lib/X11/fonts/100dpi/"
 
FontPath "/usr/X11R6/lib/X11/fonts/75dpi/"
 
EndSection
 
Beachten Sie in jedem Fall, daß die benötigten Pakete mit den Schriften installiert sein müssen.
 
5.4.2. xfs - X11 Font-Server
 
Installieren Sie zunächst das Paket xfs_*.deb. Die Konfigurationsdatei zu xfs (/etc/X11/xfs/config)
 
enthält, ebenso wie die X11-Konfiguration, die Pfade zu den Schriften auf Ihrem System. Auch können Sie hier
 
die Auflösung der Schriften einstellen.
 
# paths to search for fonts
 
catalogue =
 
/usr/X11R6/lib/X11/fonts/100dpi/:unscaled,
 
/usr/X11R6/lib/X11/fonts/75dpi/:unscaled,
 
/usr/X11R6/lib/X11/fonts/misc/,
 
/usr/X11R6/lib/X11/fonts/Speedo/,
 
/usr/X11R6/lib/X11/fonts/Type1/,
 
/usr/X11R6/lib/X11/fonts/100dpi/,
 
/usr/X11R6/lib/X11/fonts/75dpi/
 
# x1,y1,x2,y2,...
 
default-resolutions = 100,100,75,75
 
Überprüfen Sie die Einstellungen und passen Sie diese ggf. Ihrem System an. Starten Sie danach den
 
Font-Server neu mit dem Kommando: /etc/init.d/xfs restart . Bevor Sie den X-Server so
 
konfigurieren, daß er den Font-Server benutzt, anstatt die Fonts direkt zu laden, können Sie die
 
Funktionsfähigkeit des Font-Servers testen. Hierzu dient das Kommando fslsfonts:
 
$ fslsfonts -server unix/:7100
 
-adobe-courier-bold-i-normal--0-0-0-0-m-0-iso8859-1
 
-adobe-courier-bold-o-normal--0-0-100-100-m-0-iso8859-1
 
-adobe-courier-bold-o-normal--0-0-75-75-m-0-iso8859-1
 
....
 
Dieses Kommando sollte Ihnen alle installierten Schriften auf Ihrem System anzeigen. Wenn die Installation bis
 
hierhin erfolgreich war, können Sie sich daran wagen, den X-Server von der Benutzung des neuen Font-Servers
 
zu überzeugen. Hierzu müssen Sie wieder einmal einige Änderungen an der Datei /etc/X11/XF86Config
 
vornehmen.
 
Section "Files"
 
FontPath "unix/:7100"
 
FontPath "/usr/X11R6/lib/X11/fonts/misc/"
 
EndSection
 
262
 
Kapitel 5. X11
 
Reduzieren Sie den kompletten Abschnitt mit den Pfaden zu den Schriften auf die beiden oben gezeigten
 
Zeilen. Dies veranlaßt den X-Server dazu, zuerst den Font-Server zu benutzen. Lassen Sie auch die eine Zeile
 
mit dem direkten Pfad in der Datei stehen für den Fall, daß der Font-Server nicht erreichbar sein sollte.
 
Sie können nun den X-Server wieder starten (mit startx) und wenn alles funktioniert auch den
 
Login-Manager xdm wieder aktivieren. Wenn Sie den X-Server gestartet haben, können Sie in einem
 
X-Terminal überprüfen, ob auch alle Schriften gefunden werden:
 
$ xlsfonts
 
-adobe-courier-bold-i-normal--0-0-0-0-m-0-iso8859-1
 
-adobe-courier-bold-o-normal--0-0-100-100-m-0-iso8859-1
 
-adobe-courier-bold-o-normal--0-0-75-75-m-0-iso8859-1
 
....
 
5.4.3. xfstt - X11 True Type Font-Server
 
Um True-Type-Schriften benutzen zu können, benötigen Sie zunächst einen sogenannten Font-Server.
 
Mit der Version 4.0 von XFree86 werden auch True-Type-Fonts direkt vom X-Server ,unterstützt. Die
 
Verwendung eines speziellen Font-Servers ist nicht notwendig.
 
Wenn die ältere Version 3.x von XFree86 zu Einsatz kommt, so ist der Einsatz eines Font-Servers für True-Type
 
Fonts notwendig. Unter Debian GNU/Linux dient hierzu das Paket xfstt_*.deb. Dieses können Sie wie
 
gewohnt mit Apt oder dselect installieren.
 
Installieren Sie nun einige True-Type-Fonts. Sie finden Schriften in diesem Format auf vielen Seiten im Netz
 
oder auf CD-ROMs von Computerzeitschriften. Kopieren Sie die Dateien (mit der Endung .ttf) in das
 
Verzeichnis /usr/share/fonts/truetype. Stellen Sie auch sicher, daß die Schriften vom Font-Server
 
gelesen werden können.
 
Starten Sie danach den Font-Server neu mit dem Kommando: /etc/init.d/xfstt force-reload. Auch
 
bei diesem Font-Server können Sie vorab kontrollieren, ob alles korrekt installiert wurde. Beachten Sie bitte,
 
daß die Standardeinstellungen unter Debian den Port 7101 statt 7100 für den True Type Font-Server benutzen.
 
Weiterhin sind die Zugriffsrechte so vergeben, daß ein Zugriff nur als Superuser möglich ist. Wenn Sie
 
versuchen, als Benutzer auf den Server zuzugreifen, erhalten Sie folgende Meldung:
 
$ fslsfonts -server unix/:7101
 
_FSTransSocketUNIXConnect: Can’t connect: errno = 111
 
fslsfonts: unable to open server "unix/:7101"
 
Als Superuser sollten Ihnen die verfügbaren Schriften angezeigt werden:
 
# fslsfonts -server unix/:7101
 
-ttf-arial black-medium-r-normal-regular-0-0-0-0-p-0-iso8859-1
 
-ttf-arial mt black-medium-r-normal-regular-0-0-0-0-p-0-iso8859-1
 
-ttf-arial narrow-bold-i-normal-bold italic-0-0-0-0-p-0-iso8859-1
 
Wenn bis hierher keine Probleme aufgetreten sind, können Sie dem X-Server beibringen, auch diesen
 
Font-Server zu benutzen. Wie schon bei den Schriften, ist auch hier die Reihenfolge der Einträge entscheidend,
 
Einträge weiter oben in der Liste werden vorrangig behandelt. In diesem Beispiel wird also zuerst der True Type
 
Font-Server befragt, danach der normale Font-Server. Der entsprechende Ausschnitt aus der Datei
 
/etc/X11/XF86Config:
 
Section "Files"
 
FontPath "unix/:7101"
 
263
 
Kapitel 5. X11
 
FontPath "unix/:7100"
 
FontPath "/usr/X11R6/lib/X11/fonts/misc/"
 
EndSection
 
Auch nach dieser Änderung können Sie wieder, nachdem Sie mit startx den X-Server gestartet haben, die
 
Verfügbarkeit der Schriften prüfen:
 
$ xlsfonts | grep ttf
 
-ttf-arial black-medium-r-normal-regular-0-0-0-0-p-0-iso8859-1
 
-ttf-arial mt black-medium-r-normal-regular-0-0-0-0-p-0-iso8859-1
 
-ttf-arial narrow-bold-i-normal-bold italic-0-0-0-0-p-0-iso8859-1
 
....
 
Sie können nun die neuen Schriften in Programmen wie The Gimp, Netscape oder Staroffice benutzen. Wenn
 
Sie weitere True-Type-Schriften installieren (durch einfaches Kopieren der Dateien nach
 
/usr/share/fonts/truetype/), müssen Sie den Font-Server neu starten, damit die Schriften dem System
 
bekannt gemacht werden. Benutzen Sie dazu das Kommando: /etc/init.d/xfstt restart.
 
5.4.3.1. Microsoft Fonts
 
Sicherlich kennen Sie das Problem von unleserlichen Fonts auf Webseiten, häufig werden diese unleserlich
 
klein dargestellt. Grund hierfür ist das der Designer der Seite fest eingestellte Schriften benutzt hat die auf dem
 
Zielsystem nicht verfügbar sind. Das Problem läßt sich zwar durch entsprechende Browsereinstellungen
 
umgehen, eleganter ist es jedoch die benötigten Schriften einfach zu installieren.
 
Auf dem Webseiten der Firma Microsoft finden sich einige TrueType Fonts zum Download. Leider liegen diese
 
nur in einem selbstentpackenden Format vor, welches zudem noch ein installiertes Windows benötigt...
 
Zur Lösung all dieser Probleme ist das Debian Paket msttcorefonts verfügbar, dieses benötigt ausserdem das
 
Paket cabextract welches die Selbstentpackenden Archive extrahieren kann. Aufgrund von
 
Lizenzbedingungen sind die eigentlichen Archive mit den TrueType Schriften nicht in dem Debian Paket
 
enthalten, diese werden jedoch während der Installation des Paketes vom Server geholt.
 
sushi:/home/fr# apt-get install msttcorefonts
 
Reading Package Lists... Done
 
Building Dependency Tree... Done
 
The following extra packages will be installed:
 
cabextract
 
The following NEW packages will be installed:
 
cabextract msttcorefonts
 
0 packages upgraded, 2 newly installed, 0 to remove and 158 not upgraded.
 
Need to get 19.3kB of archives. After unpacking 164kB will be used.
 
Do you want to continue? [Y/n]
 
Get:1 ftp://ftp.freenet.de woody/contrib msttcorefonts 0.8.2 [4276B]
 
Get:2 ftp://ftp.freenet.de woody/main cabextract 0.2-2 [15.0kB]
 
Fetched 19.3kB in 1s (14.0kB/s)
 
Wähle vormals gewähltes Paket cabextract.
 
(Lese Datenbasis ... 96010 Dateien und Verzeichnisse sind momentan installiert.)
 
Packe cabextract aus (von .../cabextract_0.2-2_i386.deb) ...
 
Wähle vormals gewähltes Paket msttcorefonts.
 
Packe msttcorefonts aus (von .../msttcorefonts_0.8.2_all.deb) ...
 
Installiere cabextract (0.2-2) ...
 
Installiere msttcorefonts (0.8.2) ...
 
These fonts are provided by Microsoft "in the interest of crossplatform
 
compatibility". You are free to download these fonts and
 
use them for your own use, but you may not redistribute these fonts
 
without first registering with Microsoft and following their restrictions.
 
264
 
Kapitel 5. X11
 
--16:18:19-- http://www.microsoft.com/typography/downloads/andale32.exe
 
=> ‘andale32.exe’
 
Verbindungsaufbau zu www.microsoft.com:80... verbunden!
 
HTTP Anforderung gesendet, warte auf Antwort... 200 OK
 
Länge: 198,384 [application/x-msdownload]
 
0K -> .......... .......... .......... .......... .......... [ 25%]
 
50K -> .......... .......... .......... .......... .......... [ 51%]
 
100K -> .......... .......... .......... .......... .......... [ 77%]
 
150K -> .......... .......... .......... .......... ... [100%]
 
...
 
Nach dem Download aller Fontpakete, werden diese entpackt und die Dateien an die entsprechenden Stellen
 
kopiert.
 
Nach der Installation des Paketes stehen die folgenden Schriften zur Verfügung: Andale Mono, Arial Black,
 
Arial (Bold, Italic, Bold Italic), Comic Sans MS (Bold), Courier New (Bold, Italic, Bold Italic), Georgia (Bold,
 
Italic, Bold Italic), Impact, Times New Roman (Bold, Italic, Bold Italic), Trebuchet (Bold, Italic, Bold Italic),
 
Verdana (Bold, Italic, Bold Italic), Webdings.
 
5.5. Windowmanager
 
Zum sinnvollen Betrieb einer grafischen Benutzeroberfläche unter Debian GNU/Linux reicht es nicht aus, einen
 
X-Server zu installieren. Neben den eigentlichen Anwendungen wird auch ein sogenannter Windowmanager
 
benötigt. Das X-Window-System selbst stellt ein geöffnetes Fenster ohne irgendwelche Rahmen dar. Sie können
 
mit dem Programm arbeiten, aber das Fenster weder verschieben noch vergrößern oder irgendwelche anderen
 
Fensteroperationen vornehmen. Diese Funktionen übernimmt der sogenannte Windowmanager.
 
Debian GNU/Linux verfügt über eine große Anzahl verschiedener Windowmanager. Sie unterscheiden sich im
 
Aussehen und in der Funktionalität. Einige dieser Windowmanager können auch über sogenannte „Themes“
 
(äußere Erscheinungsbilder) während der Laufzeit im Aussehen verändert werden.
 
Sie können unter Debian/GNU Linux verschiedene Windowmanager installieren und zwischen diesen
 
wechseln. Ein Neustart der laufenden Anwendungen ist hierfür nicht notwendig. Im folgenden werden wir
 
einige Windowmanager vorstellen, schauen Sie sich aber ruhig mal um, Sie werden sicher Ihren persönlichen
 
Favoriten finden.
 
5.5.1. Fvwm
 
Einer der Klassiker unter den Windowmanagern. Die aktuelle Version 2 wird auch häufig als fvwm2 bezeichnet.
 
Ein beliebter Ableger des fvwm ist fvwm95, welcher einem Redmonder Betriebssystem nachempfunden ist, so
 
daß der Umstieg leicht fällt.
 
265
 
Kapitel 5. X11
 
Abbildung 5-52. FVWM
 
Die Homepage finden Sie unter: http://www.fvwm.org
 
5.5.2. Windowmaker
 
Ein sehr beliebter Windowmanager, der dem Betriebssystem NeXTStep nachempfunden ist.
 
Abbildung 5-53. WindowMaker
 
Die Homepage finden Sie unter: http://windowmaker.org
 
5.5.3. Enlightenment
 
Enlightenment ist ein weiterer WindowManager, Ziel der Entwicklung war es, einen möglichst weitgehend
 
konfigurierbaren WindowManager zu schaffen. Dieses betrifft sowohl das Aussehen wie auch die Bedienung.
 
266
 
Kapitel 5. X11
 
Abbildung 5-54. Enlightenment
 
Themes und weitere Informationen zu Enlightenment finden Sie unter: http://www.enlightenment.org/.
 
267
 
Kapitel 6. GNOME
 
6.1. GNOME 1.4
 
Abbildung 6-1. GNOME-Logo
 
Mit der Version 1.4 von GNOME, einer einfach zu benutzenden aber dennoch leistungsfähigen grafischen
 
Benutzeroberfläche, wurde viele Neuerungen gegenüber der Version 1.0 eingeführt. Der Dateimanager (gmc)
 
wurde durch „Nautilus“ ersetzt. Nautilus ist weit mehr als ein Dateimanager. Durch die Integration von
 
Internetdiensten kann Nautilus auch als Webbrowser benutzt werden. Das markieren eines Textes erlaubt eine
 
direkte Suche im Netz, beispielsweise über Google. Nautilus zeigt die verschiedensten Dateiformate direkt an,
 
beispielsweise lassen sich MP3 direkt abspielen.
 
Mit dieser Version wurde auch der Windowmanager Sawfish in den GNOME Desktop aufgenommen. Weiterhin
 
wurde die Kommunikationsfähigkeit mit anderen X Anwendungen, dazu zählt auch KDE, verbessert. Über ein
 
sogenanntes „Lauch Feedback“ kann angezeigt werden das Anwendungen gestartet werden, dies ist
 
insbesondere bei sehr großen Anwendungen sinnvoll, so kommt der Benutzer nicht in die Versuchung eine
 
Anwendung zweimal zu starten. Ein komplett überarbeiteter Browser für die Dokumentation von GNOME und
 
Medusa, ein Indizierungstool für die lokalen Dateisysteme runden diese Version von GNOME ab.
 
Hinter den Kulissen hat sich auch einiges getan, Entwickler werden sich beispielsweise über VFS freuen, ein
 
virtuelles, erweiterbares Dateisystem. Doch die entwicklung von GNOME Anwendungen soll nicht Thema
 
dieses Abschnittes sein.
 
GNOME besteht auf Debian Systemen aus mehreren Paketen, es ist nicht notwendig alle Komponenten von
 
GNOME zu installieren. Die Konfigurationsdateien von GNOME werden im Heimatverzeichnis des jeweiligen
 
Benutzers abgelegt. Es werden hierzu einige neue Verzeichnisse angelegt:
 
fr@wasabi:-$ ls .gnome*
 
.gnome-errors
 
.gnome:
 
accels application-info apps Background control-center default.wm gdm
 
Gnome gnome-hint gnome-vfs metadata.db panel panel.d session
 
Terminal theme-switcher-capplet wm-properties
 
.gnome-desktop:
 
fr’s Home Müll starthere.desktop
 
.gnome_private:
 
panel.d
 
268
 
Kapitel 6. GNOME
 
Abbildung 6-2. GNOME-Desktop
 
Je nachdem welche Programme installiert wurde können sich die Konfigurationen zu diesen Programm auch in
 
anderen Verzeichnissen verstecken. Wenn Probleme mit der folgenden Beschreibung auftauchen, so ist es
 
denkbar das bereits vorher Veränderungen an der Konfiguration vorgenommen wurden und sich beispielsweise
 
die Fenster nicht wie beschrieben verhalten. In einem solchen Fall kann einfach das Verzeichnis des betroffenen
 
Programmes umbenannt oder gelöscht werden, es wird beim nächsten Aufruf wieder neu angelegt und mit den
 
Voreinstellungen versehen. Im Falle von GNOME müssen Sie sich erneut am System anmelden.
 
6.1.1. Windowmanager - Sawfish
 
Unter der grafischen Oberfläche X11, welche im allgemeinen auf Linux Systemen durch die X-Server aus dem
 
XFree86 Projekt zur Verfügung gestellt wird, werden Fenster zunächst ohne Rahmen und Bedienelemente
 
(Schliessen, Verkleinern, Vergrössern usw.) dargestellt. Dies wird einem sogenannten Window Manager
 
überlassen. Der Benutzer hat die freie Wahl zwischen verschiedenen Varianten, im Zusammenspiel mit
 
GNOME ist es jedoch sinnvoll auf den Windowmanager des GNOME Projektes, Sawfish, zu setzen. Die
 
Integration von Sawfish und das Zusammenspiel mit anderen GNOME Komponenten ist am weitesten
 
fortgeschritten. Der Wechsel zu einem anderen Windowmanager kann jedoch jederzeit über das GNOME
 
Kontrollzentrum erfolgen, hierzu müssen natürlich die entsprechenden Pakete installiert sein.
 
269
 
Kapitel 6. GNOME
 
Sawfish ist ein über eine Lisp-basierte Script-Sprache erweiterbarer Windowmanager. Das komplette Aussehen
 
der Fenster ist konfigurierbar. Sawfish wurde von Grund auf neu geschrieben, es wurden keinerlei Sourcecodes
 
aus anderen Windowmanagern wiederverwendet.
 
Das Ziel von Sawfish ist es, sich auf die eigentlichen Aufgaben eines Windowmanagers zu beschränken. Dieser
 
Windowmanager verfügt über keinerlei Funktionen, die auch oder besser von anderen Anwendungen erledigt
 
werden können (zum Beispiel das Einbinden von Hintergrundbildern). Alle höheren Funktionen sind in der
 
Sprache Lisp realisiert, so daß diese in Zukunft leicht erweitert oder verändert werden können. Von den Menüs
 
(diese benutzen GTK+), über das Verschieben, Vergrößern usw. von Fenstern, virtuelle Desktops und viele
 
andere Funktionen, alles wurde in Lisp realisiert.
 
Als Benutzer können Sie Sawfish umkonfigurieren, indem Sie entweder die Dateien in .sawfish/ in Ihrem
 
Homeverzeichnis verändern (wenn Sie über Kenntnisse in Lisp verfügen) oder ganz einfach das integrierte
 
Konfigurationssystem benutzen, welches Sie über die Menüs im GNOME Kontrollzentrum erreichen. Dieses
 
wurde in GTK+ implementiert.
 
Sawfish wird mit verschiedenen Themen installiert, Sie können diese für jedes Fenster einzeln einstellen.
 
Abbildung 6-3. Sawfish
 
Wie von den meisten anderen Windowmanagern oder auch von anderen Betriebssystemen mit grafischen
 
Oberflächen bekannt, können Fenster mittels Sawfisch auf dem Desktop verschoben werden. Hierzu ist die linke
 
Maustaste zu drücken während sich der Mauszeiger über der Titelzeile des zu verschiebenden Fensters befindet.
 
Bei gedrückt gehaltener Maustaste folgt das Fenster dem Mauspfeil.
 
Fenster können horizontal und vertikal verkleinert und vergrößert werden, indem die linke Maustaste gedrückt
 
gehalten wird während sich der Mauszeiger auf dem Rahmen der Fensters befindet. Der Mauspfeil verändert
 
dabei seine Form zu einem dünneren Pfeil mit einem Querbalken an der Spitze. Das gleichzeitige horizontale
 
und vertikale Verändern der Größe ist an den vier Ecken des Fensters möglich.
 
Oben links in der Titelzeile des Fensters findet sich ein Symbol mit einem Kreuz, dieses dient zum schliessen
 
des Fensters, wenn mit der linken Maustaste auf dieses Symbol geklickt wird. Ein Klick mit der rechten
 
Maustaste bringt ein Menü zum Vorschein mit dem sich verschiedene Optionen des Fensters, beispielsweise das
 
Aussehen oder das Fokusverhalten beeinflussen lassen. Weiterhin können Fenster über dieses Menü auf anderen
 
virtuelle Desktops verschoben werden.
 
Am rechten Rand der Titelzeile sind drei Symbole dargestellt, das erste verbirgt bei einem Klick mit der linken
 
Maustaste das Fenster im Panel, mit der rechten Maustaste erscheint das eben nereits beschriebene Menü. Mit
 
dem zweiten Symbol läßt sich das Fenster auf die volle Auflösung des Bildschirms vergrößern (Linke
 
Maustaste). Wenn das Fenster bereits die volle Größe erreicht hat, so läßt es sich mit dieser Schaltfläche auf die
 
letzte Größe verkleinern. Das dritte Symbol rollt das Fenster zusammen so das lediglich die Titelzeile angezeigt
 
wird. Dieser Effekt läßt sich auch durch einen schnellen Doppelklick auf die Titelzeile erreichen.
 
270
 
Kapitel 6. GNOME
 
6.1.2. Desktop
 
Der GNOME Desktop besteht aus verschiedenen Komponenten. Neben dem eigentlichen Desktop (dem
 
Hintergrund des Bildschirms) zählt man noch das Panel (eine Zeile mit Symbolen am unteren und oberen
 
Bildschirmrand) dazu.
 
6.1.2.1. Panel
 
Wenn keine Veränderungen an der Konfiguration vorgenommen wurden, so werden nach dem Start von
 
GNOME zwei Panels angezeigt. Am unteren Bildschirmrand findet sich ein breiteres Panel, am oberen
 
Bildschirmrand ein etwas schmaleres.
 
Abbildung 6-4. GNOME Panel
 
Am äußeren linken und rechten Rand findet sich zunächst jeweils ein Symbol mit einem Pfeil. Dieses dient zum
 
einrollen das Panels an den jeweiligen Rand des Bildschirms. Es wird nach einem Klick mit der linken
 
Maustaste auf dieses Symbol lediglich der Pfeil angezeigt, ein erneuter Mausklick rollt das Panel wieder aus.
 
Hinter dem zweiten Symbol von links, dem GNOME Logo, verbirgt sich ein Menü aus dem sich die
 
installierten Anwendungen auf dem System starten lassen. Das Debian Menüsystem sorgt dafür da alle
 
Anwendungen in diesem Menü erscheinen. Weiterhin können in diesem Menü, unter dem Punkt „Panel“
 
verschiedene Einstellungen das Panel betreffend vorgenommen werden. Wie bereits von dem anderen, sehr
 
verbreiteten, Betriebssystem bekannt kann hier auch die aktuelle Sitzung beendet werden. Leider ist dieses
 
Symbol nicht mit „Start“ beschriftet.... (kleiner Scherz ;-) ).
 
6.1.3. Nautilus
 
Mit „Nautilus“ wurde ein komplett neuer Dateimanager geschaffen. Die Funktionalität geht dabei über die eines
 
herkömmlichen Dateimanagers hinaus, die Entwickler sprechen daher von einer „Desktop-Shell“. Neben den
 
üblichen Funktionen eines Dateimanagers wie erzeugen, kopieren, löschen, umbenennen und verschieben von
 
Dateien, bietet Nautilus durch die Integration in den Desktop und die Einbeziehung von bereits auf dem System
 
installierten Komponenten viele weitere Funktionen.
 
271
 
Kapitel 6. GNOME
 
Abbildung 6-5. Nautilus
 
Die Übersicht bietet die Möglichkeit die Objekte in verschiedenen Ansichten anzuzeigen. Voreingestellt ist die
 
Ansicht als Symbol (Icon), hierbei wird für jedes Objekt ein dem Typ entsprechendes Bild angezeigt. Nautilius
 
erzeugt für Grafiken, welche in den verschiedensten Formaten vorliegen können, ein verkleinertes Icon. Bei
 
Textdateien wird der Anfang der Datei dargestellt.
 
Abbildung 6-6. Nautilus
 
272
 
Kapitel 6. GNOME
 
Neben der Ansicht als Icon können die Objekte auch in Listenform angezeigt werden. Für spezielle Dateitypen
 
stehen zusätzliche Ansichten zur Verfügung. Werden in einem Verzeichnis beispielsweise MP3 Dateien
 
gefunden, so kann als Ansicht „Musik“ gewählt werden. Es werden dann nicht die Dateinamen, sondern Titel
 
und Interpret angezeigt. Die Dateien können direkt aus Nautilus heraus abgespielt werden.
 
Abbildung 6-7. Nautilus
 
In Nautilus können auch direkt Webseiten geladen werden, hierzu wird ein installiertes Mozilla Paket
 
vorausgesetzt.
 
273
 
Kapitel 6. GNOME
 
Abbildung 6-8. Nautilus
 
274
 
Kapitel 6. GNOME
 
6.2. GNOME 2.0
 
Abbildung 6-9. GNOME 2 - Logo
 
Mit der Version 2.0 von GNOME wurden nicht nur viele Programme aktualisiert, es hat sich auch hinter der
 
Bühne viel verändert. So benutzt GNOME 2 nun komplett die GTK 2 Bibliotheken und wurde im Hinblick auf
 
Geschwindigkeit an vielen Stellen optimiert.
 
GNOME 2.0 ist nicht in der Debian Version 3.0 „woody“ enthalten, es stehen jedoch auf diese Version
 
angepasste Pakete im Netz zur Verfügung. Hierzu ist der Eintrag
 
275
 
Kapitel 6. GNOME
 
deb http://people.debian.org/~kov/debian woody gnome2
 
der Datei /etc/apt/sources.list hinzuzufügen.
 
Debian GNU/Linux Systeme die bereits auf „sarge“ (Debian GNU/Linux 3.1) aktualisiert wurden kommen
 
ohne einen solchen Eintrag aus. Dort sind alle GNOME 2 Pakete bereits enthalten.
 
Als Basis für eine sinnvolle Paketauswahl kann zunächst das Meta-Paket gnome2 dienen. Dieses Paket enthält
 
Abhängigkeiten zu wichtigen Paketen, nicht aber zu Spielen, Office Anwendungen oder Paketen zur
 
Softwareentwicklung. Wenn Programme aus solchen Bereichen ebenfalls installiert werden sollen, so sind die
 
Pakete gnome-extras, gnome-office oder gnome-devel zu installieren.
 
Um einen Login auf der grafischen Oberfläche X zu ermöglichen steht auch unter GNOME 2 der GDM zur
 
Verfügung. Hierbei kann weiterhin auf den GDM aus GNOME 1.4 zurückgegriffen werden, die neue Version
 
steht als Paket gdm2 zur Verfügung.
 
Abbildung 6-10. GDM 2
 
Wenn noch keine Anpassungen am GDM vorgenommen wurden, so startet GDM mit dem oben gezeigten
 
Aussehen. Eine Neuerung ist die Möglichkeit (nach Eingabe des entsprechenden Passwortes) die GDM
 
Konfiguration aus dem GDM Menü heraus zu starten. Weiterhin kann das System über Menüeinträge
 
neugestartet (Reboot), ausgeschaltet (Shutdown) oder in den Ruhezustand (Suspend) versetzt werden.
 
276
 
Kapitel 6. GNOME
 
Abbildung 6-11. GDM 2 Konfiguration
 
In der GDM Konfiguration kann beispielsweise auch das Aussehen des GDM angepasst werden. Eine Neuerung
 
ist hier eine grafische Variante des GDM.
 
Abbildung 6-12. GDM 2 grafisch
 
GNOME 2 wurde auch mit einem neuen Splashscreen versehen, weiterhin haben sich die Ladezeiten der
 
GNOME Komponenten deutlich verringert.
 
277
 
Kapitel 6. GNOME
 
Abbildung 6-13. GNOME 2 Splashscreen
 
Auf der Oberfläche hat sich für den Benutzer zunächst nur wenig getan, auffällig ist das viele der Icons auf dem
 
Desktop überarbeitet wurden. Unter GNOME 2 stehen ebenfalls Panels zur Verfügung welche Menüs, Icons
 
oder Applets aufnehmen können. Als Dateimanager kommt in diesem Beispiel Nautilus 2 zum Einsatz welcher
 
ebenfalls auf die neue GNOME Version angepasst wurde.
 
Abbildung 6-14. GNOME 2 Desktop
 
278
 
Kapitel 6. GNOME
 
Es werden zunächst zwei Panels für den Benutzer eingerichtet. Das Panel am unteren Bildschirmrand ist
 
zunächst leer und dient lediglich zum Umschalten zwischen laufenden Anwendungen. Das Panel am oberen
 
Bildschirmrand (Applications / Anwendungen) verfügt auf der linken Seite über zwei Menüeinträge. Über den
 
ersten Eintrag können Programme gestartet werden oder es können Einstellungen verändert werden.
 
Abbildung 6-15. GNOME 2 Menüs
 
Über das zweite Menü (Action / Aktionen) können Programme ausgeführt, Dateien gesucht oder ein Screenshot
 
erstellt werden. Zwei weitere Einträge in diesem Menü dienen zum verriegeln des Desktops und zum abmelden
 
am System.
 
6.3. Links
 
GNOME FootNotes - GNOME Desktop News Themes, Icons, Backgrounds...
 
279
 
Kapitel 7. KDE
 
Dieser Abschnitt beschreibt die Installation und den Einsatz von KDE 3.0.x unter Debian GNU/Linux.
 
7.1. KDE und Debian - die unendliche Geschichte...
 
Lange Zeit waren für Debian GNU/Linux keine angepassten Debian Pakete verfügbar. Das Debian Team legt
 
großen Wert darauf das ausschlieslich Freie Software in die Distribution aufgenommen wird. Die Lizenzen von
 
KDE und den dazugehörigen Programmen genügten auch dieser Anforderung. Leider setzt KDE auf die QT
 
Bibliotheken der Norwegischen Firma Troll Tech auf, und diese waren in der Vergangenheit nicht unter einer
 
Freien Softwarelizenz verfügbar.
 
Mit der Version 2.0 der QT Bibliotheken änderte Troll Tech die Lizensierung, leider war dies zu spät als das die
 
entsprechenden Pakete noch in die Debian Version 2.2 (potato) einfliessen konnten. Entsprechende Pakete
 
mussten aus externen Quellen installiert werden.
 
Erst mit der Version 3.0 von Debian fanden KDE Pakete eine festen Platz in der Distribution. Leider hat es auch
 
bei dieser Version nicht für eine aktuelle Version „gereicht“, es wird die Version 2.2 von KDE installiert. Im
 
folgenden wird daher für KDE 3.0 beschrieben wie eine Installation aus dem Netz erfolgen kann.
 
7.2. KDE 2.2
 
Die Installation von KDE 2.2 kann direkt von den Debian GNU/Linux 3.0 „woody“ CD-ROMs erfolgen. Die
 
KDE Komponenten sind in viele einzelne Pakete aufgeteilt, es steht jedoch ein Meta-Paket kde zur Verfügung.
 
Sinnvoll ist weiterhin die Auswahl von kdm um einen Login mit der grafischen Oberfläche zu erlauben und
 
kde-i18n-de welches die benötigten Dateien enthält um eine deutschsprachige Benutzeroberfläche
 
darzustellen. Es stehen weitere Pakete für viele weitere Sprachen zur Verfügung.
 
Die Installation kann nun beispielsweise auf der Kommandozeile erfolgen:
 
debian:~# apt-get install kde kde-i18-n kdm
 
Reading Package Lists... Done
 
Building Dependency Tree... Done
 
The following extra packages will be installed:
 
ark kab karm kate kcalc kcharselect kchart kcoloredit kcron kdebase
 
kdebase-audiolibs kdebase-doc kdebase-libs kdelibs3 kdelibs3-bin kdepasswd
 
kdewallpapers kdf kdict kedit kfind kformula kfract kghostview khexedit
 
kiconedit kit kivio kjots kmail knewsticker knode knotes koffice
 
koffice-libs konqueror konsole kontour korn koshell kpackage kpaint kpm
 
kpresenter kruler kscreensaver ksirc ksnapshot kspread ksysv ktimer kugar
 
kuser kview kword libkdenetwork1 libkmid libkonq3 secpolicy
 
The following NEW packages will be installed:
 
ark kab karm kate kcalc kcharselect kchart kcoloredit kcron kde kde-i18n-de
 
kdebase kdebase-audiolibs kdebase-doc kdebase-libs kdelibs3 kdelibs3-bin
 
kdepasswd kdewallpapers kdf kdict kdm kedit kfind kformula kfract kghostview
 
khexedit kiconedit kit kivio kjots kmail knewsticker knode knotes koffice
 
koffice-libs konqueror konsole kontour korn koshell kpackage kpaint kpm
 
kpresenter kruler kscreensaver ksirc ksnapshot kspread ksysv ktimer kugar
 
kuser kview kword libkdenetwork1 libkmid libkonq3 secpolicy
 
0 packages upgraded, 62 newly installed, 0 to remove and 0 not upgraded.
 
Need to get 4632kB/43.2MB of archives. After unpacking 131MB will be used.
 
Do you want to continue? [Y/n]
 
Media Change: Please insert the disc labeled ’Debian GNU/Linux 3.0 beta _Woody_ -
 
Unofficial i386 Binary-1 (20020625)’ in the drive ’/cdrom/’ and press enter
 
Preconfiguring packages ...
 
Selecting previously deselected package kdelibs3-bin.
 
(Reading database ... 22682 files and directories currently installed.)
 
Unpacking kdelibs3-bin (from .../kdelibs3-bin_2.2.2-13_i386.deb) ...
 
Selecting previously deselected package kdelibs3.
 
...
 
280
 
Kapitel 7. KDE
 
Unpacking kde (from .../m/meta-kde/kde_2.2.25_all.deb) ...
 
Selecting previously deselected package kde-i18n-de.
 
Unpacking kde-i18n-de (from .../kde-i18n-de_4%3a2.2.2-2_all.deb) ...
 
Setting up kdewallpapers (2.2.2-14) ...
 
Setting up kdebase-doc (2.2.2-14) ...
 
...
 
Setting up ktimer (2.2.2-9) ...
 
Setting up kde (2.2.25) ...
 
Der Übersichtlichkeit halber wurde die Ausgabe an einigen Stellen etwas gekürzt (...). Nachdem nun alle Pakete
 
installiert sind, kann der Display Manager (KDM) gestartet werden. Hierbei ist darauf zu achten das der
 
X-Server installiert und konfiguriert wurde!
 
debian:~# /etc/init.d/kdm start
 
Starting K Desktop Manager: done.
 
Einige Augenblicke später sollte ein grafischer Login zur Verfügung stehen. Mit einem Benutzernamen und
 
dem entsprechenden Passwort kann nun die Anmeldung am System erfolgen.
 
Abbildung 7-1. KDE 2.2 KDM
 
Nach der Anmeldung informiert der „Splashscreen“ über den Fortschritt der Anmeldung. Bisher wurde für
 
diesen Benutzer noch keine Konfiguration erstellt, so daß die Sprache hier noch englisch ist.
 
281
 
Kapitel 7. KDE
 
Abbildung 7-2. KDE 2.2 Splashscreen
 
Nach der ersten Anmeldung eines Benutzers am neuen System (es sind noch keine Konfigurationsdateien für
 
KDE im Heimatverzeichnis des Benutzers vorhanden) wird ein „Wizard“ gestartet der die wichtigsten
 
Einstellung abfragt.
 
Abbildung 7-3. KDE 2.2Wizard
 
282
 
Kapitel 7. KDE
 
Zunächst ist das Lannd und die gewünschte Sprache zu wählen. Der Eintrag „Germany (de)“ findet sich im
 
Menü unter „Europe/Central“. Je nachdem welche Sprachen installiert wurden werden diese unter „Please
 
choose your language“ zur Auswahl angeboten.
 
Die Einstellungen werden sofort aktiviert, wirken sich allerdings nur auf neu gestartete Anwendungen aus.
 
Abbildung 7-4. KDE 2.2Wizard
 
Die nächste Einstellung beeinflusst das Aussehen und das Verhalten des Fenstermanagers. Hier kann zwischen
 
einer KDE eigenen Variante und der Emlation verschiedener anderer Betriebssysteme gewählt werden.
 
283
 
Kapitel 7. KDE
 
Abbildung 7-5. KDE 2.2Wizard
 
Im nächsten Schritt kann die Reaktionsgeschwindigkeit von KDE geändert werden. Auf langsamen Systemen
 
können die Effekte reduziert werden um die Belastung des Prozessors zu verringern.
 
Abbildung 7-6. KDE 2.2Wizard
 
284
 
Kapitel 7. KDE
 
Sogenannte „Themes“ verändern die Farben und das Aussehen der Anwendungen. Auch hier kann zwischen
 
verschiedenen Varianten gewählt werden.
 
Abbildung 7-7. KDE 2.2Wizard
 
Zum Abschluss der Konfiguration kann das KDE Control Center gestartet werden um weitere Einstellungen
 
vorzunehmen. Die wichtigsten Einstellungen sind jedoch vorgenommen worden und die grafische Oberfläche
 
KDE ist nun einsatzbereit.
 
285
 
Kapitel 7. KDE
 
Abbildung 7-8. KDE 2.2 Info
 
Nach jeder Anmeldung am System erscheint nun ein Fenster mit nützlichen Tips. Über Schaltflächen können
 
weitere Tips gelesen werden. Soll dieses Fenster nicht nach jeder Anmeldung erscheinen, so kann dieses
 
Verhalten unten links im Fenster deaktiviert werden.
 
7.3. KDE 3.0.x
 
Die KDE Pakete für die Debian Distribution werden seit einiger Zeit von Ralph Nolden, welcher selbst im KDE
 
Projekt mitarbeitet, betreut. Zur Installation der KDE 3.0 Pakete aus dem Internet ist zunächst ein
 
entsprechender Eintrag in der Datei /etc/apt/sources.list vorzunehmen.
 
deb ftp://ftp.kde.org/pub/kde/stable/latest/Debian/woody/ ./
 
Leider sind noch nicht alle KDE Pakete an einer zentralen Stelle verfügbar, wenn spezielle Anwendungen
 
benötigt werden die nicht unter der oben genannten Adresse verfügbar sind, so lohnt sich ein Blick auf
 
mypage.bluewin.ch/kde3-debian/ und www.cupis.co.uk/debian/kde3.html sowie
 
www.davidpashley.com/debian-kde/faq.html.
 
Nach einer Aktualisierung der Paketlisten (apt-get update) kann die Installation erfolgen. Natürlich können
 
einzelne Pakete ausgewählt werden, wenn nur bestimmte Programme benutzt werden sollen. Wenn jedoch KDE
 
als Standard-Desktop eingesetzt werden soll, so ist es sinnvoll die entsprechenden Meta-Packages auszuwählen.
 
Diese lassen sich mittels apt-cache sehr leicht ermitteln:
 
fr@nigiri:~$ apt-cache search metapackage | grep kde
 
kdeadmin - KDE Administration tools metapackage
 
kdebase - KDE Base metapackage
 
kdegames - KDE Games metapackage
 
kdegraphics - KDE Graphics metapackage
 
kdelibs - KDE core libraries metapackage
 
286
 
Kapitel 7. KDE
 
kdemultimedia - KDE Multimedia metapackage
 
kdenetwork - KDE Network metapackage
 
kdepim - KDE Personal Information Management metapackage
 
kdeutils - KDE Utilities metapackage
 
kde - The K Desktop Environment
 
kde-devel - The K Desktop Environment (development files)
 
kde-extras - The K Desktop Environment (extras)
 
kde-games - The K Desktop Environment (Games and Toys)
 
education-desktop-kde - DebianEdu KDE desktop applications
 
Etwas Vorsicht ist an dieser Stelle angesagt: die ersten Pakete in der gezeigten Liste gehören zur Version 3.0.x
 
von KDE (ohne Bindestrich), Pakete weiter unten (mit Bindestrich) gehören zu der Version 2.2 von KDE.
 
Als nächstes können die Pakete installiert werden. Dies kann mit den üblichen Werkzeugen (apt-get,
 
dselect. gnome-apt usw.) erfolgen. Sinnvoll ist zumindest die Installation der Pakete kdebase, kdeadmin,
 
kdelibs. Je nach Bedarf können natürlich weitere Pakete installiert werden, wie beispielsweise kde-i18n-de
 
und kdm.
 
debian:~# apt-get install kde-i18n-de kdebase kdeadmin kdelibs kdm
 
Reading Package Lists... Done
 
Building Dependency Tree... Done
 
The following extra packages will be installed:
 
kaddressbook kappfinder kate kcmlinuz kcontrol kcron kdat kdcop kdebase-bin
 
kdebase-data kdebugdialog kdelibs-bin kdelibs-data kdelibs4 kdm kdeprint
 
kdesktop kfind khelpcenter khotkeys kicker kioslave klipper kmenuedit
 
konqueror konqueror-nsplugins konsole kpackage kpager kpersonalizer
 
kscreensaver ksmserver ksplash ksysguard ksysv ktip kuser kwin kwuftpd kxkb
 
libarts1 libarts1-qt libasound2 libcupsys2 libkonq4 libpng3 libqt3 libqt3-mt
 
libsensors1 secpolicy
 
The following NEW packages will be installed:
 
kaddressbook kappfinder kate kcmlinuz kcontrol kcron kdat kdcop kde-i18n-de
 
kdeadmin kdebase kdebase-bin kdebase-data kdebugdialog kdelibs kdelibs-bin
 
kdelibs-data kdelibs4 kdeprint kdesktop kfind khelpcenter khotkeys kicker
 
kioslave klipper kmenuedit konqueror konqueror-nsplugins konsole kpackage
 
kpager kpersonalizer kscreensaver ksmserver ksplash ksysguard ksysv ktip
 
kuser kwin kwuftpd kxkb libarts1 libarts1-qt libasound2 libcupsys2 libkonq4
 
libpng3 libqt3 libqt3-mt libsensors1 secpolicy
 
0 packages upgraded, 53 newly installed, 0 to remove and 1 not upgraded.
 
Need to get 39.2MB/39.6MB of archives. After unpacking 107MB will be used.
 
Do you want to continue? [Y/n]
 
Media Change: Please insert the disc labeled ’Debian GNU/Linux 3.0 beta _Woody_ -
 
Unofficial i386 Binary-1 (20020625)’ in the drive ’/cdrom/’ and press enter
 
Selecting previously deselected package libasound2.
 
(Reading database ... 22600 files and directories currently installed.)
 
Unpacking libasound2 (from .../libasound2_0.9.0beta10a-3_i386.deb) ...
 
Selecting previously deselected package libarts1.
 
Unpacking libarts1 (from .../libarts1_1.0.4-1_i386.deb) ...
 
Selecting previously deselected package libpng3.
 
Unpacking libpng3 (from .../libpng3_1.2.1-1.1_i386.deb) ...
 
...
 
Selecting previously deselected package kdelibs.
 
Unpacking kdelibs (from .../kdelibs_4%3a3.0.4-1_all.deb) ...
 
Setting up libasound2 (0.9.0beta10a-3) ...
 
Setting up libarts1 (1.0.4-1) ...
 
Setting up libpng3 (1.2.1-1.1) ...
 
Setting up libcupsys2 (1.1.14-3) ...
 
...
 
Setting up kdebase (3.0.4-1) ...
 
Setting up kdelibs (3.0.4-1) ...
 
287
 
Kapitel 7. KDE
 
Der Übersichtlichkeit halber wurde die Ausgabe an einigen Stellen etwas gekürzt (...). Nachdem nun alle Pakete
 
installiert sind, wird der Display Manager (KDM) automatisch gestartet. Hierbei ist darauf zu achten das der
 
X-Server zuvor installiert und konfiguriert wurde! Nachträglich kann KDM natürlich auch gestartet werden.
 
debian:~# /etc/init.d/kdm start
 
Starting K Desktop Manager: done.
 
Einige Augenblicke später sollte ein grafischer Login zur Verfügung stehen. Mit einem Benutzernamen und
 
dem entsprechenden Passwort kann nun die Anmeldung am System erfolgen.
 
Abbildung 7-9. KDE 3.0 KDM
 
Nach der ersten Anmeldung eines Benutzers am neuen System (es sind noch keine Konfigurationsdateien für
 
KDE im Heimatverzeichnis des Benutzers vorhanden) wird ein „Wizard“ gestartet der die wichtigsten
 
Einstellung abfragt.
 
288
 
Kapitel 7. KDE
 
Abbildung 7-10. KDE 3.0Wizard
 
Zunächst ist das Land und die gewünschte Sprache zu wählen. Der Eintrag „Germany (de)“ findet sich im Menü
 
unter „Europe/Central“. Je nachdem welche Sprachen installiert wurden werden diese unter „Please choose
 
your language“ zur Auswahl angeboten.
 
Die Einstellungen werden sofort aktiviert.
 
Abbildung 7-11. KDE 3.0Wizard
 
289
 
Kapitel 7. KDE
 
Die nächste Einstellung beeinflusst das Aussehen und das Verhalten des Fenstermanagers. Hier kann zwischen
 
einer KDE eigenen Variante und der Emlation verschiedener anderer Betriebssysteme gewählt werden.
 
Abbildung 7-12. KDE 3.0Wizard
 
Im nächsten Schritt kann die Reaktionsgeschwindigkeit von KDE geändert werden. Auf langsamen Systemen
 
können die Effekte reduziert werden um die Belastung des Prozessors zu verringern.
 
290
 
Kapitel 7. KDE
 
Abbildung 7-13. KDE 3.0Wizard
 
Sogenannte „Themes“ verändern die Farben und das Aussehen der Anwendungen. Auch hier kann zwischen
 
verschiedenen Varianten gewählt werden.
 
Abbildung 7-14. KDE 3.0Wizard
 
291
 
Kapitel 7. KDE
 
Zum Abschluss der Konfiguration kann das KDE Control Center gestartet werden um weitere Einstellungen
 
vorzunehmen. Die wichtigsten Einstellungen sind jedoch vorgenommen worden und die grafische Oberfläche
 
KDE ist nun einsatzbereit.
 
Nach der Anmeldung informiert der „Splashscreen“ über den Fortschritt der Anmeldung.
 
Abbildung 7-15. KDE 3.0 Splashscreen
 
292
 
Kapitel 7. KDE
 
Abbildung 7-16. KDE 3.0 Info
 
Nach jeder Anmeldung am System erscheint nun ein Fenster mit nützlichen Tips. Über Schaltflächen können
 
weitere Tips gelesen werden. Soll dieses Fenster nicht nach jeder Anmeldung erscheinen, so kann dieses
 
Verhalten unten links im Fenster deaktiviert werden.
 
293
 
Kapitel 8. Internet
 
Ohne das Internet wäre die schnelle Weiterentwicklung des Linux-Kernels oder auch von Debian GNU/Linux
 
völlig undenkbar. Die Kommunikation zwischen den Entwicklern untereinander und auch zu den Benutzern
 
wäre ohne den Internetdienst E-Mail undenkbar. Die Softwareverteilung über andere Medien als das Internet
 
(beispielsweise per Post auf CD-ROMs) würde die Entwicklungszeiten in die Höhe treiben. Debian GNU/Linux
 
bietet mit apt ein mächtiges Werkzeug, um auch über das Internet oder aus dem lokalen Netzwerk Pakete zu
 
installieren. Im folgenden finden Sie zunächst die nötigen Informationen, um per Modem oder ISDN ins Netz zu
 
kommen. Weiterhin zeigen wir Ihnen die interessantesten Anwendungen, die Sie für die verschiedenen Dienste
 
im Netz benötigen. In einem späteren Abschnitt wird die Konfiguration von Netzwerkkarten beschrieben.
 
8.1. Zugang zum Internet
 
Ein Zugang zum Internet kann mittels verschiedener Methoden hergestellt werden. Momantan sind wohl DSL
 
Zugänge am attraktivsten, diese bieten neben einem guten Preis, auch pauschal als sogenannte „Flatrate“, auch
 
sehr schnelle Übertragungsraten. Leider sind DSL Zugänge nicht flächendeckend verfügbar. Etwas langsamer,
 
aber ebenfalls zu günstigen Konditionen verfügbar sind ISDN Zugänge, das Schlußlicht in Punkte
 
Datenübertragungsleistung bilden Modem Verbindungen ins Internet. Hier trotzdem die erwähnten
 
Zugangmöglichkeiten in der umgekehrten Reihenfolge, diese stellt die technische Entwicklung der letzten Jahre
 
dar.
 
8.1.1. Modem
 
Um mit einem an der seriellen Schnittstelle angeschlossenem Modem ins Internet zu kommen, steht Ihnen unter
 
Debian GNU/Linux das Werkzeug pppconfig zu Verfügung. Sie müssen pppconfig als Superuser aufrufen,
 
da alle Einstellungen, die das Modem betreffen, systemweit gültig sind.
 
Vorab ist es sinnvoll, wenn Sie von Ihrem ISP (Internet Service Provider) alle benötigten Daten besorgen.
 
Wichtig sind insbesondere folgende Daten:
 
• Ihr Login- oder Benutzernamen
 
• Ihr Paßwort
 
• Telefonnummer zur Einwahl beim Provider
 
pppconfig wird Sie noch nach weiteren Informationen fragen, aber für die meisten Anwendungen reichen
 
diese Angaben.
 
+-------------------------------- Main Menu ---------------------------------+
 
| This is the PPP configuration utility. It does not connect to your isp: it|
 
| just configures ppp so that you can do so with a utility such as pon. It |
 
| will ask for the username, password, and phone number that your ISP gave |
 
| you. If your ISP uses PAP or CHAP, that is all you need. If you must use |
 
| a chat script, you will need to know how your ISP prompts for your username
 
| and password. If you do not know what your ISP uses, try PAP. Use the up |
 
| and down arrow keys to move around the menus. Hit ENTER to select an item.
 
| Use the TAB key to move from the menu to <OK> to <CANCEL> and back. When |
 
| you are ready to move on to the next menu go to <OK> and hit ENTER. To go |
 
| back to the main menu go to <CANCEL> and hit enter. |
 
| +------------------------------------------------------------------------+ |
 
| | Create Create a connection | |
 
| | Change Change a connection | |
 
| | Delete Delete a connection | |
 
| | Quit Exit this utility | |
 
| | | |
 
| +------------------------------------------------------------------------+ |
 
| |
 
| |
 
+----------------------------------------------------------------------------+
 
| < OK > <Cancel> |
 
294
 
Kapitel 8. Internet
 
+----------------------------------------------------------------------------+
 
Mit pppconfig können Sie eine individuelle Konfiguration für einen oder mehrere ISPs erstellen. pppconfig
 
stellt noch keine Verbindung ins Internet für Sie her, hierzu können Sie später das Programm pon benutzen.
 
Debian GNU/Linux PPP Configuration Utility
 
+-------------------------------- Provider Name -------------------------------+
 
| |
 
| Enter the name you wish to use to refer to this isp. You will probably |
 
| want to give the default name of ’provider’ to your primary isp. That way, |
 
| you can dial it by just giving the command ’pon’. Give each additional isp |
 
| a unique name. For example, you might call your employer ’theoffice’ and |
 
| your university ’theschool’. Then you can connect to your isp with ’pon’, |
 
| your office with ’pon theoffice’, and your university with ’pon theschool’. |
 
| |
 
| MeinProvider________________________________________________________________ |
 
| |
 
| |
 
| |
 
| <Ok> <Cancel> |
 
| |
 
+------------------------------------------------------------------------------+
 
Zuerst werden Sie nach dem Namen Ihres Providers gefragt. Sie können hier jeden beliebigen Namen
 
verwenden. Diese Angabe werden Sie später brauchen, um dann endgültig die Verbindung herzustellen.
 
Benutzen Sie dazu das Programm pon zusammen mit dem hier angegebenen Namen, also pon
 
MeinProvider. Wenn Sie mit pppconfig mehrere Konfigurationen für unterschiedliche ISPs erstellt haben,
 
können Sie jeweils mit dem passenden Providernamen die Verbindung aufbauen.
 
Debian GNU/Linux PPP Configuration Utility
 
+-----------------------| Configure Nameservers (DNS) |------------------------+
 
| |
 
| Choose a method. ’Static’ means that the same nameservers will be used |
 
| every time this provider is used. You will be asked for the nameserver |
 
| numbers in the next screen. ’Dynamic’ means that pppd will automatically |
 
| get the nameserver numbers each time you connect to this provider. ’None’ |
 
| means that DNS will be handled by other means, such as BIND (named) or |
 
| manual editing of /etc/resolv.conf. Use the up and down arrow keys to move |
 
| among the selections, and press the spacebar to select one. When you are |
 
| finished, use TAB to select <OK> and ENTER to move on to the next item. |
 
| |
 
| (*) Static Use static DNS |
 
| ( ) Dynamic Use dynamic DNS |
 
| ( ) None DNS will be handled by other means |
 
| |
 
| |
 
| |
 
| |
 
| |
 
| <Ok> <Cancel> |
 
| |
 
+------------------------------------------------------------------------------+
 
An dieser Stelle können Sie bestimmen, wie der Zugriff auf einen oder mehrere Nameserver stattfinden soll.
 
Wenn Sie „Static“ auswählen, werden Sie vom Installationsprogramm nach mindestens einer IP-Nummer eines
 
Nameservers gefragt. Bei der Option „Dynamic“ wird diese Information automatisch bei der Einwahl zu Ihrem
 
Provider übermittelt. Dies ist eine gute Wahl, wenn Sie über verschiedene Provider ins Internet gehen wollen.
 
Wenn Sie „None“ auswählen, müssen Sie sich selber um die Angaben zum Nameserver für Ihr System
 
kümmern, beispielsweise in /etc/resolv.conf, oder Sie installieren einen eigenen Nameserver (Paket:
 
bind) auf Ihrem System.
 
Debian GNU/Linux PPP Configuration Utility
 
295
 
Kapitel 8. Internet
 
+--------------------------------| IP number |---------------------------------+
 
| |
 
| Enter the IP number for your primary nameserver. |
 
| |
 
| 194.25.2.129________________________________________________________________ |
 
| |
 
| |
 
| |
 
| |
 
| <Ok> <Cancel> |
 
| |
 
+------------------------------------------------------------------------------+
 
Hier ein Beispiel für die Benutzung eines festen Nameservers. Erfragen Sie die korrekte
 
Nameserver-IP-Nummer für Ihre Konfiguration bei Ihrem Provider.
 
Debian GNU/Linux PPP Configuration Utility
 
+-----------------| Authentication Method for MeinProvider |------------------+
 
| |
 
| Please select the authentication method for this connection. PAP is the |
 
| method most often used in Windows 95, so if your ISP supports the NT or |
 
| Win95 dial up client, try PAP. The method is now set to CHAT. |
 
| |
 
| PAP Peer Authentication Protocol |
 
| Chat Use chat for login:/password: authentication |
 
| CHAP Crypto Handshake Auth Protocol |
 
| |
 
| Previous Return to previous menu |
 
| Quit Exit this utility |
 
| |
 
| |
 
| |
 
| <Ok> <Cancel> |
 
| |
 
+------------------------------------------------------------------------------+
 
Debian GNU/Linux PPP Configuration Utility
 
+--------------------------------| User Name |---------------------------------+
 
| |
 
| Enter the username given to you by your ISP. |
 
| |
 
| hoshi_______________________________________________________________________ |
 
| |
 
| |
 
| |
 
| |
 
| |
 
| <Ok> <Cancel> |
 
| |
 
+------------------------------------------------------------------------------+
 
Geben Sie hier den Benutzernamen an, unter dem Sie bei Ihrem Provider registriert sind. Sie können sich diesen
 
Namen im allgemeinen selbst aussuchen.
 
Debian GNU/Linux PPP Configuration Utility
 
+---------------------------------| Password |---------------------------------+
 
| |
 
| Enter the password your ISP gave you. |
 
| |
 
| sagichnich__________________________________________________________________ |
 
| |
 
| |
 
| |
 
| <Ok> <Cancel> |
 
296
 
Kapitel 8. Internet
 
| |
 
+------------------------------------------------------------------------------+
 
Geben Sie hier das Paßwort ein, welches Sie mit Ihrem Provider vereinbart haben. Achten Sie hier auf Großund
 
Kleinschreibung!
 
Debian GNU/Linux PPP Configuration Utility
 
+----------------------------------| Speed |-----------------------------------+
 
| |
 
| Enter your modem port speed (e.g. 9600, 19200, 38400, 57600, 115200). |
 
| I suggest that you leave it at 115200. |
 
| |
 
| 115200______________________________________________________________________ |
 
| |
 
| |
 
| |
 
| |
 
| |
 
| <Ok> <Cancel> |
 
| |
 
+------------------------------------------------------------------------------+
 
Stellen Sie hier die Schnittstellengeschwindigkeit ein. Dies ist nicht die Übertragungsgeschwindigkeit Ihres
 
Modems. Diese Frage bezieht sich auf die in Ihrem Rechner eingebaute Schnittstelle, an der Sie das Modem
 
angeschlossen haben. Moderne Modems können die Daten, die von und zu Ihrem Provider über die Leitung
 
gehen, komprimieren. Deshalb ist es sinnvoll hier einen möglichst hohen Wert einzustellen, um das Modem
 
nicht mit der Verbindung zum Rechner auszubremsen.
 
Debian GNU/Linux PPP Configuration Utility
 
+------------------------------| Pulse or Tone |-------------------------------+
 
| |
 
| Select method of dialing. Since almost everyone has touch-tone, you should |
 
| leave the dialing method set to tone unless you are sure you need |
 
| pulse. Use the up and down arrow keys to move among the selections, and |
 
| press the spacebar to select one. When you are finished, use TAB to |
 
| select <OK> and ENTER to move on to the next item. |
 
| |
 
| (*) Tone |
 
| ( ) Pulse |
 
| |
 
| |
 
| |
 
| <Ok> <Cancel> |
 
| |
 
+------------------------------------------------------------------------------+
 
Hier können Sie zwischen Ton- oder Impulswählverfahren wählen. Mittlerweile sind in Deutschland fast alle
 
Anschlüsse tonwahlfähig. Ändern Sie diese Einstellung nur, wenn es mit der Tonwahl Probleme gibt.
 
Debian GNU/Linux PPP Configuration Utility
 
+-------------------------------| Phone Number |-------------------------------+
 
| |
 
| Enter the number to dial. Don’t include any dashes. See your modem manual |
 
| if you need to do anything unusual like dialing through a PBX. |
 
| |
 
| 191011______________________________________________________________________ |
 
| |
 
| |
 
| |
 
| |
 
| |
 
| <Ok> <Cancel> |
 
| |
 
297
 
Kapitel 8. Internet
 
+------------------------------------------------------------------------------+
 
Tragen Sie hier die Einwahlnummer Ihres Providers ein. Wenn Sie Ihr Modem über eine Telefonanlage
 
angeschlossen haben, kann es nötig sein, eine 0 oder eine andere Nummer vorzuwählen. Sollte Ihr Modem nicht
 
über die Telefonanlage wählen können, sehen Sie in Ihr Handbuch zum Modem, es gibt für jedes Modem eine
 
Option, daß das Modem auch dann wählt, wenn es kein Freizeichen bekommt. Dies ist oft bei Telefonanlagen
 
der Fall, wenn diese ein anderes Freizeichen benutzen als im öffentlichen Telefonnetz.
 
Debian GNU/Linux PPP Configuration Utility
 
+------------------------| Choose Modem Config Method |------------------------+
 
| |
 
| |
 
| Answer ’yes’ to have the port your modem is on identified automatically. |
 
| It will take several seconds to test each serial port. Answer ’no’ if |
 
| you would rather enter the serial port yourself |
 
| |
 
| |
 
| |
 
| |
 
| |
 
| <Yes> <No> |
 
| |
 
+------------------------------------------------------------------------------+
 
Sie können hier die seriellen Schnittstellen in Ihrem Rechner suchen lassen und im nächsten Schritt die
 
gewünschte aus einer Liste auswählen.
 
Debian GNU/Linux PPP Configuration Utility
 
+----------------------------| Select Modem Port |-----------------------------+
 
| |
 
| Below is a list of all the serial ports that appear to have hardware |
 
| that can be used for ppp. One that seems to have a modem on it has |
 
| been preselected. If no modem was found ’Manual’ was preselected. To |
 
| accept the preselection just hit TAB and then ENTER. Use the up and |
 
| down arrow keys to move among the selections, and press the spacebar |
 
| to select one. When you are finished, use TAB to select <OK> and ENTER |
 
| to move on to the next item. |
 
| |
 
| (*) /dev/ttyS0 |
 
| ( ) /dev/ttyS1 |
 
| ( ) Manual Enter the port by hand. |
 
| |
 
| |
 
| |
 
| |
 
| |
 
| <Ok> <Cancel> |
 
| |
 
+------------------------------------------------------------------------------+
 
Markieren Sie hier die Schnittstelle, an der Ihr Modem angeschlossen ist. Beachten Sie bitte, daß /dev/ttyS0
 
dem COM-Port 1 und /dev/ttyS1 dem COM-Port 2 entspricht.
 
Debian GNU/Linux PPP Configuration Utility
 
+-----------------------| Properties of MeinProvider |-------------------------+
 
| |
 
| |
 
| Number 191011 Telephone number |
 
| User hoshi ISP user name |
 
| Password sagichnich ISP password |
 
| Speed 115200 Port speed |
 
| Com /dev/ttyS0 Modem com port |
 
| Method PAP Authentication method |
 
298
 
Kapitel 8. Internet
 
| |
 
| Advanced Advanced Options |
 
| |
 
| Finished Write files and return to main menu. |
 
| Previous Return to previous menu |
 
| Quit Exit this utility |
 
| |
 
| |
 
| |
 
| |
 
| <Ok> <Cancel> |
 
| |
 
+------------------------------------------------------------------------------+
 
Zum Abschluß können Sie noch einmal alle Angaben überprüfen. Wenn Sie weitere Konfigurationsdateien zu
 
anderen Providern erstellen wollen, können Sie mit „Finished“ die Eingaben speichern und zum Anfang
 
zurückkehren.
 
Wenn Sie das Programm verlassen, können Sie nun mit pon "Providername" die Verbindung aufbauen. In
 
der Datei /var/log/messages wird der Verbindungsaufbau protokolliert, Sie können dies mit dem
 
Kommando tail -f /var/log/messages verfolgen. Sollten Probleme auftreten, wie zum Beispiel ein
 
falsches Paßwort, so können Sie dies hier verfolgen.
 
Die Option -f bewirkt, daß ständig aus der Datei gelesen wird und alle neuen Einträge angezeigt werden. Sie
 
können diesen Befehl mit CTRL+C abbrechen.
 
Wenn Ihnen diese Informationen nicht ausreichen, finden Sie in der Datei /var/log/ppp.log detailliertere
 
Informationen. Auch diese können Sie sich mit dem Kommando tail -f ansehen.
 
Um zu prüfen, ob die Verbindung aufgebaut wurde, können Sie den Befehl ifconfig benutzen. Dieser sollte
 
das Device ppp0 anzeigen.
 
Mit dem Kommando ping www.linux-magazin.de können Sie testen, ob Datenpakete über das Netz
 
geschickt werden.
 
Das Kommando poff beendet die Verbindung.
 
8.1.1.1. Weitere Konfiguration
 
Es ist sinnvoll, für häufig verwendete Gerätedateien im Verzeichniss /dev/ einen Link mit einem geläufigeren
 
Namen anzulegen. Wenn Sie herausgefunden haben, welches Device von Ihrem Modem benutzt wird, legen Sie
 
einen entsprechenden Link „modem“ an. Beispielsweise mit ln -s /dev/ttyS1 /dev/modem. Sie können
 
nun aus jeder Anwendung heraus einfach auf /dev/modem zugreifen, ohne sich die genaue Bezeichnung der
 
Gerätedatei merken zu müssen.
 
Wenn Sie Probleme haben, unter Linux die passende Gerätedatei zur seriellen Schnittstelle Ihres Rechners zu
 
finden, können Sie folgende Tabelle zur Hilfe nehmen. Aus dieser können Sie die Bezeichnung der Schnittstelle
 
unter DOS und Linux entnehmen, weiterhin finden Sie den passenden Linux-Befehl, um den Link anzulegen.
 
DOS Linux Befehl
 
COM1 /dev/ttyS0 "ln -s /dev/ttyS0 /dev/modem"
 
COM2 /dev/ttyS1 "ln -s /dev/ttyS1 /dev/modem"
 
COM3 /dev/ttyS2 "ln -s /dev/ttyS2 /dev/modem"
 
COM4 /dev/ttyS3 "ln -s /dev/ttyS3 /dev/modem"
 
8.1.2. ISDN
 
Vielleicht verfügt der eine oder andere Leser dieses Buches inszwischen über einen ISDN-Anschluß. Diese
 
digitalen Telefonanschlüsse bieten im Normalfall 3 Telefonnummern und 2 gleichzeitig nutzbare (B-) Kanäle,
 
so daß Sie sich im Internet rumtreiben können und gleichzeitig telefonieren können. Die Übertragungsrate
 
299
 
Kapitel 8. Internet
 
beträgt 64 kBit je B-Kanal, einige Provider unterstützen die Bündelung beider Kanäle, so daß Sie mit 128 kBit
 
im Netz surfen können, hierbei fallen natürlich auch die doppelten Telefonkosten an.
 
Für die Konfiguration einer ISDN-Karte müssen Sie zunächst einige Module laden. Es ist nicht notwendig einen
 
neuen Kernel zu übersetzen, alle benötigten Module wurden zusammen mit dem von Debian GNU/Linux
 
installierten Kernel installiert. Zunächst sollten Sie versuchen die Module von Hand zu laden, wenn Sie die
 
passenden Parameter herausgefunden haben, tragen Sie die entsprechenden Werte beispielsweise in die Datei
 
/etc/modules ein.
 
Beachten Sie, daß Module nur mit den Zugriffsrechten des Superusers (root) geladen werden können. Laden Sie
 
zunächst das Modul „isdn“, am einfachsten mit dem Kommando modprobe isdn. Überprüfen Sie mit dem
 
Kommando lsmod, ob das Modul geladen wurde, hierbei wird Ihnen vielleicht auffallen, daß zusätzlich das
 
Modul „slhc“ automatisch geladen wurde, vergessen Sie nicht, dieses später auch in Ihre Konfiguration
 
aufzunehmen (in der Datei /etc/modules).
 
Sie können das Laden der Module auch in einem anderen Fenster, oder auf einer anderen Konsole, mit dem
 
Kommando tail -f /var/log/syslog verfolgen, dies ist auch bei den weiteren Modulen und zur
 
Fehlersuche sehr hilfreich. Für die Module „slhc“ und „isdn“ sollten Sie folgendes in diesem Logfile finden:
 
Mar 7 09:57:16 debian kernel: CSLIP: code copyright 1989 Regents of the
 
University of California
 
Mar 7 09:57:16 debian kernel: ISDN subsystem Rev: 1.93/1.80/1.95/1.60/
 
1.17/1.3 loaded
 
Dies war der einfachste Teil... etwas komplizierter ist das Laden des eigentlichen Treibers für Ihre ISDN-Karte.
 
Für die (teuren) aktiven ISDN-Karten wie zum Beispiel die AVM B1 stehen eigene Treiber zur Verfügung,
 
lesen Sie bitte in der Dokumentation nach, wie diese zu laden sind.
 
Für die weit verbreiteten passiven ISDN-Karten steht Ihnen das Modul hisax zur Verfügung. Diesem Modul
 
müssen Sie über entsprechende Parameter unter anderem mitteilen, welche Karte Sie verwenden.
 
Beispielsweise können Sie eine ältere „Creatix“ oder „Teles“ ISDN-Karte für den ISA-Steckplatz Ihres
 
Rechners mit folgenden Parametern einbinden: modprobe hisax type=1 protocol=2 io=0xf80
 
mem=0xd0000 irq=9. Für eine AVM Fritz PCI-Karte kommt folgende Zeile in Frage: modprobe hisax
 
type=5 io=0x340 irq=10 protocol=2. Natürlich müssen Sie einen freien IRQ (Interrupt) wählen, die
 
bereits benutzten IRQs finden Sie in der Datei /proc/interrupts. Weitere Parameter für die verschiedenen
 
Karten entnehmen Sie der Dokumentation.
 
Wenn auch dieses Modul erfolgreich geladen wurde, sollten Sie in etwa folgende Einträge in der Datei
 
/var/log/syslog finden:
 
Mar 7 10:49:12 debian kernel: HiSax: Linux Driver for passive ISDN cards
 
Mar 7 10:49:12 debian kernel: HiSax: Version 3.3c (module)
 
Mar 7 10:49:12 debian kernel: HiSax: Layer1 Revision 2.36
 
Mar 7 10:49:12 debian kernel: HiSax: Layer2 Revision 2.20
 
Mar 7 10:49:12 debian kernel: HiSax: TeiMgr Revision 2.13
 
Mar 7 10:49:12 debian kernel: HiSax: Layer3 Revision 2.10
 
Mar 7 10:49:12 debian kernel: HiSax: LinkLayer Revision 2.40
 
Mar 7 10:49:12 debian kernel: HiSax: Approval certification valid
 
Mar 7 10:49:12 debian kernel: HiSax: Approved with ELSA Quickstep series cards
 
Mar 7 10:49:12 debian kernel: HiSax: Approval registration numbers:
 
Mar 7 10:49:12 debian kernel: HiSax: German D133361J CETECOM ICT Services GmbH
 
Mar 7 10:49:12 debian kernel: HiSax: EU (D133362J) CETECOM ICT Services GmbH
 
Mar 7 10:49:12 debian kernel: HiSax: Approved with Eicon Technology Diva 2.01 PCI cards
 
Mar 7 10:49:12 debian kernel: HiSax: Total 1 card defined
 
Mar 7 10:49:12 debian kernel: HiSax: Card 1 Protocol EDSS1 Id=HiSax (0)
 
Mar 7 10:49:12 debian kernel: HiSax: Teles 8.0/16.0 driver Rev. 2.11
 
Mar 7 10:49:12 debian kernel: HiSax: Teles 16.0 config irq:9 mem:0xD0000 cfg:0xF80
 
Mar 7 10:49:12 debian kernel: Teles0: ISAC version (60): 2085 V2.3
 
Mar 7 10:49:12 debian kernel: Teles0: HSCX version A: V2.1 B: V2.1
 
Mar 7 10:49:12 debian kernel: Teles 16.0: IRQ 9 count 0
 
Mar 7 10:49:12 debian kernel: Teles 16.0: IRQ 9 count 5
 
Mar 7 10:49:12 debian kernel: HiSax: DSS1 Rev. 2.21
 
Mar 7 10:49:12 debian kernel: HiSax: 2 channels added
 
300
 
Kapitel 8. Internet
 
Mar 7 10:49:12 debian kernel: HiSax: MAX_WAITING_CALLS added
 
Nun müssen Sie nur noch einige Programme, die sich im Paket isdnutils befinden, installieren und einige
 
Anpassungen an den Konfigurationsdateien vornehmen. Am einfachsten benutzen Sie hierzu wieder apt-get.
 
debian:/home/fr# apt-get install isdnutils
 
Reading Package Lists... Done
 
Building Dependency Tree... Done
 
The following NEW packages will be installed:
 
isdnutils
 
0 packages upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
 
Need to get 0B/1184kB of archives. After unpacking 2556kB will be used.
 
Selecting previously deselected package isdnutils.
 
(Reading database ... 5587 files and directories currently installed.)
 
Unpacking isdnutils (from .../net/isdnutils_3.0-17.deb) ...
 
Setting up isdnutils (3.0-17) ...
 
Starting isdn services :.
 
Nach der Installation werden die notwendigen Programme automatisch gestartet, wenn Sie das ISDN-System
 
bereits einmal konfiguriert hatten, ist sofort alles funktionsfähig. Ansonsten müssen Sie jetzt einige
 
Anpassungen vornehmen.
 
Bestandteil des Paketes isdnutils ist das Konfigurationsprogramm isdnconfig. Mit diesem können Sie die
 
benötigten Konfigurationsdateien erzeugen (sie werden eigentlich nur an die passende Stelle kopiert...).
 
Isdnutils configuration
 
=======================
 
1 network devices
 
2 synchronous ppp daemon
 
3 modem emulation
 
4 isdnlog configuration
 
5 voice box configuration
 
Q Quit
 
Your choice :1
 
Starten Sie nun isdnconfig, es werden im einfachsten Fall lediglich die ersten beiden Auswahlmöglichkeiten
 
benötigt. Wenn Sie Funktionen wie Kanalbündelung, Modememulation oder einen Anrufbeantworter benötigen,
 
lesen Sie bitte in der Dokumentation weiter.
 
Wählen Sie zunächst den Punkt „1“.
 
Isdnutils configuration network interfaces
 
======================= ------------------
 
Searching for existing configuration files...
 
Found : NONE
 
Devices should be named :
 
- rawip interface isdn0 isdn1 ...
 
- synchronous ppp interface ippp0 ippp1 ...
 
Name for new interface : ippp0
 
Installed new config file /etc/isdn/device.ippp0 .
 
This file is only an example.
 
You have to edit this file for it to work.
 
Press [Enter]
 
Hinter dem ersten Menüpunkt können Sie die gewünschten Netzwerk-Interfaces aktivieren. Für den Anfang ist
 
es völlig ausreichend lediglich das Device ippp0 zu benutzen. Beachten Sie den Hinweis, daß lediglich eine
 
Beispieldatei installiert wurde, die Sie noch Ihren Bedürfnissen anpassen müssen. Doch dazu gleich mehr.
 
301
 
Kapitel 8. Internet
 
Isdnutils configuration synchronous ppp daemon
 
======================= ----------------------
 
Searching for existing configuration files...
 
Found : ippp0
 
Normal setup : one ipppd for all devices: /dev/ippp0 /dev/ippp1 ...
 
All ippp* network interfaces are handled by a single ipppd
 
process using a single config file.
 
Special setup : one ipppd for each device: /dev/ippp0 /dev/ippp1 ...
 
Each ippp* network interface is handled by its own ipppd
 
process, using a specific config file for each.
 
You need to use pppbind on each network interface to select
 
which /dev/ippp* device will be used.
 
Usually only a single ippp interface is used (for connecting to an ISP), so
 
the above isn’t really relevant to most users.
 
Name for new configuration (ippp0 ippp1 ...) : ippp0
 
Hinter dem zweiten Menüpunkt verbergen sich weitere Scripte für die verschiedenen Gerätedateien, auch hier
 
ist es ausreichend, einen Eintrag für ippp0 vorzunehmen.
 
Verlassen Sie nun das Konfigurationsprogramm, alle notwendigen Dateien wurden unter /etc/isdn/
 
installiert und müssen nun noch angepaßt werden. Beginnen wir zunächst mit der Datei ipppd.ippp0, hier ist
 
lediglich die vierte Zeile, welche mit „echo ... “ beginnt, zu löschen, damit die Datei von den ISDN-Scripten
 
akzeptiert wird:
 
#!/bin/sh
 
# REMOVE the next line once configuration is complete #########################
 
echo "Warning! $0 not configured yet! Aborting..."; exit 1
 
# REMOVE the above line once configuration is complete ########################
 
Die zu löschende Zeile ist deutlich in dem Script markiert.
 
Damit ist die Konfiguration dieser Datei abgeschlossen. Sie können sich natürlich noch die weiteren Einträge
 
ansehen, in der Dokumentation finden Sie weitere Informationen zur Bedeutung der einzelnen Einträge.
 
Laden Sie nun die Datei device.ippp0 in einen Editor und entfernen Sie auch in dieser Datei die oben
 
beschriebene Zeile.
 
In dieser zweiten Datei müssen Sie allerdings noch einige weitere Änderungen vornehmen, die wichtigsten
 
Abschnitte sind in der Datei mit XXX_ markiert. Suchen Sie zunächst nach einer Zeile, die mit LOCALMSN
 
beginnt. Ändern Sie die vorgegebene Nummer durch die Nummer, die Sie Ihrer ISDN-Karte zuweisen möchten.
 
Setzen Sie vor die Nummer noch die Ortskennzahl (Vorwahl) ohne die führende 0, für Berlin also nicht 030,
 
sondern nur 30.
 
Nach dem gleichen Muster verändern Sie den Eintrag REMOTEMSN durch die Einwahlnummer Ihres Providers.
 
LOCALMSN=30987654321
 
REMOTEMSN=30191011
 
Wenn Ihr Provider keine Authentifizierung per Telefonnummer unterstützt, lesen Sie bitte in der Dokumentation
 
weiter.
 
Einen Blick sollten Sie noch auf den Eintrag DIALMODE etwas weiter unten in der Datei werfen. Der
 
Standardwert ist hier auto, dies führt dazu, daß bei jedem Netzzugriff versucht wird, eine Verbindung zu Ihrem
 
Internetprovider aufzubauen. Dies kann unter Umständen recht teuer werden, Sie können den Wert auch auf
 
manual ändern, müssen dann allerdings den Verbindungsaufbau „freigeben“. Dies können Sie beispielsweise
 
mit folgendem kleinen Script erledigen, welches als /bin/i gespeichert werden kann:
 
#!/bin/sh
 
302
 
Kapitel 8. Internet
 
case "$1" in
 
start)
 
/usr/sbin/isdnctrl dialmode ippp0 auto
 
echo "ISDN on"
 
;;
 
stop)
 
/usr/sbin/isdnctrl dialmode ippp0 off
 
echo "ISDN off"
 
;;
 
*)
 
echo "Usage: $0 {start|stop}"
 
exit 1
 
;;
 
esac
 
exit 0
 
Achten Sie darauf, daß Script ausführbar zu machen, mit chmod +x /bin/i. Ein i start gibt nun die
 
ISDN-Verbindung frei, nach einem i stop ist kein weiterer Verbindungsaufbau möglich. So können Sie
 
sichergehen, daß kein wildgewordenes Programm oder eine Webseite, die sich selber immer wieder aktualisiert,
 
Ihre Telefonkosten in die Höhe treibt.
 
Hiermit ist die Konfiguration abgeschlossen, Sie müssen nun lediglich das ISDN-Subsystem noch einmal neu
 
starten, da sich die Konfiguration geändert hat:
 
debian:/etc/isdn# /etc/init.d/isdnutils stop
 
Stopping isdn services : interfaces.
 
debian:/etc/isdn# /etc/init.d/isdnutils start
 
Starting isdn services : interfaces.
 
Beachten Sie bitte, daß es notwendig ist, einen geeigneten Nameserver in die Datei /etc/resolv.conf
 
einzutragen, da sonst keine Rechnernamen aufgelöst werden können. Wenn Sie dort noch keinen Eintrag
 
vorgenommen haben, holen Sie dies jetzt nach. Sinnvolle Werte erfahren Sie bei Ihrem Provider. Über den
 
Aufbau der Datei finden Sie weitere Informationen im Abschnitt über Netzwerke.
 
Sie können nun mit den Kommandos route und ifconfig überprüfen, ob die ISDN-Interfaces vorhanden
 
sind:
 
debian:/etc/isdn# route
 
Kernel IP routing table
 
Destination Gateway Genmask Flags Metric Ref Use Iface
 
10.0.0.2 * 255.255.255.255 UH 0 0 0 ippp0
 
localnet * 255.255.255.240 U 0 0 0 eth0
 
default * 0.0.0.0 U 0 0 0 ippp0
 
debian:/etc/isdn# ifconfig
 
ippp0 Link encap:Point-to-Point Protocol
 
inet addr:10.0.0.1 P-t-P:10.0.0.2 Mask:255.255.255.255
 
UP POINTOPOINT RUNNING NOARP MTU:1500 Metric:1
 
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
 
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
 
collisions:0 txqueuelen:30
 
Eventuell werden Ihnen noch weitere Interfaces angezeigt, beispielsweise wenn noch eine weitere
 
Netzwerkkarte im Rechner installiert ist.
 
Auf einer Konsole oder in einem Terminalfenster können Sie nun die Verbindung mit ping www.debian.org
 
testen, Sie können aber auch einen Webbrowser starten und gleich eine Runde im Netz surfen...
 
303
 
Kapitel 8. Internet
 
8.1.2.1. Kanalbündelung
 
Mittels der Kanalbündelung (Multilink) können zwei ISDN Kanäle gleichzeitig zur Übertragung von Daten
 
genutzt werden. Dies kann die Downloadzeiten im besten Fall halbieren (wenn auch der Server über eine
 
entsprechende Anbindung verfügt), hat aber auch im allgemeinen die doppelten Kosten für die zweite Leitung
 
zur Folge.
 
Zunächst sollte eine funktionierende ISDN Konfiguration (für einen Kanal) vorliegen um beispielsweise Fehler
 
bei der Authentifizierung auszuschliessen. Weiterhin ist ein Backup der Konfiguration immer sinnvoll.
 
Alle folgenden Schritte werden im Verzeichnis /etc/isdn/ durchgeführt. Zunächst ist die Datei
 
device.ippp0 zu kopieren, die Zieldatei muß device.ippp1 heissen.
 
Einzige notwendige Änderung ist das hinzufügen des Eintrages +mp in der Datei ipppd.ippp0.
 
Das war es auch schon. Nachzulesen ist das ganze noch in der Datei README.MPPP.
 
Nun muß das ISDN System mit /etc/init.d/isdnutils stop und /etc/init.d/isdnutils start
 
neugestartet werden. Beachten Sie das der zweite Kanal nicht automatisch bei Bedarf aktiviert wird, sondern
 
mit dem Kommando isdnctrl dial ippp1 aktiviert wird. Das Kommando isdnctrl hangup ippp1
 
beendet den zweiten Kanal.
 
8.1.3. DSL
 
Mittlerweile sind schnelle und preisgünstige Internetanschlüsse in vielen Gebieten verfügbar. Leider
 
funktioniert diese neue Technik nur in Gegenden die nicht per Glasfaser versorgt werden, was leider in vielen
 
Bereichen der neuen Bundesländer in einigen Bezirken in Berlin der Fall ist.
 
Die Konfiguration einer DSL Verbindung zu Ihrem Provider ist recht einfach. Es wird eine Netzwerkkarte
 
benötigt die mit dem DSL-Splitter (falls auch ein ISDN Telefonanschluß zur Telefonie genutzt werden soll)
 
oder direkt mit DSL Anschluß (DSL-Modem) verbunden wird. Die benötigten Kabel sowie eine Anleitung
 
werden im allgemeinen mitgeliefert.
 
Wenn ein lokales Netz aufgebaut werden soll so ist natürlich eine zweite Netzwerkkarte notwendig.
 
Ein DSL Anschluß stellt direkt vor Ort einen Netzwerkanschluß zur Verfügung. Nun spricht dieser leider nicht
 
direkt das Protokoll IP, vielmehr ist es notwendig über diese Anbindung wiederrum ein PP Protokoll zu
 
benutzen, dieses nennt sich PPPoE: PPP over Ethernet. Hierfür steht unter Debian GNU ein spezielles Paket
 
sowie ein kleines Konfigurationsscript und ein Monitoring Tool zur Verfügung.
 
pppoe - PPP over Ethernet driver
 
pppoeconf - configures PPPoE/ADSL
 
pppstatus - console-based PPP status monitor
 
Mittels apt-get install pppoe pppoeconf pppstatus müssen zunächst die Pakete installiert werden.
 
Zwingend notwendig ist lediglich das Paket pppoe. Das Paket pppoeconf erleichtert jedoch die Konfiguration,
 
pppstatus kann nützlich sein um die Verbindung und den Status zu überprüfen.
 
8.1.3.1. pppoeconf
 
Nach der Installation der Pakete wird zunächst das Programm pppoeconf benutzt um die notwendigen
 
Konfigurationsdateien zu erstellen.
 
304
 
Kapitel 8. Internet
 
Abbildung 8-1. PPPoE Konfiguration - Geräte
 
pppoeconf sucht zunächst nach bereits konfigurierten Netzwerkkarten. Für weit verbreitete Modelle ist in
 
vielen Kerneln bereits ein Treiber integriert, für andere Modelle stehen Treiber als Module zur Verfügung. Die
 
modularen Treiber können vor dem Start von pppoeconf von Hand oder mittels modconf geladen werden.
 
Es sollte an dieser Stelle mindestens eine Netzwerkkarte (eth0) angezeigt werden. Ist dies nicht der Fall so ist
 
zunächst dafür zu sorgen das ein entsprechendes Modul geladen wird. Wenn in dem gezeigten Dialog „No“
 
gewählt wird, kann ein Modul mittels modconf integriert werden.
 
Werden hier zwei oder mehr Netzwerkkarten angezeigt so wird dieses System vermutlich als Router für ein
 
lokales Netz eingesetzt.
 
305
 
Kapitel 8. Internet
 
Abbildung 8-2. PPPoE Konfiguration - Suche
 
Im nächsten Schritt werden die erkannten Netzwerkkarten nach einem DSL-Anschluß (DSL-Modem)
 
durchsucht. Sollte kein entsprechender Anschluß gefunden werden so ist die Verkabelung zu überprüfen. Auch
 
kann es sein das der Anschluß vom Provider noch nicht freigeschaltet wurde. Details zur Fehlersuche an der
 
Hardware (DSL-Modem) sind in der Bedienungsanleitung nachzulesen.
 
306
 
Kapitel 8. Internet
 
Abbildung 8-3. PPPoE Konfiguration - eth0 Einrichtung
 
Wird an einer einer der Schnittstellen/Netzwerkkarten ein DSL-Anschluß gefunden, so wird angeboten diesen
 
im folgenden zu konfigurieren.
 
Abbildung 8-4. PPPoE Konfiguration - Modifikation erlauben
 
307
 
Kapitel 8. Internet
 
Werden bereits bestehende Konfigurationsdateien gefunden, so wird eine Warnung ausgegeben doch zunächst
 
ein Backup der Dateien zu erstellen.
 
Abbildung 8-5. PPPoE Konfiguration - Übliche Optionen
 
Wenn vor der Benutzung eines DSL-Anschlusses bereits PPP benutzt wurde (beispielsweise über eine
 
Modemverbindung) so kann es vorkommen das bereits einige gebräuchliche Werte umkonfiguriert wurden. Hier
 
können die wichtigsten Werte geprüft und ggf. korrigiert werden.
 
308
 
Kapitel 8. Internet
 
Abbildung 8-6. PPPoE Konfiguration - Benutzername
 
Die meisten Provider schicken die benötigten Login-Informationen per Post. Einige beschreiben diese auf eine
 
seltsame Art, in der Annahme, der Benutzer würde diese Daten in die vom Provider gelieferten
 
Setup-Programme eingeben. Tatsächlich aber werden daraus ganz normalle PPP-Benutzernamen und
 
-Passwörter generiert, und Sie können das ebenfalls tun und die richtigen Werte in die folgenden Dialog-Fenster
 
eingeben.
 
Die Daten für eine T-DSL Anschluß der Deutschen Telekom sehen prinzipiell so aus:
 
Anschlusskennung: 11111111111
 
T-Onlinenummer: 222222222222
 
Mitbenutzer: 0001
 
Daraus ergibt sich als Benutzername: 111111111111222222222222#0001@t-online.de.
 
Insbesondere ist auf die Länge der einzelnen Teile (Anschlusskennung und T-Onlinenummer) zu achten.
 
Wichtig ist auch die Mitbenutzernummer welche durch das Zeichen „#“ abgetrennt wird. Es ist in jedem Fall
 
die Zeichenkette „@t-online.de“ anzuhängen.
 
Es scheint neuerdings auch 12-stellige T-Onlinenummern zu geben. Ich diesem Fall muss das Zeichen „#“
 
entfallen.
 
309
 
Kapitel 8. Internet
 
Abbildung 8-7. PPPoE Konfiguration - Passwort
 
Hier wird das vom Provider benannte Passwort angegeben. Achtung! Dies wird im Klartext am Bildschirm
 
angezeigt. Bitte kurz umdrehen und überprüfen ob ein böser Passwortklau grade über die Schulter schaut...
 
Abbildung 8-8. PPPoE Konfiguration - Nameserver
 
310
 
Kapitel 8. Internet
 
Die Konfiguration des Nameservers (Einträge in der Datei resolv.conf) kann automatisch bei der
 
Verbindungsaufnahme erfolgen. Somit ist sichergestellt das immer ein gut erreichbarer Nameserver bekannt ist,
 
auch wenn die Konfiguration des Providers verändert wird.
 
Abbildung 8-9. PPPoE Konfiguration - MSS-Größe
 
Hier kann die Paketgröße der IP-Pakete verändert werden, einige Router können Probleme bereiten wenn die
 
Paketgröße auf 1500 belassen wird.
 
311
 
Kapitel 8. Internet
 
Abbildung 8-10. PPPoE Konfiguration - Automatisch Starten
 
Es kann bei jedem Systemstart automatisch eine Verbindung zum Provider aufgebaut werden. Es ist zu beachten
 
das hier bei ggf. Verbindungskosten anfallen die insbesondere bei einer zeitbasierten Abrechnung ins Gewicht
 
fallen können.
 
312
 
Kapitel 8. Internet
 
Abbildung 8-11. PPPoE Konfiguration - Verbindung herstellen
 
Nach der erfolgreichen Konfiguration kann direkt eine erste Verbindung ins Netz hergestellt werden.
 
8.1.3.2. pppstatus
 
Neben den üblichen Tools zur Überprüfung einer Internetverbindung (ping, host, tcpdump usw.) steht
 
speziell zur Kontrolle von PPP-Verbindungen das Programm pppstatus zur Verfügung.
 
313
 
Kapitel 8. Internet
 
Abbildung 8-12. PPP Statusanzeige
 
Hier finden sich Informationen über die verwendete Schnittstelle, die maximale Übertragungsrate und das
 
Übertragungsvolumen der Daten. In der oberen Hälfte wird in einer Säulengrafik die Übertragungsrate
 
angezeigt.
 
8.2. Webbrowser
 
Nachdem Sie nun erfolgreich die Verbindung ins Internet aufgebaut haben, können Sie die verschiedensten
 
Dienste (WWW, FTP, News...) nutzen. Jeder dieser Dienste, wobei WWW sicher der populärste ist, kann mit
 
einem eigenständigen Programm genutzt werden. Einige Programme können auch mehrere dieser Dienste
 
abfragen, aber auf alle Fälle haben Sie mit Debian GNU/Linux für jeden Dienst die Auswahl zwischen
 
verschiedenen Programmen.
 
8.2.1. Netscape Communicator
 
Der Communicator der Firma Netscape ist für verschiedene Betriebssysteme verfügbar und auch in einer
 
Linux-Version auf den Debian GNU/Linux Servern oder den CD-ROMs zu bekommen. Wie der Name
 
„Communicator“ schon nahelegt, handelt es sich um ein Programm, welches verschiedene Funktionen
 
ausführen kann und somit mehrere Internetdienste nutzbar macht. Ältere Versionen trugen den Namen
 
„Navigator“ und stellten lediglich die Möglichkeit Webseiten anzuzeigen zur Verfügung. Funktionen wie Mail
 
und News kamen erst später (mit dem Communicator) hinzu.
 
Die Pakete wurden für Debian GNU/Linux vom Betreuer des Paketes in kleine Teile getrennt, so daß man auch
 
nur die Teile des Communicators installieren kann, die man benötigt. Weiterhin können Sie ohne Probleme
 
verschiedene Versionen gleichzeitig installieren, momentan sind die Versionen 4.08, 4.61 und 4.7x auf den
 
Debian GNU/Linux-Servern zu beziehen.
 
314
 
Kapitel 8. Internet
 
Abbildung 8-13. Netscape Communicator
 
Installieren Sie die gewünschten Pakete wie gewohnt mit apt, dpkg oder dselect. Sie benötigen in jedem Fall
 
die Pakete *-base-*, *-smotif-* (oder *-dmotif-*, wenn Sie über eine kommerzielle Motif-Version
 
verfügen) sowie *-java-*. Die Pakete *-nethelp-* und *-spellchk-* sind nicht unbedingt erforderlich.
 
8.2.1.1. Scrollmaus
 
Um eine Scrollmaus (also eine Maus mit Rad) zusammen mit dem Netscape Communicator (und auch den
 
anderen Anwendungen aus dem Paket wie beispielsweise der Composer) verwenden zu können, ist zunächst die
 
grundsätzliche Unterstützung solcher Hardware durch den X-Server zu gewährleisten.
 
8.2.1.2. Probleme beim Druck
 
Vielleicht haben Sie sich auch schon über einige Webseiten geärgert die sich nicht vernünftig ausdrucken
 
liessen. Da der Traum vom papierlosen Büro ja noch nicht Realität geworden ist und immernoch viele Leute
 
den Wunsch haben „etwas in der Hand zu halten“ gibt es aber auch für dieses Problem eine Lösung.
 
Auf der Webseite http://mickey.edvz.uni-linz.ac.at/enprt/ findet sich ein Programm mit dessen Hilfe Webseiten
 
zunächst in LaTeX umgewandelt werden und mit zusätzlich Informationen wie beispielsweise URL, Seitentitel
 
und Seite/Seitenanzahl sowie Druckdatum versehen werden.
 
315
 
Kapitel 8. Internet
 
Die Installation gestaltet sich einfach, nach dem entpacken des Paketes sind einige Parameter anzupassen und
 
das Script ist in der Netscape Konfiguration als Druckerkommendo einzutragen.
 
8.2.1.3. Schaltflächen entfernen
 
Haben Sie die Schaltflächen „Shop“, „Security“ oder „Home“ schon mal benutzt? Diese können leicht durch
 
folgende Einträge in der Datei ~/.Xdefaults entfernt werden
 
Netscape*toolBar.myshopping.isEnabled: false
 
Netscape*toolBar.destinations.isEnabled: false
 
Netscape*toolBar.search.isEnabled: false
 
Netscape*toolBar.viewSecurity.isEnabled: false
 
Netscape*toolBar.home.isEnabled: false
 
Netscape*toolBar.print.isEnabled: false
 
Danach ist die Datei mit xrdb -merge ~/.Xdefaults neu einzulesen und der Browser neu zu starten.
 
8.2.1.4. Schaltflächen hinzufügen
 
Natürlich ist es genauso gut möglich eigene Schaltflächen hinzuzufügen. Auch hierzu sind Ergänzungen in der
 
Datei ~/.Xdefaults notwendig. Folgendes Beispiel fügt eine Schaltfläche „Find In Page“ hinzu.
 
Netscape*toolBar.userCommand1.commandName: findInObject
 
Netscape*toolBar.userCommand1.labelString: Find
 
Netscape*toolBar.userCommand1.commandIcon: Search
 
Auch bei dieser Änderung ist die Datei mit xrdb -merge ~/.Xdefaults neu einzulesen und der Browser
 
neu zu starten.
 
Ein Mausklick auf diese Schaltfläche öffnet nun das „Suchen“ Fenster.
 
8.2.2. Mozilla
 
Die Geschichte von Mozilla beginnt am 22. Januar 1998. An diesem Tag gab die Firma Netscape
 
Communications bekannt, dass ihre damals Marktführende Browsersuite Netscape Communicator 4.0 ab sofort
 
kostenlos verfügbar ist. Desweiteren sollte der Quellcode des Nachfolgeprodukts Communicator 5.0 (der sich
 
damals noch in der Entwicklung befand und nie veröffentlicht wurde) als freie Software veröffentlicht werden.
 
Da Software jedoch nicht auf Bäumen wächst war es notwendig, die weitere Entwicklung und Pflege der nun
 
freien Codebasis von Netscape 5.0 zu koordinieren. Schließlich müssen Patches und Verbesserungen von
 
Benutzern, Hobbyentwicklern und Firmen auf der ganzen Welt verwaltet werden und in einen gemeinsamen
 
Entwicklungszweig einfließen.
 
Der Browser sollte kein exklusives Projekt der Firma Netscape sein. Er sollte ein freies Software Projekt sein
 
wie der Linux Kernel oder das GNU Projekt oder der Apache Webserver. Es sollte jeder anderen Firma und
 
jeder Einzelperson möglich sein, sich an der weiteren Entwicklung zu beteiligen und den Browser oder
 
bestimmte Teile davon in eigenen Programmen zu verwenden.
 
Um diesen Zielen gerecht zu werden, gründete Netscape das "Mozilla Projekt", welches den ebenfalls in
 
"Mozilla" umgetauften Netscape Browser seitdem weitgehend unabhängig von Netscape weiterentwickelt. Der
 
Name "Mozilla" war übrigens der interne Codename für Netscape’s Navigator seit Version 1.0.
 
316
 
Kapitel 8. Internet
 
Abbildung 8-14. Mozilla
 
Um sich in den Netscape Sourcecode einzuarbeiten und die weitere Entwicklung auf eine solide Basis zu stellen,
 
begannen die Entwickler Netscape’s Sourcecode zu überarbeiten. Nach sechs Monaten stellte sich allerdings
 
heraus, dass es keinen Sinn machte auf dem Netscape Code aufzubauen. Netscape baute noch auf Mosaic
 
(erster grafische Webbrowser) auf und der Code war über die Jahre „gewachsen“ und entsprechend chaotisch.
 
Deshalb begannen die Entwickler den Netscape Code wegzuschmeissen und Mozilla von Grund auf neu zu
 
Entwickeln. Den Kern von Mozilla bildet die Rendering Engine Gecko (ursprünglich Raptor). Sie wurde mit
 
besonderem Augenmerk auf geringen Speicherverbrauch, schnellen Seitenaufbau und Konformität zu den
 
offiziellen Web Standards des W3C entwickelt. Um Mozilla möglichst modular aufzubauen wurde das
 
Komponentenmodell XPCOM entwickelt. XPCOM stellt eine plattformunabhängige Abwandlung von
 
Microsoft’s Komponentenmodell COM dar. Mit Hilfe von XPCOM ist es beispielsweise möglich einen eigenen
 
Browser zu schreiben und Gecko als Rendering Engine zu nutzen.
 
Mozilla besteht aus verschiedenen Paketen, diese müssen nicht komplett installiert werden.
 
mozilla-psm - Mozilla Web Browser - Personal Security Manager (PSM)
 
mozilla-dev - Mozilla Web Browser - development files
 
mozilla-js-debugger - JavaScript debugger for use with Mozilla
 
mozilla-browser - Mozilla Web Browser - core and browser
 
mozilla-mailnews - Mozilla Web Browser - mail and news support
 
mozilla-chatzilla - Mozilla Web Browser - irc client
 
mozilla-dom-inspector - A tool for inspecting the DOM of pages in Mozilla.
 
mozilla - Mozilla Web Browser - dummy package
 
mozilla-xmlterm - Mozilla Web Browse - XML enabled
 
317
 
Kapitel 8. Internet
 
mozilla-locale-de-at - Mozilla German Language/Region Package.
 
Zum einfachen Handling steht ein „Dummy“ Paket mozilla zur Verfügung mit dem eine brauchbare
 
Installation schnell und einfach vorgenommen werden kann. Natürlich kann auch zunächst das Paket
 
mozilla-browser installiert werden, welches mit Komponenten wie beispielsweise den Mail und News
 
Funktionen (mozilla-mailnews) ergänzt wird.
 
Das Paket mozilla-locale-de-at sorgt dafür das Mozilla mit einer deutschsprachigen Oberfläche versehen
 
wird.
 
8.2.3. Galeon
 
Galeon ist ein Webbrowser für den GNOME Desktop und steht unter der GPL. Zum Anzeigen der Webseiten
 
verwendet er Gecko, die Rendering Engine von Mozilla. Galeon ist sehr portabel und sollte sich auf jedem
 
Unix System kompilieren lassen, auf dem auch GNOME läuft (wie z.B. GNU/Linux oder FreeBSD).
 
Abbildung 8-15. Galeon Logo
 
Das Ziel der Galeon Programmierer ist es, einen modernen und standardkonformen aber gleichzeitig auch
 
schlanken Browser zu schaffen. Ein sehr wichtiger Punkt dabei ist, dass Galeon wirklich nur ein Browser ist.
 
Anders als z.B. Mozilla besitzt Galeon keinen eigenen Mail oder News Client. Um E-Mail zu versenden kann
 
man seinen bevorzugten Mail Client (z.B.: Evolution, mutt, kmail, balsa oder was auch immer) angeben. Man
 
muss also nicht, wie z.B. bei Mozilla immer die E-Mail Adresse in seinen Mail Client kopieren oder Tools wie
 
muttzilla verwenden, wenn man ein anderes Mail Programm als Mozilla Mail verwendet.
 
318
 
Kapitel 8. Internet
 
Abbildung 8-16. Galeon Browser
 
Downloads kann Galeon wahlweise selbst tätigen oder von einem externen Programm durchführen lassen. So
 
kann man z.B. GTM (Gnome Transfer Manager) oder sogar wget (wird dann in einem eigenen Terminal
 
ausgeführt) als Download Manager konfigurieren.
 
8.2.3.1. Installation
 
Die Installation erfolgt einfach mittels apt-get install galeon.
 
TIP: Bei Debian ist der Mozilla Personal Security Manager (das Mozilla Modul, das für SSL verantwortlich
 
ist) in ein separates Paket abgespalten. Um in Galeon SSL nutzen zu können, muss das Paket mozilla-psm
 
installiert werden.
 
Beim ersten Start ruft Galeon seinen Konfigurations Druiden auf. Dort wird gefragt ob Bookmarks von
 
Netscape (4.x) oder Mozilla importiert werden sollen und es können diverse Einstellungen z.B. für die zu
 
verwendenden Proxies vorgenommen werden. Neben der Übernahme der Netscape Bookmarks ist auch der
 
Import einiger Netscape Einstellungen möglich (z.B. Startseite, Java, Java Script usw.).
 
319
 
Kapitel 8. Internet
 
Abbildung 8-17. Galeon Installation
 
Abbildung 8-18. Galeon Import Bookmarks
 
320
 
Kapitel 8. Internet
 
Abbildung 8-19. Galeon Smart Bookmarks
 
Abbildung 8-20. Galeon GNOME Integration
 
321
 
Kapitel 8. Internet
 
Abbildung 8-21. Galeon Proxy Einstellungen
 
8.2.3.2. Startzeit
 
Besonders interessant ist die Startzeit von Galeon. Zumindest was die Startzeit angeht ist Galeon damit wohl
 
der momentan schnellste vollwertige Browser für Unix.
 
TIP: Wenn schon eine frühere Version von Galeon installiert ist, dann sollten mit dem Kommando
 
galeon-config-tool --clean alle Konfigurationsdateien der alten Version gelöscht werden, bevor mit einer
 
neueren Version von Galeon grarbeitet wird. Galeon läuft dadurch deutlich schneller. Wenn wichtige
 
Lesezeichen in Galeon gespeichert wurden, sollten diese vorher gesichert werden. Die Bookmarks finden
 
sich in der Datei ~/.galeon/bookmarks.xml.
 
Die Oberfläche von Galeon ist sehr übersichtlich und macht einen aufgeräumten Eindruck. Zwar sehen die
 
Standardbuttons von Galeon recht langweilig aus, jedoch kommt Galeon mit einer kleinen Auswahl an Themes
 
sowohl für die Browser Buttons als auch für den Spin Button (der Button ganz rechts in der Toolbar). Wem die
 
mitgelieferten Themes nicht ausreichen, der findet unter galeon.sourceforge.net/themes/ weitere Themes und
 
eine Anleitung zur Erstellung von eigenen Themes.
 
8.2.3.3. Autovervollständigung
 
Wie alle modernen Browser kann auch Galeon eine URL in der URL Zeile während der Eingabe automatisch
 
vervollständigen. Vielen Benutzern ist diese Funktion allerdings oft zu aufdringlich. Deshalb kann man es
 
322
 
Kapitel 8. Internet
 
entweder abstellen oder aber eine halbautomatische Vervollständigung auswählen. Dann wird eine URL,
 
ähnlich wie in der GNU bash mit der Tab-Taste vervollständigt.
 
8.2.3.4. Zoom
 
Die Browsertoolbar enthält neben den üblichen Buttons (Vor, Zurück, Stop usw.) auch eine Zoom Kontrolle um
 
die Zoom Stufe für die Seite festzulegen. Galeon zoomt dabei wie Mozilla nur den Text der Seite, die Bilder
 
werden nicht gezoomt (anders wie z.B. bei Opera).
 
Ein sehr sinnvolles Feature, welches in Mozilla leider (noch) nicht enthalten ist, ist der Vollbildmodus. Mit dem
 
Menüpunkt „Vollbild“ im Menü „Ansicht“ bzw. der Taste F11 wird Galeon in den Vollbildmodus geschaltet
 
und mit F11 kann der Vollbildmodus wieder deaktiviert werden.
 
Wenn man sich Galeon etwas näher anschaut findet man aber auch gänzlich neue Features, die es in keinem
 
anderen Browser gibt. So zum Beispiel die Funktion „Sitzung speichern“ im Menü „Datei“. Hier kann man die
 
gesamte zur Zeit laufende Browsersession mit allen Browser Fenstern, Tabs und geöffneten Webseiten in eine
 
Datei speichern. Bei Bedarf kann man diese Datei wieder öffnen und Galeon stellt den in der Datei
 
festgehaltenen Zustand wieder her.
 
8.2.3.5. Reiter
 
In Anlehnung an Opera’s MDI Oberfläche bietet auch Galeon die Möglichkeit, mehrere Webseiten in einem
 
Browserfenster in so genannten Reitern zu öffnen. In jedem Galeon Fenster kann über die Tastenkombination
 
„STRG+T“ ein neuer Reiter erzeugt werden. Alternativ kann man Galeon auch anweisen, Popups und Links
 
automatisch in einem neuen Reiter zu öffnen. Die Reiter sind auf einem Notebook Display einfacher zu
 
überschauen als mehrere Browser Fenster. Darüber hinaus benötigt ein Reiter auch weniger System Ressourcen
 
als eine neue Browser Instanz in einem eigenen Fenster.
 
8.2.3.6. Lesezeichen
 
Ohne Frage sind die Lesezeichen eines der wichtigsten Features für einen Browser. Galeon speichert seine
 
Lesezeichen in einem eigenen XML Format unter ~/.galeon/bookmarks.xml. Der Import von Lesezeichen aus
 
Netscape 4.x und Mozilla wird vom Browser direkt unterstützt. Für andere Browser (z.B. den Microsoft Internet
 
Explorer) existieren Tools um die Lesezeichen in Galeon’s Bookmark Format zu konvertieren.
 
Die Lesezeichen können entweder über den Dialog „Lesezeichen bearbeiten“ oder direkt über das Lesezeichen
 
Menü verwaltet werden. Das Lesezeichenmenü ist gut durchdacht. Jeder Ordner enthält einen Unterpunkt
 
„Ordner-Optionen“, über den man schnell einen neuen Unterordner anlegen oder die aktuelle Seite als
 
Lesezeichen in diesem Ordner ablegen kann. Daneben ist auch das gleichzeitige Öffnen aller Lesezeichen eines
 
Ordners in neuen Browser Fenstern oder in extra Reitern möglich.
 
Bis jetzt ist es leider nicht möglich, die Lesezeichen alphabetisch sortieren zu lassen. Abgesehen von diesem
 
Manko verfügt Galeon über eine vorbildliche Lesezeichenverwaltung.
 
8.2.3.7. Intelligente Lesezeichen
 
Galeon’s so genannte „Intelligente Lesezeichen“ sind Eingabefelder auf der Browsertoolbar, mit denen
 
bestimmte Suchmaschinen wie z.B. Google, Debian’s Package Suche oder andere mit Begriffen gefüttert
 
werden. Nach dem Bestätigen lädt Galeon direkt die Seite mit den Suchergebnissen.
 
8.2.3.8. Chronik (History)
 
Auch die Chronik von Galeon kann sich sehen lassen. Sie kann entweder in einem eigenen Fenster oder
 
angedockt im linken Teil des Browserfensters dargestellt werden.
 
Alle bereits besuchten Webseiten können nach der jeweiligen Domain (z.B. www.debian.org) gruppiert werden.
 
Um nicht alles auf einmal angezeigt zu bekommen, kann man sich nur die Einträge aus einem bestimmten
 
Zeitraum (Heute, Gestern, Vor zwei Tagen, aktuelle Woche oder Monat) anzeigen lassen.
 
323
 
Kapitel 8. Internet
 
8.2.3.9. Cookie und Image Manager
 
Galeon bietet gleich zwei nützliche Tools um sich vor der Spionage durch übereifrige „Marktforscher“ zu
 
schützen. Im Cookie Manager können alle bereits gespeicherten Cookies eingesehen und bei Bedarf wieder von
 
der Platte gelöscht werden. Danaben kann man auch Cookies von bestimmten Seiten komplett sperren.
 
Mit dem Image Manager können Bilder von bestimmte Sites geblockt werden. Damit kann man sich vor so
 
genannte „Web Bugs“, also unsichtbare Grafiken von Fremdseiten mit denen Benutzerprofile erstellt werden,
 
schützen.
 
8.2.3.10. SSL, JAVA, Flash
 
So lange der von Galeon verwendete Mozilla SSL unterstützt, funktioniert SSL auch in Galeon ohne Probleme.
 
Mit Java hat Galeon leider noch seine Probleme. Manche Sites funktionieren garnicht und andere können den
 
Browser crashen.
 
Bei Flash sieht es dagegen schon wesentlich besser aus. Galeon verwendet das selbe Plugin das sich im Plugin
 
Verzeichnis von Mozilla befindet und funktioniert damit einwandfrei.
 
8.2.4. lynx
 
lynx ist ein Webbrowser, der über keinerlei grafische Benutzerschnittstelle oder die Möglichkeit Grafiken
 
anzuzeigen, verfügt. lynx ist auf Systemen ohne X-Window-System lauffähig und läuft komplett textbasiert auf
 
der Linux-Konsole. lynx ist in der Lage, Tabellen darzustellen, Frames können ebenfalls (sehr eingeschränkt)
 
benutzt werden. Auf älteren Systemen (386- oder m68k-Systeme) ist lynx oft der einzige Browser, der
 
verwendbar ist.
 
Aber auch auf leistungsstarken Systemen hat lynx viele Freunde gefunden, die Ladezeiten von Webseiten sind
 
ohne Grafiken um einiges schneller, und wer auf der Suche nach reinen Informationen ist, benötigt keine Bilder.
 
Wenn Sie eigene Webseiten erstellen, achten Sie darauf, daß diese auch mit lynx vernünftig dargestellt werden
 
können. Verzichten Sie wenn möglich auf Frames und setzen Sie Tabellen sparsam ein.
 
Abbildung 8-22. lynx
 
324
 
Kapitel 8. Internet
 
Starten Sie lynx auf der Kommandozeile, Sie können als Option gleich dahinter die gewünschte URL angeben.
 
In den untersten beiden Zeilen werden Ihnen die wichtigsten Tastaturbelegungen angezeigt. Sie können mit den
 
Cursortasten RAUF und RUNTER durch den Text der Seite navigieren. Links erscheinen in einer anderen
 
Farbe, Sie können diese mit der Taste PFEIL-RECHTS oder RETURN auswählen und mit der Taste LINKS
 
kommen Sie wieder zur vorhergehenden Seite. Wenn Sie lynx in einem X-Terminal ausführen, können Sie die
 
Links auch ganz normal wie bei einem grafischen Browser mit der Maus auswählen. Um diese Funktion auf der
 
Konsole nutzen zu können, müssen Sie das Paket gpm installiert haben.
 
Weitere wichtige Tastaturkürzel sind:
 
• H - zeigt die lynx-Hilfe an.
 
• O - Optionen, mit denen Sie Ihre persönlichen Einstellungen vornehmen können.
 
• P - Print, druckt die aktuelle Seite aus.
 
• G - Go, öffnet eine neue URL.
 
• M - Main Screen, geht zur Startseite zurück.
 
• Q - Quit, beendet das Programm.
 
• / - Sucht in der aktuellen Seite nach einem String.
 
Wenn lynx die Webseiten nicht farbig darstellt, kontrollieren Sie die Einstellungen Ihrer Terminalemulation.
 
Einfache Emulationen, wie zum Beispiel vt100, sind nicht in der Lage, Texte farbig darzustellen. Wählen Sie
 
eine Emulation wie zum Beispiel linux (die Standardeinstellung der Konsolen), xterm-color oder
 
xterm-debian, diese sind in der Lage, Texte farbig darzustellen.
 
Weiterhin können Sie die farbige Ausgabe mit der Option -color auf der Kommandozeile erzwingen.
 
8.2.5. Mehrsprachige Webseiten
 
Webmaster, die großen Wert auf eine möglichst umfassende Leserschaft ihrer Webseiten legen, haben die
 
Möglichkeit, ihre Webseiten in verschiedenen Sprachen abzulegen. Vielfach werden dann Links zu diesen
 
Seiten benutzt, die Startseite ist im allgemeinen in Englisch gehalten.
 
Mittlerweile benutzen aber auch einige Webmaster die sogenannte content negotiation auf ihren Seiten.
 
Mit dieser kann der Benutzer seine bevorzugte Sprache einstellen und bekommt die Webseiten dann in der
 
ausgewählten Sprache angezeigt, wenn diese Sprache verfügbar ist.
 
Je nach verwendetem Browser unterscheiden sich die Einstellungen, die Sie vornehmen müssen.
 
Wenn Sie den textbasierten Browser lynx benutzen, tragen Sie in der Datei .lynxrc (in Ihrem
 
Home-Verzeichnis) die Variable preferred_language=de ein, beziehungsweise ändern diese auf den
 
gewünschten Wert.
 
Sie können dies auch über die Taste o (der Buchstabe) ändern.
 
Wenn eine Seite nicht in deutscher Sprache verfügbar ist, können Sie mit der Zeile:
 
preferred_language=de; q=1.0, en; q=0.7, fr; q=0.3 Englisch (en) als zweite und Französisch
 
(fr) als dritte Sprache einstellen.
 
Wenn Sie den Netscape Communicator (ab Version 4.0) benutzen, wählen Sie aus dem Menü „Edit“ den Punkt
 
„Preferences“, und klicken Sie auf „Navigator“ - „Languages“ - „Add“. Wählen Sie dort die weitere
 
gewünschte Sprache aus und klicken Sie auf „OK“.
 
Sie können jetzt einmal den Erfolg auf den Webseiten des Debian-Projektes unter http://www.debian.org testen.
 
Wenn alles geklappt hat, sollten Sie die Seiten nun in der von Ihnen gewählten Sprache sehen.
 
8.3. E-Mail
 
Elektronische Post (E-Mail) ist sicher eine der wichtigsten und beliebtesten Anwendungen im Internet. Der
 
Austausch von Nachrichten ist auch gleichzeitig einer der ältesten Dienste im Netz. Um mit Ihrem
 
Linux-System Mail versenden und empfangen zu können, reicht es im einfachsten Fall aus, die passenden
 
325
 
Kapitel 8. Internet
 
Einstellungen im Netscape Communicator vorzunehmen. Doch für ein „erwachsenes“ Debian GNU-System
 
sollte man sich einfach ein paar Minuten mehr Zeit nehmen und einen richtigen Mailserver konfigurieren.
 
Wie Sie vielleicht bei der Installation des Basissystems schon bemerkt haben, kommen Sie nicht um die
 
Installation eines MTA (Mail Transfer Agent) herum. Standardmäßig benutzt Debian GNU/Linux hierzu das
 
Programm exim, Sie können aber auch smail, qmail oder sendmail verwenden. Im einfachsten Fall haben
 
Sie bei der Installation von exim einfach den Punkt 5 No Configuration gewählt. Das ist nicht weiter
 
schlimm, exim wird so einfach nicht funktionieren...
 
Die Installation eines eigenen Mailservers auf Ihrem Rechner hat den entscheidenden Vorteil, daß Sie die von
 
Ihnen erstellten Mails jederzeit abschicken können. Schicken Sie die Mail einfach an den lokalen Mailserver
 
und wenn Sie das nächste Mal die Verbindung zu Ihrem Provider herstellen, werden alle Mails ausgeliefert.
 
Somit müssen Sie nicht für jede einzelne Mail die Verbindung aufbauen. Dazu müssen Sie aber zunächst exim
 
neu konfigurieren:
 
Starten Sie (als Superuser) das Programm eximconfig.
 
hoshi:/# eximconfig
 
You already have an exim configuration. Continuing with eximconfig
 
will overwrite it. It will not keep any local modifications you have made.
 
If that is not your intention, you should break out now. If you do continue,
 
then your existing file will be renamed with .O on the end.
 
[---Press return---]
 
Zuerst bekommen Sie einen Hinweis, daß bereits eine Konfigurationsdatei für exim gefunden wurde. Diese
 
wird während der neuen Konfiguration umbenannt in /etc/exim.conf.O
 
==============================================================================
 
You must choose one of the options below:
 
(1) Internet site; mail is sent and received directly using SMTP. If your
 
needs don’t fit neatly into any category, you probably want to start
 
with this one and then edit the config file by hand.
 
(2) Internet site using smarthost: You receive Internet mail on this
 
machine, either directly by SMTP or by running a utility such as
 
fetchmail. Outgoing mail is sent using a smarthost. optionally with
 
addresses rewritten. This is probably what you want for a dialup
 
system.
 
(3) Satellite system: All mail is sent to another machine, called a "smart
 
host" for delivery. root and postmaster mail is delivered according
 
to /etc/aliases. No mail is received locally.
 
(4) Local delivery only: You are not on a network. Mail for local users
 
is delivered.
 
(5) No configuration: No configuration will be done now; your mail system
 
will be broken and should not be used. You must then do the
 
configuration yourself later or run this script, /usr/sbin/eximconfig,
 
as root. Look in /usr/share/doc/exim/example.conf.gz
 
Select a number from 1 to 5, from the list above.
 
Enter value (default=‘1’, ‘x’ to restart): 2
 
Sie müssen sich nun für einen der 5 möglichen Punkte entscheiden. Punkt fünf erstellt keine
 
Konfigurationsdatei. Dies ist die schlechteste Wahl, da so Ihr System keine Mails ausliefern wird. Punkt vier ist
 
für Systeme ohne Netzanbindung (also weder über eine Netzwerkkarte noch über ein Modem oder per ISDN)
 
sinnvoll, auch dies lassen wir jetzt außen vor, ein Debian GNU/Linux-Rechner ohne Netzwerk ist kein
 
„richtiger“ Computer... ;-)) . Punkt drei würde alle Mails zu einem „Smarthost“ ausliefern; dies ist im
 
allgemeinen ein Rechner bei Ihrem Provider mit einer guten Anbindung ans Netz und einem sinnvoll
 
konfigurierten Mailserver. Allerdings wird keine Mail an die Benutzer (außer root und postmaster)
 
ausgeliefert... das ist auch nicht erstrebenswert.
 
326
 
Kapitel 8. Internet
 
Bleiben noch die Punkte eins und zwei übrig. Punkt eins ist auszuwählen, wenn keiner der anderen Punkte Ihren
 
Bedürfnissen genügt. Hierbei werden alle Mails direkt an den Empfänger beziehungsweise dessen Mailserver
 
ausgeliefert. Eine solche Konfiguration ist für Einsteiger nicht sinnvoll, da noch sehr viel von Hand geändert
 
werden muß.
 
In den meisten Fällen ist der Punkt zwei also der optimale, diesen werden wir jetzt exemplarisch durchgehen:
 
==============================================================================
 
What is the ‘visible’ mail name of your system? This will appear on
 
From: lines of outgoing messages.
 
Enter value (default=‘localhost’, ‘x’ to restart): hoshi.openoffice.de
 
Die erste Frage dreht sich um den „sichtbaren“ Namen Ihres Systems. Dies ist im Normalfall der volle Name
 
des Rechners, unter dem dieser auch von anderen Systemen im Netz erreichbar ist. Dies muß nicht zwingend
 
mit einem Teil Ihrer E-Mail-Adresse identisch sein. Im Zweifelsfall fragen Sie Ihren Provider nach der richtigen
 
Einstellung.
 
==============================================================================
 
Does this system have any other names which may appear on incoming
 
mail messages, apart from the visible name above (hoshi.openoffice.de) and
 
localhost?
 
By default all domains will be treated the same; if you want different
 
domain names to be treated differently, you will need to edit the config
 
file afterwards: see the documentation for the "domains" director
 
option.
 
If there are any more, enter them here, separated with spaces or commas.
 
If there are none, say ‘none’.
 
Enter value (default=‘none’, ‘x’ to restart):
 
Sie können hier noch weitere Namen für Ihr System angeben, die in den Mails, die an Ihr System geliefert
 
werden, auftauchen. Dies kann zum Beispiel der Fall sein, wenn Sie den Namen Ihres Rechners verändert haben
 
und noch nicht alle Bekannten von der neuen Adresse unterrichtet haben, oder wenn Sie mehrere Domains auf
 
einem Rechner betreiben. Normalerweise müssen Sie hier nichts eingeben.
 
==============================================================================
 
All mail from here or specified other local machines to anywhere on
 
the internet will be accepted, as will mail from anywhere on the
 
internet to here.
 
Are there are any domains you want to relay mail for---that is, you
 
are prepared to accept mail for them from anywhere on the internet, but
 
they are not local domains.
 
If there are any, enter them here, separated with spaces or commas. You
 
can use wildcards. If there are none, say ‘none’. If you want to relay
 
mail for all domains that specify you as an MX, then say ‘mx’
 
Enter value (default=‘none’, ‘x’ to restart):
 
Diese Frage betrifft das Mail-„relaying“, also das Weiterleiten von Mails, die nicht für Ihren Rechner bestimmt
 
sind. Auch diese Angabe werden Sie im Normalfall überspringen können.
 
==============================================================================
 
Obviously, any machines that use us as a smarthost have to be excluded
 
from the relaying controls, as using us to relay mail for them is the
 
whole point.
 
Are there any networks of local machines you want to relay mail for?
 
If there are any, enter them here, separated with spaces or commas. You
 
should use the standard address/length format (e.g. 194.222.242.0/24)
 
If there are none, say ‘none’.
 
327
 
Kapitel 8. Internet
 
You need to double the colons in IPv6 addreses (e.g. 5f03::1200::836f::::/48)
 
Enter value (default=‘none’, ‘x’ to restart):
 
Hier die Frage, ob Sie Mail für Rechner in Ihrem Netz „relayen“ wollen, also als „Smarthost“ für andere
 
auftreten wollen. Auch dies überspringen wir einfach. (Wenn Sie tiefer in die Materie der Mailserver einsteigen
 
wollen, lesen Sie bitte die Dokumentation zu dem betreffenden MTA).
 
==============================================================================
 
You may want to filter out unsolicited commercial email, (UCE, also known
 
as spam). Unfortunately it is difficult keeping up with all the spamming
 
sites and abused relays.
 
The Realtime Blackhole List is a spam filter that someone else maintains
 
(see http://maps.vix.com/rbl/). They are very quick to add sites, so
 
if you bounce on this you may occasionally miss legitimate mail. Adding
 
a header is an alternative---then individual users can choose what to do
 
with RBL mail using their personal filter files.
 
Note that the RBL only works if you receive mail directly. If it is stored
 
for you at your ISP, the RBL won’t work as it depends on the IP address the
 
connection comes from.
 
Would you like to use the RBL? (’f’ilter, ’r’eject, or ’n’o)?
 
Enter value (default=‘n’, ‘x’ to restart):
 
Hier geht es um unerwünschte Mails, sogenannten SPAM. Sie können diese ausfiltern, dies funktioniert aber
 
nur, wenn das System von außen direkt Mails entgegennimmt. Wenn Sie Ihre Mail via POP3 abholen,
 
übergehen Sie auch diesen Punkt.
 
==============================================================================
 
Which machine will act as the smarthost and handle outgoing mail?
 
Enter value (‘x’ to restart): mail.openoffice.de
 
Names are localhost:hoshi.openoffice.de!
 
Hier nun die Frage nach dem Mailserver Ihres Providers, der als Smarthost benutzt werden soll. Geben Sie hier
 
den Namen des Servers an, im Zweifelsfall fragen Sie Ihren Provider nach dem Namen. Häufig wird ein
 
Konstrukt: mail.providername.de gewählt, dies muß aber nicht so sein.
 
==============================================================================
 
Mail for the ‘postmaster’ and ‘root’ accounts is usually redirected
 
to one or more user accounts, of the actual system administrators.
 
By default, I’ll set things up so that mail for ‘postmaster’ and for
 
various system accounts is redirected to ‘root’, and mail for ‘root’
 
is redirected to a real user. This can be changed by editing /etc/aliases.
 
Note that postmaster-mail should usually be read on the system it is
 
directed to, rather than being forwarded elsewhere, so (at least one of)
 
the users you choose should not redirect their mail off this machine.
 
Which user account(s) should system administrator mail go to ?
 
Enter one or more usernames separated by spaces or commas . Enter
 
‘none’ if you want to leave this mail in ‘root’s mailbox - NB this
 
is strongly discouraged. Also, note that usernames should be lowercase!
 
Enter value (‘x’ to restart): fr
 
Sie können hier einen Benutzernamen wählen (hier: fr), der eventuell auftretende Fehlermeldungen, die das
 
System per Mail versendet, erhalten soll. Normalerweise erhalten die Benutzer root und postmaster diese Mails.
 
==============================================================================
 
You already have an /etc/aliases file. Do you want to replace this with
 
a new one (the old one will be kept and renamed to aliases.O)? (y/n)
 
Enter value (default=‘y’, ‘x’ to restart):
 
328
 
Kapitel 8. Internet
 
In der Datei /etc/aliases können Sie eigene Abkürzungen systemweit definieren. eximconfig trägt dort
 
den vorab gewählten Benutzer auch über einen Alias ein, so daß dieser die Fehlermails bekommt.
 
Wenn Sie zum Beispiel möchten, daß der Benutzer fr mit der E-Mail Adresse fr@openoffice.de auch als
 
frank.ronneburg (komplette Adresse: frank.ronneburg@openoffice.de, das ist nur ein Beispiel. Bitte
 
keine Mails an diese Adresse schicken.) zu erreichen ist, tragen Sie folgendes in die Datei /etc/aliases ein:
 
frank.ronneburg: fr
 
The following configuration has been entered:
 
==============================================================================
 
Mail generated on this system will have ‘hoshi.openoffice.de’ used
 
as the domain part (after the @) in the From: field and similar places.
 
The following domain(s) will be recognised as referring to this system:
 
localhost, hoshi.openoffice.de
 
Mail for postmaster, root, etc. will be sent to fr.
 
Local mail is delivered.
 
Outbound remote mail is sent via mail.openoffice.de.
 
Is this OK ? Hit Return or type ‘y’ to confirm it and install,
 
or ‘n’ to make changes (in which case we’ll go round again, giving you
 
your previous answers as defaults. (y/n) y
 
Zum Abschluß nochmal eine Übersicht, bevor die Konfiguration geschrieben wird.
 
Keeping previous /etc/exim.conf as /etc/exim.conf.O
 
Keeping previous /etc/aliases as /etc/aliases.O
 
Keeping previous /etc/mailname as /etc/mailname.O
 
Configuration installed.
 
Fertig. Nun können Sie versuchen, E-Mails zu verschicken. Bitte versuchen Sie zuerst, lokal auf Ihrem Rechner
 
zwischen verschiedenen Benutzern Mails zu versenden. Wenn dies funktioniert, können Sie auch die
 
Verbindung ins Netz testen.
 
Zusätzlich kann noch für jeden Benutzer, der Mails nach draußen senden können soll, ein Eintrag in
 
/etc/email-addresses gemacht werden. Dieser sorgt dafür, dass alle Vorkommen Ihrer lokalen Adresse in
 
eine von Ihrem Mail-Provider akzeptierte Adresse umgesetzt werden. Die Einträge haben die Form user:
 
mailuser@mailprovider, also z.B. root: matt.schmitt00@gmx.de.
 
Viele Freemail-Provider verlangen, daß man zuerst seine Mails abruft, bevor man welche verschickt, siehe dazu
 
auch fetchmail.
 
Doch nun zu den eigentlichen Programmen, mit denen Sie Ihre E-Mails bearbeiten können.
 
8.3.1. mutt
 
mutt ist ein von Michael R. Elkins entwickelter MUA (Mail User Agent), welcher als Nachfolger des
 
mittlerweile nicht mehr weiterentwickelten Programms elm gilt. mutt bietet alle nur denkbaren Funktionen und
 
ist komplett konfigurierbar.
 
mutt besitzt eine textbasierte Oberfläche, ist also nicht per Maus zu bedienen. Dies stellt aber kein Manko dar.
 
Bedenken Sie, daß Sie E-Mails sowieso als Text verfassen, also die Maus nicht benötigen. Mit einigen wenigen
 
Kommandos (und den Fingern auf der Tastatur...) läßt sich mutt sehr schnell und effizient bedienen. Das
 
wichtigste Kommando ist am Anfang sicher der Druck auf die Taste ?, mit dieser rufen Sie die Hilfe von mutt
 
329
 
Kapitel 8. Internet
 
auf. An dieser Stelle auch gleich der Hinweis: alle Veränderungen, die Sie an der Tastaturbelegung von mutt
 
vornehmen, werden gleich in die Hilfe übernommen.
 
Abbildung 8-23. mutt
 
Wie schon erwähnt, ist mutt individuell konfigurierbar. Alle möglichen Optionen hier zu beschreiben würde zu
 
weit führen. Schauen Sie auf die unten angeführten Webseiten von Sven Guckes und Felix von Leitner, dort
 
finden Sie auch Konfigurationsdateien, die wirklich vorbildlich dokumentiert sind.
 
Die meisten Benutzer werden sicher ihre Mail von einem POP3-Server ihres Providers beziehen. Die hierzu
 
nötigen Einträge in der Datei .muttrc (in Ihrem Homeverzeichnis) sehen wie folgt aus:
 
set pop_host=pop3.openoffice.de
 
set pop_user=popname
 
set pop_delete
 
Sie müssen natürlich den Namen des Mailservers sowie Ihren Benutzernamen anpassen. Der Eintrag set
 
pop_delete veranlaßt den POP-Server die empfangenen Mails auf dem Server zu löschen. Zu Testzwecken
 
können Sie diesen Eintrag erst mal weglassen, Sie bekommen dann aber auch die bereits empfangenen Mail
 
beim nächsten Mal erneut. Drücken Sie nun die Taste G, und mutt stellt die Verbindung zum Server her und
 
überträgt Ihre Mails.
 
Damit sollten Sie erst einmal in der Lage sein, Mails zu senden und zu empfangen.
 
8.3.1.1. mutt und GnuPG
 
Um Mail mit GnuPG zu signieren oder zu verschlüsseln, müssen Sie nur wenige Änderungen an Ihrer .muttrc
 
vornehmen. Natürlich sollten Sie zuerst GnuPG installieren und ein Schlüsselpaar erzeugt haben. Die
 
notwendigen Schritte sind im Abschnitt Verschlüsselung beschrieben.
 
Hier nun noch einige Links zu Seiten im Web, auf denen Sie weitere Informationen zu mutt finden:
 
http://www.mutt.org/ die eigentliche Hauptseite zu mutt.
 
http://www.linux-magazin.de/ausgabe/1997/07/Mutt/mutt.html ein Artikel von Felix von Leitner im Linux
 
Magazin.
 
http://www.math.fu-berlin.de/~leitner/mutt/ die Seiten von Felix zu mutt
 
http://www.math.fu-berlin.de/~guckes/mutt/ umfangreiche Sammlung von Sven Guckes
 
330
 
Kapitel 8. Internet
 
8.3.1.2. Empfängerabhängige Signaturen
 
mutt besitzt eine ganze Reihe nützlicher Funktionen, welche durch enstprechende Anpassungen verfügbar
 
gemacht werden. Beispielsweise können Signaturen je nach Empfänger unterschiedlich gestaltet werden.
 
Hierzu sind Anpassungen wie im folgenden beschrieben notwendig
 
send-hook . set signature=~/.signature
 
send-hook meier set signature=~/.signature-meier
 
Dieses würde für den Empfänger „meier“ eine individuelle Signatur verwenden, alle anderen Emfänger müssen
 
mit einer allgemeinen Signatur vorlieb nehmen.
 
8.3.2. fetchmail
 
fetchmail dient zum Empfangen und Weiterleiten von „Remote“-email über TCP/IP-Verbindungen (wie zum
 
Beispiel SLIP oder PPP-Verbindungen). Es empfängt email vom Remote-Mail-Server und leitet diese an das
 
lokale Mailsystem weiter, so daß Sie die Mails mit jedem normalen Mailprogramm (beispielsweise elm oder
 
mutt) lesen und bearbeiten können.
 
fetchmail unterstützt alle üblichen Mail-Empfangsprotokolle, die im Internet gebräuchlich sind: POP2, POP3
 
(inklusive POP3 mit RFC1938 Einmalpasswörtern), RPOP, APOP, KPOP, Compuserve’s POP3 mit RPA,
 
Microsoft’s NTLM, Daemon Internet’s SDPS, alle Varianten von IMAP (inklusive IMAP4rev1 mit RFC1731
 
Kerberos v4 oder GSSAPI Authentifizierung oder CRAM-MD5 Authentifizierung) und ESMTP ETRN.
 
Fetchmail unterstützt auch die „End-to-end“ Encryption mittels OpenSSL.
 
Um fetchmail unter Debian GNU/Linux benutzen zu können, müssen Sie zunächst das eigentliche Paket
 
installieren. Am einfachsten benutzen Sie hierzu das Kommando apt-get install fetchmail. Leider ist
 
damit die Installation noch nicht ganz abgeschlossen, Sie müssen nun noch die Datei ~/.fetchmailrc
 
erzeugen. Hierzu gibt es in der Dokumentation ein Script, welches die Konfiguration für Sie erledigen kann. Sie
 
können dies als Superuser (root) aufrufen oder mit dem Kommando
 
su -c "sh /usr/doc/fetchmail/contrib/fetchsetup"
 
starten, auch hier werden Sie nach dem Paßwort für den Superuser gefragt.
 
Hier ein Beispiel für eine Konfiguration mit dem normalen POP3-Protokoll:
 
bash-2.04$ su -c "sh /usr/doc/fetchmail/contrib/fetchsetup"
 
Password:
 
# Fetchsetup is a shell script for creating a .fetchmailrc file,
 
# that will be used by the program "fetchmail" to connect to your
 
# mail domain and retrieve your mail.
 
# This script is linux specific, so it may not work on another system.
 
# Kent Robotti <krobot@erols.com> (3-31-99)
 
Continue? (Y/n) :
 
Remote mail site?: pop.boo.com <Your service providers mail domain name>
 
Remote mail site?: mail.openoffice.de
 
Protocol?: pop3 <My service provider uses the ’pop3’ mail protocol>
 
Protocol?: auto <If not sure put: auto>
 
Choices: apop auto etrn imap imap-gss imap-k4 kpop pop2 pop3 rpop sdps
 
Protocol?: pop3
 
Remote username?: jerry <My username or login is jerry>
 
Remote username?: hoshi
 
Remote password?: ? <What’s the password for?: hoshi>
 
331
 
Kapitel 8. Internet
 
Remote password?: XXXXXXX
 
Create /root/.fetchmailrc file? (Y/n) :
 
This is your /root/.fetchmailrc file.
 
poll "mail.openoffice.de"
 
protocol pop3
 
username "hoshi"
 
password "aa"
 
mda "/usr/bin/procmail -d %s"
 
Fetchmail will retrieve your mail and put it in:
 
/var/spool/mail/fr
 
I put that (m)ail (d)elivery (a)gent in .fetchmailrc
 
because i found it on your system, this doesn’t mean
 
it’s correct or the one you want to use.
 
The first time you run fetchmail, you should run it
 
this way: # fetchmail -k
 
Beachten Sie, das Paßwort bei der Eingabe angezeigt wird und auch im Klartext, also unverschlüsselt in der
 
Datei gespeichert wird. Sorgen Sie dafür, daß die Zugriffsrechte so gesetzt sind, daß niemand anderes Ihr
 
Paßwort aus der Datei lesen kann.
 
Wenn Sie, wie hier gezeigt, eine Datei .fetchmailrc für einen normalen Benutzer anlegen wollen, müssen
 
Sie diese später noch in das entsprechende Verzeichnis kopieren und mit den nötigen Zugriffsrechten versehen.
 
Die so erzeugte Datei hat dann folgenden Inhalt:
 
poll "mail.openoffice.de"
 
protocol pop3
 
username "hoshi"
 
password "XXXXXX"
 
mda "/usr/bin/procmail -d %s"
 
Der Aufbau ist sehr einfach und Sie können sich auch sehr schnell eine solche Datei mit einem Texteditor selber
 
erzeugen, ohne das Konfigurationsprogramm zu Hilfe zu nehmen. Neben den Einträgen für den Mailserver
 
(poll), das Protokoll (protocol), den Benutzernamen (username) und dem Paßwort (password) findet sich am
 
Ende der Datei der Eintrag mda. Dieser stellt den Pfad und das Kommando mit weiteren Parametern dar, wie der
 
zu verwendende Mail Delivery Agent (MDA) aufgerufen werden soll. In diesem Beispiel wird das Programm
 
procmail benutzt welches Ihnen viele weitere Möglichkeiten bietet, Mails vor dem Lesen bzw. vor der
 
Auslieferung in eine Mailbox zu bearbeiten.
 
Wenn Sie procmail nicht installiert haben, wird fetchmail beispielsweise smail, sendmail oder exim
 
direkt verwenden.
 
Wenn Sie die erste Konfiguration von fetchmail abgeschlossen haben, können Sie als ersten Versuch das
 
Kommando fetchmail -k aufrufen. Es wird damit versucht, alle Mails vom angegebenen Mailserver
 
abzuholen und in die lokale Mailbox zu kopieren. Die Mails werden durch die Option -k nicht vom Server
 
gelöscht, dies sollten Sie bei Ihren ersten Versuchen auch so belassen.
 
fetchmail verfügt über eine ganze Reihe weiterer Optionen und wie jedes gute GNU-Programm können Sie
 
mit dem Parameter --h etwas mehr über diese Optionen erfahren:
 
usage: fetchmail [options] [server ...]
 
Options are as follows:
 
-?, --help display this option help
 
-V, --version display version info
 
-c, --check check for messages without fetching
 
-s, --silent work silently
 
-v, --verbose work noisily (diagnostic output)
 
-d, --daemon run as a daemon once per n seconds
 
-N, --nodetach don’t detach daemon process
 
332
 
Kapitel 8. Internet
 
-q, --quit kill daemon process
 
-L, --logfile specify logfile name
 
--syslog use syslog(3) for most messages when running as a daemon
 
--invisible don’t write Received & enable host spoofing
 
-f, --fetchmailrc specify alternate run control file
 
-i, --idfile specify alternate UIDs file
 
--postmaster specify recipient of last resort
 
--nobounce redirect bounces from user to postmaster.
 
-I, --interface interface required specification
 
-M, --monitor monitor interface for activity
 
--plugin specify external command to open connection
 
--plugout specify external command to open smtp connection
 
-p, --protocol specify retrieval protocol (see man page)
 
-U, --uidl force the use of UIDLs (pop3 only)
 
-P, --port TCP/IP service port to connect to
 
--preauth preauthentication type (password/kerberos/ssh)
 
-t, --timeout server nonresponse timeout
 
-E, --envelope envelope address header
 
-Q, --qvirtual prefix to remove from local user id
 
-u, --username specify users’s login on server
 
-a, --all retrieve old and new messages
 
-K, --nokeep delete new messages after retrieval
 
-k, --keep save new messages after retrieval
 
-F, --flush delete old messages from server
 
-n, --norewrite don’t rewrite header addresses
 
-l, --limit don’t fetch messages over given size
 
-w, --warnings interval between warning mail notification
 
-S, --smtphost set SMTP forwarding host
 
-D, --smtpaddress set SMTP delivery domain to use
 
-Z, --antispam, set antispam response values
 
-b, --batchlimit set batch limit for SMTP connections
 
-B, --fetchlimit set fetch limit for server connections
 
-e, --expunge set max deletions between expunges
 
-m, --mda set MDA to use for forwarding
 
--bsmtp set output BSMTP file
 
--lmtp use LMTP (RFC2033) for delivery
 
-r, --folder specify remote folder name
 
Wenn Sie Parameter, beim Start von fetchmail auf der Kommandozeile, angeben, so werden diese die Werte,
 
die in der Konfigurationsdatei stehen, überschreiben. Sie können auf der Kommandozeile mehrere verschiedene
 
Server angeben, von denen versucht werden soll, Mails abzuholen, ebenso können Sie in der
 
Konfigurationsdatei mehrere Einträge haben, die solche Server beschreiben.
 
8.3.2.1. Konfiguration
 
Allgemeine Optionen
 
-V *-version
 
Zeigt die Versionsinformationen zur installierten fetchmail-Version, sowie zur Version des Linux
 
Kernels an. Es werden nur Informationen angezeigt und keinerlei Mails übertragen. Statt dessen werden,
 
für jeden in der Konfiguration angegebenen Server, alle Konfigurationsoptionen angezeigt. Hier ein
 
Beispiel für eine solche Konfiguration:
 
bash-2.04$ fetchmail -V
 
This is fetchmail release 5.3.4+NTLM+SDPS+NLS
 
Linux sushi 2.3.47 #2 Wed Feb 23 16:32:17 CET 2000 i686 unknown
 
Taking options from command line and /home/fr/.fetchmailrc
 
Idfile is /home/fr/.fetchids
 
Fetchmail will forward misaddressed multidrop messages to fr.
 
Options for retrieving from hoshi@mail.openoffice.de:
 
True name of server is mail.openoffice.de
 
333
 
Kapitel 8. Internet
 
Protocol is POP3.
 
Server nonresponse timeout is 300 seconds (default).
 
Default mailbox selected.
 
Only new messages will be retrieved (*-all off).
 
Fetched messages will not be kept on the server (*-keep off).
 
Old messages will not be flushed before message retrieval (*-flush off).
 
Rewrite of server-local addresses is enabled (*-norewrite off).
 
Carriage-return stripping is enabled (stripcr on).
 
Carriage-return forcing is disabled (forcecr off).
 
Interpretation of Content-Transfer-Encoding is enabled (pass8bits off).
 
MIME decoding is disabled (mimedecode off).
 
Idle after poll is disabled (idle off).
 
Nonempty Status lines will be kept (dropstatus off)
 
Messages will be delivered with "/usr/bin/procmail -d %s".
 
Recognized listener spam block responses are: 571 550 501 554
 
Single-drop mode: 1 local name(s) recognized.
 
No UIDs saved from this host.
 
Diese Option ist bei der Fehlersuche in einer Konfiguration sehr hilfreich.
 
-c *-check
 
Gibt einen Statuscode zurück, aus dem ersichtlich ist, ob auf dem Server Mail zum Abholen bereitliegt
 
oder nicht, auch hierbei werden keine Daten übertragen oder auf dem Server gelöscht. Diese Option
 
deaktiviert den „Daemon“ Modus. Weiterhin arbeitet diese Option nicht mit dem ETRN Protokoll (RFC
 
1985) zusammen und ist etwas problematisch im Zusammenhang mit mehreren Sites. Der Statuswert ist
 
negativ, wenn Sie gelesene aber nicht gelöschte Mail in der Mailbox auf dem Server zurücklassen und das
 
verwendete Protokoll bereits gelesene von neuen Nachrichten nicht unterscheiden kann. Diese Option
 
funktioniert sehr gut mit IMAP, mit den meisten POP3 Servern und funktioniert nicht mit POP2.
 
-s *-silent
 
Unterdrückt alle Informationen über den Status oder den Fortschritt bei der Verarbeitung von Nachrichten,
 
diese Meldungen werden normalerweise auf der Standardausgabe für Fehlermeldungen ausgegeben.
 
Fehlermeldungen werden aber weiterhin dorthin ausgegeben. Mit der Option *-verbose können Sie diese
 
Option überschreiben.
 
-v *-verbose
 
Mit dieser Option werden alle Kontrollnachrichten, die zwischen fetchmail und dem Mailserver
 
ausgetauscht werden, auf der Standardfehlerausgabe ausgegeben. Diese Option überschreibt die Option
 
*-silent. Wenn Sie diese Option doppelt (als -v -v) angeben, werden datailliertere Informationen
 
ausgegeben.
 
Übergabe Optionen
 
-a *-all
 
(Schlüsselwort: all) Holt sowohl alte (bereits gelesene) sowie neue Nachrichten vom Server.
 
Normalerweise werden nur neue, also ungelesene Nachrichten übertragen. Wenn POP3 als Protokoll
 
verwendet wird, benutzt fetchmail das Kommando RETR statt TOP. POP2 verhält sich immer so, als ob
 
diese Option aktviert ist, bei ETRN funktioniert diese Option nicht.
 
-k *-keep
 
(Schlüsselwort: keep) Normalerweise werden übertragene Nachrichten auf dem Mailserver gelöscht, so
 
daß diese beim nächsten Mal nicht nocheinmal übertragen werden. Diese Option belässt die übertragenen
 
Mails auf dem Server. Diese Option funktioniert nicht mit ETRN.
 
334
 
Kapitel 8. Internet
 
-K *-nokeep
 
(Schlüsselwort: nokeep) Diese Option löscht die übertragenen Mails auf dem Server, dies ist auch die
 
Standardeinstellung. Sie können diese Option auf der Kommandozeile angeben, falls Sie in der
 
Konfiguration die Option -k angegeben haben.
 
-F *-flush
 
Diese Option funktioniert nur mit dem Protokollen POP3 oder IMAP. Alte Mails, die bereits übertragen
 
wurden, werden auf dem Server gelöscht, bevor neue Nachrichten übertragen werden. Diese Option
 
funktioniert nicht mit dem Protokoll ETRN. Bitte beachten Sie: Wenn Ihr Mailprogramm während der
 
Übertragung abstürzt und fetchmail abgebrochen wird, werden beim nächsten Aufruf von fetchmail
 
auch Nachrichten gelöscht, die Sie noch nie zu Gesicht bekommen haben. Normalerweise sollten Sie
 
besser die Option -k benutzen, hierbei werden die Mails nach der erfolgreichen Übertragung gelöscht.
 
Protokoll und Abfrage Optionen
 
-p *-protocol
 
(Schlüsselwort: proto[col]) Mit dieser Option können Sie das gewünschte Protokoll zur Kommunikation
 
mit dem Mailserver angeben. Wenn kein Protokoll vorgegeben wird, wird der Wert AUTO verwendet. Sie
 
können diese Option mit den folgenden Werten belegen:
 
AUTO - probiert die Protokolle IMAP, POP3 und POP2. Nicht verfügbare Protokolle werden übersprungen.
 
SDPS - Benutzt das POP3 Protokoll mit den „Daemon Internet’s“ SDPS Erweiterungen.
 
-U *-uidl
 
(Schlüsselwort: uidl) Benutzt bei der Verwendung von POP3 die UIDL (unique ID listing, beschrieben im
 
RFC 1725). Die Überprüfung auf neue Nachrichten wird auf der Seite des Clients vorgenommen.
 
Zusammen mit der Option -k läßt sich über eine Mailbox ein Verteiler für eine Gruppe von Benutzern
 
realisieren.
 
-P *-port
 
(Schlüsselwort: port) Hiermit können Sie eine vom Standard abweichende Portnummer für das verwendete
 
Protokoll angeben.
 
-t *-timeout <Sekunden>
 
(Schlüsselwort: timeout) - Hiermit können Sie eine Zeit bestimmen, die fetchmail auf eine Antwort vom
 
Server warten soll.
 
*-plugin <Komando>
 
(Schlüsselwort: plugin) - Sie können ein externes Programm verwenden um eine TCP Verbindung
 
aufzubauen. Dies kann bei der Verwendung eines Firewalls sinnvoll sein. Dem Programm werden die
 
beiden Parameter Servername und Portnummer übergeben, fetchmail schreibt und ließt von der
 
Standardein- und ausgabe des PlugIns.
 
Wenn Sie mit den Einstellungen zufrieden sind, können Sie den Aufruf von fetchmail in die Scripte
 
einbauen, die auf Ihrem System die TCP/IP-Verbindung zu Ihrem Provider aufbauen. Leider sind die Scripte
 
ip-up und ip-down unter Debian noch nicht so weit vereinheitlicht, daß das Installationsprogramm von
 
fetchmail dies für Sie erledigen könnte, so daß an dieser Stelle wieder Handarbeit angesagt ist. Sie finden
 
unter /usr/doc/fetchmail die Scripte fetchmail-up und fetchmail-down als Beispiele. Sie sollten das
 
Script fetchmail-up an eine Stelle in das Script /etc/init.d/ip-up einbauen, an der die IP-Verbindung
 
bereits aufgebaut wurde, so daß automatisch alle Mails abgeholt werden, nachdem Sie die Verbindung
 
hergestellt haben. Entsprechend sollten Sie das Script fetchmail-down vor dem Abbau der Verbindung
 
einbauen, so daß nochmal schnell neue Mails abgeholt werden.
 
335
 
Kapitel 8. Internet
 
8.3.3. Netscape Mail
 
Wenn Sie auf eine grafische Oberfläche zur Bearbeitung Ihrer E-Mail Wert legen, sollten Sie einen Blick auf
 
den „Messenger“ werfen. Dieser vereint die Funktionen eines Mail- und Newsreaders in einem Programm. Sie
 
können diesen Programmteil aus der Menüleiste des Browsers, unter „Communicator“ – „Messenger“, starten.
 
Wenn Sie das Programm aus der Kommandozeile starten, können Sie die Option -mail oder -messenger
 
angeben, dies öffnet direkt das entsprechende Fenster (und nur dieses).
 
Abbildung 8-24. Netscape - Mail
 
Wenn Sie das Programm zum ersten Mal starten, sind natürlich noch keine privaten Mails in Ihrem Mailfolder
 
enthalten, Sie finden lediglich eine Begrüßungsmail vor. Um Mail zu empfangen, sind zunächst einige
 
Einstellungen vorzunehmen. Vorbedingung, damit Sie Ihre E-Mail vom Server Ihres Providers abholen können,
 
ist natürlich eine funktionierende Verbindung per Modem, ISDN oder Netzwerk. Die nötigen Einstellungen
 
können Sie in folgendem Fenster vornehmen, welches Sie über das Menü „Edit“ – „Preferences...“ erreichen
 
können.
 
336
 
Kapitel 8. Internet
 
Abbildung 8-25. Netscape - Mail/Einstellungen
 
„Klappen“ Sie zunächst das Untermenü „Mail & Newsgroups“ durch einen Mausklick auseinander und wählen
 
Sie zunächst den Eintrag „Identity“. Geben Sie hier Ihren eigenen Vor- und Nachnamen ein. In das zweite Feld
 
tragen Sie Ihre E-Mail Adresse ein. Wenn Sie sich bei diesem Wert nicht sicher sind, fragen Sie Ihren Provider.
 
Benutzen Sie in keinem Fall die hier angegebenen Werte oder irgendwelche anderen Namen von Personen, Sie
 
machen sich damit keine Freunde im Netz!
 
In das Feld „Reply-to address“ können Sie eine von der Absenderadresse abweichende Adresse angeben, zu
 
dieser werden dann die Antworten auf Ihre Mail geschickt. Normalerweise werden Sie dieses Feld freilassen.
 
Auch das Feld „Organization“ können Sie freilassen oder mit dem Namen Ihrer Firma ausfüllen.
 
In das Feld „Signature File“ können Sie den Pfad und Dateinamen zu einer Datei eintragen, die automatisch an
 
jede von Ihnen verschickte Mail angehängt wird. Beachten Sie bitte, daß diese Datei vier Zeilen nicht
 
übersteigen sollte. Üblicherweise wird hierfür der Dateiname .signature in Ihrem Home-Verzeichnis
 
verwendet.
 
337
 
Kapitel 8. Internet
 
Abbildung 8-26. Netscape - Mail/Einstellungen
 
Klicken Sie nun auf den nächste Eintrag „Mail Servers“. Hier müssen Sie zwei Server eintragen, einen für die
 
ankommenden und einen für die abgehenden Mails. Die meisten Provider unterstützen das Protokoll POP3, mit
 
dem Sie Ihre Mails empfangen können. Üblich ist es hier, daß auch der entsprechende Server bei Ihrem
 
Provider den Namen „pop3.provider.de“ bekommt, klären Sie dies im Zweifelsfall mit Ihrem Provider. Über die
 
Schaltfläche „Add“ können Sie einen Server in die Liste eintragen. Tragen Sie im folgenden Fenster den Server
 
Ihres Providers ein, für die ersten Versuche sollten Sie die Option „Leave messages on server“ aktivieren, Sie
 
finden diese unter der Karteikarte „POP“. Dies verhindert, daß die Mails nach der Übertragung vom Server
 
gelöscht werden.
 
Für die von Ihnen geschriebenen, ausgehenden Mails tragen Sie in das Feld „Outgoing Mail (SMTP) Server“
 
den Namen des entsprechenden Servers bei Ihrem Provider ein. Übliche Namen sind hier „mail.provider.de“
 
oder auch „smtp.provider.de“.
 
Wenn Sie alle Einstellungen vorgenommen haben, klicken Sie auf „OK“ und klicken Sie danach auf die
 
Schaltfläche „Get Msg“ oben links im Fenster. Nun sollten die Mails übertragen werden.
 
8.3.4. Evolution
 
In vielen Firmen aber auch im privaten Bereich wird Outlook zur Kommunikation,
 
Terminplanung/-koordination, Adressverwaltung usw. eingesetzt. Die Verbindung dieser zentralen Funktionen
 
innerhalb eines Programmes hat dieser Software zu einer weiten Verbreitung verholfen. Die Firma Ximian hat
 
mit dem auf Gnome aufsetzenden Evolution eine Software geschaffen die nicht nur von der Funktionalität
 
sondern auch vom Aussehen her an MS-Outlook angelehnt ist. Dies erleichtert den Umstieg auf Linux am
 
Desktop.
 
338
 
Kapitel 8. Internet
 
Abbildung 8-27. Evolution - Startbild
 
Beim ersten Start von Evolution können bestehende Daten, beispielsweise Mails oder Adressen, übernommen
 
werden. Ein Assistent führt durch diesen Vorgang.
 
Abbildung 8-28. Evolution - Willkommen
 
339
 
Kapitel 8. Internet
 
Hier muss zunächst der Vor- und Nachname sowie die E-Mail Adresse angegeben werden. Es gehört zum guten
 
Ton im Netz den tatsächlichen Vor- und Nachnamen anzugeben.
 
Abbildung 8-29. Evolution - Identität
 
Die Einlieferung von E-Mails kann auf verschiedensten Wegen erfolgen. Wenn die E-Mail direkt vom Server
 
des Providers geholt wird, so wird dies meist über eines der Protokolle POP oder IMAP erfolgen. Wenn die
 
Mails über ein externes Programm, wie beispielsweise fetchmail, abgeholt werden, so kann auch auf die
 
lokal vorliegenden Dateien zugegriffen werden.
 
340
 
Kapitel 8. Internet
 
Abbildung 8-30. Evolution - Erhalten von E-Mail
 
Hier kann die Pause zwischen den Überprüfungen nach neuer E-Mail eingestellt werden.
 
Abbildung 8-31. Evolution - Erhalten von E-Mail
 
341
 
Kapitel 8. Internet
 
Um E-Mails zu versenden muss an dieser Stelle ein Mailserver konfiguriert werden. Die notwendigen Daten
 
erhalten Sie von Ihrem Provider.
 
Abbildung 8-32. Evolution - Verschicken von E-Mails
 
Evolution kann verschiedene Zugänge zu mehreren Providern verwalten. Die eben erstellte Konfiguration kann
 
zum Standardzugang gemacht werden.
 
342
 
Kapitel 8. Internet
 
Abbildung 8-33. Evolution - Zugangsverwaltung
 
Stellen Sie hier die Zeitzone ein. Ein Mausklick auf die Karte vergrößert den entsprechenden Ausschnitt.
 
343
 
Kapitel 8. Internet
 
Abbildung 8-34. Evolution - Zeitzone
 
Wenn bereits andere Programmme zum Empfang von E-Mail verwendet wurden, so können hier die
 
vorhandenen Daten importiert werden.
 
344
 
Kapitel 8. Internet
 
Abbildung 8-35. Evolution - Import von Daten
 
Wenn alle Daten erfolgreich eingegeben wurden, so wird Evolution gestartet.
 
345
 
Kapitel 8. Internet
 
Abbildung 8-36. Evolution - Fertig
 
Neben der Menüleiste am oberen Bildschirmrand finden sich innerhalb des Fensters von Evolution auf der
 
linken Seite einige Symbole zum direkten Zugriff auf die einzelnen Komponenten von Evolution.
 
Hier ist zunächst eine Zusammenfassung zu finden, in dieser ist eine Zusammenstellung der wichtigsten
 
Informationen (Anzahl neuer Mails, aktuelle Termine und Aufgaben, Wetter, News...) zu sehen. Auch hier kann
 
wieder direkt durch Mausklick auf die Komponenten zugegriffen werden.
 
346
 
Kapitel 8. Internet
 
Abbildung 8-37. Evolution - Übersicht
 
Die E-Mail Komponente bietet ein geteiltes Fenster, im oberen Bereich ist eine Liste der eingegangenen Mails
 
zu sehen, darunter der Inhalt der ausgewählten Mail. Evolution kann mit Anhängen an E-Mails umgehen, diese
 
werden am Ende der Mail angezeigt und können einzeln „ausgeklappt“ werden. Weiterhin können Mails nicht
 
nur beantwortet sondern auch weitergeleitet werden. Es können verschiedene Ordner angelegt werden um
 
gelesene Mail dort einzusortieren. Über einfach zu definierende Filter, diese können auch automatisch anhand
 
einer E-Mail erzeugt werden, kann eine bessere Übersicht bei hohem Mailaufkommen erreicht werden.
 
Evolution besitzt die Fähigkeit Mails in sogenannten „Threads“ darzustellen. E-Mail Verschlüsselung mittels
 
PGP oder GnuPG wird ebenfalls unterstützt.
 
347
 
Kapitel 8. Internet
 
Abbildung 8-38. Evolution - E-Mail
 
Die Kalenderfunktion bietet verschiedene Ansichten wie „Tag“, „Arbeitswoche“ (Montag-Freitag), „Woche“
 
und „Monat“. Ein Doppelklick auf eine Zeit im Kalender öffnet ein neues Fenster in dem ein neuer Termin
 
definiert werden kann.
 
Abbildung 8-39. Evolution - Kalender
 
348
 
Kapitel 8. Internet
 
8.4. Dateitransfer
 
8.4.1. ftp
 
Um Dateien zwischen verschiedenen Rechnern kopieren zu können, wurde das Protokoll ftp (File Transfer
 
Protocol) geschaffen. Um die Sache nicht unnötig zu verkomplizieren, wurde auch das Kommando für diese Art
 
der Datenübertragung ftp genannt. Sicher kennen Sie schon die Funktion des Downloads von Dateien über
 
einen Webbrowser. Häufig zeigen solche Links auf Webseiten auch direkt auf sogenannte FTP-Server.
 
Unter Debian GNU/Linux können Sie in einer Shell Dateien von einem FTP-Server auf Ihren Rechner kopieren.
 
Das Kommando ftp ist nicht sehr komfortabel, erfüllt aber seinen Zweck. Alternativ können Sie auch das
 
Programm ncftp installieren, welches einige Arbeitsschritte vereinfacht.
 
Hier eine kleine Beispielsitzung mit dem Programm ftp, wir besorgen uns den neuesten Kernel-Patch:
 
fr@debian:~$ ftp ftp.kernel.org
 
Connected to zeus.kernel.org.
 
220 ProFTPD 1.2.0pre10 Server (ProFTPD) [zeus.kernel.org]
 
Name (ftp.kernel.org:fr): ftp
 
331 Anonymous login ok, send your complete e-mail address as password.
 
Password:
 
230- Welcome to the
 
LINUX KERNEL ARCHIVES
 
ftp.kernel.org
 
"Much more than just kernels"
 
IF YOU’RE ACCESSING THIS SITE VIA A WEB BROWSER
 
PLEASE USE THE HTTP URL BELOW INSTEAD!
 
...
 
Starten Sie das Programm ftp und geben Sie gleich dahinter den Namen des Servers an, von dem Sie die Datei
 
kopieren möchten. Alternativ können Sie auch zuerst das Programm ohne Servernamen starten und danach mit
 
dem Befehl open ftp.kernel.org die Verbindung herstellen. Nach kurzer Zeit sollten Sie nach einem
 
Loginnamen gefragt werden. Wenn Sie auf dem Zielrechner über einen eigenen Zugang verfügen und eine
 
Datei aus einem nicht öffentlichen Bereich kopieren möchten, geben Sie hier Ihren Benutzernamen und danach
 
Ihr Paßwort an. Achtung: Bedenken Sie, daß das FTP-Protokoll keinerlei Verschlüsselung von Daten vornimmt!
 
Ihr Benutzername und vor allem auch das Paßwort werden im Klartext übertragen und können unter Umständen
 
von einem Angreifer (Hacker) mitgelesen werden. Wenn Sie Daten aus nicht-öffentlichen Bereichen kopieren
 
möchten, verwenden Sie besser das Kommando scp (Secure Copy) aus dem Paket ssh.
 
Bei einem Zugriff auf einen öffentlichen (public) FTP-Server können Sie immer den Benutzernamen „ftp“ oder
 
„anonymous“ sowie als Paßwort Ihre eigene E-Mail-Adresse verwenden.
 
Nach erfolgreichem Login, erhalten Sie die Meldung, daß es sich bei dem entfernten Rechner um ein
 
Unix-System handelt und daß der Übertragungsmodus auf binäre Übertragung gesetzt wurde. Eine Übertragung
 
von Dateien im Textmodus (ASCII) ist nur in den seltensten Fällen sinnvoll, Sie können auch Textdateien
 
problemlos im Binärmodus übertragen.
 
Sie können nun viele der normalen Kommandos, die Sie bereits aus der normalen Unix-Shell kennen,
 
verwenden:
 
ftp> ls
 
349
 
Kapitel 8. Internet
 
200 PORT command successful.
 
150 Opening ASCII mode data connection for file list.
 
lrwxrwxrwx 1 hpa ftpadmin 18 Nov 5 1999 debian -> pub/mirrors/debian
 
lrwxrwxrwx 1 hpa ftpadmin 21 Nov 9 1999 debian-cd -> pub/mirrors/debian-cd
 
dr-xr-x--- 2 mirrors ftpadmin 4096 Oct 12 1999 for_mirrors_only
 
drwxr-xr-x 7 korg korg 4096 Aug 11 10:19 pub
 
lrwxrwxrwx 1 hpa ftpadmin 18 Nov 8 1999 redhat -> pub/mirrors/redhat
 
lrwxrwxrwx 1 root root 10 Oct 28 1999 welcome.msg -> pub/README
 
226 Transfer complete.
 
ftp> cd /pub/linux/kernel
 
250 CWD command successful.
 
ftp> ls
 
200 PORT command successful.
 
150 Opening ASCII mode data connection for file list.
 
-r--r--r-- 1 korg korg 18458 Mar 12 1994 COPYING
 
-r--r--r-- 1 korg korg 36981 Sep 16 1996 CREDITS
 
drwxr-xr-x 4 korg korg 4096 Oct 5 1999 Historic
 
-r--r--r-- 1 korg korg 12056 Sep 16 1996 README
 
drwxr-xr-x 2 korg korg 4096 Apr 14 11:55 SillySounds
 
drwxr-xr-x 4 korg korg 4096 Jul 10 02:34 crypto
 
drwxr-xr-x 18 korg korg 4096 Aug 7 08:04 people
 
drwxr-xr-x 4 korg korg 4096 Mar 7 10:38 ports
 
drwxr-xr-x 3 korg korg 12288 Aug 17 23:40 testing
 
drwxr-xr-x 2 korg korg 4096 Oct 5 1999 v1.0
 
drwxr-xr-x 2 korg korg 16384 Oct 5 1999 v1.1
 
drwxr-xr-x 2 korg korg 4096 Oct 5 1999 v1.2
 
drwxr-xr-x 2 korg korg 28672 Oct 5 1999 v1.3
 
drwxr-xr-x 2 korg korg 12288 Oct 5 1999 v2.0
 
drwxr-xr-x 2 korg korg 36864 Oct 5 1999 v2.1
 
drwxr-xr-x 2 korg korg 4096 Jun 28 10:52 v2.2
 
drwxr-xr-x 2 korg korg 16384 May 23 15:51 v2.3
 
drwxr-xr-x 2 korg korg 4096 Aug 9 19:26 v2.4
 
226 Transfer complete.
 
ftp> cd v2.4
 
250 CWD command successful.
 
Wie Sie sehen funktionieren die Kommandos ls und cd wie gewohnt. Natürlich können Sie beim Kommando
 
ls auch Wildcards verwenden:
 
ftp> ls L*
 
200 PORT command successful.
 
150 Opening ASCII mode data connection for file list.
 
-rw-r--r-- 1 korg korg 0 Aug 9 19:16 LATEST-IS-2.4.0-test6
 
ftp> ls *test6*
 
200 PORT command successful.
 
150 Opening ASCII mode data connection for file list.
 
-rw-r--r-- 1 korg korg 0 Aug 9 19:16 LATEST-IS-2.4.0-test6
 
-rw-r--r-- 1 korg korg 18106527 Aug 9 19:16 linux-2.4.0-test6.tar.bz2
 
-rw-r--r-- 1 korg korg 248 Aug 9 19:16 linux-2.4.0-test6.tar.bz2.sign
 
-rw-r--r-- 1 korg korg 22299559 Aug 9 19:16 linux-2.4.0-test6.tar.gz
 
-rw-r--r-- 1 korg korg 248 Aug 9 19:16 linux-2.4.0-test6.tar.gz.sign
 
-rw-r--r-- 1 korg korg 450477 Aug 9 19:16 patch-2.4.0-test6.bz2
 
-rw-r--r-- 1 korg korg 248 Aug 9 19:16 patch-2.4.0-test6.bz2.sign
 
-rw-r--r-- 1 korg korg 537149 Aug 9 19:16 patch-2.4.0-test6.gz
 
-rw-r--r-- 1 korg korg 248 Aug 9 19:16 patch-2.4.0-test6.gz.sign
 
226 Transfer complete.
 
ftp> hash
 
Hash mark printing on (1024 bytes/hash mark).
 
ftp> get patch-2.4.0-test6.bz2
 
local: patch-2.4.0-test6.bz2 remote: patch-2.4.0-test6.bz2
 
200 PORT command successful.
 
150 Opening BINARY mode data connection for patch-2.4.0-test6.bz2 (450477 bytes).
 
#########
 
...
 
350
 
Kapitel 8. Internet
 
Hier finden wir gleich mehrere neue Kommandos: hash schaltet die Anzeige des Übertragungsfortschrittes ein,
 
für 1024 Byte wird ein Zeichen „#“ gesetzt. Wenn Sie nun die Datei patch-2.4.0-test6.bz2 auf Ihren
 
Rechner übertragen wollen, benutzen Sie hierzu das Kommando get mit dem gewünschten Dateinamen. Wenn
 
Sie mehrere Dateien nacheinander übertragen wollen, können Sie das Kommando mget verwenden, hierbei
 
können Sie Wildcards verwenden.
 
Natürlich können Sie auch Dateien von Ihrem Rechner zu einem entfernten Rechner übertragen, hierzu dient
 
das Kommando put beziehungsweise mput. Beachten Sie hierbei, daß Sie normalerweise nicht in jedes
 
beliebige Verzeichnis auf einem FTP-Server schreiben dürfen. Eine Übertragung von Dateien auf einen Server
 
setzt immer die passenden Zugriffsrechte voraus.
 
Wenn Sie ein wenig mit dem „klassischem“ FTP gearbeitet haben, werden Sie bemerken, daß es nicht sehr
 
komfortabel zu handhaben ist, hier kommt als textbasierte Alternative das Programm ncftp oder eine grafische
 
Variante ins Spiel.
 
8.4.2. ncftp
 
Das Paket ncftp ist ein sehr leistungsfähiger Ersatz für das ursprüngliche Programm ftp und besteht neben
 
dem eigentlichen Programm zur Datenübertragung (ncftp) noch aus den Programmen: ncftpget, ncftpput
 
und ncftpls sowie ncftpbookmark (zur Verwaltung von Lesezeichen) und ncftpbatch (um größere
 
Downloads zu organisieren).
 
8.4.2.1. ncftp
 
Natürlich verfügt ncftp über alle Funktionen, die Sie von ftp kennen. Sehr praktisch ist, daß Sie, wie Sie es
 
aus der Standard-Debian GNU/Linux-Shell kennen, Dateinamen mit der TAB-Taste vervollständigen können
 
und Kommandos noch einmal über die Cursortasten aufrufen und verändern können.
 
Wenn ncftp gestartet ist, erhalten Sie mit dem Kommando help eine Übersicht der Kommandos. Geben Sie
 
hinter dem Kommando help an, zu welchem Kommando Sie eine Hilfe wünschen. Das Kommando help
 
showall zeigt noch einige weitere Kommandos.
 
8.4.2.2. ncftpput / ncftpget
 
Diese beiden Kommandos sind eine Schnittstelle zu ncftp und können über Scripte gesteuert werden.
 
8.4.2.3. ncftpls
 
Mit diesem Programm können Sie sich den Inhalt eines FTP-Servers ansehen, ohne ein interaktives Programm
 
starten zu müssen.
 
8.4.3. gFTP
 
Eine sehr leistungsfähige Alternative zu der Kommandozeilen-Version des Programms ftp stellt das Programm
 
gFTP dar. Sie müssen sich hierbei nicht um die diversen Kommandos kümmern und können, ähnlich wie bei
 
einem Dateimanager, Dateien oder Verzeichnisse kopieren.
 
351
 
Kapitel 8. Internet
 
Abbildung 8-40. GNOME FTP
 
gFTP ist so programmiert, daß Sie mehrere FTP-Verbindungen gleichzeitig öffnen können (multithreaded) und
 
somit nicht warten müssen, bis ein Download beendet ist, um einen weiteren zu beginnen. Praktisch ist auch,
 
daß Sie Dateien von FTP- oder HTTP-Servern (Webserver) downloaden können. gFTP unterstützt weiterhin den
 
Download von kompletten Verzeichnissen, und abgebrochene Downloads können fortgesetzt werden.
 
Weitere Funktionen von gFTP sind:
 
• Lesezeichen zum schnellen Zugriff auf Server
 
• „Caching“ von Verzeichnissen
 
• „Drag & Drop“-Unterstützung
 
• Verbindung auch per Kommandozeile: gftp user:pass@ftp-site:port/directory
 
• Ansehen und Verändern von Dateien auf dem Server
 
• Oberfläche in vielen Sprachen, auch deutsch
 
8.5. Eigene Homepage
 
Viele Provider bieten Ihren Kunden einige Megabyte Festplattenplatz für die eigene Homepage an. Das im
 
WWW (World Wide Web) verwendete Format für diese Seiten nennt sich HTML (Hypertext Markup
 
Language). Die Namen der Dateien enden üblicherweise auf .html und können mit jedem beliebigen
 
Texteditor erzeugt werden.
 
Es schadet nichts, wenn Sie sich mit der Syntax von HTML-Dateien beschäftigen, eine erstklassige Referenz
 
finden Sie unter: http://www.teamone.de/selfaktuell/ , die Dokumentation ist aber auch als Debian-Paket
 
(selfhtml) verfügbar.
 
Wenn Sie sich nicht so sehr für die Internas des HTML-Standards interessieren, können Sie auch einen der
 
nachfolgend bechriebenen HTML-Editoren verwenden.
 
352
 
Kapitel 8. Internet
 
8.5.1. Bluefish
 
Auch mit bluefish sollten Sie sich ein wenig in der HTML-Syntax auskennen, da Sie mit bluefish die Seite
 
im HTML-Quellcode sehen und verändern können. Hier eine Übersicht der wichtigsten Funktionen:
 
• „Wizards“ zur Unterstützung bei der Erstellung von Seiten, Tabellen, Frames usw. ...
 
• Öffnen von Dateien direkt aus dem Web
 
• Erzeugen von verkleinerten Grafiken und Erzeugen von passenden Links zur Originalgrafik
 
• Erstellen von eigenen Werkzeugleisten
 
• Projekt-Management
 
• Referenz für PHP3, SSI und RXML
 
• CSS-Dialog
 
• Referenz für PHP3, SSI und RXML
 
• Syntax highlighting
 
Abbildung 8-41. Bluefish
 
Die Webseite zu Bluefish ist unter der URL http://bluefish.openoffice.nl/ zu finden.
 
Wenn Sie einen Text markieren und eine Funktion auswählen, so wird dieser Text von dem gewählten
 
HTML-Code umschlossen. Wenn kein Text markiert ist, wird der HTML-Code eingefügt und der Cursor
 
zwischen Start- und Endemarkierung des Codes positioniert.
 
Aus dem Menü können Sie alle im HTML-3.2-Standard definierten Sonderzeichen per Mausklick einbinden.
 
HTML 4.0 läßt eine unbegrenzte Anzahl von Sonderzeichen zu, so daß auf diese Einbindung verzichtet wurde.
 
CSS (cascading style sheets) werden in der Version 1 unterstützt, CSS2 wird auch von der Seite der meisten
 
Browser nicht unterstützt.
 
353
 
Kapitel 8. Internet
 
Bluefish speichert die Farben, URLs, Fonts usw. je angelegtem Projekt. Wenn Sie ein Projekt öffnen, finden Sie
 
alle Einstellungen wie bei der letzten Sitzung vor. Sie können diese über den Projekt-Editor verändern.
 
8.5.2. Netscape Composer
 
Einen Schritt weiter geht der Netscape Composer. In diesem können Sie, wie in einer Textverarbeitung, die Seite
 
direkt verändern. Sie sehen also sofort, wie die Seite später aussieht, ohne erst einen Browser starten zu müssen.
 
Abbildung 8-42. Netscape Composer
 
Wenn Sie schon mal mit einer modernen Textverarbeitung gearbeitet haben, werden Sie auch sehr schnell mit
 
dem Netscape Composer eine eigene Homepage erzeugen können.
 
8.5.3. Screem
 
screem ist ein Programm zum Erstellen und Verwalten von Webseiten. HTML Tags können sehr leicht über
 
eine Liste eingefügt werden, das Erstellen von Tabellen oder Styles wird durch Werkzeuge unterstützt. screem
 
benutzt Plugins und kann so leicht erweitert werden. screem basiert auf GNOME und GTK+.
 
354
 
Kapitel 8. Internet
 
Abbildung 8-43. Screem
 
8.5.3.1. Editor
 
Der eingebaute Editor hat eine Reihe nützlicher Funktionen, welche das Erstellen von Seiten vereinfachen.
 
• Syntax highlighthing - Im Editor werden alle HTML Tags farbig markiert. So können Sie schnell
 
zusammenhängende Start- und Endtags erkennen. Tags werden gruppiert, Sie können eine Vorder- und
 
Hintergrundfarbe für jede Gruppe wählen.
 
• Inline tagging - Wenn Sie mit der Maus über einem Tag stehen, steht Ihnen ein PopUp Menü mit allen in
 
diesem Tag erlaubten HTML-4.0-Attributen zur Verfügung. Sie erreichen dieses Menü wie folgt: Der Cursor
 
steht innerhalb eines Tags, direkt vor der schließenden spitzen Klammer, wenn Sie nun die Taste SPACE
 
drücken, erscheint das Menü. Sie können nun einen Eintrag aus dem Menü wählen, oder einfach
 
weitertippen, das Menü verschwindet dann wieder. Diese Option ist im Normalfall deaktiviert, Sie können sie
 
in den Voreinstellungen einschalten.
 
• Context sensitive menu - Ein Klick mit der rechten Maustaste irgendwo im Editorfenster öffnet ein Menü. Sie
 
können hier Seiten speichern, neue Seiten erzeugen, auf die „Edit“ und CVS-Menüs zugreifen sowie
 
nützliche Programme und Plugins starten. Zwei weitere Optionen erscheinen, wenn sich der Mauszeiger über
 
einem Tag befindet. Hinter „TAG NAME“ verbirgt sich das zuvor beschriebene „inline tagging“, hinter „Tag
 
Attributes“ steckt ein Dialog, in dem Sie alle Attribute des Tags verändern können. Wenn Sie ein
 
Java-Dokument geladen haben, sehen Sie ein hierzu passendes Menü.
 
• Auto completion - Wenn Sie das Zeichen < eingeben, wird versucht den Tag zu vervollständigen, bis Sie das
 
Zeichen > eingeben.
 
• Auto entity insertion - Wenn Sie Zeichen eingeben die nicht Teil des normalen ASCII-Zeichensatzes sind,
 
beispielsweise Umlaute, so werden diese automatisch in entsprechende HTML-Syntax umgesetzt.
 
355
 
Kapitel 8. Internet
 
8.5.3.2. Drag & Drop
 
screem unterstützt Drag & Drop innerhalb des Programms wie auch extern, beispielsweise aus dem
 
Dateimanager heraus. Drag & Drop kennen Sie sicher, so daß ein Objekt mit der linken Maustaste gehalten wird
 
und im Fenster abgelegt wird. Dieses fügt den relativen Dateinamen in das Dokument ein.
 
Wenn Sie das Objekt mit der mittleren Maustaste ablegen, haben Sie einige weitere Optionen:
 
• Insert relative filename - Konvertiert den gesamten Pfadnamen der Datei in einen relativen Pfad zum
 
aktuellen Dokument.
 
• Insert complete filename - Fügt den kompletten Pfadnamen ein.
 
• Insert Tag - Dies fügt einen HTML-Tag ein, abhängig vom Dateityp. Bei einer HTML-Datei wird ein Link
 
erzeugt. Bei einer Grafik wird diese als Image-Tag eingefügt. Wenn der Dateityp nicht erkannt wird, wird ein
 
Link zu der Datei erzeugt.
 
• Insert tag attribute - Wenn Sie beispielsweise aus der Farbpalette eine Farbe in einen Tag ziehen, so wird
 
dieser um color= mit der entsprechenden Farbe ergänzt.
 
• Insert inline - hier wird der Inhalt der Datei, also beispielweise ein Text, direkt in die Datei eingefügt.
 
8.5.3.3. Preview
 
screem kann direkt die erstellten Seiten anzeigen, Sie benötigen kein externes Programm. Momentan benutzt
 
screem hierzu GtkXmHtml, ein Teil von GTK+. Leider unterstützt dieses mehr HTML 3.2 und nicht komplett
 
HTML 4.0. Dies wird in Zukunft wahrscheinlich auf Mozilla umgestellt, so daß sich bestehende Probleme dann
 
erledigen. Sie können aber auch einen externen Browser benutzen, bis dies so weit ist.
 
8.5.3.4. External Browsers
 
Wenn Sie einen externen Browser benutzen, können Sie zwischen 3 verschiedenen Browsern wählen. Der vierte
 
ist der Standard-GNOME-Browser, normalerweise ist dies Netscape, dies können Sie aber über die
 
GNOME-Einstellungen definieren.
 
Bei einem externem Browser müssen Sie zuerst Ihre Seite speichern, um die Veränderung zu sehen.
 
Die drei frei definierbaren Browser sind noch nicht belegt, bei der ersten Auswahl können Sie die nötigen
 
Programmnamen in einem Dialog festlegen. Wenn Sie einen dieser Browser nachträglich ändern wollen,
 
klicken Sie mit der rechten Maustaste auf das Icon in der Symbolleiste.
 
8.5.3.5. Dateibaum
 
Dateibaum wird nur verwendet, wenn Sie an einer kompletten Site arbeiten, nicht an einer einzelnen Seite. Sie
 
können damit Dateien in den Editor laden oder über externe Programme darauf zugreifen. Auch können Sie
 
Dateien kopieren, umbenennen und verschieben.
 
Wenn Sie an einem Projekt arbeiten und einen Link verändern (zum Beispiel indem Sie eine Datei
 
umbenennen), müssen Sie sich nicht durch alle Dateien einzeln wühlen, screem erledigt dies für Sie in allen
 
zur Site gehörenden Dateien.
 
Wenn Sie mit der rechten Maustaste auf den Dateibaum klicken, erhalten Sie ein Menü, über das Sie neue, leere
 
Seiten erzeugen, Dateien und Verzeichnisse löschen oder umbenennen können oder auch Dateien öffnen
 
können.
 
356
 
Kapitel 8. Internet
 
8.5.3.6. „Tag“baum
 
Über diese Funktion können Sie schnell auf alle HTML-Funktionen zugreifen. Wenn Sie zusätzlich Bluefish
 
installiert haben, so können Sie auch auf PHP3, RXML und SSI-Funktionen zugreifen.
 
Die Einträge in dieser Liste werden aus der Datei /usr/lib/screem/screem.tagtree gelesen. Sie können
 
diese mit einem Editor ergänzen. Wenn Sie eine Datei $HOME/.screem/.tagtree anlegen und dort
 
Ergänzungen vornehmen, werden diese an die Liste angehängt.
 
Wenn Sie auf eine Funktion klicken, so wird diese eingefügt und der Cursor zwischen Start- und Endtag
 
positioniert. Wenn Sie vorher einen Text markiert haben, wird dieser von dem Tag eingeschlossen.
 
8.5.3.7. Upload Wizard
 
Mit dem Upload Wizard können Sie sehr leicht Ihre Seiten im Netz aktualisieren. Zunächste müssen Sie die
 
Adresse, die Übertragungsmethode, Pfad, Usernamen und Paßwort angeben. Der Upload Wizard benutzt das
 
Programm sitecopy, beachten Sie bitte, daß deshalb auch die nötigen Daten im Verzeichnis .sitecopy
 
gespeichert werden.
 
8.5.3.8. Image Wizard
 
Der Image Wizard unterstützt Sie beim Einfügen von Bildern in Ihre Webseiten. Neben einer Vorschau vor dem
 
Einfügen der Grafik wird die Originalgröße (in Pixeln und Byte) angezeigt. Weiterhin können automatisch
 
Verkleinerungen der Grafik erzeugt werden und auf Wunsch wird die Grafik auch an eine passende Stelle
 
kopiert.
 
8.5.3.9. Gallery Wizard
 
Hiermit können Sie eine Bildergalerie aus einem Verzeichnis mit Bildern erzeugen. Sie können angeben, wie
 
viele Zeilen und Spalten auf einer Seite erscheinen sollen, wenn nötig werden automatisch mehrere Seiten
 
angelegt und passende Links erzeugt. Zu jedem Bild wird eine verkleinerte Version erstellt, mit einem
 
Mausklick auf diese sehen Sie die Grafik in der Originalgröße.
 
Sie können diese Funktion benutzen, ohne eine Seite oder ein Projekt geöffnet zu haben.
 
8.6. Verschlüsselung
 
8.6.1. PGP
 
PGP – Pretty Good Privacy (in deutsch etwa: ziemlich gute Privatsphäre) – war lange Jahre der Standard zur
 
Verschlüsselung und wurde hauptsächlich zur Verschlüsselung von E-Mails verwendet (obwohl sich auch
 
andere Daten damit verschlüsseln lassen). PGP benutzt ein Verfahren mit digitalen Schlüsseln und ermöglicht
 
damit einen sicheren Austausch von Daten zwischen Personen, die sich noch nie getroffen haben. Durch die
 
Verfügbarkeit der Quellcodes wurde PGP von Entwicklern in der ganzen Welt auf so ziemlich jedes
 
Betriebssystem portiert.
 
PGP verwendet die Algorithmen IDEA und RSA, die leider lange Zeit durch Softwarepatente geschützt waren.
 
Diese Tatsache führte zur Entwicklung einer komplett freien Alternative, deren Entwicklung mittlerweile soweit
 
fortgeschritten ist, daß wir auf eine weitere Beschreibung von PGP verzichten möchten und auf GnuPG
 
verweisen. Mittlerweile ist dieses Patent aber abgelaufen, so das auch GPG die RSA Verschlüsselung nutzen
 
kann.
 
357
 
Kapitel 8. Internet
 
8.6.2. GnuPG
 
GnuPG steht für „GNU Privacy Guard“ und ist ein kompletter, freier Ersatz für PGP. Die Algorithmen IDEA
 
oder RSA werden nicht benutzt, so daß GnuPG ohne Einschränkungen benutzt werden kann. GnuPG
 
implementiert den OpenPGP-Standard, der aus den Datenformaten von PGP 5.x und 6.x entwickelt wurde. Die
 
Homepage von GnuPG finden Sie unter folgender URL: http://www.gnupg.org/de/gnupg.html.
 
Folgende Eigenschaften zeichnen GnuPG aus:
 
• Vollständiger PGP-Ersatz.
 
• Es werden keine patentierten Verfahren verwendet.
 
• GPL - GNU Public Lizenz.
 
• Kann als Filterprogramm verwendet werden.
 
• Vollständige OpenPGP-Implementierung.
 
• Gegenüber PGP erweiterte Funktionalität und Sicherheitserweiterungen.
 
• Ver- und entschlüsselt PGP-5.x-Daten.
 
• ElGamal (unterschreiben und verschlüsseln), DSA, 3DES, Blowfish, Twofish, CAST5, MD5, SHA-1.
 
• RIPE-MD-160 und TIGER werden unterstützt.
 
• Einfache Implementierung neuer Verfahren durch Erweiterungsmodule.
 
• Benutzer-ID wird im Standardformat erzeugt.
 
• Unterstützung für Schlüsselverfallsdatum.
 
• Benutzerführung in Englisch, Französisch, Deutsch, Italienisch, Polnisch, brasilianischem Portugiesisch,
 
Russisch und Spanisch.
 
• Online-Hilfe.
 
• Wahlweise anonyme Adressaten.
 
• Eingebaute Unterstützung für Schlüsselserver (http://wwwkeys.pgp.net).
 
Um verschlüsselte E-Mails austauschen zu können, müssen Sie sich zuerst ein eigenes Schlüsselpaar, bestehend
 
aus einem privaten und einem öffentlichen Schlüssel, erzeugen. Mit einem geeigneten Mailprogramm (dieses
 
muß die Verschlüsselung von Mails per PGP/GnuPG unterstützen, mutt oder spruce sind dazu in der Lage)
 
können Sie dann verschlüsselte Mail austauschen. Lassen Sie sich von Ihrem Mailpartner hierzu seinen
 
öffentlichen Schlüssel (public key) zuschicken und schicken Sie ihm im Gegenzug Ihren .
 
Sie können nun Mails mit Ihrem privaten Schlüssel und dem öffentlichen Schlüssel Ihres Partners verschlüsseln.
 
Im Gegenzug kann dieser die von Ihnen verschlüsselte Mail nur mit seinem privaten und Ihrem öffentlichen
 
Schlüssel entschlüsseln.
 
Dieses Verfahren schützt jedoch noch nicht vor gefälschten Schlüsseln. Um sicherzugehen, daß ein öffentlicher
 
Schlüssel auch wirklich von der entsprechenden Person stammt, können Sie Ihren Schlüssel von verschiedenen
 
Leuten unterschreiben (signieren) lassen. Hierzu müssen Sie sich persönlich mit Leuten treffen, die
 
GnuPG/PGP einsetzen und dieser Person Ihren öffentlichen Schlüssel übergeben (auf Diskette) sowie sich
 
ausweisen. Wenn Sie niemanden kennen, der GnuPG/PGP einsetzt, wenden Sie sich an eine Linux User Group
 
in Ihrer Nähe, dort finden Sie mit Sicherheit jemanden, der Wert auf sichere Kommunikation legt. Eine weitere
 
Möglichkeit bietet die Zeitschrift c’t an. Auf größeren Messen wie der CeBIT bietet die c’t ebenfalls die
 
Gelegenheit, Schlüssel zu signieren (http://www.heise.de/ct/pgpCA/).
 
Mit dem Kommando gpg --gen-key erzeugen Sie sich ein neues Schlüsselpaar.
 
bash-2.03$ gpg --gen-key
 
gpg (GnuPG) 0.9.3; Copyright (C) 1999 Free Software Foundation, Inc.
 
This program comes with ABSOLUTELY NO WARRANTY.
 
This is free software, and you are welcome to redistribute it
 
under certain conditions. See the file COPYING for details.
 
358
 
Kapitel 8. Internet
 
gpg: Warnung: Sensible Daten könnten auf Platte ausgelagert werden.
 
Um dies zu vermeiden, kann das Programm suid(root) installiert werden.
 
Bitte wenden Sie sich hierzu an den Systemadministrator.
 
gpg: /home/fr/.gnupg: Verzeichnis erzeugt
 
gpg: /home/fr/.gnupg/options: neue Optionendatei erstellt
 
gpg: /home/fr/.gnupg/secring.gpg: Schlüsselbund erstellt
 
gpg: /home/fr/.gnupg/pubring.gpg: Schlüsselbund erstellt
 
gpg: /home/fr/.gnupg/trustdb.gpg: trust-db erzeugt
 
Bitte wählen Sie, welche Art von Schlüssel Sie möchten:
 
(1) DSA und ElGamal (voreingestellt)
 
(2) DSA (nur signieren/beglaubigen)
 
(4) ElGamal (signieren/beglaubigen und verschlüsseln)
 
Ihre Auswahl?
 
Sie können hier zwischen verschiedenen Schlüsseln wählen, die voreingestellten Werte sind aber auf jeden Fall
 
sinnvoll. Sie sollten diese einfach akzeptieren.
 
Der DSA Schlüssel wird 1024 Bits haben.
 
Es wird ein neues ELG-E Schlüsselpaar erzeugt.
 
kleinste Schlüssellänge ist 768 Bit
 
standard Schlüssellänge ist 1024 Bit
 
größte sinnvolle Schlüssellänge ist 2048 Bit
 
Welche Schlüssellänge wünschen Sie? (1024)
 
Hier können Sie die Länge des zu erzeugenden Schlüssels festlegen. Längere Schlüssel sind schwerer zu
 
„knacken“, allerdings benötigen diese auch etwas mehr Zeit, wenn man mit Ihnen arbeitet. 1024 Bit sind ein
 
sinnvoller Wert.
 
Die verlangte Schlüssellänge beträgt 1024 Bit
 
Bitte wählen Sie, wie lange der Schlüssel gültig bleiben soll.
 
0 = Schlüssel verfällt nie
 
<n> = Schlüssel verfällt nach n Tagen
 
<n>w = Schlüssel verfällt nach n Wochen
 
<n>m = Schlüssel verfällt nach n Monaten
 
<n>y = Schlüssel verfällt nach n Jahren
 
Der Schlüssel bleibt wie lange gültig? (0)
 
GnuPG unterstützt auch ein Verfallsdatum bei Schlüsseln. Vielleicht möchten Sie ja für die Mitarbeiter in Ihrer
 
Firma mit Zeitverträgen verhindern, daß diese den Schlüssel auch später noch verwenden können. Für Ihren
 
privaten Schlüssel benötigen Sie ein solches Verfallsdatum im Normalfall nicht.
 
Der Schlüssel verfällt nie.
 
Ist dies richtig? (j/n) j
 
Sie ben&ouml;tigen eine User-ID, um Ihren Schlüssel eindeutig zu machen; das
 
Programm baut diese User-ID aus Ihrem echten Namen, einem Kommentar und
 
Ihrer E-Mail-Adresse in dieser Form auf:
 
"Heinrich Heine (Der Dichter) <heinrichh@duesseldorf.de>"
 
Ihr Name ("Vorname Nachname"): Frank Ronneburg
 
E-Mail-Adresse: fr@leenuks.de
 
Kommentar:
 
Sie haben diese User-ID gewählt:
 
"Frank Ronneburg <fr@leenuks.de>"
 
Ändern: (N)ame, (K)ommentar, (E)-Mail oder (F)ertig/(B)eenden? f
 
Geben Sie hier mindestens Ihren Namen und Ihre E-Mail Adresse ein.
 
Sie ben&ouml;tigen ein Mantra, um den geheimen Schlüssel zu schützen.
 
Geben Sie das Mantra ein:
 
Geben Sie das Mantra nochmal ein:
 
359
 
Kapitel 8. Internet
 
Sie benötigen nun noch ein „Mantra“, also ein Paßwort für Ihren privaten, geheimen Schlüssel.
 
Wir müßen eine ganze Menge Zufallszahlen erzeugen. Sie können dies
 
unterstützen, indem Sie z.B. in einem anderen Fenster/Konsole irgendetwas
 
tippen oder irgendwelche anderen Programme benutzen.
 
+++++.....+++++...............+++++......++++++++++.......+++++..................
 
+++++...........+++++....++++++++++++++++++++.+++++...+++++......................
 
..+++++....+++++....++++++++++++++++++++...+++++.+++++.....+++++..+++++...+++++..
 
......+++++>+++++.+++++.....................+++++
 
Wir müßen eine ganze Menge Zufallszahlen erzeugen. Sie können dies
 
unterstützen, indem Sie z.B. in einem anderen Fenster/Konsole irgendetwas
 
tippen oder irgendwelche anderen Programme benutzen.
 
.++++++++++......+++++........++++++++++.........................+++++.....++++++
 
++++.+++++.+++++......+++++.+++++++++++++++.....+++++......+++++.+++++...+++++...
 
..................+++++.+++++....+++++...........++++++++++.......++++++++++.....
 
....+++++>........+++++............>..+++++..<.........+++++........>.....+++++..
 
...................+++++^^^
 
Öffentlichen und geheimen Schlüssel erzeugt und signiert.
 
bash-2.03$
 
GnuPG erzeugt nun aus Ihren Angaben ein Schlüsselpaar und legt dieses im Verzeichniss .gnupg in Ihrem
 
Homeverzeichnis ab. Damit ist die eigentliche Erzeugung des Schlüssels schon abgeschlossen.
 
8.6.2.1. GnuPG Schlüsselverwaltung
 
In diesem Abschnitt werden die grundlegenden Schritte der Schlüsselverwaltung beschrieben. Eine ausführliche
 
Anleitung, auch zu allen anderen Funktionen von GnuPG, finden Sie in der deutschen Übersetzung des „GNU
 
Privacy Handbook“ unter http://www.gnupg.org/gph/de/manual/.
 
8.6.2.1.1. Austauschen von Schlüsseln
 
Um mit anderen zu kommunizieren, müssen Sie untereinander Ihre öffentlichen Schlüssel austauschen. Dies
 
kann per E-Mail, über einen Key-Server oder auch per persönlicher Übergabe erfolgen. Zum Auflisten der
 
Schlüssel in Ihrem öffentlichen Schlüsselbund verwenden Sie die Befehlszeilen-Option --list-keys.
 
fr@surimi:~$ gpg --list-keys
 
/home/fr/.gnupg/pubring.gpg
 
---------------------------
 
pub 1024D/887EB817 2000-12-12 Frank Ronneburg <fr@leenuks.de>
 
sub 1024g/B91B2CCC 2000-12-12
 
pub 768R/3B54E019 1996-02-14 Frank Ronneburg <fr@hoshi.in-berlin.de>
 
Wenn Sie bereits weitere öffentliche Schlüssel, oder weitere IDs, hinzugefügt haben wird diese Liste länger
 
ausfallen. Beispielhaft findet sich in dieser Auflistung auch ein alter PGP-Key.
 
8.6.2.1.2. Exportieren eines öffentlichen Schlüssels
 
Um jemandem Ihren öffentlichen Schlüssel zu schicken, müssen Sie diesen zunächst exportieren. Hierzu
 
benutzt man die Kommandozeilen-Option --export. Zur Indentifikation des zu exportierenden öffentlichen
 
Schlüssels dient entweder die Schlüssel-ID oder irgendein Teil der Benutzer-ID.
 
gpg --output Ronneburg.gpg --export Ronneburg
 
Der Schlüssel wird in einem binären Format exportiert, doch kann dies unerwünscht sein, wenn Sie den
 
Schlüssel per E-Mail verschicken oder auf einer WWW-Seite veröffentlichen wollen. GnuPG unterstützt daher
 
360
 
Kapitel 8. Internet
 
die Kommandozeilen-Option --armor die bewirkt, daß der Output im ASCII-Format ausgegeben wird. (Im
 
Allgemeinen kann jeder Output von GnuPG - beispielsweise Schlüssel, verschlüsselte Dokumente oder
 
Unterschriften - im ASCII-Format dargestellt werden, indem man die --armor-Option hinzufügt.)
 
fr@surimi:~$ gpg --armor --export Ronneburg
 
-----BEGIN PGP PUBLIC KEY BLOCK-----
 
Version: GnuPG v1.0.4 (GNU/Linux)
 
Comment: Weitere Infos: siehe http://www.gnupg.org
 
mQGiBDo2SPYRBACkgxUYL30WWgBFybJWKc8eENKDC/8fWbmsKLVFlmvayYu8ykeW
 
GiiUvh6zKhidoa7Vve796kq9N1v5VRvy4qKDMUvLlLA/4k4OHZg0rKcQIIOzuGba
 
d3dGGCUcNqFYjlgnML2NP40+Kr4Rs6MAWk7gqZ4IofP4n9VmgOil1WzMmwCghZMB
 
orTO/atjGfWz/m30IgbpSisD/iw6mKPYdz7PJB50jCn6bpZt7dFAaQVJrlfSPS4J
 
iRUGPghVEPSfNtNd3N1PymRWv3j1CYC41Nl92wxLI8QFXdQv44smNdao7YDSdpkR
 
4+y+pWBCeitXqCj/9eVOVGvEM+mLmsvpg/M/qa6a+EF/iJW+3Mb63xmrumeHGBD6
 
GUllA/0f7B9u2Hqx4078QWZmxycpD8XI43Yq3r1pkHb28BryMi6tE/qkfsgxywlD
 
Blnl6WTpzBxgsMLdm7BNz/B41fk8AnCAtnftoOa8+Q0TKodrDtLkrXdW0z0RltNZ
 
...
 
2NSr7iQUlIhGBBgRAgAGBQI6Nkj6AAoJEF+d1jKIfrgXJBwAnj038AMs+feNTOyP
 
qkdlhcd+kHHTAJ0dKZe7keaAIJkz4FJQhBhrk/bHpw==
 
=yDka
 
-----END PGP PUBLIC KEY BLOCK-----
 
8.6.2.1.3. Importieren eines öffentlichen Schlüssels
 
Ein öffentlicher Schlüssel kann zu Ihrem öffentlichen Schlüsselbund hinzugefügt werden, und zwar mit
 
folgender Option: --import
 
fr@surimi:~$ gpg --import /tmp/frank.gpg
 
gpg: Schlüssel 887EB817: Öffentlicher Schlüssel importiert
 
gpg: Anzahl insgesamt bearbeiteter Schlüssel: 1
 
gpg: importiert: 1
 
8.6.2.1.4. Bearbeiten eines Schlüssels
 
Wenn ein Schlüssel einmal importiert ist, sollte er auf Authentizität überprüft werden. GnuPG arbeitet mit einem
 
wirksamen und flexiblen Vertrauensmodell, bei dem Sie nicht jeden Schlüssel persönlich zu authentifizieren
 
brauchen, den Sie importieren. Einige Schlüssel können dies jedoch erfordern. Ein Schlüssel wird dadurch
 
authentifiziert, daß Sie den Fingerabdruck des Schlüssels überpüfen und dann den Schlüssel unterschreiben, um
 
seine Gültigkeit zu bestätigen. Der Fingerabdruck eines Schlüssels kann schnell mit der Befehlszeilen-Option
 
--fingerprint geprüft werden, um aber den Schlüssel zu bestätigen, müssen Sie ihn editieren.
 
fr@surimi:~$ gpg --edit-key Borgert
 
gpg (GnuPG) 1.0.4; Copyright (C) 2000 Free Software Foundation, Inc.
 
This program comes with ABSOLUTELY NO WARRANTY.
 
This is free software, and you are welcome to redistribute it
 
under certain conditions. See the file COPYING for details.
 
pub 1024R/9B668109 erstellt: 1998-06-28 verfällt: never Vertrauen: -/q
 
(1) W. Borgert <debacle@knorke.in-berlin.de>
 
Befehl> fpr
 
pub 1024R/9B668109 1998-06-28 W. Borgert <debacle@knorke.in-berlin.de>
 
361
 
Kapitel 8. Internet
 
Fingerabdruck: 6F 74 32 AB 53 DD 09 F1 3B 69 E6 3F 79 8A 70 53
 
Um den Fingerabdruck zu überprüfen, müssen Sie den Eigentümer des Schlüssels kontaktieren und die
 
Fingerabdrücke vergleichen. Sie können persönlich oder per Telefon mit ihm sprechen oder auf beliebigem
 
anderen Wege kommunizieren, solange nur garantiert ist, daß es sich um den rechtmäßigen Eigentümer handelt.
 
Stimmen beide Fingerabdrücke überein, dann können Sie sicher sein, daß Sie eine echte Kopie des öffentlichen
 
Schlüssels haben.
 
Nach dem Prüfen des Fingerabdrucks können Sie den Schlüssel unterschreiben, um ihn zu authentifizieren. Da
 
die Schlüsselüberprüfung ein Schwachpunkt in der Kryptographie mit öffentlichem Schlüssel ist, sollten Sie
 
äußerste Sorgfalt walten lassen und den Fingerabdruck eines Schlüssels immer gemeinsam mit dem Eigentümer
 
prüfen, bevor Sie den Schlüssel unterschreiben.
 
Befehl> sign
 
pub 1024R/9B668109 erstellt: 1998-06-28 verfällt: never Vertrauen: -/q
 
Fingerabdruck: 6F 74 32 AB 53 DD 09 F1 3B 69 E6 3F 79 8A 70 53
 
W. Borgert <debacle@knorke.in-berlin.de>
 
Sind Sie wirklich sicher, daß Sie vorstehenden Schlüssel mit Ihrem
 
Schlüssel beglaubigen wollen: "Frank Ronneburg <fr@leenuks.de>"
 
Wirklich unterschreiben?
 
Sie können sich jederzeit vergewissern, welche Unterschrift Sie hinzugefügt haben. Jede Benutzer-ID auf dem
 
Schlüssel hat dann sowohl eine oder mehrere Eigenbeglaubigungen als auch eine Unterschrift von jedem
 
Benutzer, der den Schlüssel authentifiziert hat.
 
Befehl> check
 
uid Frank Ronneburg <fr@leenuks.de>
 
sig! 887EB817 2000-12-12 [Eigenbeglaubigung]
 
sig! 9B668109 2001-01-26 W. Borgert <debacle@knorke.in-berlin.de>
 
sig! 801EA932 2001-04-02 Martin Schulze <joey@infodrom.north.de>
 
sig! 13282FF2 2000-12-18 Werner Heuser (none) <wehe@debian.org>
 
sig! EF439690 2000-12-21 Michael Piefel <piefel@informatik.hu-ber
 
sig! 258D8781 2001-03-31 Michael Bramer <grisu@debian.org>
 
sig! DA4A1116 2001-04-04 Bernhard Reiter <bernhard@intevation.de>
 
sig! 86574ACA 2001-04-04 Georg C. F. Greve <greve@gnu.org>
 
sig! 496A1827 2001-04-06 Sebastian Rittau <srittau@jroger.in-berl
 
sig! 9C6D5E59 2001-04-10 Karl Bartel <karlb@gmx.net>
 
Befehl>
 
8.6.2.1.5. Schlüsselverteilung
 
Im Idealfall wird ein Schlüssel durch persönliche Übergabe an Ihre Korrespondenzpartner weitergegeben. In der
 
Praxis werden jedoch Schlüssel oft per E-Mail oder irgendein anderes elektronisches Kommunikationsmittel
 
weitergegeben. Die Weitergabe per E-Mail ist durchaus annehmbar, wenn Sie nur einige wenige
 
Korrespondenzpartner haben. Wenn Sie viele Korrespondenzpartner haben, könnten Sie beispielsweise Ihre(n)
 
öffentlichen Schlüssel auf Ihrer Homepage im Web publizieren. Das setzt jedoch voraus, daß Ihre
 
Korrespondenzpartner auch wissen, wo sie Ihre(n) Schlüssel finden können.
 
Um dieses Problem zu lösen, gibt es Key-Server, die öffentliche Schlüssel sammeln und weitergeben. Ein bei
 
dem Server eingegangener öffentlicher Schlüssel wird entweder der Datenbank des Servers hinzugefügt oder
 
mit Ihrem eventuell schon vorhandenen Schlüssel zusammengeführt. Wenn eine Anfrage nach einem Schlüssel
 
362
 
Kapitel 8. Internet
 
beim Server eingeht, durchsucht dieser seine Datenbank und sendet den angeforderten öffentlichen Schlüssel
 
zurück, wenn er ihn gefunden hat.
 
Ein oder mehr Schlüssel können unter Verwendung der Kommandozeilen-Option --send-keys an den
 
Key-Server geschickt werden. Die Option erwartet eine Schlüssel-ID oder Benutzer-ID als Argument und
 
schickt die so spezifizierten Schlüssel an den Key-Server. Der Key-Server, an den die Schlüssel geschickt
 
werden sollen, wird durch die Kommandozeilen-Option --keyserver spezifiziert. In ähnlicher Weise wird die
 
Option --recv-keys benutzt, um Schlüssel von einem Key-Server zu holen, doch müssen Sie hier den Schlüssel
 
mit einer Schlüssel-ID spezifizieren.
 
Hier ein Beispiel mit dem der Autor seinen Public-Key auf dem Server aktualisiert.
 
fr@surimi:~$ gpg --keyserver wwwkeys.eu.pgp.net --send-key 887EB817
 
gpg: Senden an ‘wwwkeys.eu.pgp.net’ erfolgreich (status=200)
 
Hier wird ein bereits vorhandener Key aktualisiert.
 
fr@surimi:~$ gpg --keyserver wwwkeys.eu.pgp.net --recv-key 86574ACA
 
gpg: Schlüssel 86574ACA von wwwkeys.eu.pgp.net wird angefordert ...
 
gpg: Schlüssel 86574ACA: 3 neue User-IDs
 
gpg: Schlüssel 86574ACA: 15 neue Signaturen
 
gpg: Anzahl insgesamt bearbeiteter Schlüssel: 1
 
gpg: neue User-IDs: 3
 
gpg: neue Signaturen: 15
 
Weltweit gibt es eine Vielzahl bekannter Key-Server. Die größeren Key-Server synchronisieren sich
 
wechselseitig. Am Besten benutzen Sie einen gut erreichbaren Key-Server im Internet und tauschen dann
 
regelmäßig über diesen Schlüssel aus.
 
Neben dem im Beispiel gezeigten Server gibt es noch eine ganze Reihe weiterer Key-Server im Netz. Dies sind
 
beispielsweise http://www.pca.dfn.de/dfnpca/pgpkserv/ und http://germany.keyserver.net/en/.
 
8.6.2.2. GnuPG und mutt
 
Die Einbindung von GnuPG in mutt ist durch ein mitgeliefertes Beispiel sehr einfach zu realisieren. Wenn Sie
 
keine individuellen Einstellungen benötigen reicht das einfügen der Zeile
 
source /usr/share/doc/mutt/examples/gpg.rc
 
in der Datei ~/.muttrc aus. Natürlich können Sie auch eine Kopie der Beispieldatei in Ihrem
 
Heimatverzeichnis erzeugen und die Werte Ihren Bedürfnissen anpassen.
 
363
 
Kapitel 9. Drucken
 
In der langen Entwicklungsgeschichte von Unix gibt es zwei bedeutende Drucksysteme, Berkeley Line Printer
 
Daemon („lpd“) und das AT&T Line Printer System. Im Laufe der Jahre gab es einige Alternativen zu diesen
 
Systemen (beispielsweise LPRng) doch an den grundlegenden Funktionen hat sich kaum etwas geändert.
 
Das betagte Drucksystem führte aufgrund der begrenzten Funktionalitäten zu einigen Problemen und so
 
begannen einige Entwickler eigene Erweiterungen in die Programme einzubauen, ohne das Problem
 
grundsätzlich zu lösen.
 
Von der Firma Easy Software Products wurde CUPS (Common UNIX Printing System) entwickelt und unter
 
der GPL (bzw. LGPL für die API Library) freigegeben. CUPS benutzt das Protokoll IPP (Internet Printing
 
Protocol) und bietet die von System V und Berkeley gewohnten Kommandozeilen-Tools. Ein Umstieg auf
 
CUPS lohnt sich, probieren Sie es aus.
 
Natürlich besteht immer noch die Möglichkeit auch die „klassischen“ Drucksysteme einzusetzen. Zur
 
Konfiguration des klassischen Drucksystems stehen verschiedene Programme zur Verfügung. apsfilter und
 
magicfilter helfen Ihnen bei dieser Aufgabe. Sie können aber nur eines der beiden Pakete installieren, wir
 
werden deshalb später nur auf apsfilter eingehen.
 
9.1. CUPS
 
Historisch gesehen stammen die bisherigen Drucksysteme unter Unix entweder aus der Familie der BSD
 
Systeme (LPD, definiert durch den RFC 1179) oder aus dem AT&T Lager. Beide Drucksysteme wurden in den
 
70er Jahren entworfen und sind auf die Anforderungen der damaligen Drucktechnik
 
(Zeilendrucker/Nadeldrucker) ausgelegt. Von den verschiedenen Herstellern kommerzieller Unixes wurden
 
gelegentlich Erweiterungen eingebracht.
 
Natürlich gab es auch einige Entwicklungen, die versuchten die etablierten Drucksysteme zu ersetzen. Zu
 
nennen sind hier LPRng, Palladin und PLP. Leider hat keiner dieser Ansätze grundlegende Änderungen oder
 
Verbesserungen gebracht.
 
In den letzten Jahren gab es diverse Versuche, eine neue Standard Schnittstelle zu definieren, unter anderem den
 
Entwurf zum POSIX Standard, welcher vom „Institute of Electrical and Electronics Engineers, Inc.“ (IEEE, Nr.
 
IEEE-1387.4) herausgegeben wurde, sowie das „Internet Printing Protocol“ (IPP) entwickelt von der „Internet
 
Engineering Task Force“ (IETF) durch die „Printer Working Group“ (PWG, IETF-IPP). Der POSIX Standard
 
definiert einheitliche Kommandozeilen Werkzeuge, ebenso wie eine C Schnittstelle zur Druckerverwaltung und
 
zur Verwaltung der Druckaufträge.
 
Das „Internet Printing Protocol“ definiert Erweiterungen zum Protokoll HTTP (HyperText Transport Protocol
 
1.1 [RFC2616]), um das Drucken auf Netzwerkdruckern zu ermöglichen. IPP/1.0 wurde von der IETF als
 
experimenteller Request for Comments (RFC) im Oktober 1999 akzeptiert. Seitdem entwickelte die Printer
 
Working Group eine erweiterte Spezifikation für die Version IPP/1.1, welche von der IETF als empfohlener
 
Standard akzeptiert wurde. Anders als der POSIX Standard erfreut sich IPP einer weitreichenden Unterstützung
 
durch die Industrie, und es scheint sich als Netzwerk Drucklösung für alle Betriebssysteme durchzusetzen.
 
CUPS benutzt IPP/1.1, um ein umfassendes und modernes Drucksystem für Unix Systeme mit einer
 
weitreichenden Unterstützung für moderne Drucker und Protokolle zu bieten. Natürlich bleibt die
 
Kompatibilität zu den bestehenden Anwendungen erhalten. CUPS ist Freie Software und wird unter der GNU
 
General Public License und der GNU Lesser General Public License zur Verfügung gestellt..
 
9.1.1. Pakete
 
Folgende Debian Pakete, die mit CUPS im Zusammenhang, stehen sind verfügbar.
 
• cupsys - Common UNIX Printing System(tm) - Server
 
• cupsys-bsd - Common UNIX Printing System(tm) - BSD Kommandos
 
• cupsys-client - Common UNIX Printing System(tm) - System V Kommandos
 
• qtcups - Qt basierte Administration für CUPS.
 
364
 
Kapitel 9. Drucken
 
• cupsys-driver-gimpprint - gimp-print Druckertreiber für CUPS
 
• gtklp - GTK basierte Administration für CUPS
 
• kups - KDE basierte Administration für CUPS
 
sowie einige weitere Pakete die von diesen abhängen, hauptsächlich Libraries.
 
Nach der Installation der gewünschten Pakete ist CUPS wie gewohnt bereits so gut wie einsatzbereit. Sie sollten
 
aber noch den Administrativen Zugriff erlauben. Hierzu wurde eine Gruppe „lpadmin“ eingerichtet, zu der die
 
Benutzer hinzugefügt werden können, die Administrative Rechte am Drucksystem haben sollen.
 
In der Grundeinstellung erlaubt die Konfiguration aus Sicherheitsgründen lediglich Verbindungen vom lokalen
 
System. Diese Einstellung kann in der Datei /etc/cups/cupsd.conf geändert werden. Am Ende dieser
 
Datei finden sich die Zugriffsbeschränkungen. Achten Sie darauf, den Zugriff nur von Systemen zu erlauben
 
denen Sie vertrauen oder aktivieren Sie eine Authentifizierung.
 
9.1.1.1. Treiber
 
Die CUPS Pakete beinhalten Treiber für HP LaserJet und DeskJet, Epson Stylus Color sowie Stylus Photo
 
Drucker.
 
9.1.1.2. Samba Integration
 
Sie können Samba zur Zusammenarbeit mit CUPS bewegen, um CUPS-Drucker den Windows-Clients im Netz
 
zur Verfügung zu stellen.
 
Hierzu gibt es zwei Möglichkeiten.
 
Samba benutzt das System V Drucksystem. Hierzu muß die Samba Konfiguration (in /etc/samba/smb.conf)
 
wie folgt ergänzt werden:
 
[global]
 
printing = sysv
 
printcap name = lpstat
 
[printers]
 
lpq command = /usr/bin/lpstat %p
 
lprm command = /usr/bin/cancel %p-%j
 
print command = /usr/bin/lp -d%p -oraw %s ; /bin/rm -f %s
 
Damit dies funktioniert muß das Paket cupsys-client installiert werden.
 
Alternativ unterstützen aktuelle Samba Versionen direkt das Drucken zu einem CUPS System. Auch hierzu muß
 
an der Samba Konfiguration etwas verändert werden.
 
[global]
 
printing = cups
 
printcap name = /etc/printcap.cups
 
9.1.1.3. Tips
 
CUPS unterstützt das „browsing“ über Broadcast Requests, um andere CUPS Server und Drucker im Netz zu
 
finden und diese den Clients zur Verfügung zu stellen. Auch diese Funktion ist normalerweise ausgeschaltet.
 
Wenn diese Funktion aktiviert wird, kann dies dazu führen, daß Dial-on-demand Verbindungen bei einem
 
Broadcast aktiviert werden. Dies kann zu ungewollt hohen Online-Kosten führen. Wenn Sie diese Funktion
 
aktivieren, achten Sie darauf das die Broadcast Adresse entsprechend setzen.
 
Wenn Sie das Kommando enable aus dem Paket cupsys-client benutzen kann es zu Problemen mit dem
 
gleichnamigen Befehl aus der bash kommen. Diese Probleme können umgangen werden wenn Sie das
 
Kommando cupsenable benutzen, welches sich genauso verhält. Um die Konsistenz zu waren, sind ebenfalls
 
die Kommandos cupsdisable, cupsaccept und cupsreject verfügbar.
 
365
 
Kapitel 9. Drucken
 
9.1.2. Design
 
Wie die meisten anderen Drucksysteme wurde für CUPS ebenfalls ein zentraler Prozess geschaffen, welcher die
 
Druckaufträge verwaltet, administrative Befehle entgegennimmt und Statusinformationen weitergibt. Die Grafik
 
zeigt die grundlegende Organisation von CUPS.
 
Abbildung 9-1. CUPS Diagramm
 
9.1.3. Scheduler
 
Der CUPS Scheduler ist ein HTTP/1.1 kompatibler Server, der einerseits die Druckaufträge entgegennimmt,
 
aber auch eine Webbasierte Administrationsoberfläche zur Verfügung stellt. Über diese ist neben einer
 
grafischen Administration ein Monitoring möglich.
 
Der Scheduler verwaltet auch eine Liste der verfügbaren Drucker im Netz und organisiert die Verwaltung der
 
benötigten Filter und Backends für die verschiedenen Drucker.
 
9.1.4. Konfigurationsdateien
 
Die Konfigurationsdateien teilen sich in folgende Typen auf:
 
- HTTP Server Konfiguration
 
- Drucker und Klassen Definitionen
 
- MIME Types und Konvertierungsinformationen
 
- PostScript Printer Description ("PPD") Dateien
 
Die Konfiguration des HTTP Servers für CUPS ähnelt sehr der Konfiguration des Apache Webservers, hier
 
werden die Zugriffe und Eigenschaften des Servers definiert.
 
Die Drucker und Klassenbeschreibungen beschreiben die verfügbaren Drucker und Klassen. Druckerklassen
 
sind Gruppen von Druckern. Druckjobs, die an eine Klasse geschickt werden, werden auf dem ersten
 
verfügbaren Drucker im Round-Robin Prinzip gedruckt.
 
In der Liste der MIME Types finden sich alle unterstützten MIME Types (zum Beispiel „text/plain“,
 
„application/postscript“ usw.) sowie einige „magic rules“, um den Typ einer Datei zu bestimmen. Diese werden
 
vom HTTP Server benutzt, um den „Content-Type“ für „GET“ und „HEAD“ Anfragen zu bestimmen.
 
Weiterhin benutzt der IPP Handler die MIME Types ebenfalls zur Bestimmung der Dateitypen.
 
In den Konvertierungsinformationen finden sich die verfügbaren Filter. Filter werden benutzt, um die von einem
 
Programm kommenden Daten in für den Drucker verständliche Daten umzuwandeln.
 
366
 
Kapitel 9. Drucken
 
Die PPD Dateien beschreiben die Fähigkeiten eines Druckers, dies beschränkt sich nicht nur auf Postscript
 
Drucker. PPD Dateien für Nicht-Postscript Drucker beeinhalten zusätzliche Filterfunktionen durch „cupsFilter“,
 
um diese Drucker optimal zu unterstützen.
 
9.1.5. Berkeley und System V Kommandos
 
CUPS bietet die von System V und Berkley Unixes bekannten Befehle für Druckaufträge und Statusabfragen.
 
Die Kommandos „lpstat“ und „lpc status“ zeigen auch Informationen über Netzwerkdrucker
 
(printer@server), wenn das „browsing“ aktiviert ist.
 
Die System V Administrations Kommandos können benutzt werden, um Drucker und Klassen zu verwalten.
 
Das Berkleley Tool lpc wird nur im „read-only“ Modus unterstützt.
 
9.1.6. Filter
 
Ein Filterprogramm liest Daten von der Standardeingabe oder aus einer Datei, wenn ein Dateiname angegeben
 
wird. Alle Filter müssen einen gemeinsamen Befehlssatz unterstützen, wie zum Beispiel den Namen des
 
Druckers, die Job ID, einen Benutzernamen, einen Job Titel, die Anzahl der gewünschten Kopien und weitere
 
Druckoptionen. Alle Ausgaben werden auf die Standardausgabe geschickt.
 
Filter sind für die verschiedensten Dateiformate verfügbar und können bei Bedarf verknüpft werden, um das
 
gewünschte Ergebnis zu erzielen.
 
Der PostScript Filter basiert auf Ghostscript 5.50.
 
9.1.7. Administration
 
9.1.7.1. Kommandozeile
 
9.1.7.1.1. Grundlagen
 
Jeder unter CUPS benutzte Drucker wird über ein, der Hardware entsprechendes, Device angesprochen.
 
Devices unter CUPS werden als URI („Uniform Resource Identifiers“), ähnlich wie URLs („Uniform Resource
 
Locators“ die Sie aus Ihrem Webbrowser kennen, bezeichnet. Der erste parallele Port unter Linux würde der
 
URI parallel:/dev/lp1 entsprechen.
 
Eine komplette Liste aller auf Ihrem System gefundenen Devices kann mit dem Kommando lpinfo -v
 
angezeigt werden.
 
surimi:~# lpinfo -v
 
file file
 
network socket
 
network http
 
network ipp
 
network lpd
 
direct parallel:/dev/lp1
 
serial serial:/dev/ttyS1?baud=115200
 
serial serial:/dev/ttyS2?baud=115200
 
direct usb:/dev/usb/lp0
 
network smb
 
Das erste Wort jeder Zeile beschreibt den Typ des Devices, danach folgt die URI oder eine andere
 
Zugriffsmethode.
 
Weiterhin gehört zu jedem unter CUPS eingerichteten Drucker eine sogenannte PPD-Datei („PostScript Printer
 
Description“), welche die Eigenschaften des Druckers beschreibt. PPD-Dateien werden sowohl für PostScript
 
als auch für Nicht-PostScript Drucker verwendet.
 
367
 
Kapitel 9. Drucken
 
9.1.7.1.2. Drucker hinzufügen
 
Um einen Drucker hinzuzufügen kann das Kommando lpadmin -p benutzt werden. Die komplette Syntax zu
 
diesem Kommando lautet: lpadmin -p printer -E -v device -m ppd. Um beispielsweise einen
 
HP-Deskjet Drucker, der an der parallelen Schnittstelle angeschlossen ist, hinzuzufügen kann das Kommando
 
lpadmin -p DeskJet -E -v parallel:/dev/lp1 -m deskjet.ppd
 
benutzt werden. Hier gleich noch ein Beispiel für einen HP LaserJet Drucker der über einen Netzwerkanschluß
 
(JetDirect) verfügt, und dem die IP-Adresse 11.22.33.44 zugewiesen wurde
 
lpadmin -p LaserJet -E -v socket://11.22.33.44 -m laserjet.ppd
 
Eine Übersicht über die verfügbaren PPD-Dateien und welche Drucker sich mit diesen ansteuern lassen findet
 
sich unter file:///usr/share/doc/cupsys/online-docs/sam.html, wenn CUPS bereits auf Ihrem System installiert
 
ist. Diese Liste enthält nur Druckertreiber die zum Standardumfang von CUPS gehören, wenn Sie weitere
 
Treiber installiert haben, tauchen diese nicht in der Dokumentation auf.
 
9.1.7.1.3. Drucker verändern
 
Zur Veränderung von Druckern von der Kommandozeile aus ist ebenfalls das Kommando lpadmin geignet.
 
Die Syntax lautet:
 
lpadmin -p printer options
 
Als weitere Argumente können angegeben werden:
 
• -c class Fügt den Drucker der genannten Gruppe hinzu. Wenn diese Gruppe nicht existiert wird sie erzeugt.
 
• -i Interface Kopiert das benannte Interface Script zum Drucker. Interface Scripte werden ausschlieslich von
 
System V Druckertreibern benutzt. Da hierbei alle anderen Filter deaktiviert werden, sollte dieses Verfahren
 
nur benutzt werden wenn kein anderer Treiber zur Verfügung steht,
 
• -m model Bezeichnet den Standard Druckertreiber, normalerweise eine PPD Datei. Eine Liste aller
 
verfügbaren Modelle kann mit dem Kommando lpinfo -m angezeigt werden. Wenn das Paket
 
cupsys-driver-gimpprint installiert wurde, steht eine deutlich größere Anzahl von Druckertreibern zur
 
Verfügung.
 
surimi:~# lpinfo -m
 
bjc-30.ppd.gz CANON BJC 30, CUPS+GIMP-print v4.1.7
 
bjc-50.ppd.gz CANON BJC 50, CUPS+GIMP-print v4.1.7
 
bjc-55.ppd.gz CANON BJC 55, CUPS+GIMP-print v4.1.7
 
bjc-80.ppd.gz CANON BJC 80, CUPS+GIMP-print v4.1.7
 
bjc-85.ppd.gz CANON BJC 85, CUPS+GIMP-print v4.1.7
 
bjc-1000.ppd.gz CANON BJC 1000, CUPS+GIMP-print v4.1.7
 
bjc-2000.ppd.gz CANON BJC 2000, CUPS+GIMP-print v4.1.7
 
bjc-3000.ppd.gz CANON BJC 3000, CUPS+GIMP-print v4.1.7
 
bjc-4300.ppd.gz CANON BJC 4300, CUPS+GIMP-print v4.1.7
 
bjc-4400.ppd.gz CANON BJC 4400 photo, CUPS+GIMP-print v4.1.7
 
bjc-6000.ppd.gz CANON BJC 6000, CUPS+GIMP-print v4.1.7
 
bjc-6100.ppd.gz CANON BJC 6100, CUPS+GIMP-print v4.1.7
 
bjc-6200.ppd.gz CANON BJC 6200, CUPS+GIMP-print v4.1.7
 
bjc-6500.ppd.gz CANON BJC 6500, CUPS+GIMP-print v4.1.7
 
bjc-7000.ppd.gz CANON BJC 7000, CUPS+GIMP-print v4.1.7
 
bjc-7100.ppd.gz CANON BJC 7100, CUPS+GIMP-print v4.1.7
 
bjc-8200.ppd.gz CANON BJC 8200, CUPS+GIMP-print v4.1.7
 
bjc-s400.ppd.gz CANON S400, CUPS+GIMP-print v4.1.7
 
bjc-s450.ppd.gz CANON S450, CUPS+GIMP-print v4.1.7
 
bjc-s800.ppd.gz CANON S800, CUPS+GIMP-print v4.1.7
 
368
 
Kapitel 9. Drucken
 
bjc-s4500.ppd.gz CANON S4500, CUPS+GIMP-print v4.1.7
 
compaq-ij750.ppd.gz COMPAQ IJ750, CUPS+GIMP-print v4.1.7
 
epson9.ppd EPSON 9-Pin Series CUPS v1.1
 
epson24.ppd EPSON 24-Pin Series CUPS v1.1
 
escp2-83.ppd.gz EPSON Stylus Color 83, CUPS+GIMP-print v4.1.7
 
escp2-400.ppd.gz EPSON Stylus Color 400, CUPS+GIMP-print v4.1.7
 
escp2-440.ppd.gz EPSON Stylus Color 440, CUPS+GIMP-print v4.1.7
 
escp2-460.ppd.gz EPSON Stylus Color 460, CUPS+GIMP-print v4.1.7
 
escp2-480.ppd.gz EPSON Stylus Color 480, CUPS+GIMP-print v4.1.7
 
escp2-500.ppd.gz EPSON Stylus Color 500, CUPS+GIMP-print v4.1.7
 
escp2-580.ppd.gz EPSON Stylus Color 580, CUPS+GIMP-print v4.1.7
 
escp2-600.ppd.gz EPSON Stylus Color 600, CUPS+GIMP-print v4.1.7
 
escp2-640.ppd.gz EPSON Stylus Color 640, CUPS+GIMP-print v4.1.7
 
escp2-660.ppd.gz EPSON Stylus Color 660, CUPS+GIMP-print v4.1.7
 
escp2-670.ppd.gz EPSON Stylus Color 670, CUPS+GIMP-print v4.1.7
 
escp2-680.ppd.gz EPSON Stylus Color 680, CUPS+GIMP-print v4.1.7
 
escp2-740.ppd.gz EPSON Stylus Color 740, CUPS+GIMP-print v4.1.7
 
escp2-760.ppd.gz EPSON Stylus Color 760, CUPS+GIMP-print v4.1.7
 
escp2-777.ppd.gz EPSON Stylus Color 777, CUPS+GIMP-print v4.1.7
 
escp2-800.ppd.gz EPSON Stylus Color 800, CUPS+GIMP-print v4.1.7
 
escp2-850.ppd.gz EPSON Stylus Color 850, CUPS+GIMP-print v4.1.7
 
escp2-860.ppd.gz EPSON Stylus Color 860, CUPS+GIMP-print v4.1.7
 
escp2-880.ppd.gz EPSON Stylus Color 880, CUPS+GIMP-print v4.1.7
 
escp2-900.ppd.gz EPSON Stylus Color 900, CUPS+GIMP-print v4.1.7
 
escp2-980.ppd.gz EPSON Stylus Color 980, CUPS+GIMP-print v4.1.7
 
escp2-1160.ppd.gz EPSON Stylus Color 1160, CUPS+GIMP-print v4.1.7
 
escp2-1500.ppd.gz EPSON Stylus Color 1500, CUPS+GIMP-print v4.1.7
 
escp2-1520.ppd.gz EPSON Stylus Color 1520, CUPS+GIMP-print v4.1.7
 
escp2-3000.ppd.gz EPSON Stylus Color 3000, CUPS+GIMP-print v4.1.7
 
escp2-pro-xl.ppd.gz EPSON Stylus Color Pro XL, CUPS+GIMP-print v4.1.7
 
escp2-pro.ppd.gz EPSON Stylus Color Pro, CUPS+GIMP-print v4.1.7
 
stcolor.ppd EPSON Stylus Color Series CUPS v1.1
 
escp2.ppd.gz EPSON Stylus Color, CUPS+GIMP-print v4.1.7
 
escp2-700.ppd.gz EPSON Stylus Photo 700, CUPS+GIMP-print v4.1.7
 
escp2-720.ppd.gz EPSON Stylus Photo 720, CUPS+GIMP-print v4.1.7
 
escp2-750.ppd.gz EPSON Stylus Photo 750, CUPS+GIMP-print v4.1.7
 
escp2-780.ppd.gz EPSON Stylus Photo 780, CUPS+GIMP-print v4.1.7
 
escp2-790.ppd.gz EPSON Stylus Photo 790, CUPS+GIMP-print v4.1.7
 
escp2-870.ppd.gz EPSON Stylus Photo 870, CUPS+GIMP-print v4.1.7
 
escp2-890.ppd.gz EPSON Stylus Photo 890, CUPS+GIMP-print v4.1.7
 
escp2-1200.ppd.gz EPSON Stylus Photo 1200, CUPS+GIMP-print v4.1.7
 
escp2-1270.ppd.gz EPSON Stylus Photo 1270, CUPS+GIMP-print v4.1.7
 
escp2-1280.ppd.gz EPSON Stylus Photo 1280, CUPS+GIMP-print v4.1.7
 
escp2-1290.ppd.gz EPSON Stylus Photo 1290, CUPS+GIMP-print v4.1.7
 
escp2-2000.ppd.gz EPSON Stylus Photo 2000P, CUPS+GIMP-print v4.1.7
 
escp2-ex.ppd.gz EPSON Stylus Photo EX, CUPS+GIMP-print v4.1.7
 
stphoto.ppd EPSON Stylus Photo Series CUPS v1.1
 
escp2-photo.ppd.gz EPSON Stylus Photo, CUPS+GIMP-print v4.1.7
 
pcl-340.ppd.gz HP DeskJet 340, CUPS+GIMP-print v4.1.7
 
pcl-400.ppd.gz HP DeskJet 400, CUPS+GIMP-print v4.1.7
 
pcl-500.ppd.gz HP DeskJet 500, CUPS+GIMP-print v4.1.7
 
pcl-501.ppd.gz HP DeskJet 500C, CUPS+GIMP-print v4.1.7
 
pcl-520.ppd.gz HP DeskJet 520, CUPS+GIMP-print v4.1.7
 
pcl-540.ppd.gz HP DeskJet 540C, CUPS+GIMP-print v4.1.7
 
pcl-550.ppd.gz HP DeskJet 550C, CUPS+GIMP-print v4.1.7
 
pcl-560.ppd.gz HP DeskJet 560C, CUPS+GIMP-print v4.1.7
 
pcl-601.ppd.gz HP DeskJet 600 series, CUPS+GIMP-print v4.1.7
 
pcl-600.ppd.gz HP DeskJet 600/600C, CUPS+GIMP-print v4.1.7
 
pcl-690.ppd.gz HP DeskJet 690 series, CUPS+GIMP-print v4.1.7
 
pcl-810.ppd.gz HP DeskJet 810C, CUPS+GIMP-print v4.1.7
 
pcl-812.ppd.gz HP DeskJet 812C, CUPS+GIMP-print v4.1.7
 
pcl-840.ppd.gz HP DeskJet 840C, CUPS+GIMP-print v4.1.7
 
pcl-842.ppd.gz HP DeskJet 842C, CUPS+GIMP-print v4.1.7
 
pcl-850.ppd.gz HP DeskJet 850C, CUPS+GIMP-print v4.1.7
 
369
 
Kapitel 9. Drucken
 
pcl-855.ppd.gz HP DeskJet 855C, CUPS+GIMP-print v4.1.7
 
pcl-870.ppd.gz HP DeskJet 870C, CUPS+GIMP-print v4.1.7
 
pcl-890.ppd.gz HP DeskJet 890C, CUPS+GIMP-print v4.1.7
 
pcl-895.ppd.gz HP DeskJet 895C, CUPS+GIMP-print v4.1.7
 
pcl-900.ppd.gz HP DeskJet 900 series, CUPS+GIMP-print v4.1.7
 
pcl-1100.ppd.gz HP DeskJet 1100C, CUPS+GIMP-print v4.1.7
 
pcl-1120.ppd.gz HP DeskJet 1120C, CUPS+GIMP-print v4.1.7
 
pcl-1200.ppd.gz HP DeskJet 1200C, CUPS+GIMP-print v4.1.7
 
pcl-1220.ppd.gz HP DeskJet 1220C, CUPS+GIMP-print v4.1.7
 
pcl-1600.ppd.gz HP DeskJet 1600C, CUPS+GIMP-print v4.1.7
 
pcl-2000.ppd.gz HP DeskJet 2000 series, CUPS+GIMP-print v4.1.7
 
pcl-2500.ppd.gz HP DeskJet 2500 series, CUPS+GIMP-print v4.1.7
 
deskjet.ppd HP DeskJet Series CUPS v1.1
 
pcl-4.ppd.gz HP LaserJet 4 series, CUPS+GIMP-print v4.1.7
 
pcl-4l.ppd.gz HP LaserJet 4L, CUPS+GIMP-print v4.1.7
 
pcl-4v.ppd.gz HP LaserJet 4V, 4Si, CUPS+GIMP-print v4.1.7
 
pcl-5.ppd.gz HP LaserJet 5 series, CUPS+GIMP-print v4.1.7
 
pcl-5si.ppd.gz HP LaserJet 5Si, CUPS+GIMP-print v4.1.7
 
pcl-6.ppd.gz HP LaserJet 6 series, CUPS+GIMP-print v4.1.7
 
pcl-2.ppd.gz HP LaserJet II series, CUPS+GIMP-print v4.1.7
 
pcl-3.ppd.gz HP LaserJet III series, CUPS+GIMP-print v4.1.7
 
laserjet.ppd HP LaserJet Series CUPS v1.1
 
pcl-P1000.ppd.gz HP PhotoSmart P1000, CUPS+GIMP-print v4.1.7
 
pcl-P1100.ppd.gz HP PhotoSmart P1100, CUPS+GIMP-print v4.1.7
 
lexmark-3200.ppd.gz LEXMARK 3200, CUPS+GIMP-print v4.1.7
 
lexmark-4076.ppd.gz LEXMARK 4076, CUPS+GIMP-print v4.1.7
 
lexmark-z31.ppd.gz LEXMARK Z31, CUPS+GIMP-print v4.1.7
 
lexmark-z52.ppd.gz LEXMARK Z52, CUPS+GIMP-print v4.1.7
 
okidata9.ppd OKIDATA 9-Pin Series CUPS v1.1
 
okidat24.ppd OKIDATA 24-Pin Series CUPS v1.1
 
• -r class löscht einen Drucker aus der Gruppe. Wird der letzte Drucker einer Gruppe gelöscht, so wird auch
 
die Gruppe gelöscht.
 
• -v device-uri Setzt die Gerätedatei für die Kommunikation mit dem Drucker. Wenn für diesen Drucker bereits
 
ein Druckjob anliegt, so wird dieser neugestartet und an das neue Device gesendet.
 
• -D info Hier kann die Beschreibung für diesen Drucker angegeben werden. Beispielsweise „Drucker im Büro
 
Mr. Torvalds“.
 
• -E „Enable“ aktiviert den Drucker. Diese Option hat die gleichen Folgen wie die Kommandos enable(1) und
 
accept(8).
 
• -L location Beschreibt den Standort des Druckers.
 
• -P ppd-file Name der zu verwendenden PPD Datei.
 
9.1.7.1.4. Drucker löschen
 
Um einen Drucker zu löschen wird die Option -x benutzt. Um den Drucker „LaserJet“ zu löschen kann
 
folgendes Kommando benutzt werden:
 
lpadmin -x LaserJet
 
370
 
Kapitel 9. Drucken
 
9.1.7.1.5. Standarddrucker festlegen
 
Der Standarddrucker wird mit der Option -d (default) gesetzt.
 
lpadmin -d LaserJet
 
9.1.7.1.6. Starten und stoppen von Druckern
 
Die Kommandos enable und disable starten und stoppen den angegebenen Drucker.
 
enable LaserJet
 
disable LaserJet
 
Gestoppte Drucker akzeptieren weiterhin Druckaufträge, diese werden jedoch erst gedruckt nachdem der
 
Drucker wieder aktiviert wurde. Dies gibt dem Administrator die Chance ein Druckerproblem zu lösen ohne das
 
Druckaufträge verloren gehen.
 
accept LaserJet
 
reject LaserJet
 
Mit diesen Kommandos werden alle aufgelaufenen Druckaufträge gedruckt und weitere Druckaufträge nicht
 
angenommen. Wenn der Drucker längere Zeit nicht zur Verfügung steht kann dieser so deaktiviert werden.
 
9.1.7.2. Webbasiert
 
Die Administration von CUPS kann auch komplett über ein Webinterface erfolgen. Hierzu wird ein
 
Webbrowser benötigt, CUPS benutzt den Port 631 für das Konfigurationsinterface. Aus Sicherheitsgründen läßt
 
sich das Webinterface zunächst nur von lokalen Rechner aus benutzen, unter der URL http://localhost:631 wird
 
das Webinterface zur Verfügung gestellt.
 
Abbildung 9-2. CUPS Administration - Webinterface
 
371
 
Kapitel 9. Drucken
 
Alle Bereiche über die eine Veränderung der Konfiguration vorgenommen werden kann, sind nur mit einem
 
Usernamen und dem passenden Passwort erreichbar. In jedem Fall kann die Administration als Superuser (root)
 
erfolgen.
 
Die grafische Administration gliedert sich in folgende Bereiche, die über die Startseite oder von jeder Seite aus
 
über die Navigationsleiste am oberen Bildschirmrand, erreicht werden können:
 
9.1.7.2.1. Administration
 
Administration bietet eine Übersicht über die Bereiche „Classes“, „Jobs“ und „Printers“.
 
Abbildung 9-3. CUPS Administration - Übersicht
 
9.1.7.2.2. Gruppen
 
Classes hier können Druckergruppen definiert werden. Wenn ein Druckauftrag an eine Gruppe gesendet wird,
 
so wird der erste verfügbare Drucker dieser Gruppe den Auftrag bearbeiten. Dies ist in größeren Firmen
 
372
 
Kapitel 9. Drucken
 
sinnvoll, so wird vermieden das auf eine Druckauftrag lange gewartet werden muß.
 
Abbildung 9-4. CUPS Administration - Gruppen (Classes)
 
9.1.7.2.3. Dokumentation
 
Help an dieser Stelle finden sich Links auf die englische Dokumentation.
 
373
 
Kapitel 9. Drucken
 
9.1.7.2.4. Druckaufträge
 
Jobs hier können noch anstehende Druckaufträge verwaltet werden.
 
Abbildung 9-5. CUPS Administration - Druckaufträge
 
9.1.7.2.5. Drucker
 
Printers sicher der wichtigste Punkt, die Verwaltung der Drucker. Hier können Drucker hinzugefügt oder
 
374
 
Kapitel 9. Drucken
 
verändert werden.
 
Abbildung 9-6. CUPS Administration - Druckerverwaltung
 
In diesem Beispiel wurde bereits ein Drucker eingerichtet. Normalerweise ist diese Seite nach der Installation
 
von CUPS leer. Durch einen Klick auf „Add Printer“ kann ein neuer Drucker dem System hinzugefügt werden.
 
Abbildung 9-7. CUPS Administration - Drucker hinzufügen - Name
 
375
 
Kapitel 9. Drucken
 
Zunächst sind für den Drucker ein Name, der Standort und eine Beschreibung anzugeben.
 
Abbildung 9-8. CUPS Administration - Drucker hinzufügen - Schnittstelle
 
Wenn der Drucker lokal an der Parallelen Schnittstelle des Rechners angeschlossen ist, wählen Sie hier „Parallel
 
Port #1“ aus.
 
CUPS bietet aber noch weitere Möglichkeiten um Daten auf Druckern auszugeben die nicht lokal instaliert sind.
 
• http druckt direkt zum CUPS Port eines CUPS Servers.
 
• ipp druckt über das Internet Printing Protocol.
 
• ipd druckt über eine Queue des Internet Printing Protocols.
 
• smb druckt auf freigegebenen Druckern die an Windows-Systemen hängen. Hierzu muß zusätzlich das Paket
 
samba installiert sein, da das Programm smbspool benötigt wird.
 
376
 
Kapitel 9. Drucken
 
Abbildung 9-9. CUPS Administration - Drucker hinzufügen - Hersteller
 
Hier ist der Hersteller des Druckers anzugeben.
 
Abbildung 9-10. CUPS Administration - Drucker hinzufügen - Treiber
 
377
 
Kapitel 9. Drucken
 
An dieser Stelle geschieht die genaue Auswahl des geeigneten Druckertreibers. Versuchen Sie möglichst genau
 
den richtigen Treiber auszuwählen.
 
Damit ist die Einrichtung eines Drucker grundsätzlich abgeschlossen. Es sollte trotzdem noch ein Blick auf die
 
weiteren Parameter geworfen werden.
 
Abbildung 9-11. CUPS Administration - Druckerparameter ändern
 
Hier sollten zumindest die Werte für die Papiergröße und die Druckauflösung angepasst werden. Je nach
 
verwendetem Drucker und Treiber stehen hier noch weitere Optionen zur Verfügung. Weiterhin kann für jeden
 
Druckauftrag eine Start- oder Endeseite gedruckt werden.
 
9.1.7.2.6. Software
 
Software verweist auf die Webseite http://www.cups.org.
 
9.1.7.3. CUPS Konfigurationsdatei
 
Die Konfigurationsdateien für CUPS finden sich unter /etc/cups/. Normalerweise ist es nicht notwendig an
 
diesen Dateien etwas zu verändern, dennoch hier ein Überblick über die möglichen Einträge in der Datei
 
/etc/cups/cupsd.conf.
 
Wenn Sie bereits mit der Konfiguration des Apache Webservers vertraut sind, werden Sie auch mit dieser Datei
 
schnell zurechtkommen.
 
9.1.7.3.1. Server Identität
 
• ServerName myhost.domain.com - Der Name des Servers, Voreinstellung ist der Hostname des Systems.
 
• ServerAdmin root@your.domain.com - Die E-Mailadresse des Administrotors. Voreinstellung ist
 
root@hostname.
 
378
 
Kapitel 9. Drucken
 
9.1.7.3.2. Server Optionen
 
• AccessLog /var/log/cups/access_log - Pfad und Dateiname der Logdatei für die Zugriffe auf den
 
Server. Wenn kein führendes / Zeichen angegeben ist wird die Datei relativ zum ServerRoot abgelegt. Wird
 
hier syslog angegeben, so werden die Daten an den Syslog Daemon geschickt.
 
• DataDir /usr/share/cups - Das Verzeichnis mit den Datendateien für CUPS.
 
• DefaultCharset utf-8 - Benutzter Zeichensatz.
 
• DefaultLanguage en - Benutzte Sprache.
 
• DocumentRoot /usr/share/cups/doc - Das Verzeichnis für die HTML Dokumente.
 
• ErrorLog /var/log/cups/error_log - Pfad und Dateiname der Logdatei für die Zugriffe auf den
 
Server. Wenn kein führendes / Zeichen angegeben ist wird die Datei relativ zum ServerRoot abgelegt. Wird
 
hier syslog angegeben, so werden die Daten an den Syslog Daemon geschickt.
 
• FontPath /usr/share/cups/fonts - Das Verzeichnis für die Schriften.
 
• LogLevel info - Kontrolliert wieviele Informationen in ErrorLog geschrieben werden. Folgende Werte
 
sind erlaubt:
 
debug2 Log everything.
 
debug Log almost everything.
 
info Log all requests and state changes.
 
warn Log errors and warnings.
 
error Log only errors.
 
none Log nothing.
 
• MaxLogSize 0 - Die Maximale Größe jeder Logdatei ab der die Datei umkopiert und gepackt wird.
 
Voreinstellung ist 1048576 (1MB). Die Angabe 0 deaktiviert diese Funktion.
 
• PageLog /var/log/cups/page_log - Pfad und Dateiname der PageLog Datei. Wenn kein führendes /
 
Zeichen angegeben ist wird die Datei relativ zum ServerRoot abgelegt. Wird hier syslog angegeben, so
 
werden die Daten an den Syslog Daemon geschickt.
 
• PreserveJobHistory Yes - Bestimmt ob die Druckauftragsliste gespeichert werden soll.
 
• PreserveJobFiles No - Bestimmt ob die Druckaufträge gespeichert werden sollen.
 
• AutoPurgeJobs No - Entfernt automatisch Druckjobs die durch Quotas begrenzt werden.
 
• MaxJobs 0 - Maximale Anzahl der Jobs (aktive und abgeschlossene) die im Speicher gehalten werden. 0
 
bedeutet kein Limit.
 
• Printcap /etc/printcap - Pfad und Dateiname zur verwendeten Printcap. Keine Angabe unterdrückt die
 
Erzeugung der Datei.
 
• RequestRoot /var/spool/cups - In diesem Verzeichnis werden die Druckdateien gespeichert.
 
• RemoteRoot remroot - Der Name des Benutzers der ohne Autorisierung Zugriff von einem anderen
 
System erhalten kann.
 
• ServerBin /usr/lib/cups - Das Verzeichnis für die benötigten Programme.
 
• ServerRoot /etc/cups - Das Root-Verzeichnis für die Programme.
 
9.1.7.3.3. Verschlüsselung
 
• ServerCertificate /etc/cups/ssl/server.crt - Datei mit dem Serverzertifikat.
 
• ServerKey /etc/cups/ssl/server.key - Datei mit dem Serverkey.
 
379
 
Kapitel 9. Drucken
 
9.1.7.3.4. Filteroptionen
 
• User lp und Group sys - Benutzer und Gruppe unter der der Server bei einem externen Kommando läuft.
 
• RIPCache 8m - Speicher je RIP (Raster Image Prozessor) um Grafiken zu cachen. Der Wert kann jede ganze
 
Zahl sein, gefolgt von „k“, „m“ oder „g“ für Kilo-, Mega-, oder Gigabyte.
 
• TempDir /var/spool/cups/tmp - Das Verzeichnis für temporäre Dateien. Dieses Verzeichnis muß für
 
den oben genannten Benutzer beschreibbar sein.
 
• FilterLimit 0 - Maximale Anzahl von Filtern je Druckauftrag. Ein normaler Druckjob benötigt
 
mindestens einen Wert von 200, der Wert 0 bedeutet kein Limit.
 
9.1.7.3.5. Netzwerkoptionen
 
• Port 631 - Port auf dem der Daemon horcht.
 
• Listen hostname - Adresse auf der der Daemon horcht.
 
• HostNameLookups On - Aktivieren der Nameserverabfragen bei Zugriffen.
 
• KeepAlive On - Aufrechterhalten der Verbindung.
 
• KeepAliveTimeout 60 - Zeit nach der KeepAlive-Verbindungen beendet werden.
 
• MaxClients 100 - Maximale Anzahl der gleichzeitigen Client Verbindungen.
 
• MaxRequestSize 0 - Maximale Größe der HTTP Anfragen und der Druckdateien. 0 deaktiviert diese
 
Funktion.
 
• Timeout 300 - Zeit zur der eine Anfrage ungültig wird.
 
9.1.7.3.6. Browsing
 
• Browsing On - Aktiviert die Netzwerkweiten Druckerinformationen.
 
• BrowseAddress x.y.z.255 - Die Broadcast Adresse für das Browsing.
 
• BrowseShortNames Yes - Benutzung von Kurznamen für die Drucker, beispielsweise „laserjet“ statt
 
„laserjet@host.domain.de“.
 
• BrowseAllow und BrowseDeny - Definieren die Ein- und Ausgangsmasken für auf den Server zugreifende
 
Browser. Erlaubt sind folgende Notationen für die Adressen:
 
All
 
None
 
*.domain.com
 
.domain.com
 
host.domain.com
 
nnn.*
 
nnn.nnn.*
 
nnn.nnn.nnn.*
 
nnn.nnn.nnn.nnn
 
nnn.nnn.nnn.nnn/mm
 
nnn.nnn.nnn.nnn/mmm.mmm.mmm.mmm
 
• BrowseInterval 30 - Zeit zwischen zwei Aktualisierungen.
 
380
 
Kapitel 9. Drucken
 
• BrowseOrder allow,deny oder BrowseOrder deny,allow - Reihenfolge der erlaubten/verweigerten
 
Zugriffe. Aktualisierungen.
 
• BrowsePoll address:port - Server die nach Druckern befragt werden sollen.
 
• BrowsePort 631 - Port auf dem die Abfrage erfolgen soll.
 
• BrowseRelay source-address destination-address - Weiterleiten von Anfragen.
 
• BrowseTimeout 300 - Wenn innerhalb der Angegebenen Zeit keine Antwort von einem Drucker kommt, so
 
wird dieser aus der Liste entfernt.
 
• ImplicitClasses On - Druckaufträge die an einen Drucker geschickt werden unter dessen Namen
 
ebenfalls eine Druckergruppe vorhanden ist, werden an die Gruppe gesendet.
 
9.1.7.3.7. Sicherheits Optionen
 
• SystemGroup lpadmin - Gruppenname für die Administrativen Aufgaben.
 
• AuthType Basic - Die zu verwendende Authorisation, diese kann auf die Werte
 
None - Perform no authentication
 
Basic - Perform authentication using the HTTP Basic method.
 
Digest - Perform authentication using the HTTP Digest method.
 
eingestellt werden.
 
• AuthClass System - Authorisationsgruppe, diese kann „Anonymous“, „User“ oder „System“ (für die
 
Benutzer in der Gruppe „SystemGroup“) annehmen.
 
• AuthGroupName System - Name der Gruppe für die zu Authentifizierende Gruppe.
 
• AuthGroupName System - Name der Gruppe für die zu Authentifizierende Gruppe.
 
9.1.7.3.8. Verzeichnisse
 
Die Zugriffe auf die verschiedenen, zur Administartion von CUPS benötigten Verzeichnisse, können
 
(wiederrum ähnlich der Apache Konfiguration) beschränkt werden. Hierzu stehen folgende Direktiven zur
 
Verfügung.
 
• Allow und Deny - Mit diesen Direktiven können Zugriffe erlaubt oder verboten werden. Die Reihenfolge
 
läßt sich durch die Direktive Order beeinflussen.
 
Für beide Direktiven sind folgende Notationen erlaubt
 
All
 
None
 
*.domain.com
 
.domain.com
 
host.domain.com
 
nnn.*
 
nnn.nnn.*
 
nnn.nnn.nnn.*
 
nnn.nnn.nnn.nnn
 
nnn.nnn.nnn.nnn/mm
 
nnn.nnn.nnn.nnn/mmm.mmm.mmm.mmm
 
Um die host und domain Notationen benutzen zu können, muß die Option HostNameLookups aktiviert
 
sein.
 
381
 
Kapitel 9. Drucken
 
• Encryption - hierfür sind folgende Werte möglich
 
Always - Always use encryption (SSL)
 
Never - Never use encryption
 
Required - Use TLS encryption upgrade
 
IfRequested - Use encryption if the server requests it
 
• Location / - Für Location können die verschiedenen Verzeichnisse angegeben werden, zu jedem Eintrag
 
können die oben beschriebenen Werte benutzt werden. Beispielsweise
 
<Location /classes>
 
#
 
# You may wish to limit access to printers and classes, either with Allow
 
# and Deny lines, or by requiring a username and password.
 
#
 
Order Deny,Allow
 
Deny From All
 
Allow From 127.0.0.1
 
</Location>
 
Beschränkt die Zugriffe auf das Verzeichnis /classes auf den lokalen Rechner.
 
9.2. apsfilter
 
Installieren Sie zuerst das Paket apsfilter, zum Beispiel mittels dpkg:
 
dpkg -i apsfilter_5.1.3-3.deb
 
Selecting previously deselected package apsfilter.
 
(Reading database ... 61629 files and directories currently installed.)
 
Unpacking apsfilter (from .../text/apsfilter_5.1.3-3.deb) ...
 
Setting up apsfilter (5.1.3-3) ...
 
apsfilterconfig is an interactive script for configuring apsfilter.
 
Do you wish to run apsfilterconfig now? [yes/no] yes
 
apsfilter benötigt mindestens die Pakete lpr oder lprng sowie file und awk. Sinnvoll ist es, auch die
 
Pakete gs, a2ps, dvips, transfig, netpbm und mailx zu installieren.
 
Auch bei diesem Paket steht Ihnen ein Konfigurationsprogramm zur Verfügung. Sie können dieses auch später
 
jederzeit als apsfilterconfig aufrufen. Hierzu benötigen Sie, ebenso wie für die Installation von Paketen
 
unter Debian GNU/Linux, Superuserrechte, da es sich um eine Konfiguration handelt, die systemweit gilt.
 
Da es aber angeboten wird, können Sie auch gleich das Konfigurationsprogramm starten, geben Sie hierzu yes
 
ein und drücken Sie die Taste RETURN.
 
_/_/ _/_/ _/ _/ _/
 
_/ _/ _/_/_/ _/_/_/ _/ _/ _/_/_/_/ _/_/ _/ _/_/
 
_/_/_/_/ _/ _/ _/_/ _/_/_/_/ _/ _/ _/ _/_/_/_/ _/_/
 
_/ _/ _/ _/ _/_/ _/ _/ _/ _/ _/ _/
 
_/ _/ _/_/_/ _/_/_/ _/ _/ _/ _/_/ _/_/_/ _/
 
_/
 
_/
 
Hi, welcome to the apsfilter SETUP and thanks for using apsfilter !
 
Before we begin with the SETUP, I’d like to make you familiar
 
with the apsfilters licence:
 
1. apsfilter follows the GNU public license (GPL), see COPYRIGHT
 
382
 
Kapitel 9. Drucken
 
2. and this little "Postcard License":
 
"I’d like to get a postcard from you ! I’m interested in,
 
who is using apsfilter, where you live, and where in the
 
world apsfilter is doing it’s job"
 
Please send me an e-mail to request-snailmail@klemm.gtn.com to
 
get my postal address, this is questioned later in SETUP....
 
ACCEPT LICENSE [Y|y|J|j|N|n] ? y
 
Der Autor von apsfilter hat sein Programm unter die GPL gestellt und mit dem kleinen Zusatz versehen,
 
ihm eine Postkarte zu schicken, wenn Ihnen das Programm gefällt und Sie es benutzen wollen. Wenn Sie dem
 
Autor eine Postkarte schicken wollen, senden Sie ihm eine E-Mail unter der angegebenen Adresse. Akzeptieren
 
Sie die Lizenz mit y.
 
LICENSE accepted, thanks !!!
 
_/ _/ _/ _/ _/_/
 
_/_/ _/_/ _/_/_/ _/ _/_/_/ _/ _/_/_/
 
_/ _/ _/ _/ _/ _/ _/ _/_/_/_/_/ _/ _/_/_/_/ _/ _/
 
_/ _/ _/ _/ _/ _/ _/ _/ _/ _/
 
_/ _/ _/_/_/ _/ _/ _/_/_/ _/ _/_/_/ _/
 
_/
 
_/_/
 
Is Internet Mail up and running on *this* machine
 
to request my postal address
 
to follow the rules of the "Postcard License" ???
 
Request my snail mail address now [Y|y|N|n] ? n
 
Wenn Sie auf Ihrem System bereits ein Programm zum Versenden von E-Mail eingerichtet haben (exim, smail
 
oder sendmail), können Sie gleich an dieser Stelle die Anschrift des Autors anfordern. Wenn Sie sich nicht
 
sicher sind, wählen Sie einfach n.
 
Vergessen Sie aber nicht, dies später nachzuholen, wenn Sie apsfilter benutzen. Die Autoren von freier
 
Software investieren einen Großteil ihrer Freizeit in die Entwicklung von Software. Wenn Sie die Lizenz eines
 
solchen Programms akzeptieren, sollten Sie auch so nett sein und der Aufforderung des Autors nach einer
 
Postkarte nachkommen.
 
o.k. for now ...
 
... but please don’t forget to request it later ...
 
Please *don’t* forget it !!!
 
_/ _/ _/ _/ _/ _/ _/
 
_/_/_/ _/_/_/_/ _/_/_/ _/ _/_/_/_/ _/_/_/ _/_/_/
 
_/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/
 
_/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/
 
_/ _/ _/ _/ _/_/ _/ _/_/_/ _/ _/ _/_/_/_/ _/ _/ _/ _/_/_/
 
_/
 
_/_/
 
cleaning global config file...
 
looking for available filter programs on this system...
 
found filter a2ps
 
found filter bmptoppm
 
missing filter djpeg
 
found filter dvips
 
found filter fig2dev
 
found filter fig2dev
 
383
 
Kapitel 9. Drucken
 
found filter fig2dev
 
missing filter g3cat
 
found filter g3topbm
 
found filter giftopnm
 
found filter groff
 
found filter grog
 
found filter gs
 
missing filter html2ps
 
missing filter pnmtolps
 
found filter ppmtopgm
 
found filter pnmtops
 
missing filter ras2ps
 
found filter rasttopnm
 
missing filter recode
 
found filter tifftopnm
 
missing filter bunzip
 
found filter bunzip2
 
missing filter compress
 
found filter gzip
 
missing filter melt
 
missing filter pack
 
apsfilterconfig sucht auf Ihrem System nach Programmen die in den Filtern eingesetzt werden können,
 
beispielsweise um Grafiken zu konvertieren. Je nachdem welche Pakete Sie bereits installiert haben, werden
 
mehr oder weniger Filter gefunden. Mit Hilfe dieser Programme können über die Filter die verschiedensten
 
Dateiformate direkt ausgedruckt werden.
 
================================================================
 
A P S F I L T E R V 513 *** The Unix Print Solution ***
 
================================================================
 
copyright Andreas Klemm 1993, 1994, 1995, 1996, 1997, 1998, 1999
 
andreas@klemm.gtn.com
 
http://www.FreeBSD.org/~andreas/apsfilter
 
----------------------------------------
 
for Unix systems with BSD compatible
 
line printer scheduler (lpd)
 
or with LPRng (new!)
 
FreeBSD / NetBSD / OpenBSD / BSDI
 
Linux and other flavours of Unix
 
----------------------------------------
 
++++ INSTALLATION PROGRAM ++++
 
[ press <RETURN> to continue ]
 
Als nächstes sehen Sie eine Seite mit allgemeinen Informationen zu apsfilter. Die Versionsnummer (in der
 
ersten Zeile) sollten Sie bei Rückfragen an den Autor immer mit angeben, in diesem Beispiel verwenden wir die
 
Version "513". Danach sehen Sie die Copyright-Information sowie noch einmal die E-Mail Adresse des Autors
 
und die URL der apsfilter- Homepage sowie eine Kurzbeschreibung von apsfilter.
 
Drücken Sie die Taste RETURN, wenn Sie alle Informationen gelesen haben.
 
================================================================
 
A P S F I L T E R S E T U P -- PROGRAM INFO --
 
================================================================
 
This SETUP script supports the user/administrator by
 
- configuring serial and parallel printers
 
- creating printer spool directories as needed
 
- auto-creation of /etc/printcap config-file
 
384
 
Kapitel 9. Drucken
 
for apsfilter (add / overwrite printer)
 
- setting up apsfilter (which gs driver to use,
 
paper size, print resolution and color depth)
 
- printing a test page (settings may be modified
 
until successfull ouput of a testpage)
 
- saves some SETUP settings in /etc/apsfilterrc
 
it does not:
 
- complete printer management in /etc/printcap
 
(delete/modify printer)
 
----------------------------------------------------------------
 
[ press <RETURN> to continue ]
 
Es folgt eine detailliertere Beschreibung, welche Schritte durch das Konfigurationsprogramm durchgeführt
 
werden.
 
==================================================================
 
A P S F I L T E R S E T U P -- MAIN MENUE --
 
==================================================================
 
currently selected
 
------------------------------------------------------------------
 
(D) Available Device Drivers in your gs binary (gs -h)
 
(R) Ghostscript 5.50 docu about printer drivers (devices.txt)
 
(1) Printer Driver Selection [ ]
 
(2) Interface Setup []
 
For printing the test page:
 
(3) Print Resolution in "dots per inch" []
 
(4) Toggle Monochrom/Color (1bpp=bw) []
 
(5) Paper Format [a4]
 
(T) Print Test Page (after step 1-5)
 
(V) View perf.log (times of print attempts)
 
(C) ==> Continue printer setup with values shown above
 
(Q) Quit Setup
 
Your choice ? 1
 
Sie gelangen nun zum eigentlichen Hauptmenü für die Konfiguration von apsfilter. Sie können die
 
einzelnen Punkte mit den Buchstaben beziehungsweise den Zahlen, die den Punkten vorangestellt sind,
 
auswählen (beispielsweise „D“ oder „4“ usw.). Die beiden ersten Punkte sind für Debian GNU/Linux bereits
 
korrekt voreingestellt. Wählen Sie also zuerst den Menüpunkt 1 - „Printer Driver Selection“ aus.
 
----------------------------------------------------------------
 
A P S F I L T E R S E T U P -- Printer Driver Selection --
 
----------------------------------------------------------------
 
Please select a category that contains your printer driver
 
1 - for Apple and Apple compatible printer
 
2 - for Canon and Canon compatible printer
 
3 - for Epson and ESC/2 compatible printer
 
4 - for HP Deskjets and DeskJet compatible printer
 
5 - for HP LaserJets and LaserJet compatible printer
 
6 - for HP Paint-/DesignJets and compatible printer
 
7 - for DEC, IBM, NEC, Okidata and compatible printer
 
8 - for other non PS printer, includes new gs 5.5 uniprint driver
 
9 - for a _true_ Postscript printer"
 
385
 
Kapitel 9. Drucken
 
Hint: feel free to browse through all categories, by simply not
 
selecting any driver (i.e.: by hitting only the <RETURN> key).
 
Your choice ? 5
 
Zuerst müssen Sie eine passende Gruppe auswählen, zu der Ihr Drucker am besten paßt. Da die Hersteller von
 
Druckern in der Regel keine Linux-Treiber zu ihren Druckern mitliefern, werden Sie für die neuesten am Markt
 
erhältlichen Modelle keinen optimalen Treiber finden. Probieren Sie einfach einen ähnlichen Drucker aus, in der
 
Regel wird dies funktionieren.
 
Für unser Beispiel wählen wir einen „HP LaserJet“, also einen Laserdrucker aus.
 
-----------------------------------------------------------------
 
List of ghostscript5.03 HP LaserJet printer driver
 
-----------------------------------------------------------------
 
(1) laserjet - HP LaserJet
 
(2) ljet2p - HP LaserJet IId/IIp/III with TIFF compression
 
(3) ljet3 - HP LaserJet III with Delta Row compression
 
(4) ljet3d - HP LaserJet IIID with duplex capability
 
(5) ljet4 - HP LaserJet 4 (defaults to 600dpi)
 
(6) lj4dith - HP LaserJet 4 with Floyd-Steinberg dithering
 
(7) ljetplus - HP LaserJet Plus
 
(8) lj5mono - HP LaserJet 5 and 6 family (PCL5 / PCL XL), bitmap
 
(9) lj5gray - HP LaserJet 5 and 6 family, gray-scale bitmap
 
-----------------------------------------------------------------
 
Please enter the printer driver of your choice
 
or type <RETURN> to choose another category/driver:
 
Your choice ? 5
 
Anschließend können Sie aus einer Liste von verschiedenen Modellen wählen. Auch hier gilt wieder: wenn Sie
 
nicht genau Ihren Druckertyp finden, wählen Sie einen Typ, der Ihrem Drucker weitestgehend entspricht.
 
Glücklicherweise finden wir in unserem Beispiel aber genau das gewünschte Modell, einen LaserJet 4, in der
 
Liste. Wählen Sie den gewünschten Typ durch Eingabe der entsprechenden Zahl, die vor dem Typ steht, hier
 
also die 5.
 
Please confirm selection [ ljet4 ]
 
OK y/n ? y
 
Der gewählte Typ wird nochmal vom Installationsprogramm ausgegeben, und Sie werden nochmal
 
aufgefordert, dies mit y zu bestätigen, wenn Sie mit der Auswahl einverstanden sind.
 
==================================================================
 
A P S F I L T E R S E T U P -- MAIN MENUE --
 
==================================================================
 
currently selected
 
------------------------------------------------------------------
 
(D) Available Device Drivers in your gs binary (gs -h)
 
(R) Ghostscript 5.50 docu about printer drivers (devices.txt)
 
(1) Printer Driver Selection [ljet4 ]
 
(2) Interface Setup []
 
For printing the test page:
 
(3) Print Resolution in "dots per inch" [default]
 
(4) Toggle Monochrom/Color (1bpp=bw) [default]
 
(5) Paper Format [a4]
 
(T) Print Test Page (after step 1-5)
 
(V) View perf.log (times of print attempts)
 
(C) ==> Continue printer setup with values shown above
 
(Q) Quit Setup
 
Your choice ? 2
 
386
 
Kapitel 9. Drucken
 
Nachdem Sie nun den Typ des Druckers eingestellt haben, müssen Sie noch die Schnittstelle festlegen. In der
 
Urzeit der Computertechnik war es durchaus üblich, Drucker über die serielle Schnittstelle anzuschließen. Diese
 
Modelle trifft man auch heute noch vereinzelt an, meist als Nadeldrucker. Normalerweise wird aber ein Drucker
 
meist an den parallelen Port eines Rechners angeschlossen. Wählen Sie also erst einmal die 2.
 
----------------------------------------------------------------
 
A P S F I L T E R S E T U P -- Interface Setup --
 
----------------------------------------------------------------
 
The easiest way, to connect a printer to your computer is by
 
using the parallel interface, because it’s usually *faster*,
 
more standardized and therefore much easier to configure.
 
When configuring a serial printer, the installation dialogue
 
asks you many questions about how to configure the serial
 
interface of your computer, so that it works well with your
 
printers current settings.
 
When using the serial interface, then you have to choose special
 
cables, depending on the communication protocol between computer
 
and printer (hardware/software handshaking). Many pitfalls here !
 
currently selected: Interface: []
 
Device: []
 
1) configure a parallel printer (best choice !)
 
2) configure a serial printer (more work, but possible)
 
Your choice ? 1
 
Hier können Sie also zwischen einem Drucker an der parallelen oder der seriellen Schnittstelle wählen. Geben
 
Sie eine 1 für den parallelen Port ein.
 
----------------------------------------------------------------
 
A P S F I L T E R Parallel Interface Settings -- Device --
 
----------------------------------------------------------------
 
Depending on your flavour of Unix, you have to enter the
 
*full path* to your parallel Interface. In case of trouble please
 
contact your local system administrator or read your operating
 
systems technical documentation, FreeBSD handbook or Linux HowTo.
 
Some examples:
 
FreeBSD, NetBSD, OpenBSD: LPT1: /dev/lpt0 LPT2: /dev/lpt1
 
Linux: LPT1: /dev/lp0 LPT2: /dev/lp1
 
SunOS4: /dev/bpp0 /dev/bpp1
 
currently selected: Interface: [parallel]
 
Device: []
 
Full path of parallel print device: /dev/lp0
 
Wählen Sie nun aus der angezeigten Tabelle den Anschluß aus, an dem Ihr Drucker angeschlossen ist. Der
 
Linux Kernel verwaltet die parallelen Schnittstellen als /dev/lp0 für die erste sowie /dev/lp1 für die zweite
 
parallele Schnittstelle. Normalerweise verfügt ein Rechner nur über eine parallele Schnittstelle, diese wird unter
 
DOS als LPT1: bezeichnet, dies entspricht /dev/lp0 unter Linux.
 
In 99% aller Fälle wird also /dev/lp0 die richtige Eingabe an dieser Stelle sein.
 
==================================================================
 
A P S F I L T E R S E T U P -- MAIN MENUE --
 
==================================================================
 
currently selected
 
387
 
Kapitel 9. Drucken
 
------------------------------------------------------------------
 
(D) Available Device Drivers in your gs binary (gs -h)
 
(R) Ghostscript 5.50 docu about printer drivers (devices.txt)
 
(1) Printer Driver Selection [ljet4 ]
 
(2) Interface Setup [parallel]
 
For printing the test page:
 
(3) Print Resolution in "dots per inch" [default]
 
(4) Toggle Monochrom/Color (1bpp=bw) [default]
 
(5) Paper Format [a4]
 
(T) Print Test Page (after step 1-5)
 
(V) View perf.log (times of print attempts)
 
(C) ==> Continue printer setup with values shown above
 
(Q) Quit Setup
 
Your choice ? c
 
Die Punkte 3, 4 und 5 können Sie erst einmal so belassen, fahren Sie jetzt mit c - Continue printer
 
setup... fort.
 
================================================================
 
A P S F I L T E R I N S T A L L A T I O N
 
================================================================
 
apsfilter installation....
 
saving original printcap -> /etc/printcap.orig
 
creating a working copy of printcap -> /etc/printcap.old
 
Is your printer a (c)olor printer
 
or a (m)ono printer ?
 
? m
 
An dieser Stelle erstellt das Konfigurationsprogramm eine Kopie der Datei /etc/printcap als
 
/etc/printcap.org. In dieser Datei befinden sich alle nötigen Informationen zu Ihrem Drucker sowie
 
anderen Druckern, die eventuell übers Netz zu erreichen sind.
 
Wählen Sie nun noch zwischen einem Farb- oder Schwarz-Weiß-Drucker aus. Laserdrucker mit Farbfähigkeiten
 
sind momentan noch nicht in Preisregionen angelangt, die man sich zu Hause auf den Schreibtisch stellt, so daß
 
in unserem Beispiel ein m für „monochrome“ die richtige Wahl ist. Benutzer eines farbfähigen Druckers wählen
 
hier c.
 
Starting with lpN where N is 1
 
making apsfilter label in /etc/printcap...
 
** creating printcap entries in /etc/printcap...
 
--> ascii|lp1|ljet4-a4-ascii-mono|ljet4 ascii mono:\
 
setting up spooldir for /var/spool/lpd/ljet4-a4-ascii-mono done.
 
--> lp|lp2|ljet4-a4-auto-mono|ljet4 auto mono:\
 
setting up spooldir for /var/spool/lpd/ljet4-a4-auto-mono done.
 
--> raw|lp3|ljet4-a4-raw|ljet4 auto raw
 
setting up spooldir for /var/spool/lpd/ljet4-raw done.
 
cannot find the directory for printerfilter (symlinks)
 
creating /var/lib/apsfilter/filter...
 
Finished creating/updating /etc/printcap...
 
Now some important news/informations follow...
 
Please read them carefully !
 
[ press <RETURN> to continue ]
 
388
 
Kapitel 9. Drucken
 
Das Konfigurationsprogramm hat nun die Datei /etc/printcap neu erstellt. Es wurden verschiedene Einträge
 
vorgenommen, die Sie später direkt mit dem Kommando lpr anwählen können, beispielsweise mit: lpr -p
 
ascii dateiname.
 
Im folgenden finden Sie noch einige Informationen zu apsfilter.
 
_/ _/
 
_/_/ _/ _/_/ _/ _/ _/ _/_/_/
 
_/ _/ _/ _/_/_/_/ _/ _/ _/ _/_/
 
_/ _/_/ _/ _/ _/ _/ _/ _/_/
 
_/ _/ _/_/_/ _/ _/ _/_/_/
 
See the ANNOUNCE and ChangeLog files for more informations about
 
changes in apsfilter. Some more of them I will tell you during
 
this SETUP script ...
 
Now it’s possible to setup apsfilter, that you can use
 
different print resolutions, i.e.:
 
lpr -Plow test.ps (to print with 180dpi)
 
lpr -Pmed test.ps (to print with 360dpi)
 
lpr -Phigh test.ps (to print with 720dpi)
 
See the file INSTALL for more infos on this.
 
The INSTALL file contains a working example !
 
[ press <RETURN> to continue ]
 
_/ _/
 
_/_/ _/ _/_/ _/ _/ _/ _/_/_/
 
_/ _/ _/ _/_/_/_/ _/ _/ _/ _/_/
 
_/ _/_/ _/ _/ _/ _/ _/ _/_/
 
_/ _/ _/_/_/ _/ _/ _/_/_/
 
For printing ASCII files apsfilter now uses a2ps V. 4.12 or higher.
 
Old patched a2ps and rewindstdin have gone !
 
As an alternative to a2ps you can use recode by setting the new
 
environment variable USE_RECODE_NOT_A2PS in one of the apsfilterrc
 
files.
 
[ press <RETURN> to continue ]
 
_/ _/
 
_/_/ _/ _/_/ _/ _/ _/ _/_/_/
 
_/ _/ _/ _/_/_/_/ _/ _/ _/ _/_/
 
_/ _/_/ _/ _/ _/ _/ _/ _/_/
 
_/ _/ _/_/_/ _/ _/ _/_/_/
 
Note: apsfilter is now customizeable, by different apsfilterrc files !
 
A) system wide configuration file for every printer driver type:
 
/etc/apsfilterrc
 
B) system wide configuration file for special printer driver type:
 
/etc/apsfilterrc.<GS_DRIVERNAME>
 
If defining INSECURE in /etc/apsfilterrc it’s possible to allow
 
user to overwrite the settings (A+B):
 
C) user defined settings for every printer driver type:
 
$HOME/.apsfilterrc
 
D) user defined settings for special printer driver type:
 
389
 
Kapitel 9. Drucken
 
$HOME/.apsfilterrc.<GS_DRIVERNAME>
 
The config files are read in that order (if present), so
 
option D can overwrite settings done in A + B + C
 
[ press <RETURN> to continue ]
 
_/
 
_/ _/_/ _/_/ _/_/_/ _/_/ _/_/ _/_/_/_/ _/_/
 
_/_/ _/_/_/_/ _/ _/ _/ _/ _/ _/ _/_/_/_/
 
_/ _/ _/ _/ _/ _/ _/ _/ _/
 
_/ _/_/_/ _/ _/ _/ _/_/ _/_/ _/_/_/ _/ _/ _/
 
Here an IMPORTANT LAST NOTE about REMOTE PRINTING, a thing that caused
 
trouble for several people, that aren’t familiar with lpd, input filters
 
and remote printing.
 
Apsfilter is designed as a "lpd-input filter". This means - and this
 
is really bad news - that apsfilter (as input filter) works only, if
 
the printer, you want to print on, is locally on that machine,
 
where you installed apsfilter !
 
FreeBSD is the only operating system known to me, that patched the
 
stock Berkeley lineprinter daemon, to allow input filters to work
 
with remote printers !!!
 
[ press <RETURN> to continue ]
 
_/_/_/ _/
 
_/ _/ _/_/ _/_/_/ _/_/_/ _/_/_/
 
_/ _/ _/_/_/_/ _/_/ _/ _/ _/ _/ _/
 
_/ _/ _/ _/_/ _/ _/ _/ _/ _/
 
_/_/_/ _/_/_/ _/_/_/ _/ _/_/_/ _/ _/ _/ _/ _/
 
_/
 
_/_/
 
Apsfilter should be installed on a Server or Desktop machine,
 
where the printer(s) is(are) connected to.
 
User on other machines (Unix or Windows) in the network are then
 
able to print onto "apsfilter print server"’s printer.
 
Windows 95 needs samba on the apsfilter print server.
 
Windows NT machines are able to print with Berkeley LPD protocol,
 
if you installed the necessary service for this. This is usually
 
done during NT installation, but can be done later as well.
 
[ press <RETURN> to continue ]
 
_/_/_/ _/
 
_/ _/ _/_/ _/_/_/ _/_/_/ _/_/_/
 
_/ _/ _/_/_/_/ _/_/ _/ _/ _/ _/ _/
 
_/ _/ _/ _/_/ _/ _/ _/ _/ _/
 
_/_/_/ _/_/_/ _/_/_/ _/ _/_/_/ _/ _/ _/ _/ _/
 
_/
 
_/_/
 
FreeBSD’s line printer scheduler allows you to use network (remote)
 
390
 
Kapitel 9. Drucken
 
printer !!!
 
If you have a FreeBSD system 2.2.x (or higher), it’s possible to install
 
apsfilter on a machine without printers and to print onto remote (network)
 
printers.
 
FreeBSD doesn’t have the typical limitation, that line printer input
 
filters (like apsfilter) doesn’t work with remote printers.
 
Other systems need the hack in apsfilter, that print output is send
 
to a printer called "remote", which has to be installed by you manually
 
in /etc/printcap. See my comments in the apsfilter shellscript.
 
[ press <RETURN> to continue ]
 
_/_/_/
 
_/ _/ _/ _/_/ _/_/ _/_/_/ _/_/ _/_/
 
_/_/_/ _/_/ _/ _/ _/ _/ _/ _/ _/
 
_/ _/ _/ _/ _/ _/ _/ _/ _/
 
_/ _/ _/_/ _/ _/ _/ _/_/ _/ _/ _/
 
I’d really like to get some mails from you,
 
- why you like apsfilter
 
- how apsfilter saved your or your companies printing problems
 
Please send apsfilter promotion e-mails to the following e-mail address:
 
apsfilter-promo@klemm.gtn.com
 
BTW: I plan to include this promo stuff to the apsfilter homepage.
 
In return you get the possibility to introduce you and your company
 
and how apsfilter solved your or your companies printing problems ;-)
 
[ press <RETURN> to continue ]
 
_/ _/ _/ _/ _/ _/
 
_/ _/ _/ _/ _/ _/
 
_/ _/ _/ _/ _/ _/ _/ _/ _/
 
_/ _/ _/ _/ _/ _/ _/ _/ _/
 
_/ _/ _/ _/ _/ _/
 
How to get current infos about apsfilter (news, updates, patches, ...)
 
Apsfilter’s homepage:
 
http://www.FreeBSD.org/~andreas
 
You also find a picture of me and can read about who I am, what I
 
do for free Unix systems, especially FreeBSD and what my current
 
activities are.
 
There are also other interesting resources, please visit my Unix Promo
 
corner, Unix vs. NT, which contains many interesting links concerning
 
that ;-)
 
[ press <RETURN> to continue ]
 
_/_/_/ _/ _/ _/_/_/ _/ _/
 
391
 
Kapitel 9. Drucken
 
_/ _/ _/ _/ _/ _/_/_/_/ _/_/_/
 
_/_/_/ _/_/_/_/ _/_/_/ _/ _/ _/_/
 
_/ _/ _/ _/ _/ _/ _/ _/_/
 
_/_/ _/ _/_/_/ _/ _/_/ _/_/_/
 
Our band "64Bits":
 
Please visit our band’s homepage, from there you get band
 
informations and you can download cool songs.
 
Currently there is a Rock ballade available for download as
 
MPEG 3 file, please see:
 
http://www.FreeBSD.org/~andreas/64bits/
 
Please send us e-mail, how you find the song, etc.
 
Since we only have few time to probe because of job (you know ;-)
 
we currently are unable to make live concerts.
 
So YOU are our virtual audience and we’d LOVE to get some feedback ;-)
 
Thanks !
 
[ press <RETURN> to continue ]
 
One last check for filter programs....
 
cleaning global config file...
 
looking for available filter programs on this system...
 
found filter a2ps
 
found filter bmptoppm
 
missing filter djpeg
 
found filter dvips
 
found filter fig2dev
 
found filter fig2dev
 
found filter fig2dev
 
missing filter g3cat
 
found filter g3topbm
 
found filter giftopnm
 
found filter groff
 
found filter grog
 
found filter gs
 
missing filter html2ps
 
missing filter pnmtolps
 
found filter ppmtopgm
 
found filter pnmtops
 
missing filter ras2ps
 
found filter rasttopnm
 
missing filter recode
 
found filter tifftopnm
 
missing filter bunzip
 
found filter bunzip2
 
missing filter compress
 
found filter gzip
 
missing filter melt
 
missing filter pack
 
[ press <RETURN> to continue ]
 
_/_/_/ _/
 
_/ _/ _/_/ _/_/_/ _/_/ _/
 
_/ _/ _/ _/ _/ _/ _/_/_/_/ _/
 
_/ _/ _/ _/ _/ _/ _/
 
_/_/_/ _/_/ _/ _/ _/_/_/ _/
 
That’s it...
 
392
 
Kapitel 9. Drucken
 
...have fun !!!
 
Andreas ///
 
Zum Abschluß wurden nochmals die Filter überprüft und die Konfiguration ist damit abgeschlossen.
 
Sie können nun aus Anwendungen heraus, wie zum Beispiel Netscape, oder direkt von der Kommandozeile
 
(mit lpr dateiname) drucken.
 
9.2.1. Einstellen der Papiergröße
 
Die Einstellung der Papiergröße auf einem Debian GNU/Linux-System wird während der Installation von
 
Ghostscript abgefragt. Der Wert wird in der Datei /etc/papersize gespeichert und kann dort auch jederzeit
 
geändert werden. Normalerweise werden Sie dort den Wert A4 vorfinden, weitere sinnvolle Werte wären zum
 
Beispiel auch A3 oder letter. Die meisten Programme benutzen diesen Wert, um die korrekte Papiergröße
 
einzustellen.
 
Wenn Sie CUPS als Drucksystem benutzen, kann die Papiergröße dort eingestellt werden.
 
9.3. Drucken von True Type Fonts
 
Der Ausdruck von Dateien erfolgt unter Debian GNU/Linux immer über das Programm ghostscript.
 
ghostscript ist unter Debian GNU/Linux in zwei Versionen verfügbar, eine Version im Bereich main, die
 
andere im Bereich non-free. Beide Versionen unterstützen auch True Type Fonts. Sie sollten auf alle Fälle
 
schon einen Font-Server für X11 mit Unterstützung für True-Type-Schriften installiert haben, wenn Sie diese
 
auch drucken möchten.
 
Erzeugen Sie zuerst eine Liste aller verfügbaren True-Type-Schriften und fügen Sie diese an die Liste der
 
ghostscript-Schriften mit dem Kommando: xfstt --gslist --sync >> /etc/gs.Fontmap an.
 
Verändern Sie nun die Datei /etc/gs.Fontmap sinngemäß wie in folgendem Beispiel. Aus:
 
(Arial) (/usr/share/fonts/truetype/arial.ttf) ;
 
(Arial Bold Italic) (/usr/share/fonts/truetype/arialbi.ttf) ;
 
wird:
 
/MS-Arial (/usr/share/fonts/truetype/arial.ttf) ;
 
/MS-Arial-Bold-Italic (/usr/share/fonts/truetype/arialbi.ttf) ;
 
(Arial Bold Italic) /MS-Arial-Bold-Italic ;
 
/Arial /MS-Arial ;
 
Diese Veränderung stellt sicher, daß alle True-Type-Schriften unter einem eindeutigen Namen verfügbar sind.
 
Weiterhin wird ghostscript so dazu veranlaßt, die True-Type-Schriften anstatt der Standard Schriften zu
 
verwenden.
 
Um zu erreichen, daß ghostscript den Font „Helvetica“ durch den True Type Font „Arial“ ersetzt, können
 
Sie folgenden Eintrag vornehmen:
 
/Helvetica /MS-Arial ;
 
/Helvetica-Oblique /MS-Arial-Italic ;
 
/Helvetica-Bold /MS-Arial-Bold ;
 
/Helvetica-BoldOblique /MS-Arial-Bold-Italic ;
 
Um zu überprüfen, daß Schriften auch von ghostscript gedruckt werden, erstellen Sie folgendes kleines
 
Script und speichern es als Datei printfont:
 
#!/bin/sh
 
set -e
 
IFS= ’)’
 
393
 
Kapitel 9. Drucken
 
while read fontname rest
 
do
 
cat << EOM | lpr
 
%!PS
 
(/usr/lib/ghostscript/5.50/prfont.ps) run
 
$fontname) DoFont
 
EOM
 
done
 
Dieses Script erzeugt eine Liste aller Fonts, die ghostscript bekannt sind, und druckt diese aus. Wenn Sie
 
nur einige wenige oder einen bestimmten Font drucken wollen, können Sie auch dieses Script benutzen:
 
#!/bin/sh
 
set -e
 
while read -p "Font name, or ^D to exit: " fontname
 
do
 
cat << EOM | lpr
 
%!PS
 
(/usr/lib/ghostscript/5.50/prfont.ps) run
 
$fontname DoFont
 
EOM
 
done
 
Rufen Sie nun eines der beiden Scripte wie folgt auf: xfstt --gslist --sync | printfont.
 
9.4. Netzwerkdrucker
 
Wenn Sie über zwei Rechner oder sogar über ein kleines Netz verfügen, so haben Sie sicher nicht an jedem
 
Rechner einen eigenen Drucker angeschlossen. Debian GNU/Linux bietet Ihnen die Möglichkeit, auch über das
 
Netzwerk zu drucken. Voraussetzung ist dazu natürlich ein Drucker mit einer funktionierenden Konfiguration
 
(lesen Sie dazu den Abschnitt über apsfilter) sowie ein funktionsfähiges Netzwerk mit mindestens zwei
 
Rechnern.
 
Im folgenden werden wir beschreiben, wie Sie einen an einem Debian GNU/Linux-Rechner angeschlossenen
 
Drucker von verschiedenen Betriebssystemen aus benutzen können. Lesen Sie hierzu auch die Abschnitte über
 
Samba und netatalk.
 
9.4.1. Linux – Linux
 
Wenn Sie von einem Debian GNU/Linux-Rechner auf einen an einem anderen Debian GNU/Linux-Rechner
 
angeschlossenen Drucker drucken wollen, ist dies recht einfach einzurichten. Zunächst müssen Sie auf dem
 
Rechner, an dem der Drucker angeschlossen ist, diesen für die anderen Rechner freigeben. Dies geschieht durch
 
folgenden Eintrag in der Datei /etc/hosts.equiv:
 
hoshi.openoffice.de
 
sushi.openoffice.de
 
192.168.22.33
 
Dies gibt den Zugriff auf den lokalen Drucker von den Rechnern „hoshi“, „sushi“ und einem Namenlosen
 
Rechner mit der IP-Nummer 192.168.22.33 im internen Netz, frei. Sie müssen nun noch auf den anderen
 
Rechnern die Datei /etc/printcap um einen Eintrag für den Remote-Drucker erweitern:
 
lp|Remote printer entry:\
 
:lp=:\
 
:rm=linux.openoffice.de:\
 
:rp=lp:\
 
:sd=/var/spool/lpd/remote:\
 
:mx#0:\
 
:sh:
 
394
 
Kapitel 9. Drucken
 
Ändern Sie bitte die Rechner- und Domainnamen entsprechend Ihrer Verhältnisse und starten Sie den
 
Druckerdämon mit /etc/init.d/lpd restart neu.
 
395
 
Kapitel 10. Grafik
 
10.1. The Gimp
 
The Gimp ist die Kurzform für „The GNU Image Manipulation Programm“. The Gimp stellt ein umfangreiches
 
Programm zur Bildbearbeitung dar. Folgende Debian GNU/Linux-Pakete stehen derzeit zur Auswahl:
 
gimp1.1, gimp1.1-nonfree, gimp-data-extras. Sinnvoll sind weitere Ergänzungen wie gimp-manual
 
(ein sehr umfangreiches, englischsprachiges Handbuch zu Gimp), xpcd-gimp (eine Erweiterung für
 
Photo-CDs) und xsane-gimp1.1 (eine Schnittstelle zu vielen Scannern und Kameras). Weiterhin ist auch die
 
ältere, aber stabile Version 1.0 von Gimp in Debian GNU/Linux 2.2 enthalten. Wir werden hier aber auf die
 
neuere Version 1.1 eingehen.
 
Weiterhin ist es sicher kein Fehler, einige weitere Schriften (fonts) zu installieren. Empfehlenswert sind hier die
 
Pakete freefont und sharefont sowie das Paket gsfonts-x11, welches Schriften aus Ghostscript unter
 
X11 verfügbar macht. Weitere Schriften finden sich oft auf CDs zu Computerzeitschriften oder im Netz. Diese
 
liegen meist nicht im von X11 verwendeten Postscript-Format vor, sondern als sogenannte True-Type Fonts. Sie
 
können über einen True-Type Fontserver verfügbar gemacht werden.
 
Doch zurück zu The Gimp. The Gimp wurde zunächst auf Basis von Motif, einem kommerziellem Toolkit,
 
entwickelt. Die Entwickler wollten das Programm jedoch einer breiten Masse verfügbar machen und so wurden
 
schon früh Anpassungen an den freien Motif-Klone Lesstif gemacht. Doch dieses Paket konnte die
 
Anforderungen der Entwickler nicht befriedigen, so daß Sie sich selbst an die Arbeit machten und ein eigenes
 
Toolkit, GTK (Gimp Toolkit) entwickelten. Schon bald wurde GTK ausgegliedert und als eigenes Projekt
 
weitergeführt. GTK ist mittlerweile die Basis von vielen freien Softwareprojekten, das bekannteste dürfte
 
(neben The Gimp selber) das GNOME-Projekt sein. Ein doppelter Erfolg für die Entwickler von The Gimp also.
 
Die Oberfläche von The Gimp teilt sich in ein Hauptfenster mit der Menüleiste und den Schaltflächen für die
 
verschiedenen Werkzeuge sowie jeweils einem Fenster für jede neue oder geladene Grafik.
 
Abbildung 10-1. The Gimp Menü
 
396
 
Kapitel 10. Grafik
 
Wundern Sie sich nicht, daß in den Menüs des Hauptfensters keine Einträge zum Speichern von Grafiken
 
vorhanden sind... Zu jeder geladenen Grafik sind im jeweiligen Fenster eigene Menüs vorhanden, welche über
 
die rechte Maustaste erreicht werden können. Aktionen, die sich auf die Grafik selber beziehen, können
 
hierüber ausgeführt werden. Allgemeingültige Aktionen (Einstellungen, Drucken, Scannen....) sind über das
 
Menü im Hauptfenster zu erreichen.
 
10.1.1. Kommandozeile
 
Da Gimp auf Unix-Systemen entwickelt wurde, läßt sich Gimp nicht nur von der Kommandozeile starten,
 
sondern es lassen sich auch über diverse Parameter auf der Kommandozeile Funktionen aufrufen oder das
 
Aussehen und Verhalten von Gimp beeinflussen. Sie können Gimp aber auch einfach nur von der
 
Kommandozeile aus starten, indem Sie gimp eingeben. Wie auch bei allen anderen Programmen üblich, läßt
 
sich Gimp mit der Option -h oder --help dazu bringen, die verfügbaren Kommandozeilenparameter
 
anzuzeigen.
 
bash-2.03$ gimp -h
 
Benutzung: gimp [Option ...] [Datei ...]
 
G&uuml;ltige Möglichkeiten sind:
 
-h --help Gibt diese Hilfe aus.
 
-v --version Gibt Versionsinformationen aus.
 
-b --batch <Befehle> Startet im Stapelmodus.
 
-g --gimprc <gimprc> Benutzt ein alternatives Profil.
 
-n --no-interface Startet ohne Oberfläche.
 
-r --restore-session Versucht eine abgelegte Sitzung wiederherzustellen.
 
--no-data Lädt keine Muster, Farbverläufe, Farbpaletten und Pinsel.
 
--verbose Zeigt Startmeldungen.
 
--no-splash Verbirgt Startfenster.
 
--no-splash-image Lädt kein Bild ins Startfenster.
 
--no-shm Keiner geteilter Speicher zwischen GIMP und Plug-ins.
 
--no-xshm Benutzt die Xshm Erweiterung nicht.
 
--console-messages Warnungen in einer Konsole statt in einem Dialog.
 
--debug-handlers Aktiviert Fehlersuchroutinen.
 
--display <Anzeige> Benutzt die angegebene X Anzeige.
 
--system-gimprc <gimprc> Benutzt alternatives Systemprofil.
 
10.1.1.1. Version (-v)
 
Wenn Sie die bei Ihnen installierte Gimp-Version herausbekommen möchten, benutzen Sie die Option -v:
 
bash-2.03$ gimp -v
 
GIMP Version 1.1.17
 
10.1.1.2. Batch Modus (-b)
 
Mit den Optionen -b oder -batch können Sie Gimp-Kommandos oder Scheme-Kommandos (Scheme ist die
 
von Gimp verwendete Script-Sprache) direkt von der Kommandozeile (Standardeingabe) oder aus einer Datei
 
heraus ausführen.
 
Beachten Sie, wenn Sie direkt auf der Kommandozeile Befehle an Gimp übergeben, daß Sie bestimmte Zeichen
 
(quotes) vor der Shell mit einem Backslash (\) „verstecken“ (maskieren) müssen.
 
gimp -b ’((gimp-palette-set-background \’(255 0 0)) ... (gimp-displays-flush))’
 
397
 
Kapitel 10. Grafik
 
Die Option -b muß als letzte auf der Kommandozeile angegeben werden, da alles, was danach folgt, von Gimp
 
als Kommando interpretiert wird.
 
10.1.1.3. No Interface (-n)
 
Mit dieser Option öffnet Gimp keinerlei Fenster, dies ist eigentlich nur im Zusammenhang mit dem Batch
 
Modus (-b) sinnvoll.
 
10.1.1.4. No Data (--no-data)
 
Diese Option beschleunigt den Start von Gimp, indem keine Pinsel, Muster, Farbverläufe und Farbpaletten
 
geladen werden. Vielfach werden Sie nur einige oder keine von diesen benötigen. Sie können Pinsel und Muster
 
auch später laden, indem Sie über das Menü Datei - Dialoge auf Pinsel oder Muster klicken.
 
10.1.1.5. Display (--display)
 
Über die Option --display können Sie Gimp auf dem Display (Bildschirm) eines anderen Rechners im Netz
 
starten. Hierbei wird Gimp auf dem lokalen Rechner ausgeführt, die Darstellung der Fenster und Menüs erfolgt
 
auf dem angegebenen Rechner.
 
bash-2.03$ gimp --display gimp.meinedomain.de:0.0
 
Sie können hierzu aber auch die Umgebungsvariable $DISPLAY benutzen: export
 
DISPLAY=gimp.meinedomain.de:0.0 .
 
10.1.2. Menüs und Tastatur
 
Die Werkzeugleiste von Gimp besteht aus drei Pull-Down-Menüs, vielen Icons sowie einer Fläche zur
 
Farbauswahl und einer Fläche zur Musterauswahl.
 
10.1.2.1. Datei
 
Das erste Menü, „Datei“, besteht aus folgenden Einträgen:
 
Abbildung 10-2. The Gimp Menü - Datei
 
398
 
Kapitel 10. Grafik
 
• Neu - öffnet einen Dialog, in dem Sie Angaben für eine neue Grafik machen können.
 
Abbildung 10-3. The Gimp Menü - Datei/Neu
 
Sie können die Höhe und Breite der Grafik entweder in Bildpunkten (Pixeln) oder in Millimeter, Punkt, Pica
 
und einigen anderen Einheiten angeben. Weiterhin bestimmen Sie hier die Auflösung der Grafik, auch hier
 
können Sie zwischen verschiedenen Einheiten wählen. Im unteren Bereich können Sie auf Wunsch ein
 
Graustufenbild erzeugen, voreingestellt ist immer „RGB“. Im Bereich „Füllart“ können Sie beispielsweise
 
einen transparenten Hintergrund einstellen.
 
• Öffnen - hier können Sie eine bestehende Grafik in Gimp laden.
 
399
 
Kapitel 10. Grafik
 
Abbildung 10-4. The Gimp Menü - Datei/Öffnen
 
Eine solche Dateiauswahl ist Ihnen sicher aus vielen anderen Programmen bekannt, zusätzlich können Sie
 
hier allerdings den Dateityp der zu ladenden Datei bestimmen, in den meisten Fällen ist hier aber keine
 
Auswahl notwendig, The Gimp erkennt alle Dateitypen automatisch.
 
• Holen - Hier verbirgt sich ein weiteres Menü: Wenn Sie keine weiteren Pakete installiert haben, finden Sie
 
hier lediglich den Eintrag „Screen Shot“, mit dem Sie Teile oder den gesamten Bildschirm „fotografieren“
 
können.
 
Abbildung 10-5. The Gimp Menü - Datei/Holen
 
Ist das Paket SANE installiert - dieses stellt Treiber für die verschiedensten Scanner zur Verfügung und wird
 
später noch genauer beschrieben – so finden Sie hier weitere Einträge, über die Sie Grafiken direkt aus The
 
400
 
Kapitel 10. Grafik
 
GIMP einscannen können.
 
• Einstellungen - ein Dialog für diverse Einstellungen. Hier finden Sie sehr viele Einstellmöglichkeiten, spielen
 
Sie einfach mal ein wenig damit herum... wir kommen später noch einmal darauf zurück.
 
• Dialoge - Zugriff auf verschiedene Dialoge, ohne daß eine Grafik geladen ist.
 
Abbildung 10-6. The Gimp Menü - Datei/Dialoge
 
• Die weiteren Einträge stellen die zuletzt bearbeiteten Grafiken dar, Sie können diese hier sehr schnell wieder
 
laden, ohne sich durch den Verzeichnisbaum kämpfen zu müssen.
 
• Beenden - Hier können Sie die Anwendung beenden. Bei noch nicht gespeicherten Bildern werden Sie
 
gefragt ob diesen gesichert werden sollen, oder ob die Änderungen verloren gehen dürfen. Diesen
 
Menüpunkt werden sie kaum benötigen... ;-)
 
Vielleicht ist Ihnen aufgefallen, daß es keine Möglichkeit gibt, Grafiken zu speichern. Gimp öffnet zu jeder
 
geladenen oder neu erstellten Grafik ein eigenes Fenster. Sie finden dort über die rechte Maustaste eine
 
Möglichkeit, die Grafik zu speichern.
 
10.1.3. Xtns (Extensions/Erweiterungen)-Menü
 
• Modul Browser - Eine Übersicht der zusätzlich installierten Module, normalerweise ist diese Liste leer.
 
• DB Anzeiger - über diesen Menüpunkt bekommen Sie Informationen zu den Internas von The Gimp.
 
• Plugin Details - Hier können Sie sich weitere Informationen zu allen installierten Plugins ansehen.
 
401
 
Kapitel 10. Grafik
 
Abbildung 10-7. The Gimp Menü - Xtns/Plugin Details
 
• Script-Fu - hinter diesem Eintrag befinden sich eine ganze Reihe von, meist in Scheme geschriebenen,
 
Scripten, mit denen Sie sehr schnell zum Beispiel Schaltflächen für Ihre Webseite erzeugen können oder auch
 
ein Hintergrundbild für Ihren Desktop erstellen können.
 
Abbildung 10-8. The Gimp Menü - Xtns/Script Fu
 
Die Scripte sind in verschiedene Bereiche geteilt, mitunter verwenden diese einige Schriften, die
 
normalerweise nicht auf jedem System verfügbar sind. Installieren Sie hierzu auch Pakete aus den Bereichen
 
non-free wenn nötig, oder verändern Sie die Vorgabewerte so, daß Schriften verwendet werden, die auch
 
auf Ihrem System installiert sind. Hier ein Beispiel aus dem Bereich „Logos“, der Eintrag „Neon“:
 
402
 
Kapitel 10. Grafik
 
Abbildung 10-9. The Gimp Menü - Xtns/Script Fu-Neon
 
...und hier das Ergebnis:
 
Abbildung 10-10. The Gimp Menü - Xtns/Script Fu-Neon
 
Experimentieren Sie einfach mit den anderen Einträgen herum.
 
• Video in Frames aufteilen - mit dieser Funktion können Sie Videos, die im Format MPEG vorliegen, in
 
einzelne Dateien aufteilen. Die einzelnen Bilder werden im Gimp-eigenen Format XCF im aktuellen
 
Verzeichnis gespeichert.
 
403
 
Kapitel 10. Grafik
 
Abbildung 10-11. The Gimp Video
 
Sie können hier angeben, ob nur ein bestimmter Bereich des Videos umgewandelt werden soll und welcher
 
Name den einzelnen Dateien vorangestellt werden soll.
 
Die eingebaute Konvertierungsroutine kann Videos im MPEG1-Format aufsplitten. Wenn Sie das Programm
 
XAnim installiert haben, kann The Gimp auch dieses verwenden.
 
• Web Browser - Hier befinden Sich einige Einträge zu The Gimp, ein Mausklick auf einen der Einträge lädt
 
die entsprechende Seite in den Webbrowser.
 
10.1.4. Symbole im Hauptmenü
 
Über die Symbole haben Sie schnellen Zugriff auf die wichtigsten Funktionen von Gimp, natürlich haben Sie
 
auch über die Menüleisten Zugriff auf alle Funktionen. Sie können das Hauptmenü in der Größe verändern, die
 
Symbole werden dann neu angeordnet. Wir gehen hier von einer unveränderten Fenstergröße aus.
 
Abbildung 10-12. The Gimp Hauptmenü
 
404
 
Kapitel 10. Grafik
 
In der ersten Zeile mit Symbolen finden Sie die verschiedenen Möglichkeiten, Bereiche auszuwählen, diese
 
gehen von einfachen, rechteckigen Bereichen bis hin zur Pfadauswahl.
 
In den nächsten Zeilen finden Sie Werkzeuge zum Verschieben, Vergrößern und Beschneiden sowie Werkzeuge
 
zur Umwandlung (drehen, skalieren, Perspektive, umkippen) und Textwerkzeuge.
 
In den letzten Zeilen befinden sich Werkzeuge zum Zeichnen in allen möglichen Formen, zum Löschen usw.
 
Einige dieser Werkzeuge verfügen über Einstellmöglichkeiten, diese erreichen Sie mit einem Doppelklick auf
 
das Symbol. Wenn Sie auf ein anderes Symbol klicken, während ein Einstelldialog für ein Werkzeug geöffnet
 
ist, wird der entsprechende Dialog angezeigt. Einige andere Werkzeuge öffnen bei jeder Benutzung einen
 
Dialog, diese sind von diesem Verhalten nicht betroffen.
 
10.1.5. Farbauswahl
 
Die Farbauswahl besteht aus zwei Feldern, welche die Vorder- und Hintergrundfarbe darstellen. Wenn Sie auf
 
eine dieser beiden Flächen doppelklicken, erscheint ein weiterer Dialog, in dem Sie eine andere Farbe wählen
 
können. Ein Mausklick auf den kleinen Pfeil vertauscht die Vorder- und Hintergrundfarbe.
 
Abbildung 10-13. The Gimp - Farbauswahl
 
10.1.6. Pinsel, Muster, Farbverlauf
 
Das letzte Feld unten rechts bietet 3 Flächen, die den aktuellen Pinsel, das aktuelle Muster und den aktuellen
 
Farbverlauf darstellen. Wenn Sie die linke Maustaste über dem Feld Muster oder Farbverlauf gedrückt halten,
 
wird die Ansicht vergrößert. Ein Doppelklick auf eines der drei Felder öffnet den entsprechenden Dialog, aus
 
dem Sie eine neue Auswahl treffen können.
 
405
 
Kapitel 10. Grafik
 
Abbildung 10-14. The Gimp Auswahl - Pinsel
 
Die Pinsel.
 
Abbildung 10-15. The Gimp Auswahl - Muster
 
Die Muster.
 
406
 
Kapitel 10. Grafik
 
Abbildung 10-16. The Gimp Auswahl - Verlauf
 
Die Verläufe.
 
10.1.7. Farbsysteme
 
The Gimp arbeitet mit den Farbsystemen RGB, Graustufen und Indizierte Farben. Bei einer RGB-Grafik wird
 
jeder Punkt der Grafik durch je einen Wert für die Farben Rot, Grün und Blau dargestellt. Eine Indizierte Grafik
 
ist genauso aufgebaut, die Anzahl der Farben und deren Werte werden jedoch aus einer Farbtabelle bezogen und
 
sind somit auf die vorgegebenen Werte festgelegt. Eine Grafik in Graustufen kann auch mit Indizierten Farben
 
realisiert werden, die Verwendung von RGB erlaubt jedoch ein wesentlich flexibleres Arbeiten mit der Grafik.
 
In den meisten Fällen sollten Sie sich bei einer neuen Datei für das RGB-Format entscheiden, mit diesem haben
 
Sie die meisten Möglichkeiten und können auf die meisten Funktionen innerhalb von The Gimp zugreifen.
 
10.1.8. Öffnen einer Datei
 
Beim Öffnen einer Datei können Sie den Dateityp angeben, in 99,9% aller Fälle kann Gimp diesen aber auch
 
selber ermitteln, so daß Ihnen hier nichts weiter bleibt, als den gewünschten Dateinamen auszuwählen.
 
10.1.9. Speichern einer Datei
 
Haben Sie diesen Eintrag schon im Hauptmenü vermißt? Keine Angst, The Gimp kann natürlich auch Ihre
 
Werke auf Festplatte sichern. Positionieren Sie hierzu die Maus über der Grafik und drücken Sie die rechte
 
Maustaste. Unter dem Menü „Datei“ finden Sie die beiden Einträge „Speichern“ und „Speichern unter“.
 
Beim Speichern von Grafiken gelangen Sie in einen Dialog, der dem beim Öffnen von Dateien sehr ähnlich ist.
 
Sie können hier den gewünschten Pfad auswählen sowie den Dateinamen eingeben, unter dem die Grafik
 
gespeichert werden soll. Normalerweise sichert The Gimp Ihre Grafik gleich in dem Format, welches Sie als
 
Dateiendung verwenden. Eine Datei mit der Endung .xcf würde im Gimp-eigenen Format gespeichert werden,
 
während die Endung .jpg oder .jpeg zu einer Datei im JPEG-Format führen würde.
 
Natürlich können Sie das Dateiformat auch explizit auswählen. Beachten Sie bitte, daß eventuell nicht alle
 
gewünschten Dateiformate für den erstellten Grafiktyp (RGB, Graustufen, Indizierte Farben) verfügbar sind.
 
Alle nicht verfügbaren Dateiformate werden in der Auswahl deaktiviert, also grau dargestellt, und können nicht
 
407
 
Kapitel 10. Grafik
 
angewählt werden. Später werden wir beschreiben, wie Sie den Grafiktyp verändern können, so daß Sie die
 
Grafik in dem gewünschten Format speichern können.
 
10.1.10. Ebenen
 
Bei umfangreichen Grafiken unterstützt Sie Gimp mit sogenannten Ebenen (englisch: Layer). Sie können Ihr
 
Werk in verschiedenen, übereinander liegenden Schichten anlegen und so nur in bestimmten Bereichen der
 
Grafik arbeiten. Wenn Sie mit Ebenen arbeiten, können Sie die Grafik nicht in den normalen Dateiformaten
 
(.tiff, .jpeg usw.) speichern. Diese Formate können nicht mit den Informationen über Ebenen umgehen, Sie
 
müssen zuerst die Ebenen zusammenführen, um die Grafik zu sichern. Natürlich können Sie die Grafik im
 
Gimp-eigenen Format (.xcf) sichern, wenn Sie die Ebenen erhalten möchten.
 
Abbildung 10-17. The Gimp Ebenen
 
Sie erreichen den Ebenen-Dialog über die Menüleiste im Hauptfenster (Datei - Dialoge - Ebenen & Kanäle)
 
oder, wenn sich der Mauszeiger über der Grafik befindet, mit der rechten Maustaste.
 
10.1.11. Grafiktypen
 
The Gimp arbeitet intern mit drei verschiedenen Farbmodellen: RGB, Graustufen und Indizierte Farben.
 
Mitunter kann es notwendig sein, während der Arbeit mit The Gimp das Farbmodell zu wechseln. Dies liegt
 
daran, daß nicht alle Funktionen alle Farbmodelle unterstützen. Weiterhin ist ein solcher Wechsel notwendig,
 
wenn Sie verschiedene Grafiken mit verschiedenen Farbmodellen zusammenführen wollen oder beim Speichern
 
von Dateien in einigen Formaten.
 
Die Vorgehensweise zum Umwandeln einer Grafik in ein anderes Farbmodell ist in jedem Fall gleich. Drücken
 
Sie die rechte Maustaste, während sich der Mauszeiger über der Grafik befindet, und wählen Sie den
 
Menüpunkt „Bild“, dort können Sie zwischen den drei Farbmodellen wählen.
 
Bei der Umwandlung in RGB oder Graustufen wird die gewünschte Aktion sofort durchgeführt, die Auswahl
 
von Indizierten Farben führt Sie zunächst zu einem Dialog. Wenn Sie hier „Erstelle optimale Palette“ wählen
 
408
 
Kapitel 10. Grafik
 
(die ist schon vorgewählt), können Sie die maximale Anzahl der Farben angeben, die später in der Grafik
 
benutzt werden sollen. Sie können hier noch mit den weiteren Einstellungen experimentieren, die vorgegebenen
 
Werte sind aber in den meisten Fällen ausreichend.
 
10.1.12. Undo
 
Mit der Funktion können Sie Arbeitsschritte rückgängig machen. Sie erreichen diese Funktion über das Menü
 
(Bearbeiten - Rückgängig) oder mit der Tastenkombination CTRL+Z. Normalerweise können Sie bis zu 5
 
Arbeitsschritte rückgängig machen, dies können Sie in den Voreinstellungen verändern.
 
10.1.13. Fenster
 
Jedesmal wenn Sie eine bestehende Grafik öffnen, wird diese in einem neuen Fenster dargestellt. Sie können so
 
viele Fenster öffnen, wie Sie möchten, dies wird nur durch die verfügbare Hardware beschränkt. Unabhängig
 
von der Anzahl der geöffneten Fenster, steht Ihnen immer nur ein Hauptmenü zur Verfügung.
 
Die Fenster haben keine eigenen Menüleisten wie sonst üblich. Sie haben zwei Möglichkeiten, an die
 
benötigten Funktionen zu gelangen. Mit der rechten Maustaste erhalten Sie an jeder Stelle in der Grafik ein
 
Pop-Up-Menü mit allen Funktionen.
 
Unter anderem für Benutzer eines Apple-Computers, diese verfügen nur über eine Maustaste, wurde in Gimp
 
1.1 in der oberen linken Ecke die Möglichkeit geschaffen, mit der linken Maustaste auf das Menü zuzugreifen.
 
Die Menüpunkte „Datei“, „Bearbeiten“, „Auswahl“ usw. beinhalten die üblichen Einträge. Der Menüeintrag
 
„Ansicht“ dient zum Zoomen (Verkleinern oder Vergrößern) der Ansicht, also eine Lupenfunktion. Weiterhin
 
finden Sie hier Informationen zum Fenster sowie einige Einstellmöglichkeiten.
 
10.1.14. Konfiguration
 
Gimp ist sehr individuell konfigurierbar. Viele der Einstellungen können über eine grafische Oberfläche
 
vorgenommen werden, andere werden über die Dateien gimprc und gtkrc im Verzeichnis .gimp gesteuert.
 
Auch Gimp unterscheidet zwischen systemweiten und benutzerbezogenen Konfigurationsdateien.
 
Benutzerbezogene Konfigurationsdateien befinden sich immer im Homeverzeichnis des Benutzers, im
 
Verzeichnis .gimp.
 
Gimp verfügt über einen sehr umfangreichen Konfigurationsdialog. Sie können die veränderten Einstellungen
 
mit einem Mausklick auf „OK“ für die aktuelle Sitzung aktivieren oder über die Schaltfläche „Speichern“
 
dauerhaft speichern.
 
Die Einstellungen von The Gimp sind innerhalb des Dialoges in verschiedene Bereiche (Neues Bild, Anzeige,
 
Oberfläche, Umgebung, Sitzung, Monitor und Verzeichnisse) aufgeteilt, teilweise mit weiteren Untermenüs.
 
10.1.14.1. Neues Bild
 
Hier finden Sie verschiedene Parameter, die beim Erstellen einer neuen Grafik greifen. Wenn Sie bestimmte
 
Werte häufig verwenden wollen, beispielsweise eine bestimmte Größe für Banner auf Webseiten, so können Sie
 
diese hier einstellen.
 
409
 
Kapitel 10. Grafik
 
Abbildung 10-18. The Gimp Menü - Datei/Einstellungen
 
• Standard-Bildgröße und Längeneinheit - Hier können Sie die Vorgabewerte für neu zu erstellende Grafiken
 
einstellen.
 
• Standard-Auflösung und Auflösungseinheit - Wählen Sie hier die Auflösung und die Einheit.
 
• Standard Bildtyp - Gimp benutzt normalerweise RGB als Standardwert, Sie können dies auch auf Graustufen
 
einstellen, wenn Sie häufig damit arbeiten. Indiziert wird nicht in den Voreinstellungen unterstützt, so daß nur
 
sehr wenige Funktionen von Gimp dies unterstützen. Hier können Sie auch die Speichergröße für neue
 
Grafiken begrenzen.
 
10.1.14.2. Anzeige
 
• Transparenz - Stellen Sie hier die Größe und die Farbe für die Bereiche einer Grafik ein, die transparent
 
dargestellt werden sollen.
 
10.1.14.3. Oberfläche
 
• Vorschaugröße - Hiermit stellen Sie die Größe der Vorschau für die verschiedenen Plug-Ins ein. Dies betrifft
 
nicht direkt die Einstellungen für die Grafik, beeinflußt aber die Geschwindigkeit bei der Erstellung dieser
 
Vorschau. Sie können hier zwischen sechs verschiedenen Größen wählen.
 
410
 
Kapitel 10. Grafik
 
• Größe der Dokumentenliste - Hier können Sie einstellen, wie viele der zuletzt bearbeiteten Grafiken im Menü
 
„Datei“ eingebunden werden sollen. Voreingestellt ist der Wert 4.
 
• Werkzeugkasten - Auf Wunsch können Sie die Anzeige von Pinseln, Mustern und Verläufen unterbinden.
 
• Hilfesystem - Hier können Sie die Popup-Hilfe und die kontextsensitive Hilfe abschalten und zwischen dem
 
internen Programm und einem externen Programm (Netscape) zur Anzeige der Hilfedateien wählen.
 
• Bildfenster - Neben Einstellungen für Lineale, Fenstergrößen und Statusanzeigen, können Sie hier die
 
Geschwindigkeit der markierten Linie, diese werden hier als Ameisen bezeichnet, um eine Auswahl
 
verändern, den Titel des Fensters verändern und einige Einstellungen zum Mauszeiger vornehmen.
 
• Werkzeugeinstellungen - Hier können Sie die globalen Pinseleinstellungen deaktivieren.
 
10.1.14.4. Umgebung
 
• Zurückhaltende Speicherausnutzung - Bei Systemen mit wenig Arbeitsspeicher können Sie diese Funktion
 
aktivieren. Gimp arbeitet dann etwas langsamer, verbraucht aber auch etwas weniger Speicher.
 
• Stufen der Rückgängigmachung - Hier können Sie einstellen, wie viele Arbeitsschritte widerufen werden
 
können. Voreingestellt ist der Wert 5, Sie können diesen erhöhen, beachten Sie jedoch, daß jeder
 
Arbeitsschritt, der im Speicher gehalten wird, auch Arbeitsspeicher (RAM) verbraucht.
 
• Größe des Datenspeichers - Alternativ können Sie hier den Wert auch in (Mega-/Kilo-)Byte angeben.
 
• Interpolationsart - Nicht immer ist genau die gewünschte Farbe verfügbar. Gimp kann in so einem Fall die
 
geeignetste Farbe ermitteln. Normalerweise wird hierzu eine lineare Interpolation benutzt. Wenn Sie
 
(beispielsweise nachdem Sie eine Grafik verkleinert haben) mit den Farben nicht zufrieden sind, können Sie
 
diesen Wert auf eine kubische Interpolation verändern und den Vorgang wiederholen. Kubische Interpolation
 
benötigt etwas mehr Zeit, führt aber oft zu besseren Ergebnissen. Eine weitere Möglichkeit ist die Einstellung
 
„nächster Nachbar“, bei dem eine benachbarte Farbe ausgewählt wird.
 
• Dateien sichern - Beim Speichern von Dateien kann The Gimp bei einigen Dateiformaten ein Vorschaubild
 
speichern, welches vor dem Laden angezeigt werden kann. Dies können Sie hier deaktivieren. Weiterhin
 
können Sie hier einstellen, ob die Auswahl des Menüpunktes „Sichern“ die Datei immer, auch wenn nichts an
 
der Grafik verändert wurde, abspeichert.
 
10.1.14.5. Sitzung
 
• Hier finden Sie einige Parameter zu Fensterpositionen und weiteren Geräten.
 
10.1.14.6. Monitor
 
• Hier können Sie die Monitorauflösung einstellen oder den vom X-Server gelieferten Wert übernehmen.
 
10.1.14.7. Directory Preferences
 
Gimp benutzt zwei Arten von Verzeichnissen: öffentliche und private. In den öffentlichen Verzeichnissen finden
 
Sie zum Beispiel Pinsel, auf die alle Benutzer des Systems zugreifen können. In den privaten Verzeichnissen
 
(unterhalb von /home/user/.gimp/) können Sie Dateien (auch Pinsel usw.) ablegen, auf die nur Sie Zugriff
 
haben.
 
Sie können jeweils mehrere Verzeichnisse angeben.
 
411
 
Kapitel 10. Grafik
 
• Temporäres Verzeichnis - in diesem Verzeichnis sichert Gimp Dateien, die während der Benutzung
 
zwischenzeitlich benötigt werden.
 
• Auslagerungsverzeichnis - Gimp speichert viele Daten zwischen. Dies spart einiges an Arbeitsspeicher. Gimp
 
versucht dies zu optimieren.
 
• Pinsel - in diesem Verzeichnis können Sie Pinsel ablegen. Sie können hier mehrere Verzeichnisse angeben.
 
• Erzeugte Pinsel - hier werden von Ihnen neu erstellte Pinsel gesichert.
 
• Muster - verschiedene Verzeichnisse für Muster
 
• Farbpaletten - Verzeichnisse, in denen sich Farbpaletten befinden.
 
• Farbverläufe - Verzeichnisse, in denen sich Farbverläufe befinden.
 
• Plugins - Verzeichnisse, in denen sich Plugins befinden.
 
• Module - Verzeichnisse, in denen sich Module befinden.
 
10.1.15. Auswahlen
 
Eine Auswahl (oder Selektion) ist ein Bereich der Grafik, den Sie mit der linken Maustaste markiert haben. Sie
 
können mehrere Auswahlen gleichzeitig aktiv halten. Alle Operationen, die Sie ausführen, wirken nur auf den
 
selektierten Bereich, unabhängig davon, ob Sie eine einfache oder eine Mehrfachauswahl aktiviert haben.
 
Gimp verfügt über verschiedene Auswahlwerkzeuge, Sie finden diese in den ersten Icon-Zeilen des
 
Hauptmenüs. Wenn Sie eines dieser Werkzeuge aktivieren, verändert sich der Mauszeiger in ein
 
Auswahlwerkzeug, wenn Sie sich gleichzeitig über einer Grafik befinden.
 
Abbildung 10-19. The Gimp - Auswahlwerkzeuge
 
Das letzte Werkzeug ist nicht im eigentlichen Sinne ein Auswahlwerkzeug, dient aber auch zum Verschieben
 
von Auswahlen und sollte deshalb hier nicht fehlen.
 
10.1.15.1. Gemeinsamkeiten
 
Bei allen Auswahlwerkzeugen können Sie mit einen Doppelklick auf das jeweilige Symbol weitere
 
Einstellungen vornehmen. Alle Auswahlwerkzeuge verfügen über eine „weiche“ Auswahl, diese beeinflußt den
 
Rand des ausgewählten Bereiches. Diese Option kann mit einem Schieberegler im Radius beeinflußt werden,
 
größere Werte ergeben einen größeren Radius.
 
Alle Auswahlwerkzeuge, mit Ausnahme der rechteckigen Auswahl, verfügen über eine
 
Weichzeichner-Funktion, diese ergibt eine mehr oder weniger starke Ausprägung der Pixel an den Rändern.
 
Einige Auswahlwerkzeuge verfügen noch über weitere spezifische Einstellmöglichkeiten.
 
Sie können die ausgewählten Bereiche mit einigen Tasten beeinflussen. Normalerweise ersetzt eine Auswahl die
 
bisher bestehende. Mit Hilfe einer Taste können Sie die bestehende Auswahl ergänzen oder den neu selektierten
 
Bereich aus der bestehenden Auswahl entfernen. Hier eine Übersicht der Tasten:
 
• Alt - Verschiebt eine Auswahl. Halten Sie die Taste gedrückt, der Mauspfeil verändert sein Aussehen, Sie
 
können nun mit der linken Maustaste den selektierten Bereich greifen und verschieben.
 
412
 
Kapitel 10. Grafik
 
• Shift - Ergänzt eine Auswahl. Wenn Sie die Taste Shift gedrückt halten, wird der bereits selektierte Bereich
 
nicht gelöscht, sondern bleibt bestehen und wird um den neuen Bereich ergänzt.
 
• STRG - Beschneidet eine Auswahl. Der neu selektierte Bereich wird aus der bestehenden Auswahl entfernt.
 
Wenn der neu selektierte Bereich keinen bereits ausgewählten Bereich überschneidet, hat dies keinerlei
 
Effekt.
 
• Shift & STRG - wenn die neue Auswahl eine breits bestehende Auswahl überlappt, so wird diese
 
Überlappung als neue Auswahl aktiviert. Wenn es keine Überlappung gibt, wird kein Bereich ausgewählt.
 
In jedem Fall beginnt ein selektierter Bereich an der Stelle, an der Sie die linke Maustaste drücken, und endet an
 
der Stelle, an der Sie die Taste wieder loslassen. Während dessen wird der selektierte Bereich farbig markiert
 
und nach Loslassen der Maustaste von einer gestrichelten Linie umschlossen. Durch die verschiedenen
 
Kombinationen mit den Tasten können Sie das Verhalten, wie oben beschrieben, beeinflussen.
 
10.1.15.2. Rechteckige Auswahl
 
Dies ist die einfachste Form der Auswahl. Es wird ein rechteckiger Bereich der Grafik selektiert. Den Startpunkt
 
setzen Sie durch Drücken der linken Maustaste, halten Sie die Taste gedrückt, bis Sie den Endpunkt erreicht
 
haben.
 
Abbildung 10-20. The Gimp - Auswahlwerkzeug/Rechteck
 
Durch Drücken der Taste STRG wird das Ende der Auswahl (die Stelle, an der Sie die Maustaste loslassen)
 
nicht als Endpunkt, sondern als Zentrum der Auswahl definiert.
 
Mit der Taste Shift erreichen Sie eine quadratische Auswahl.
 
10.1.15.3. Elliptische Auswahl
 
Abbildung 10-21. The Gimp - Auswahlwerkzeug/Elipse
 
Mit diesem Werkzeug erzeugen Sie elliptische oder kreisförmige Auswahlen. Klicken Sie mit der linken
 
Maustaste in die Grafik und halten Sie die Maustaste gedrückt. Wenn Sie nun die Maus bewegen, wird ein
 
elliptischer Bereich markiert, durch zusätzliches Drücken der Taste SHIFT wird ein kreisrunder Bereich
 
markiert. Vielleicht haben Sie bemerkt, daß die Auswahl am Rand der Ellipse beginnt und dort auch endet.
 
Wenn Sie die Taste CTRL drücken, wird der Startpunkt der Auswahl als Mittelpunkt der Ellipse gesetzt.
 
413
 
Kapitel 10. Grafik
 
10.1.15.4. Freihandauswahl
 
Abbildung 10-22. The Gimp - Auswahlwerkzeug/Freihand
 
Bei der Freihandauswahl setzen Sie durch Drücken der linken Maustaste den ersten Anker, wenn Sie nun die
 
Maus bewegen, folgt die Auswahl dem Mauszeiger. Wenn Sie die Maustaste loslassen, wird die Auswahl durch
 
eine gerade Linie von End- zum Startpunkt geschlossen. Mit dieser Auswahl können Sie so ziemlich jeden
 
Bereich, auch wenn er noch so unförmig ist, selektieren.
 
10.1.15.5. „Intelligente Schere“
 
Abbildung 10-23. The Gimp - Auswahlwerkzeug/Intelligente Auswahl
 
Diese Auswahl funktioniert ähnlich wie die Freihandauswahl, nur werden hier die Farben der umliegenden
 
Pixel berücksichtigt und die Auswahl angepaßt. Sie können die Empfindlichkeit dieser Anpassung durch einen
 
Doppelklick auf das Symbol einstellen.
 
Bei Grafiken mit sehr „unruhigen“ Bildinhalten und wenig Kontrast ist diese Auswahl nicht sehr wirkungsvoll,
 
Sie können aber versuchen, über die Einstellung der Empfindlichkeit eine bessere Auswahl zu erzielen.
 
Weiterhin gibt es bei dieser Auswahl eine Option „Sample Merged“, diese erweitert die Auswahl auf alle
 
sichtbaren Ebenen.
 
10.1.15.6. Bezier-Auswahl
 
Abbildung 10-24. The Gimp - Auswahlwerkzeug/Bezier
 
Dieses Auswahlwerkzeug verhält sich völlig anders, als alle bisher beschriebenen. Sie beginnen eine Selektion
 
indem Sie mit der linken Maustaste einmal klicken, dies setzt den Startpunkt. Der Punkt erscheint in einem
 
kleinen Kreis, einem sogenannten Anker (englisch: anchor).
 
414
 
Kapitel 10. Grafik
 
Wiederholen Sie dies rund um den Bereich, den Sie auswählen möchten, an jeder Stelle wird ein weiterer Punkt
 
gesetzt. Wenn Sie die Auswahl abgeschlossen haben, klicken Sie noch einmal auf den Startpunkt.
 
Damit ist die Auswahl aber noch nicht ganz abgeschlossen, bisher haben Sie nur einige gerade Linien erzeugt.
 
Wählen Sie nun einen der Anker aus, indem Sie ihn nochmal anklicken, halten Sie dabei die Maustaste
 
gedrückt. Wenn Sie nun die Maus bewegen, sehen Sie zwei Linien, die sich von diesem Punkt entfernen, jede
 
am Ende mit einem Quadrat markiert. Eine von diesen befindet sich in der Nähe des Mauspfeils. Diese Punkte
 
werden „handles“ genannt und dienen zum Verändern der Kurve. Halten Sie dazu einen dieser Punkte mit der
 
Maus fest und bewegen Sie ihn. Je nach Abstand zum Anker und abhängig von dem Winkel in dem Sie den
 
Punkt von der ursprünglichen Position wegbewegen, können Sie die Kurve verändern. Dies hört sich viel
 
komplizierter an als es ist!
 
Mit den Tasten STRG und Shift können Sie jeden der Anker verschieben.
 
Mit der Shift Taste können Sie die beiden zu einem Anker gehörenden „handles“ beeinflussen.
 
Nun ein kleines Beispiel, wie Sie diese Auswahl einsetzen können:
 
Erstellen Sie zunächst eine neue Grafik mit der Größe von 256x256 Pixeln. Zeichnen Sie nun mit dem
 
Bezier-Werkzeug ein Dreieck, klicken Sie hierzu mit der linken Maustaste viermal in das Bild, einmal oben in
 
der Mitte, einmal unten rechts, dann unten links und zum Abschluß noch einmal auf den Startpunkt. Hiermit
 
haben Sie die nötigen Anker für die Bezierkurve gesetzt.
 
Selektieren Sie nun den obersten, ersten Anker. Ein Mausklick auf diesen Punkt erzeugt die zu diesem Anker
 
gehörenden „Handles“. Wenn Sie nun die Maustaste gedrückt halten und die Maus nach links bewegen,
 
erscheinen einige weitere Linien. Beachten Sie, daß sich die Linie zu einer Kurve verwandelt hat. Wandern Sie
 
ein wenig mit der Maus umher und beobachten Sie, was passiert...
 
Lassen Sie nun die Maustaste los und wählen Sie den gleichen Punkt noch einmal, diesmal aber zusammen mit
 
der Taste STRG (halten Sie beide (Maus- und Tastatur-) Tasten gedrückt). Bewegen Sie nun die Maus, jetzt
 
wird der Ankerpunkt zusammen mit der Kurve verschoben.
 
Probieren Sie das gleiche noch einmal, diesmal aber mit der SHIFT-Taste. Sie können nun einzelne Handles
 
bewegen.
 
Wenn Sie die Handles stören, klicken Sie einfach irgendwo außerhalb des Dreieckes in das Bild. Wenn Sie mit
 
der Form zufrieden sind, klicken Sie innerhalb der Form, aber nicht auf einen der Handles. Die Form wird zu
 
einer Auswahl, diese können Sie nun beispielsweise mit einer Farbe füllen oder ausschneiden.
 
10.1.15.7. „Zauberstab“-Auswahl
 
Abbildung 10-25. The Gimp - Auswahlwerkzeug/Zauberstab
 
Der Zauberstab ist das mächtigste Auswahlwerkzeug von Gimp. Der Mauspfeil funktioniert ähnlich wie bei der
 
Freihand-Auswahl, allerdings wird nach Loslassen der Maustaste von Gimp versucht, zu „erraten“, welchen
 
Bereich Sie tatsächlich markieren wollten. Dies wird anhand der Farben der umliegen Pixel ermittelt. Der
 
selektierte Bereich wird erst nach nochmaligem Drücken und Loslassen der linken Maustaste zu einer richtigen
 
Auswahl.
 
Der Zauberstab hat noch einige weitere spannende Funktionen, die Sie am besten einfach mal ausprobieren.
 
Interessant ist noch die Funktion „Convert to Bezier Curve“, welche die aktuelle Auswahl in eine Bezierkurve
 
umwandelt und die Bezier-Auswahl aktiviert.
 
415
 
Kapitel 10. Grafik
 
10.2. Scanner
 
Für die Ansteuerung von Scannern unter Linux wurde eine universelle Schnittstelle, genannt SANE, entwickelt.
 
SANE steht für „Scanner Access Now Easy“, mal wieder eine der im Unix-Bereich sehr beliebten
 
Abkürzungen. SANE liest aber nicht nur Daten von Scannern ein (auch wenn dies die häufigste Anwendung
 
sein wird), sondern kann von einer großen Zahl von Geräten Bilddaten einlesen. Hierzu zählen auch Kameras.
 
SANE stellt den verschiedensten Anwendungen eine Schnittstelle zur Verfügung, so daß ein Treiber für ein
 
Gerät nur einmal entwickelt werden muß. SANE geht dabei noch einen Schritt weiter als ähnliche Treiber auf
 
anderen Betriebssystemen, SANE erlaubt auch ein Scannen übers Netz, der Scanner muß also nicht zwingend
 
an dem Rechner angeschlossen sein, auf dem zum Beispiel die Bildbearbeitungssoftware läuft.
 
SANE umfaßt neben den Treibern für verschiedene Geräte auch eine eigene grafische Oberfläche, so daß man
 
auch ohne ein Extraprogramm Daten einlesen kann. Diese Oberfläche benutzt, ebenso wie GNOME und The
 
Gimp, das GTK Toolkit.
 
Weiterhin können Sie SANE auch auf einem Rechner ohne grafische Oberfläche benutzen, beispielsweise auf
 
einem Server, und die Dienste von SANE so anderen Rechnern im Netz zur Verfügung stellen. Für die ersten
 
Gehversuche mit SANE müssen Sie nicht einmal über einen Scanner verfügen, ein Pseudo-Treiber erlaubt die
 
Benutzung von SANE zum Einlesen von Dateien im PNM-Format. Auch ist SANE nicht auf den Betrieb unter
 
Linux beschränkt, Sie können SANE auch unter diversen anderen Unix-Versionen betreiben.
 
SANE unterstützt die meisten Scanner mit SCSI-Schnittstelle und vermehrt auch Modelle mit USB-Anschluß.
 
Ältere Scanner zum Anschluß an die parallele Schnittstelle werden nur sehr begrenzt unterstützt, eine Übersicht
 
finden Sie unter der URL http://www.pro-linux.de/t_hardware/pscanner.html.
 
10.2.1. SANE einrichten
 
Zuerst müssen Sie natürlich die Debian-Pakete zu SANE auf Ihrem System installieren. Diese sind: sane,
 
libsane, xsane, xsane-gimp und sane-gimp. Installieren Sie zunächst einmal sane wie folgt:
 
sushi:/home/fr/# apt-get install sane
 
Reading Package Lists... Done
 
Building Dependency Tree... Done
 
The following extra packages will be installed:
 
libgimp1 libsane
 
The following NEW packages will be installed:
 
libgimp1 libsane sane
 
0 packages upgraded, 3 newly installed, 0 to remove and 3 not upgraded.
 
Need to get 703kB of archives. After unpacking 1729kB will be used.
 
Do you want to continue? [Y/n]
 
Get:1 ftp://localhost unstable/main libsane 1.0.1-1999-10-21-6 [567kB]
 
Get:2 ftp://localhost unstable/main sane 1.0.1-1999-10-21-6 [73.8kB]
 
Get:3 ftp://localhost unstable/main libgimp1 1.0.4-2.0.1 [61.9kB]
 
Fetched 703kB in 16s (42.4kB/s)
 
Selecting previously deselected package libsane.
 
(Reading database ... 62718 files and directories currently installed.)
 
Unpacking libsane (from .../libsane_1.0.1-1999-10-21-6_i386.deb) ...
 
Selecting previously deselected package libgimp1.
 
Unpacking libgimp1 (from .../libgimp1_1.0.4-2.0.1_i386.deb) ...
 
Selecting previously deselected package sane.
 
Unpacking sane (from .../sane_1.0.1-1999-10-21-6_i386.deb) ...
 
Setting up libgimp1 (1.0.4-2.0.1) ...
 
Setting up libsane (1.0.1-1999-10-21-6) ...
 
Setting up sane (1.0.1-1999-10-21-6) ...
 
Zusätzlich wurden automatisch die benötigten Pakete libgimp1 und libsane installiert. Nun steht Ihnen das
 
Programm sane-find-scanner zur Verfügung, mit diesem können Sie nun feststellen, welches Device für
 
Ihren Scanner benutzt wird. Der Scanner muß dazu natürlich angeschlossen und eingeschaltet sein.
 
sushi:/# sane-find-scanner
 
416
 
Kapitel 10. Grafik
 
sane-find-scanner: found processor "HP C2520A 3503" at device /dev/sg0
 
Legen Sie nun einen Link vom angegebenen Device auf /dev/scanner an: ln -s /dev/sg0
 
/dev/scanner. Alternativ können Sie auch in der passenden Datei unter /etc/sane.d/ den Eintrag
 
anpassen... aber die Methode, einen Link anzulegen, ist einfacher und universeller. Ein solcher Link wird im
 
übrigen auch schon bei der Basisinstallation per CD-ROM für das Device /dev/cdrom vorgenommen und ist
 
auch für andere Geräte, wie zum Beispiel ein Modem (ein Link von /dev/ttyS1 auf /dev/modem zum
 
Beispiel), sinnvoll.
 
Werfen Sie nun noch einen Blick in die Datei /etc/sane.d/dll.conf. In dieser finden Sie einen Eintrag für
 
jeden verfügbaren Treiber. Sie können die nicht benötigten auskommentieren, wichtiger ist aber, daß der
 
Treiber, den Sie wirklich benötigen, nicht auskommentiert ist. Die Datei /etc/sane.d/dll.conf:
 
# enable the next line if you want to allow access through the network:
 
# The following backends may hang when they are not present:
 
# abaton, apple, tamarack
 
# hp backend may core when not present
 
# The following backends will print warning messages when not present:
 
# s9036, agfafocus
 
net
 
#abaton
 
#agfafocus
 
#apple
 
artec
 
canon
 
coolscan
 
#dc25
 
#dc210
 
dmc
 
epson
 
hp
 
microtek
 
microtek2
 
#mustek
 
pint
 
#pnm
 
qcam
 
ricoh
 
#s9036
 
sharp
 
snapscan
 
#tamarack
 
umax
 
Prüfen Sie nun mittels scanimage -L, ob das entsprechende Gerät gefunden wird:
 
# scanimage -L
 
device ‘hp:/dev/sg0’ is a Hewlett-Packard C2520A flatbed scanner
 
device ‘hp:/dev/scanner’ is a Hewlett-Packard C2520A flatbed scanner
 
Durch den angelegten Link wird das Gerät nun zweimal angezeigt. Beachten Sie, daß hier auch der benötigte
 
Treiber angezeigt wird, dies ist der Eintrag am Anfang der Zeile, direkt hinter device. In diesem Fall wird also
 
der hp-Treiber verwendet. Sie können nun einen ersten Versuch starten, indem Sie das Kommando scanimage
 
--device hp > abc.pnm benutzen, um ein Bild zu scannen und in die Datei abc.pnm zu schreiben. Sie
 
müssen natürlich das für Ihren Scanner passende Device angeben.
 
Damit ist die eigentliche Installation des Scanners abgeschlossen. Kommen wir nun zum Abschluß: eine
 
Benutzeroberfläche muß her.
 
417
 
Kapitel 10. Grafik
 
10.2.2. xscanimage
 
Dazu stehen Ihnen gleich mehrere Programme zur Auswahl. Neben xsane steht Ihnen auch noch xscanimage
 
zur Verfügung. xsane wird bei der Installation so eingerichtet, daß Sie auch direkt aus The Gimp heraus
 
scannen können. xscanimage steht Ihnen bereits zur Verfügung, es wird zusammen mit dem Paket sane
 
installiert.
 
Abbildung 10-26. xscanimage Auswahl
 
Nach dem Start von xscanimage müssen Sie zunächst das passende Gerät auswählen. Danach wird die
 
eigentliche Benutzeroberfläche gestartet.
 
Abbildung 10-27. xscanimage scannen
 
418
 
Kapitel 10. Grafik
 
Im Feld „Filename“ können Sie einen Dateinamen eingeben oder über die Schaltfläche „Browse“ auswählen,
 
unter dem der Scan später gespeichert werden soll. Unter „Scan Mode“ können Sie zwischen „Lineart“,
 
„Halftone“ „Grayscale“ oder „Color“ wählen sowie die Auflösung des Scans einstellen. Weiter unten lassen
 
sich Einstellungen zu Kontrast und Helligkeit vornehmen. Links unten im Fenster wird die Größe des Scans
 
einmal für die Auflösung (die Einheit ist abhänging von der Auswahl im Menü unter „Preferences“ - „Length
 
Unit“) sowie für die spätere Größe der Datei angezeigt. Die Schaltfläche „Preview Window“ öffnet ein Fenster,
 
in dem Sie eine Vorschau des Scans sehen können. Diese wird normalerweise erst einmal in Schwarz-Weiß
 
erstellt, Sie können dies aber unter „Scan Mode“ verändern. Im „Preview“-Fenster können Sie mit der linken
 
Maustaste einen Bereich markieren, der Scan wird dann auf diesen Ausschnitt begrenzt.
 
10.2.3. xsane
 
Als zweite grafische Schnittstelle zu Ihrem Scanner steht noch xsane zur Verfügung. Hierzu ist zuerst das Paket
 
sane-gimp1.1 (am einfachsten via apt-get install sane-gimp1.1) zu installieren. Auch xsane startet
 
zuerst mit einer Auswahl der verfügbaren Geräte, diesmal aber etwas eindrucksvoller:
 
Abbildung 10-28. xsane Auswahl
 
xsane erscheint auf den ersten Blick nicht so mächtig wie xscanimage; doch der Schein trügt. Hinter den
 
Menüpunkten „Preferences“ und „View“ verbergen sich zahlreiche Auswahl- und Einstellmöglichkeiten.
 
419
 
Kapitel 10. Grafik
 
Abbildung 10-29. xsane scannen
 
Einiges kennen Sie schon von xscanimage her, neu ist aber die Auswahl unter „Scan mode“ zwischen „Scan“,
 
„Copy“ und „Fax“. Die Option „Scan“ erstellt eine Datei auf Ihrer Festplatte. Mittels „Copy“ wird die Ausgabe
 
direkt auf einem Drucker ausgegeben und „Fax“ schließlich gibt die gescannten Daten über eine Telefonleitung
 
an ein entferntes Faxgerät weiter.
 
420
 
Kapitel 10. Grafik
 
Abbildung 10-30. xsane Vorschau
 
Natürlich verfügt auch xsane über eine Vorschau beim Scannen. Hierbei wird die Vorlage mit einer niedrigen
 
Auflösung ohne Farben eingescannt und Sie können dann mit der Maus den gewünschten Bereich auswählen.
 
10.2.4. Scannen mit The Gimp
 
Wenn Sie direkt aus The Gimp heraus scannen möchten, wählen Sie einfach aus dem Menü „Datei“ den Eintrag
 
„Holen“ und den gewünschten Gerätetreiber. Die Benutzung gestaltet sich genauso, mit dem einzigen
 
Unterschied, daß die gescannten Daten nicht auf der Festplatte gepeichert werden, sondern direkt in The Gimp
 
geladen und dort bearbeitet werden können.
 
Abbildung 10-31. xsane Gimp Menü
 
421
 
Kapitel 10. Grafik
 
Da xsane als Plugin in The Gimp integriert ist, stehen Ihnen auch bei der Benutzung aus The Gimp heraus alle
 
Funktionen (wie zu Beispiel die Vorschau) zur Verfügung.
 
Abbildung 10-32. xsane Gimp Menü
 
10.3. Digitalkameras
 
Digitalkameras sind mittlerweile mit mehreren Millionen Pixeln in der Lage qualitativ hochwertige Bilder zu
 
liefern. Um diese an einem Debian GNU/Linux-System zu betreiben, ist das Programm gPhoto die erste Wahl.
 
Momentan werden von gPhoto über hundert verschiedene Kamera-Modelle der verschiedensten Hersteller
 
unterstützt.
 
422
 
Kapitel 10. Grafik
 
Wenn Sie den Kauf einer Digitalkamera planen, sollten Sie zuerst einen Blick in die Dokumentation zu gPhoto
 
werfen oder auf der Webseite http://www.gphoto.org/index.html prüfen, welches Modell unterstützt wird.
 
Einige Hersteller halten die Informationen über die verwendeten Protokolle zum Datenaustausch geheim, somit
 
ist eine Unterstützung dieser Kameras von gPhoto nicht sichergestellt.
 
10.3.1. gPhoto
 
Abbildung 10-33. gPhoto
 
10.3.1.1. Einstellungen
 
Beim ersten Start von gPhoto müssen Sie einige Einstellungen zu Ihrem Kameramodell und zur Schnittstelle, an
 
der die Kamera angeschlossen ist, vornehmen. Speichern Sie dann diese Einstellungen ab.
 
423
 
Kapitel 10. Grafik
 
Abbildung 10-34. gPhoto Einstellungen
 
Wenn Sie später noch Änderungen an diesen Einstellungen vornehmen wollen, können Sie dies über das Menü
 
„Configure“ - „Select Port-Camera Model“ vornehmen.
 
10.3.1.2. Benutzung
 
Der Menüpunkt „Get Index“ im Menü „Camera“ erzeugt eine Übersicht der in der Kamera gespeicherten
 
Bilder. Sie können mit gPhoto zwei verschiedene Arten dieses Indexes erzeugen.
 
„Thumbnails“ erzeugt eine verkleinerte Ansicht zu jedem in der Kamera gespeicherten Bild. Sie können mit
 
einem Mausklick auf jedes einzelne Bild dieses zum späteren Speichern auf der Festplatte auswählen.
 
„No Thumbnails“ ist um einiges schneller bei der Darstellung der Übersicht. Für jedes in der Kamera
 
gespeicherte Bild wird eine Schaltfläche angezeigt. Sie können nun mit einem Mausklick die gewünschten
 
Bilder zum Speichern auswählen. Wenn Sie trotzdem eine verkleinerte Ansicht eines bestimmten Bildes sehen
 
möchten, klicken Sie zweimal auf die entsprechende Schaltfläche.
 
10.3.1.3. Übertragung von Bildern/Thumbnails
 
Nachdem Sie eines oder mehrere Bilder ausgewählt haben, die Sie von der Kamera auf die Festplatte Ihres
 
Computers übertragen möchten, können Sie die Bilder selber und/oder die verkleinerten Ansichten der Bilder
 
an einem beliebigen Ort speichern. Auch hierbei gibt es wieder zwei verschiedene Wege:
 
„Open in Window“, diese Option lädt die ausgewählten Bilder in das Programm gPhoto. Sie können nun
 
Veränderungen an dem Bild vornehmen oder das Bild in verschiedenen Formaten speichern.
 
„Save to disk“, diese Aktion speichert die ausgewählten Bilder direkt auf die Festplatte. Sie werden vorher noch
 
aufgefordert, den Pfad, in dem die Bilder gespeichert werden sollen, auszuwählen. Weiterhin müssen Sie einen
 
Dateinamen angeben. Dieser wird mit der Nummer des Bildes sowie der Endung für das Dateiformat ergänzt.
 
Wenn Sie zum Beispiel die Bilder 1 und 2 zum Speichern ausgewählt haben und als Dateinamen „Urlaubsbild“
 
gewählt haben, so werden die beiden Bilder als „Urlaubsbild-001.jpg“ und „Urlaubsbild-002.jpg“ in dem
 
ausgewählten Verzeichnis gespeichert.
 
Es ist ebenfalls möglich, zusätzlich die Bilder als verkleinerte Versionen zu speichern. Dies kann zum Beispiel
 
zur Erstellung von Webseiten nützlich sein. Sie können dies über das Menü „Camera“ - „Get Selected“
 
424
 
Kapitel 10. Grafik
 
aktivieren. Die Auswahl „Images“ speichert das Bild in der vollen Größe, die Auswahl „Thumbnails“ speichert
 
nur die verkleinerte Version der Bilder, und die Auswahl „Both“ speichert beide Versionen der Bilder.
 
Die aktuelle Version erlaubt es auf der Kommandozeile alle auf der Kamera gespeicherten Bilder auf den
 
Rechner zu übertragen. Hierbei ist anzugeben an welchem Anschluss die Kamera angeschlossen ist: gphoto2
 
--port "usb:" --get-all-images. Danach können dann die Bilder auch gelscht werden: gphoto2
 
--port "usb:" --delete-all-images
 
10.3.1.4. Löschen von Bildern aus dem Kameraspeicher
 
Über den Menüpunkt „Camera“ - „Delete Selected Images“ können Sie die ausgewählten Bilder von der
 
Kamera löschen. Vor dem eigentlichen Löschen der Bilder müssen Sie die Aktion noch einmal bestätigen.
 
Das Löschen von Bildern auf der Kamera von einem externen Programm wird nicht von allen Kameras
 
unterstützt. In diesem Fall bekommen Sie eine entsprechende Meldung.
 
10.3.1.5. Fotografieren
 
Über den Menüpunkt „Take Picture“ im „Camera“-Menü können Sie direkt fotografieren. Das Bild wird in
 
gPhoto angezeigt. Beachten Sie bitte, daß nicht alle Kameramodelle diese Funktion unterstützen.
 
10.3.1.6. Kamera konfigurieren
 
Der Menüpunkt „Configure Camera“ aus dem Menü „Configure“ dient zur Einstellung der verschiedensten
 
Parameter Ihrer Kamera. Dies ist sehr abhängig von den Fähigkeiten Ihrer Kamera und der passenden, von
 
gPhoto verwendeten Bibliothek.
 
10.3.1.7. Kamera-Informationen
 
Auch diese Funktion ist von Ihrem Kameramodell abhängig. Zum Beispiel können Angaben über die Anzahl
 
der auf der Kamera gespeicherten Bilder, die Anzahl der noch zu speichernden Bilder oder den Status der
 
Batterie angezeigt werden.
 
10.3.1.8. Bilder aus Verzeichnissen
 
Sie können mit gPhoto auch komplette Verzeichnisse mit Bildern durchsuchen und anzeigen lassen. Über das
 
Menü „File“ können Sie den Eintrag „Open Directory...“ auswählen und das gewünschte Verzeichnis
 
selektieren. Es wird Ihnen dann eine Übersicht der in diesem Verzeichnis gefundenen Bilder angezeigt.
 
Dieser Modus funktioniert genauso wie das Einlesen der Bilder von einer Kamera. Sie können auch hier
 
einzelne Bilder durch einen Mausklick auswählen und danach eine Option aus dem Menü, zum Beispiel „Get
 
Selected“, oder der Menüleiste auswählen. Sie können ein anderes Verzeichnis auswählen, indem Sie „Get
 
Index“ aus dem Kamera-Menü auswählen.
 
In diesem Modus sind mit Ausnahme von „Take Picture“, „Delete Selected Images“, und das „Live Preview“
 
Plugin alle Funktionen von gPhoto verfügbar. Sehr nützlich ist in diesem Zusammenhang der „HTML Gallerie
 
Generator“.
 
10.3.1.9. Bearbeiten von Bildern
 
gPhoto kann geöffnete Bilder mit einigen eingebauten Funktionen bearbeiten. Hierbei ist es egal, ob es sich um
 
Bilder handelt, die gerade von einer Kamera übertragen wurden, oder ob die Bilder von der Festplatte stammen.
 
Im Menü „Edit“ finden Sie zwei Menüpunkte:
 
„Image Orientation“: hier verbergen sich Optionen zum Drehen (rotating) und Spiegeln (flipping) der Bilder.
 
„Image Dimension“: Hier finden Sie einige Optionen zum Verändern der Bildgröße. Sie können sofort das Bild
 
in der Größe halbieren oder verdoppeln, oder die gewünschte Größe genau angeben. Wenn Sie hier „Constrain
 
Proportions“ aktivieren, wird das Seitenverhältnis beibehalten.
 
425
 
Kapitel 10. Grafik
 
Auch auf diese Funktionen können Sie über die Werkzeugleiste zugreifen.
 
10.3.1.10. Automatische Nachbearbeitung von Bildern
 
Mit der automatischen Nachbearbeitung von Bildern können Sie die Funktionalität von gPhoto selber erweitern.
 
Über diese Funktion wird nach dem Laden eines Bildes das von Ihnen angegebene Script ausgeführt und auf
 
das Bild angewendet.
 
Mit einem Mausklick auf die Schaltfläche „Post-Process“ am unteren Rand des gPhoto-Fensters können Sie ein
 
Fenster öffnen, in dem Sie diese Funktionalität aktivieren und deaktivieren können („Enable Post-Processing“).
 
In dem Textfeld können Sie einen Befehl eingeben, der nach dem Laden jedes Bildes ausgeführt werden soll.
 
Hierbei können Sie die Variable „%s“ für den Namen des aktuellen Bildes einsetzen.
 
Unter Debian GNU/Linux gibt es eine Vielzahl von Programmen, die auf der Kommandozeile Bilddaten
 
bearbeiten können. Die Pakete netpbm und imagemagic liefern Ihnen alle nur denkbaren Funktionen. Sie
 
können auf diesem Wege auch das Programm The Gimp in gPhoto einbinden, um Ihre Bilder zu bearbeiten.
 
Lesen Sie dazu im Abschnitt The Gimp nach, wie Sie dieses Programm über die Kommandozeile steuern
 
können.
 
10.3.1.11. Speichern von geöffneten Bildern
 
Wenn Sie an den geladenen Bildern Änderungen vorgenommen haben oder die Bilder noch gar nicht
 
gespeichert haben, so können Sie dies über den Menüpunkt „Save Opened Image(s)“ vornehmen. Diese
 
Funktion erreichen Sie auch über die Werkzeugleiste.
 
Abbildung 10-35. gPhoto speichern
 
In dem dann erscheinenden Fenster wählen Sie das Verzeichnis aus, in dem die Bilder gespeichert werden
 
sollen.
 
Wenn Sie nur das aktuelle Bild speichern möchten, klicken Sie nicht auf „Save all opened images“, sondern
 
geben Sie den vollen Dateinamen an. Das Dateiformat bestimmen Sie, indem Sie die entsprechende Endung,
 
also zum Beispiel .gif oder .jpg, angeben.
 
Zum Speichern aller geöffneten Bilder aktivieren Sie die Option „Save all opened images“ und geben den
 
gewünschten Begin des Dateinamens an. Dieser wird - wie schon zuvor beschrieben - um die laufende Nummer
 
des Bildes und die Endung .jpg für jedes Bild erweitert.
 
10.3.1.12. Drucken von Bildern
 
Das Drucken von Bildern aus gPhoto ist sehr einfach. Wenn Sie das gewünschte Bild in gPhoto geöffnet haben,
 
wählen Sie einfach aus dem Menü „File“ den Eintrag „Print“ aus. Auch für diese Funktion finden Sie in der
 
Werkzeugleiste ein Symbol.
 
Abbildung 10-36. gPhoto drucken
 
426
 
Kapitel 10. Grafik
 
In dem dann erscheinenden Fenster können Sie weitere Optionen für das zum Druck verwendete Kommando
 
lpr angeben. Voraussetzung für einen erfolgreichen Druck ist natürlich, daß Sie zuvor Ihren Drucker richtig
 
konfiguriert haben. Informationen hierzu finden Sie im Abschnitt Drucken.
 
10.3.1.13. Plugins
 
gPhoto verfügt momentan über zwei Plugins:
 
Live Camera!: mit diesem Plugin können Sie das laufende Kamerabild sehen. Sie können hier ebenfalls ein Bild
 
„knipsen“.
 
HTML Gallery: Dieses Plugin erzeugt eine Webseite mit allen Bildern aus dem aktuellen Index. Zunächst
 
können Sie hier einen Titel eingeben, danach können Sie ein Layout für die Seiten wählen. Abschließend
 
müssen Sie noch das Verzeichnis auswählen, in dem die Bilder und die Webseiten gespeichert werden sollen.
 
Ein Beispiel für eine mit gPhoto erstellte Seite finden Sie unter der URL: http://www.gphoto.org/webserver .
 
Wenn Sie eigene Vorlagen für Webseiten erzeugen möchten, werfen Sie einen Blick auf die Seite
 
http://www.gphoto.org/docs.php3 unter den Punkt „HTML Gallery engine specs“.
 
10.3.1.14. gPhoto auf der Kommandozeile
 
Auch gPhoto läßt sich von der Kommandozeile aus bedienen bzw. mit verschiedenen Parametern aufrufen.
 
Einige der Parameter benötigen ein laufendes X-System, um zu funktionieren.
 
Wenn Sie gPhoto von der Kommandozeile aus mit der Option -h aufrufen, bekommen Sie eine Übersicht der
 
Funktionen angezeigt.
 
fr@linux:~$ gphoto -h
 
gPhoto v.0.3.5 - the GNU digital camera application
 
Covered by the GNU GPL. Type "gphoto -v" for details.
 
Usage: gphoto [-h] [-n] [-s # filename] [-t # filename]
 
[-d #] [-l filename]
 
-n display the # of pictures
 
-s # filename save image # as filename
 
-t # filename save thumbnail # as filename
 
-d # delete image # from camera
 
-l filename save live preview as filename
 
-h display this help screen
 
-v display information about the 0.3.5 version
 
Hier einige Beispiele:
 
gphoto -s 2 /var/www/wasser.jpg
 
Speichert Bild Nummer 2 als Datei wasser.jpg im Verzeichnis /var/www/ ab.
 
gphoto -s 5 wasser.jpg -t 5 wasser-small.jpg
 
Speichert das Bild Nummer 5 im aktuellen Verzeichnis in voller Größe und in verkleinerter Form.
 
Mit diesen Optionen von gPhoto können Sie sehr leicht eigene Shell-Scripte, zum Beispiel für eine Webcam,
 
erstellen.
 
10.3.1.15. Weitere Informationen
 
Mehr Infos zu gPhoto finden Sie auf der Webseite unter der URL http://www.gphoto.org.
 
427
 
Kapitel 11. Office Pakete
 
Als „Office Pakete“ bezeichnet man Zusammenstellungen von Anwendungen welche im Bürobereich genutzt
 
werden. Hauptsächlich sind dies Textverarbeitungen und Tabellenkalkulationen, aber auch Grafik- und
 
Präsentationsprogramme gehören in diesen Bereich. Mitunter sind auch E-Mail Programme in diesen
 
Sammlungen anzutreffen. An dieser etwas unklaren Deffinition zeigt sich schon das Office Pakete
 
unterschiedlich ausgestattet sein können.
 
Office Pakete können dabei aus einzelnen Anwendungen, welche in einem Paket oder Projekt zusammengeführt
 
werden, oder aber in einer einzigen Anwendung bestehen. Unter GNU/Linux sind die bekanntesten, als Freie
 
Software verfügbaren, Pakete: KOffice, Gnome Office und OpenOffice.org.
 
11.1. OpenOffice.org
 
Abbildung 11-1. OpenOffice.org - Splashscreen
 
OpenOffice.org ist ein Open Source Projekt mit der Zielsetzung, die international führende Office-Suite zu
 
entwickeln, die auf allen wichtigen Plattformen läuft und Zugang zu Funktionen und Daten durch transparente
 
Schnittstellen und ein XML-basiertes Dateiformat gewährt.
 
OpenOffice.org basiert auf den Quelltexten von StarOffice 5.1 welche von Sun als OpenSource Software
 
freigegeben wurden. Dieses zunächst einfach „OpenOffice“ genannte Paket, eine Umbenennung war notwendig
 
da der Name bereits für ein anderes Produkt genutzt wurde, umfasst die Anwendungen Textverarbeitung,
 
Tabellenkalkulation, Zeichenprogramm und Präsentation. Leider konnten nicht alle Komponenten von
 
StarOffice als Freie Software in OpenOffice.org einfliessen, da Teile von externen Herstellern eingekauft
 
wurden. Im wesentlichen handelte es sich dabei um die Rechtschreibkorrektur und das Drucksystem, beide
 
Teile wurden mittlerweile in OpenOffice.org durch Komponenten aus dem OSS Bereich ersetzt, so daß dieses
 
Paket wieder voll einsatzfähig ist.
 
428
 
Kapitel 11. Office Pakete
 
OpenOffice.org besteht aus Textverarbeitung, Tabellenkalkulation, Präsentation, Zeichenprogramm, einem
 
Modul zur Erstellung von Diagrammen, einem Formel-Editor und Dateiformat-Wandler (inklusive der Formate
 
für Microsoft Office).
 
11.1.1. Installation
 
OpenOffice.org ist noch nicht Bestandteil der Debian Distribution, ist aber aufgrund der Popularität trotzdem in
 
einigen Debian CD Distributionen integriert, bzw. auf einer extra CD zu finden. Eine Integration in das
 
Paketmanagement sollte dabei selbstverständlich sein, so das die gewünschten Pakete analog zu einer
 
Installation aus dem Netz installiert werden können.
 
Für eine Installation der OpenOffice.org Pakete aus dem Netz auf einem Debian GNU/Linux 3.0 „woody“
 
System ist folgende Zeile in der Datei /etc/apt/sources.list hinzuzufügen:
 
deb http://ftp.freenet.de/pub/ftp.vpn-junkies.de/openoffice/ woody main contrib
 
Wird auf dem System bereits die Entwicklerversion eingesetzt, so ist folgende Zeile zu verwenden:
 
deb http://ftp.freenet.de/pub/ftp.vpn-junkies.de/openoffice/ unstable main contrib
 
Auf dem Server sind verschiedene Versionen von OpenOffice.org für die Debian Releases „woody“, „sid“,
 
„sarge“ usw. zu finden. Der Eintrag ist entsprechend der gewünschten Release anzupassen.
 
Die Debian Pakete von OpenOffice.org werden von einem Team von Entwicklern gepflegt und sind auch für
 
Nicht-Intel Architekturen verfügbar. Unter linux-debian.de/openoffice/ sind aktuelle Informationen,
 
beispielweise auch ein Verzeichnis der Mirror Server im Netz, zu OpenOffice.org auf Debian GNU/Linux zu
 
finden.
 
OpenOffice.org wurde in viele kleinere Pakete aufgeteilt um so dem Administrator eine gezielte Auswahl der
 
gewünschten Komponenten zu erlauben.
 
fr@nigiri:~$ apt-cache search openoff
 
openoffice.org - high-quality office productivity suite
 
openoffice.org-bin - OpenOffice.org office suite binary files
 
openoffice.org-help-de - OpenOffice.org office suite help (German)
 
openoffice.org-help-en - OpenOffice.org office suite help (English)
 
openoffice.org-help-es - OpenOffice.org office suite help (Spanish)
 
openoffice.org-help-fr - OpenOffice.org office suite help (French)
 
openoffice.org-help-it - OpenOffice.org office suite help (Italian)
 
openoffice.org-help-sv - OpenOffice.org office suite help (Swedish)
 
openoffice.org-l10n-ar - arabic language package for openoffice.org
 
openoffice.org-l10n-da - danish language package for openoffice.org
 
openoffice.org-l10n-de - german language package for openoffice.org
 
openoffice.org-l10n-el - greek language package for openoffice.org
 
openoffice.org-l10n-en - english_us language package for openoffice.org
 
openoffice.org-l10n-es - spanish language package for openoffice.org
 
openoffice.org-l10n-fr - french language package for openoffice.org
 
openoffice.org-l10n-it - italian language package for openoffice.org
 
openoffice.org-l10n-ja - japanese language package for openoffice.org
 
openoffice.org-l10n-ko - korean language package for openoffice.org
 
openoffice.org-l10n-nl - dutch language package for openoffice.org
 
openoffice.org-l10n-pl - polish language package for openoffice.org
 
openoffice.org-l10n-pt - portuguese language package for openoffice.org
 
openoffice.org-l10n-ru - russian language package for openoffice.org
 
openoffice.org-l10n-sv - swedish language package for openoffice.org
 
openoffice.org-l10n-tr - turkish language package for openoffice.org
 
openoffice.org-l10n-zh-cn - chinese_simplified language package for openoffice.org
 
openoffice.org-l10n-zh-tw - chinese_traditional language package for openoffice.org
 
429
 
Kapitel 11. Office Pakete
 
openoffice.org-spellcheck-de-at - German spellchecking for OpenOffice.org (Austria)
 
openoffice.org-spellcheck-de-ch - German spellchecking for OpenOffice.org (Switzerland)
 
openoffice.org-spellcheck-de-de - German spellchecking for OpenOffice.org (Germany)
 
openoffice.org-spellcheck-fr-fr - French spellchecking for OpenOffice.org
 
gramps - Genealogical Research and Analysis Management Program
 
libming-fonts-openoffice - Fonts for use with the Ming Library for SWF Creation
 
libspreadsheet-writeexcel-perl - Perl5 module to create Excel spreadsheets.
 
mybulgarian - Bulgarian dictionary for OpenOffice
 
myhungarian - The Hungarian dictionary for OpenOffice.
 
ooqstart-gnome - OpenOffice QuickStarter applet for GNOME
 
ttf-openoffice - OpenOffice TrueType Fonts
 
Viele Pakete dienen der Internationalisierung der Oberfläche (Pakete „openoffice.org-l10n-*“), hier sollte das
 
Paket für eine deusche Benutzeroberfläche installiert werden. Absolut notwendig sind die Pakete
 
„openoffice.org“ und „openoffice.org-bin“, welche die eigentliche Programme enthalten. Sinnvoll für den
 
deutschsprachigen Anwender sind „openoffice.org-help-de“ - die Hilfedateien und
 
„openoffice.org-spellcheck-de-de“ - die Rechtschreibprüfung.
 
Die gewünschten Pakete können nun mittels apt-get install openoffice.org openoffice.org-bin
 
openoffice.org-l10n-de (usw.) installiert werden.
 
11.1.2. Konfiguration
 
Beim ersten Aufruf des Programmes wird für jeden Benutzer ein Installationsprogramm gestartet. Dies ist
 
notwendig da individuelle Parameter wie zum Beispiel Benutzername, Adresse usw. gespeichert werden. Die
 
Einstellungen werden in der Datei ~/.sversionrc sowie im Verzeichniss ~/.openoffice gespeichert.
 
Weiterhin werden in diesem Verzeichniss Links angelegt mit denen dieses Installationsprogramm jederzeit,
 
durch Aufruf von .openoffice/[version]/setup, wieder aufgerufen werden kann. Ist dieses jedoch
 
bereits einmalig aufgeführt worden, so stehen dort das reparieren und entfernen der Konfiguration zur Auswahl.
 
Die wesentlichen Einstellungen lassen sich über das Menü „Extras“ - „Optionen“ in einem umfangreichen
 
Dialog konfigurieren.
 
Abbildung 11-2.
 
Ein weiteres Programm zu Konfiguration findet sich ebenfalls, als spadmin, in diesem Verzeichnis. Mit
 
spadmin läßt sich ein Drucker konfigurieren. Dieser Drucker kann übrigens auch so konfiguriert werden das
 
430
 
Kapitel 11. Office Pakete
 
die Dateien im PDF Format auf der Festplatte gespeichert werden. Eine Faxlösung kann an dieser Stelle
 
ebenfalls konfiguriert werden.
 
Abbildung 11-3. OpenOffice.org - spadmin
 
Sind alle Einstellungen vorgenommen, so läßt sich OpenOffice.org auf der Kommandozeile durch das
 
Kommando openoffice starten. Im ersten Menü („Datei“) lassen sich unter dem Eintrag „Neu“ leere
 
Dokumente als Textverarbeitung, Tabellenkalkulation usw. erzeugen. Alle OpenOffice.org Komponenten
 
werden auch in das Debian Menüsystem aufgenommen, womit entsprechende Einträge in jeder Desktop
 
Umgebung (GNOME oder KDE) bzw. bei jedem Windowmanager zur Verfügung stehen.
 
11.1.3. Textverarbeitung
 
Als wichtigstes Teil von OpenOffice.org ist zuerst sicher der Textverarbeitungsteil zu sehen. Wird das
 
Programm wie oben beschrieben aus der Kommandozeile oder aus dem Menü heraus gestartet, so wird dieser
 
Teil des Paketes gestartet.
 
431
 
Kapitel 11. Office Pakete
 
Abbildung 11-4. OpenOffice.org - Textverarbeitung
 
Auf die Funktionen des Programms kann entweder über die Menüleiste oder aber über die Symbolleisten
 
zugegriffen werden. Beide Leisten passen sich der jeweiligen Anwendung an, was bedeutet das die Einträge je
 
nach Anwendungsfall (Textverarbeitung, Tabellenkalkulation usw.) unterschiedlich sind.
 
Die wichtigsten Einträge in der Menüleiste sind:
 
• Datei: hier finden sich Unterpunkte für das Öffnen und Schließen, sowie Speichern und Drucken von
 
Dokumenten sowie andere grundlegende Funktionen
 
• Bearbeiten: Einträge für das Editieren (Ausschneiden, Kopieren, Einfügen) von Text, Suchen, ...
 
Ansicht: Ansichtsoptionen, Symbolleisten ein- und ausblenden, ...
 
• Einfügen: für das Einfügen von Objekten, Sonderzeichen, erzwungenen Seitenumbrüchen, ...
 
• Format: Formatierungsoptionen für Schrift, Absatz, ...
 
• Extras: Rechtschreibung, Optionen, ...
 
• Fenster: Steuerung der Fenster
 
• Hilfe: Hilfefunktion mit Suchmöglichkeit
 
Ein weiteres sinnvolles Werkzeug ist der „Stylist“. Sollte dieses Fenster nicht zu sehen sein so kann es jederzeit
 
mit der Taste F11 aufgerufen werden.
 
432
 
Kapitel 11. Office Pakete
 
Abbildung 11-5.
 
Mit dem Stylisten lassen sich Überschriften, Abschnitte usw. festlegen.
 
11.1.4. Tabellenkalkulation
 
Eine weitere wichtige Komponente ist die Tabellenkalkulation.
 
433
 
Kapitel 11. Office Pakete
 
Abbildung 11-6. OpenOffice.org - Tabellenkalkulation
 
11.1.5. OpenOffice.org Links
 
Deutschsprachige Webseiten zu OpenOffice.org de.openoffice.org
 
Vorlagen u.a., auch für den deutschsprachigen Raum www.ooodocs.org
 
11.2. GNOME-Office
 
Als GNOME-Office bezeichnet man eine Zusammenstellung verschiedener Komponenten aus dem GNOME
 
Projekt. Folgende Pakete gehören zum GNOME-Office Projekt: Gnumeric, AbiWord, Balsa, Evolution, GFax,
 
Galeon, Gimp, Eye of GNOME, Sodipodi, Sketch, Guppi, Dia, Achtung, GnuCash, MrProject, Toutdoux und
 
GNOME-DB
 
Als Meta-Paket kann gnome-office installiert werden, dieses Paket enthält die notwendigen Abhängigkeiten
 
für die GNOME-Office Komponenten.
 
11.3. KDE Office
 
K-Office oder KDE Office wurde aus Komponenten des KDE Projektes zusammengestellt. Diese sind KWord,
 
KSpread, KPresenter, Kivio, Kontour, Krita, Kugar und KChart. Als Meta-Paket kann hier koffice installiert
 
werden.
 
434
 
Kapitel 12. Text
 
Um Linux nicht nur im Serverbereich populär zu machen, ist es wichtig, daß auch Anwendungen entwickelt
 
werden, die aus dem typischen Office-Bereich stammen. Sicher kamen auch Sie schon einmal in die Situation,
 
einen Brief erstellen zu müssen. Debian GNU/Linux bietet eine Vielzahl von Texteditoren, mit diesen lassen
 
sich Texte in „Rohform“ erfassen, also ohne Formatierungen wie fett, kursiv usw. Diese Werkzeuge werden von
 
jedem Programmierer benötigt und sind vielfach auf diese Benutzergruppe angepaßt.
 
Sehr beliebt sind auch Programme und Werkzeuge, mit denen sich gut gestaltete Texte erstellen lassen, die aber
 
über keine grafische Benutzeroberfläche verfügen. Die Texte werden dabei in einem beliebigen Editor erfaßt
 
und mit Kennzeichnungen für die Formatierung versehen, ähnlich wie Sie es vielleicht aus der Sprache des Web
 
kennen, dem HTML-Format. Je nach verwendetem Format lassen sich mit den verschiedensten Programmen
 
alle nur denkbaren Ausgabeformate erstellen, wie HTML, Postscript, PDF oder auch ganz einfacher
 
ASCII-Text.
 
Mit Programmen zur weiteren Bearbeitung und Gestaltung von Texten, wie man Sie von anderen
 
Betriebssystemen kennt, sah es lange Zeit unter GNU/Linux schlecht aus. Die erste bekanntere Anwendung war
 
WordPerfect, die schon lange unter Unix lauffähig war, und auf GNU/Linux angepaßt wurde. Ein weiteres
 
Paket, Applixware, ist ebenfalls schon lange erhältlich, aber nicht sehr verbreitet. Am populärsten dürfte wohl
 
das Paket StarOffice sein, welches seit mehreren Jahren unter GNU/Linux lauffähig ist, und von Anfang an,
 
entgegen der Philisophie auf anderen Betriebssystemen, kostenfrei für den privaten Gebrauch unter GNU/Linux
 
verfügbar war.
 
Alle diese Office-Pakete, die auch über eine Textverarbeitung verfügen, sind nicht Bestandteil von Debian
 
GNU/Linux, da diese nicht den Richtlinien für freie Software im Sinne von Debian entsprechen. Auch wenn
 
sie, wie StarOffice, kostenlos abgegeben werden. Dies bedeutet natürlich nicht, daß Sie diese Programme nicht
 
unter Debian GNU/Linux installieren können...
 
Mit der nächsten Version wird der Quellcode von StarOffice unter einer freien Lizenz verfügbar sein und somit
 
auch in Debian GNU/Linux einfließen können, diese Software wird dann unter dem Namen
 
(http://www.openoffice.org) OpenOffice verbreitet werden.
 
Aber natürlich gibt es auch in diesem Bereich freie Alternativen, die den Weg in die Debian
 
GNU/Linux-Distribution gefunden haben.
 
12.1. AbiWord
 
Neben Gimp und Gnumeric stellt AbiWord als Textverarbeitung einen wichtigen Baustein im Bereich der
 
Office-Anwendungen dar. Diese Textverarbeitung stellt als OpenSource Projekt eine kleine Besonderheit dar:
 
neben der Betriebssystemplattform Unix wird auch die Windows-Welt unterstützt. Als Grundlage diente den
 
Programmierern von AbiWord das Toolkit gtk+, welches auch bei GNOME, Gimp und vielen anderen
 
Anwendungen benutzt wird.
 
AbiWord unterstützt folgende Funktionen:
 
• Formatierung von Zeichen (fett, fursiv, unterstrichen usw.)
 
• Absatzausrichtung
 
• Rechtschreibkontrolle
 
• Dateiformate: XML sowie HTML und ASCII-Text
 
• Import von Word97 und RTF-Dokumenten.
 
• Interaktive Lineale und Tabulatoren
 
• Styles
 
• unbegrenztes Undo/Redo
 
• suchen und ersetzen
 
• Grafiken
 
• Druckfunktion
 
435
 
Kapitel 12. Text
 
Wenn Sie schon einmal mit einer Textverarbeitung gearbeitet haben, wird Ihnen der Einstieg in AbiWord sehr
 
leicht fallen. Über die Symbolleiste am oberen Fensterrand sind die meisten Funktionen direkt zu erreichen,
 
weitere finden sich in der Menüleiste. Momentan wird als einziges Format für Grafiken innerhalb des Textes das
 
Dateiformat PNG unterstützt, beachten Sie dies auch beim Import von Dateien, die Grafiken werden hier nicht
 
mit importiert.
 
Wenn Sie bereits Ihr System so konfiguriert haben, daß unter GNOME alle Programme mit deutschsprachigen
 
Menüs und Dialogen arbeiten, wird Ihnen sicher auffallen, daß dies bei AbiWord (noch) nicht der Fall ist. Hier
 
ist momentan noch ein wenig Handarbeit notwendig. Beim ersten Start von AbiWord wird in Ihrem
 
Homeverzeichnis ein Verzeichniss .AbiSuite angelegt. In diesem befindet sich die Datei AbiWord.Profile,
 
in welcher folgende Änderungen vorzunehmen sind:
 
- Ändern Sie alle Wörter _builtin_ in _custom_
 
- Ändern Sie die Zeichenkette „EnEN“ in den drei Einträgen MenuLabelSet="EnEN", StringSet="EnEN"
 
und ToolbarLabelSet="EnEN" in "DeDE".
 
Wenn Sie statt Deutsch eine andere Sprache verwenden wollen, stehen Ihnen folgende Sprachen zur Auswahl
 
(wählen Sie die passende Variable):
 
• DaDK: Danish
 
• DuNL: Dutch
 
• EsES: Spanish
 
• FiFI: Finnish
 
• FrFR: French
 
• ItIT: Italian
 
• NoNO: Norwegian
 
Abbildung 12-1. AbiWord
 
436
 
Kapitel 12. Text
 
Nach einem Neustart von AbiWord erscheinen die Menüs in der gewünschten Sprache. Die
 
Rechtschreibprüfung von AbiWord benutzt die Datei american.hash, um den von Ihnen geschriebenen Text
 
zu überprüfen. Diese Datei benutzt das gleiche Format wie das Programm ispell, Sie können diese Datei einfach
 
durch eine Datei in der gewünschten Sprache ersetzen. Debian GNU/Linux liefert einige dieser Wörterbucher
 
mit, eine komplette Liste finden Sie unter: http://fmg-www.cs.ucla.edu/geoff/ispell-dictionaries.html
 
Nach der Installation von AbiWord zeigt ein symbolischer Link auf das Standard-Wörterbuch von ispell:
 
fr@sushi:~$ ls -l /usr/share/abisuite/dictionary/american.hash
 
lrwxrwxrwx 1 root root 32 Sep 1 16:44 /usr/share/abisuite/dictionary/american.hash 12.2. xpdf
 
xpdf dient zur Anzeige von Dateien im PDF-Format unter X. Im Gegensatz zum später beschriebenen
 
Acrobat-Reader ist xpdf OpenSource Software.
 
Abbildung 12-2. xpdf
 
Alle benötigten Funktionen sind über die Schaltflächen am unteren Fensterrand zu erreichen. Oft benötigte
 
Funktionen können auch mit der rechten Maustaste aufgerufen werden.
 
Sie können über die Schaltflächen im Dokument navigieren und auch das Dokument drucken, soweit ein
 
Drucker angeschlossen und konfiguriert ist.
 
437
 
Kapitel 12. Text
 
12.3. acroread
 
Alternativ zu xpdf können Sie auch den Acrobat-Reader von Adobe zum Betrachten von PDF-Dateien
 
benutzen. Auch dieses Programm verfügt über einige Optionen, die auf der Kommandozeile angegeben werden
 
können.
 
Usage: /usr/bin/X11/acroread [options] [list of files]
 
Options:
 
-display <display>
 
This option specifies the host and display to use.
 
-geometry [<width>x<height>][{+|-}<x offset>{+|-}<y offset>]
 
Size and/or location of the document windows.
 
-help
 
Prints the common command-line options.
 
-helpall
 
Prints out all command-line options.
 
-iconic
 
Launches in an iconic state on the desktop.
 
-toPostScript [options] pdf_file ... [ps_dir]
 
-toPostScript [options] -pairs pdf_file_1 ps_file_1 ...
 
-toPostScript [options]
 
Converts the given pdf_files to PostScript.
 
In the first form, if the last file specified is a directory,
 
then all preceding files will be converted to PostScript
 
and the generated PostScript files will be placed into ps_dir.
 
If a directory is not specified, then the PostScript files
 
will be placed in the same directory as the original file.
 
In the second form, the file list contains pairs, each
 
consisting of a PDF filename and a corresponding PostScript
 
filename.
 
The third form specifies a filter, reading a PDF file from
 
standard input and writing the PostScript file to standard
 
output.
 
The following are valid options for the conversion of PDF to
 
PostScript:
 
-binary - emit binary PostScript where possible
 
-end <int> - identify the last page in the document to be converted
 
(default is the last page of the document)
 
-fast - emit PostScript such that all fonts are emitted once
 
at the beginning of the document. This results in faster
 
transmission times and smaller PostScript documents but
 
requires more PostScript printer VM.
 
-landscape - rotate the pages to print landscape
 
-reverse - reverse the page order of the output
 
-odd - emit only odd-numbered pages
 
-even - emit only even-numbered pages
 
-annotsOff - don’t print annotations
 
-level1 - emit Level 1 PostScript (default is Level 2 PostScript)
 
-level2 - emit Level 2 PostScript
 
-level3 - emit Level 3 PostScript
 
-printerhalftones - use the printer default halftones.
 
-scale <int> - scale the pages according to the scale factor
 
(default is 100 percent)
 
-shrink - scale the pages to fit the page size
 
-size <pagesize> - set the page size. The following page sizes
 
are recognized:
 
letter - letter size paper
 
438
 
Kapitel 12. Text
 
tabloid - tabloid size paper
 
ledger - ledger size paper
 
legal - legal size paper
 
executive - executive size paper
 
a3 - standard A3 size
 
a4 - standard A4 size
 
a5 - standard A5 size
 
b4 - standard B4 size
 
b5 - standard B5 size
 
wxh - custom size paper where w is the integer width
 
in points and h is the integer height in points
 
-start <int> - identify the first page in the document to be converted
 
(default is the first page of the document)
 
-xrm <X resource specification>
 
Standard X Window System resource specification on command line.
 
Abbildung 12-3. Acrobat-Reader
 
Am interessantesten sind hier die Optionen, um aus der PDF-Datei eine Datei im Postscript-Format zu
 
erzeugen. Hier haben Sie auch die Möglichkeit, nur gerade oder ungerade Seiten auszugeben oder die
 
Papierausrichtung (Hoch- / Querformat) zu verändern. Sehr nützlich ist auch die Option, um die Seiten in der
 
Postscriptdatei in umgekehrter Reichenfolge anzuordnen, Sie müssen so bei einigen Druckern die Seiten nach
 
dem Ausdruck nicht von Hand umsortieren.
 
Normalerweise werden Sie den Acrobat-Reader aber lediglich mit dem Dateinamen der zu ladenden Datei
 
aufrufen. Die meisten Einstellungen können aber natürlich auch über die grafische Oberfläche vorgenommen
 
werden.
 
439
 
Kapitel 13. Kalkulation
 
13.1. Gnumeric
 
Gnumeric ist eine Tabellenkalkulation aus dem GNOME-Projekt. Gnumeric verfügt über eine große Anzahl
 
mathematischer Funktionen, die Sie vielleicht schon von Tabellenkalkulationen auf anderen Betriebssystemen
 
kennen.
 
Das Ziel der Entwickler von Gnumeric ist es, möglichst viele nützliche Funktionen zu implementieren und so
 
eine leistungsfähige und ressourcenschonende Alternative zu kommerziellen Produkten zu bieten. Um den
 
Umstieg zu erleichtern, wurde Gnumeric zum Beispiel mit Importfunktionen für Dateien im Excel-Format
 
ausgestattet.
 
Wenn Sie bereits mit einer Tabellenkalkulation gearbeitet haben, wird Ihnen der Ein- oder Umstieg auf
 
Gnumeric leichtfallen.
 
Bei einer Tabellenkalkulation können Sie in jede Zelle eines Arbeitsblattes Texte, Zahlen, Formeln oder
 
Verweise auf andere Zellen eingeben. Jede Änderung hat eine Neuberechnung der Zellen zur Folge, die sich auf
 
das Eingabefeld beziehen. Des weiteren können Sie Schriftgrößen und Farben sowie weitere Attribute jeder
 
einzelnen Zelle verändern.
 
Um auf alle Funktionen zugreifen zu können, müssen die Pakete gnumeric und libguppi13 installiert
 
werden.
 
13.1.1. Eingeben von Daten
 
Um Daten in eine Zelle einzugeben, klicken Sie einfach mit der linken in die gewünschte Zelle. Die aktive Zelle
 
wird mit einem grauen Rahmen markiert. Sie können die Markierung auch mit den Cursortasten bewegen und
 
so eine andere Zelle aktivieren.
 
13.1.2. Zeichenketten und Zahlen
 
Am einfachsten gestaltet sich die Eingabe von Zeichenketten und Zahlen in einer Zelle. Hierbei handelt es sich
 
um feste Werte, der Wert, den Sie in eine solche Zelle eingeben, wird auch am Bildschirm angezeigt. Für diese
 
Eingabewerte gibt es keine spezielle Syntax. Die einzige Beschränkung, die diesen Felder auferliegt ist, daß
 
diese nicht mit einem „=“-Zeichen beginnen dürfen, da es für die Eingabe von Formeln reserviert ist.
 
Abbildung 13-1. Gnumeric Eingabe
 
13.1.3. Datumsfelder
 
Datumsfelder sind spezielle Zellen, in denen eine Zeichenkette eingegeben wurde, welche als Datum erkannt
 
wird. Der von Ihnen eingegebene Wert wird in eine serielle Zahl umgewandelt, welche das eigentliche Datum
 
darstellt. Über das automatisch vergebene Format der Zelle wird das gewünschte Datum dargestellt.
 
440
 
Kapitel 13. Kalkulation
 
Als serielle Zahl bezeichnet man einen Wert, welcher ständig ab einem bestimmten Startwert (meist 0) um eins
 
erhöht wird.
 
Datumsfelder können zusammen mit der Funktion „autoausfüllen“ benutzt werden, auf diese gehen wir später
 
noch ein.
 
13.1.4. Ändern von Zellen
 
Nachdem Sie nun schon einige Zellen mit Werten oder Texten gefüllt haben, ist Ihnen vielleicht aufgefallen,
 
daß es recht praktisch ist, mit den Cursortasten zwischen den Zellen wechseln zu können. Wenn Sie aber die
 
Daten in einer Zelle verändern wollen, können Sie nicht innerhalb dieser Zelle mit den Cursortasten zwischen
 
den einzelnen Zeichen „navigieren“.
 
Vielleicht ist Ihnen schon die Eingabezeile unterhalb der Werkzeugleiste aufgefallen.
 
Abbildung 13-2. Gnumeric Eingabezeile
 
Wenn Sie bisher nur Texte und Zahlen eingegeben haben, enthält diese Eingabezeile die gleichen Werte wie die
 
in der Tabelle markierte Zelle. Wenn Sie bereits eine Formel eingegeben haben, sehen Sie in der Eingabezeile
 
die Formel und in der Zelle das Ergebnis.
 
Sie können nun mit der Taste F2 in den erweiterten Eingabemodus wechseln. Nun können Sie auch mit den
 
Cursortasten in der Zelle bzw. in der Eingabezeile umherwandern. Sie verlassen diesen Modus mit der
 
Eingabetaste oder mit einem Mausklick auf eine andere Zelle.
 
13.1.5. Formeln
 
Formeln sind das Kernstück jeder Tabellenkalkulation. Eine Formel kann als Argumente alle möglichen Werte,
 
wie zum Beispiel Zahlen, Verweise auf Felder oder ganze Bereiche usw., enthalten.
 
Eine Formel beginnt immer mit einem Gleichheitszeichen „=“. Alles nach diesem Zeichen wird entsprechend
 
berechnet.
 
Die einfachsten Formeln benutzen die vier Symbole für die Grundrechenarten: +, -, * und /. Wenn Sie also
 
beispielsweise in eine Zelle die Formel =8+2 eingeben und die Eingabetaste drücken, wird Gnumeric diese
 
Eingabe als Formel erkennen und den Wert „10“ in der Zelle berechnen.
 
Gnumeric befolgt alle bekannten Regeln der Mathematik, Sie müssen also unter Umständen durch
 
entsprechende Klammern dafür sorgen, daß Formeln, die Punkt- und Strichrechnung enthalten, in der
 
441
 
Kapitel 13. Kalkulation
 
gewünschten Reihenfolge berechnet werden. Die Formel =(5*)+(49/7) wird als Ergebnis den Wert „32“
 
liefern.
 
13.1.6. Bezüge
 
Sicher haben Sie schon bemerkt, daß die Zeilen und Spalten in Gnumeric mit Zahlen bzw. Buchstaben
 
bezeichnet sind. Dies erlaubt es, wie auf einem Schachbrett jedes Feld eindeutig zu beschreiben. Das Feld in der
 
linken, oberen Ecke wird mit „A1“ bezeichnet, das Feld rechts daneben mit „b1“ usw. Sie können diese
 
Feldbezeichnungen auch genau in dieser Form in Formeln verwenden. Wenn Sie beispielsweise im Feld A1 den
 
Wert 55 eingetragen haben, so würde das Ergebnis der Formel =a1+45 „100“ lauten.
 
13.1.7. Funktionen
 
In Gnumeric wurden die meisten mathematischen Funktionen aus den Bereichen Mathematik,
 
Finanzmathematik, Statistik und Wissenschaft implementiert. Jede Funktion stellt sich im Prinzip wie folgt dar:
 
=FUNKTION(ARGUMENTE).
 
Wenn Sie bereits mit Tabellenkalkulationen auf anderen Betriebssystemen gearbeitet haben, müssen Sie sich
 
unter Umständen ein wenig umstellen - alle Funktionen in Gnumeric werden in englischer Sprache geschrieben.
 
Dies ist in anderen Programmen, wie zum Beispiel Excel anders, hier wird die Muttersprache des Anwenders
 
auf die Funktionen angewendet.
 
Hier einige einfache Beispiele für Funktionen:
 
=SUM(A1,A2,A4,B5)
 
=AVERAGE(A1:A16)
 
=EXP(1)
 
=PI()
 
=MIN(A1,A2,B6)
 
Wenn eine Funktion mehrere Argumente verarbeiten kann, wie in diesem Beispiel die Funktion SUM, so können
 
Sie hier eine unbegrenzte Anzahl von Argumenten angeben.
 
13.1.8. Namen
 
Sie können einer Zelle, die eine sehr komplexe Formel enthalten kann, einen leicht zu merkenden Namen
 
zuweisen. Namen können aber auch einem Zellbereich zugewiesen werden, es reicht dann, innerhalb einer
 
Formel den Namen zu benutzen, und nicht den Bereich, auf den sich die Formel bezieht.
 
Hier wieder einige Beispiele für die Verwendung von Namen:
 
=VLOOKUP (C1, "gnu", DataBase, 2, 0)
 
=LN(E_Constant)
 
=SUM(DataBase, E_Constant)
 
Diese setzt voraus, daß dem Bereich „$A$1:$B$500“ (oder ein anderer Bereich) der Name „DataBase“
 
zugewiesen wurde und der Name „E_Constant“ auf einen Wert 2.71828182845 verweist.
 
Sie können einer Zelle oder einem Bereich einen Namen zuweisen, indem Sie auf die gewünschte Zelle klicken
 
oder mit der linken Maustaste den Bereich markieren und anschließend aus dem Menü „Bearbeiten“ den
 
Eintrag „Definiere Zellennamen“ auswählen.
 
442
 
Kapitel 13. Kalkulation
 
Abbildung 13-3. Gnumeric Eingabezeile
 
In diesem Dialog können Sie einen neuen Namen für den gewählten Bereich angeben oder bereits definierte
 
Namen verändern bzw. die zugewiesenen Bereiche anpassen.
 
Sie sollten für Zellen oder Bereiche keine Namen verwenden, die schon von den in Gnumeric implementierten
 
Funktionen verwendet werden. Dies würde natürlich zu Konflikten führen.
 
443
 
Kapitel 14. Multimedia
 
Auch der Bereich Multimedia hat bei GNU/Linux längst Einzug gehalten, neben Soundkarten sind hier
 
insbesondere TV-Karten, DVDs und natürlich die Videobearbeitung zu nennen.
 
14.1. Sound
 
14.1.1. Soundkarte einrichten
 
Um eine Soundkarte unter Debian GNU/Linux zu aktivieren, müssen Sie die nötigen Treiber als Module laden
 
oder fest in den Kernel einkompilieren. Bei einer Soundkarte gibt es keinen Grund, die Treiber nicht als Module
 
zu laden, eine Soundkarte wird normalerweise nicht beim Systemstart benötigt und kann also problemlos später
 
als Modul geladen werden.
 
GNU/Linux unterstützt eine Vielzahl von Soundkarten, Sie müssen also zunächst herausfinden, welche
 
Soundkarte sich in Ihrem Rechner befindet. Wenn Sie ein Motherboard mit integriertem Soundchip verwenden
 
oder GNU/Linux auf einem Notebook verwenden wollen, werden Sie keine eigene Soundkarte als Steckkarte in
 
Ihrem Rechner finden. Wenn sich eine Steckkarte in Ihrem Rechner befindet, hilft oft ein Blick auf die auf der
 
Karte aufgedruckten Angaben. Viele Karten und Chipsätze sind zu den sehr verbreiteten
 
„Soundblaster“-Karten kompatibel, diese verwenden das Kernelmodul sb. Sehr verbreitet sind auch Karten, die
 
das Modul es1371 verwenden, zu diesen gehören auch einige preiswertere Soundblaster-Modelle.
 
Für alle Soundkarten müssen Sie jedoch zuallererst das Modul soundcore laden, am einfachsten mit dem
 
Kommando modprobe soundcore. Dieses stellt Funktionalitäten zur Verfügung, die von allen weiteren
 
Treibern für Soundkarten benutzt werden. Laden Sie danach das benötigte Modul für Ihre Soundkarte,
 
beispielsweise mit modprobe es1371. Ob das Laden der Module erfolgreich war, sehen Sie schon auf der
 
Kommandozeile, ein Blick in die Datei /var/log/syslog verrät Ihnen aber noch mehr Details.
 
Wenn Sie eine ältere Soundkarte verwenden, die in einem der ISA-Steckplätze Ihres Rechners untergebracht ist,
 
dann müssen Sie eventuell beim Laden des Moduls weitere Parameter wie zum Beispiel den benötigten
 
Interrupt dieser Karte angeben. Bei neueren Karten, die im PCI-Steckplatz des Rechners untergebracht sind, ist
 
dies nicht der Fall.
 
Damit ist die eigentliche Installation der Soundkarte bereits abgeschlossen. Wenn Sie weitere Funktionen der
 
Karte nutzen wollen (wie zum Beispiel eine MIDI-Schnittstelle), so kann es notwendig sein, weitere Module zu
 
laden.
 
Die Funktionsfähigkeit der Karte und der geladenen Treiber können Sie sehr leicht von der Kommandozeile aus
 
feststellen. Auch Soundkarten werden unter GNU/Linux, wie alle anderen Geräte auch, über Gerätedateien
 
angesprochen. Mit dem Kommando cat können Sie eine Sounddatei einfach über die Gerätedatei /dev/audio
 
zur Soundkarte schicken. Meist wurde während der Installation von Debian GNU/Linux bereits die ein oder
 
andere Sounddatei auf Ihrem Rechner installiert, Sie können diese mit dem Kommando locate .wav suchen
 
und eine dieser Dateien dann ausgeben lassen. Hier ein prinzipielles Beispiel, passen Sie dieses bitte an Ihre
 
Gegebenheiten an:
 
fr@linux:~$ locate .wav
 
/usr/share/sounds/logout.wav
 
/usr/share/sounds/panel/slide.wav
 
/usr/share/sounds/phone.wav
 
...
 
fr@linux:~$ cat /usr/share/sounds/logout.wav > /dev/audio
 
Wenn dieser Test erfolgreich ist, können Sie sich an die weitere Arbeit machen und einige der im folgenden
 
vorgestellten Programme ausprobieren.
 
444
 
Kapitel 14. Multimedia
 
14.2. Xmms
 
Xmms, das „X Multimedia Sound System“, ist ein sehr vielfältiges Programm zum Abspielen von Audio-CDs
 
und Musik-Dateien aller Art. Xmms kann über Plugins erweitert werden, es existieren auch Plugins mit denen
 
sich Videodaten anzeigen lassen. Die Oberfläche von Xmms erinnert an einen Cassetten- oder Videorecorder, so
 
daß Sie sich schnell in die Bedienung einfinden werden.
 
In der Titelzeile des Programms finden Sie drei Schaltflächen: die linke verkleinert Xmms, die mittlere zeigt nur
 
noch die Titelzeile an und die rechte beendet Xmms. Im Fenster selber wird Ihnen der Status (Play, Pause, Stop)
 
und die Spielzeit des aktuellen Songs angezeigt.
 
14.2.1. „Skins“
 
Xmms kann über sogenannte „skins“ im Aussehen verändert werden. Einige Beispiele finden Sie zum
 
Download auf der Homepage von Xmms ( http://www.xmms.org ), kopieren Sie diese in das Verzeichnis
 
~/.xmms/Skins/. Sie müssen das Archiv nicht entpacken, Xmms kann auch mit gepackten „skins“ umgehen.
 
Beachten Sie bitte, daß dazu das Programm unzip installiert sein muss. Starten Sie nun Xmms, mit der
 
Tastenkombination ALT+S öffnet sich ein Fenster, in dem Sie die installierten „skins“ auswählen können.
 
Xmms speichert den zuletzt gewählten „skins“ in der Datei ~/.xmms/config. Sie können hier auch
 
auswählen, daß bei jedem neuen Song auch das Aussehen geändert werden soll.
 
Wenn Sie die „skins“ in Ihrem Homeverzeichnis (~/.xmms/Skins/ speichern, stehen diese nur Ihnen zur
 
Verfügung. Sie können die Archive auch (als Superuser) unter /usr/share/xmms/Skins/ installieren, so daß
 
sie allen Benutzern zur Verfügung stehen.
 
Kleiner Tip: Xmms kann auch die „skins“ des Programms WinAmp verwenden.
 
14.2.2. Hauptfenster
 
Wenn Sie in den Bereich des Spectrum Analyzers klicken, können Sie das Aussehen verändern. Im linken
 
Bereich sehen Sie die Buchstaben O A I D V, diese öffnen bei einem Mausklick ein Menü oder führen eine
 
Aktion aus.
 
445
 
Kapitel 14. Multimedia
 
Abbildung 14-1. xmms
 
Rechts davon sehen Sie den Titel des aktuellen Songs sowie die Spielzeit und die Position des Songs in der
 
Titelliste (Playlist). Weiter unten sehen Sie statistische Angaben zu:
 
• MP3 Bitrate in kBps (meist 128 oder 112)
 
• Sample Rate in kHz (meist 44)
 
• Stereo oder Mono
 
Weiter finden einen Schieberegler für die Lautstärke, für die Balance sowie die Schaltflächen EQ für den
 
Equalizer und PL für die Playlist (Titelliste).
 
Der größte Schieberegler bewegt sich während des Abspielen eines Songs nach rechts, je nach aktueller
 
Position im Lied. Sie können diesen mit der Maus an jede beliebige Stelle im Song schieben.
 
Sie können Xmms auch über die Tastatur bedienen:
 
446
 
Kapitel 14. Multimedia
 
• z - springt zum letzten Song
 
• x - abspielen
 
• c - Pause
 
• v - Stop
 
• b - nächster Song
 
• l - öffnet die Dateiauswahl
 
• j - springt zu einem anderen Song über eine Auswahl
 
• CRTL+l - öffnet die Auswahl, um eine URL hinzuzufügen
 
• CRTL+p - Voreinstellungen
 
• CTRL+v - Visualisierungs-Plugin
 
• CTRL+r - Restspielzeit
 
• CTRL+a - „Always on Top“
 
• CTRL+w - zeigt nur eine schmale Zeile des Programms an
 
• CTRL+d - doppelte Größe
 
• CTRL+j - springt zu einer bestimmten Zeit im Song
 
• CTRL+z - springt zum Anfang der Liste
 
• Shift+Control+w - öffnet/schließt die Playlist
 
• ALT+g - öffnet/schließt den Equalizer
 
• ALT+s - öffnet den „Skin selector“
 
14.2.3. Titelliste (Playlist)
 
Sie können sich eine individuelle Liste Ihrer Lieblingstitel zusammenstellen und speichern.
 
Abbildung 14-2. Xmms Playlist
 
447
 
Kapitel 14. Multimedia
 
Das dazugehörige Fenster erreichen Sie über die Schaltfläche PL auf der rechten Seite des Fensters. Am unteren
 
Rand des neuen Fensters finden Sie fünf Schaltflächen, hinter jeder dieser fünf Schaltflächen verbirgt sich ein
 
Menü (halten Sie die Maustaste gedrückt).
 
Die fünf Menüs, von links nach rechts:
 
File +
 
• + url - fügt eine URL hinzu
 
• + dir - fügt ein Verzeichnis hinzu, rekursiv also mit allen Unterverzeichnissen
 
• + file - fügt eine Datei hinzu
 
File -
 
• - misc - löscht alle Dateien in der Liste
 
• - crop - löscht alle, mit Ausnahme der ausgewählten Dateien aus der Liste
 
• - file - löscht die ausgewählten Dateien
 
Sel All
 
• inv sel - kehrt die aktuelle Auswahl um
 
• sel zero - selektiert keine Datei
 
• sel all - selektiert alle Dateien
 
Misc Opt
 
• sort - ruft ein Menü mit Sortieroptionen auf
 
• file inf - Dateiinformationen
 
• misc opts - extra Optionen
 
Load List
 
• new list - erzeugt eine neue Playlist
 
• save list - speichert die aktuelle Liste
 
• load list - lädt eine Liste, von der Festplatte oder aus dem Netz
 
14.2.4. Equalizer
 
Sie erreichen den Equalizer über die Schaltfläche EQ, dies öffnet ein neues Fenster.
 
448
 
Kapitel 14. Multimedia
 
Abbildung 14-3. Xmms Equalizer
 
Um den Equalizer zu aktivieren, müssen Sie ihn mit der Schaltfläche ON einschalten. Auch werden die hier
 
vorgenommenen Einstellungen in der Datei ~/.xmms/config gespeichert, wenn Sie Xmms beenden. Über die
 
Schaltfläche Preset können Sie verschiedene Einstellungen laden, das Format von WinAmp wird auch hier
 
unterstützt.
 
14.2.5. Voreinstellungen
 
Sie erreichen die Voreinstellungen über das Menü (Options/Preferences) oder mit der Tastenkombination
 
CTRL+p. Die Voreinstellungen sind in die vier Bereiche „Audio I/O Plugins“, „Effect/General Plugins“,
 
„Visualization Plugins“ und „Options“ aufgeteilt.
 
14.2.5.1. Audio I/O
 
Hier finden Sie verschiedene Plugins für unterschiedliche Medien und Formate. Sie können verschiedene Input
 
Plugins wählen und konfigurieren:
 
• CD Audio Player - Geben Sie hier das Device an, an dem Ihr CD-ROM angeschlossen ist. Weiterhin können
 
Sie hier die Lautstärke einstellen.
 
Um mit diesem PlugIn Audio CDs abspielen zu können, muß in der Playlist (über File +) die
 
entsprechende Gerätedatei (meist wird dies /dev/cdrom sein) hinzugefügt werden. Die Anzeige der Titel
 
auf der CD kann automatisch erfolgen wenn der Rechner ans Internet angeschlossen ist. Als Voreinstellung
 
wird http://www.freedb.org, bzw. einer der Server, benutzt.
 
• MPEG Layer 1/2/3 Player - hier können Sie den Buffer und einen Proxy-Server einstellen. Weiterhin können
 
Sie hier das Speichern der Daten aus dem Netz auf die Festplatte aktivieren.
 
• Wave Player - keine Einstellmöglichkeiten
 
• id software cin player - ebenfalls keine Einstellungen, Player für das Quake II Format
 
Von den Output Plugins kann nur eins zur Zeit aktiv sein:
 
• OSS Driver - dieses Plugin versorgt die Soundkarte mit den nötigen Daten. Wenn Sie über mehrere
 
Soundkarten in Ihrem Rechner verfügen, können Sie hier eine auswählen. Weiterhin können Sie hier
 
bestimmen, wieviel Speicher zur Pufferung von Daten verwendet werden soll.
 
• eSound Output Plugin - Wenn Sie eSound (http://www.tux.org/~ricdude/EsounD.html) installiert haben,
 
können Sie hier den Server wählen, der benutzt werden soll.
 
449
 
Kapitel 14. Multimedia
 
• Disk Writer Plugin - Mit diesem Plugin können Sie jeden Sound, der von den Input Plugins gelesen werden
 
kann, im WAV-Format speichern.
 
• Effect/General Plugins - Hier haben Sie verschiedene Plugins zur Auswahl, beispielsweise um Xmms mit
 
einem Joystick oder einer Infrarotschnittstelle zu steuern. Ziemlich lustig ist auch das „Echo“ Plugin...
 
probieren Sie es aus!
 
14.2.5.2. Visualization Plugins
 
Hier finden Sie einige tolle Plugins, um Ihre Songs auch grafisch richtig zur Geltung zu bringen. Am
 
beeindruckensten ist sicher das OpenGL Plugin, Sie können hier die Tasten z, x, c, v, b wie im
 
Hauptfenster benutzen. Zusätzlich können Sie die Pfeiltasten zum Verändern der x- und z-Achsen und die
 
Tasten q und w zum Verändern der y-Achse benutzen. Die RETURN-Taste setzt die Werte zurück.
 
Abbildung 14-4. Xmms OpenGL Plugin
 
14.2.5.3. Options
 
Hier finden Sie diverse Einstellmöglichkeiten, die u.a. das Aussehen von Xmms beeinflussen oder das Verhalten
 
verändern.
 
14.2.6. Xmms von der Kommandozeile
 
Meist werden Sie Xmms über ein Menü Ihres Windowmanagers oder aus dem GNOME Panel starten. Xmms
 
verfügt aber auch über ein paar sehr nützliche Kommandozeilenoptionen. Wenn Sie Xmms mit einem oder
 
mehreren Dateinamen von der Kommandozeile aufrufen und Xmms bereits gestartet ist, so wird die aktuelle
 
Titelliste durch die auf der Kommandozeile angegebenen Dateien ersetzt.
 
450
 
Kapitel 14. Multimedia
 
Die komplette Übersicht erhalten Sie mit der Option --help:
 
Usage: xmms [options] [files] ...
 
Options:
 
-h, --help Display this text and exit.
 
-n, --session Select XMMS session (Default: 0)
 
-r, --rew Skip backwards in playlist
 
-p, --play Start playing current playlist
 
-u, --pause Pause current song
 
-s, --stop Stop current song
 
-f, --fwd Skip forward in playlist
 
-e, --enqueue Add file to current playlist
 
-m, --show-main-window Show the main window
 
-v, --version Print version number and exit.
 
Die meisten Optionen sind selbsterklärend, nützlich ist die Option -e, diese fügt die angegebenen Dateien der
 
aktuellen Playliste hinzu.
 
14.2.7. Features
 
Die meisten Features von Xmms wurden bereits angesprochen, daher hier nur einige Stichpunkte: MP2 und
 
MP3 streams, WAV/AU samples, diverse Modul-Formate (mod, xm, s3m, med, it, 669, amf, dsm, far gdm, imf,
 
m15, mtm, stm, stx, ult, uni), CD Audio, Shout / Icecast, Spectrum Analyzer, Winamp 2.0 Skinunterstützung
 
(wsz-Dateien), Gnome/Afterstep/WindowMaker Dock-Applikation, Maus mit Scrollrad...
 
14.2.8. Xmms und Netscape
 
Sie können Xmms direkt aus Netscape benutzen, um Internetradio zu hören, stellen Sie dazu in Netscape unter
 
„Edit/Preferences/Navigator/Applications“ einen neuen Mimetype „audio/x-scpls“ mit der Anwendung „xmms
 
%s“ ein. Dies funktioniert mit dem Server http://www.shoutcast.com.
 
Für MP3-Dateien vom Server http://www.mp3.com benutzen Sie die Werte: mimetype: audio/x-mpegurl, suffix:
 
m3u, application: xmms %s .
 
451
 
Kapitel 14. Multimedia
 
Abbildung 14-5. Xmms/Netscape
 
Eine gute Übersicht aktueller MP3-Server finden Sie in dem Telepolis-Artikel „MP3: Gratis, legal und qualitativ
 
wertvoll“ unter der URL: http://www.heise.de/tp/deutsch/inhalt/musik/3479/1.html.
 
14.3. zinf
 
Zinf ist ein erweiterbarer Audio Player für verschiedene Plattformen. Zinf benutzt eine optimierte Version des
 
Xing MPEG Decoders, welches ihn zu einem der schnellsten Player mit dem besten Klang macht. Die
 
Homepage zur Zinf finden Sie unter der URL: http://www.zinf.org/. Dort finden Sie auch verschiedene
 
„Themes“.
 
452
 
Kapitel 14. Multimedia
 
Abbildung 14-6. Zinf
 
Die herausragenden Features von Zinf sind:
 
• Spielt alle MPEG 1, MPEG 2 und MPEG 2.5 encodeten Dateien.
 
• Unterstützung von Xing’s Variable Bitrate Encoding Technology.
 
• Spielt Songs aus dem Netz über HTTP unicast streaming (Shoutcast) oder IceCast style title streaming.
 
• Speichert ShoutCast und IceCast Streams auf der Festplatte.
 
• Playlist Editor.
 
• Vom Benutzer einstellbarer Buffer für langsame Rechner.
 
Zusätzlich unterstützt die Linux-Version die Funktionen:
 
• Enlightened Sound Daemon Support
 
• Kommandozeilen und ncurses-Oberfläche.
 
14.4. gqmpeg
 
Gqmpeg ist eine grafische Oberfläche zu mpg123. Über die Konfiguration können Sie alle Optionen
 
beeinflussen, die Sie auch bei mpg123 auf der Kommandozeile angeben können. Gqmpeg verfügt auch über eine
 
sogenannte „Playlist“: hier können Sie Ihre Lieblingstitel eintragen, die dann abgespielt werden.
 
Gqmpeg läßt sich, trotz grafischer Oberfläche, in weiten Teilen auch über die Tastatur steuern. Hierzu können
 
Sie folgende Tasten nutzen:
 
• p oder SPACE : Abspielen
 
• s : Stop
 
• n : Nächsten Titel abspielen
 
• b : Vorherigen Titel abspielen
 
• l : Öffnen der Playlist
 
• m : startet den Mixer
 
• i : zeigt Informationen zum aktuellen Titel
 
453
 
Kapitel 14. Multimedia
 
• - : leiser
 
• + oder = : lauter
 
• CTRL - : Balance links
 
• CTRL + : Balance rechts
 
• CTRL t : Zeitanzeige
 
• CTRL o : Einstellungen
 
• CTRL i : Fenster verkleinern
 
• CTRL a : Infos zum Programm
 
• CTRL q : Programm beenden
 
Optisch kann Gqmpeg in der Standardversion nicht mit anderen Playern mithalten. Gqmpeg kann über
 
sogenannte „Skins“ im Aussehen verändert werden. Hier drei verschiedene Versionen von Gqmpeg:
 
Abbildung 14-7. Gqmpeg
 
Die Webseiten zu Gqmpeg finden Sie unter der URL: http://www.netpedia.net/hosting/gqview/mpeg-index.html,
 
dort finden Sie auch die eben gezeigten „Skins“, welche im Verzeichnis .gqmpeg/skins/ in Ihrem
 
Home-Verzeichnis abgelegt und entpackt werden müssen.
 
14.5. Grip
 
Grip ist ein GTK-basierter CD-Player und CD-Ripper, Sie können damit von Ihren Audio-CDs eigene
 
MP3-Dateien erzeugen. Grip beinhaltet alle Funktionen von cdparanoia, kann aber auch externe Programme
 
benutzen. cdda2wav ist beispielsweise ebenfalls geeignet. Grip unterstützt freedb. (http://www.freedb.org/) ist
 
eine Datenbank im Netz, die über Informationen zu vielen tausend CDs verfügt. Sie müssen also nicht mühsam
 
die Titel vom CD-Cover abtippen, Grip holt die Informationen für Sie automatisch aus dem Netz.
 
454
 
Kapitel 14. Multimedia
 
Abbildung 14-8. Grip
 
Grip arbeitet auch mit DigitalDJ (http://nostatic.org/ddj/ddj.html), einer SQL-Datenbank, die Ihre Titel
 
verwaltet, zusammen.
 
Aufgrund von Lizenzproblemen ist kein Programm zum Erzeugen von MP3-Dateien in Debian GNU/Linux
 
enthalten. Grip ist aber schon so konfiguriert, daß Sie sehr leicht ein solches Programm selber installieren
 
können. Hierzu müssen Sie die Sourcen (Quellcode) zum Beispiel von lame (http://www.sulaco.org/mp3) oder
 
bladeenc (http://bladeenc.mp3.no) besorgen, übersetzen und installieren.
 
Dies hört sich schwieriger an als es ist... Mit folgenden Befehlen läßt sich die Installation von bladeenc als
 
Superuser erledigen (die Ausgaben wurden etwas gekürzt):
 
debian:/home/fr# tar xvfz bladeenc-0.92.0-src-stable.tar.gz
 
bladeenc-0.92.0/
 
bladeenc-0.92.0/Makefile.in
 
bladeenc-0.92.0/README
 
bladeenc-0.92.0/stamp-h.in
 
...
 
bladeenc-0.92.0/bladeenc/docs/en/index-5.html
 
bladeenc-0.92.0/bladeenc/docs/en/index-6.html
 
bladeenc-0.92.0/bladeenc/docs/en/index.html
 
debian:/home/fr# cd bladeenc-0.92.0
 
debian:/home/fr/bladeenc-0.92.0# ./configure
 
creating cache ./config.cache
 
checking for a BSD compatible install... /usr/bin/install -c
 
checking whether build environment is sane...
 
...
 
creating bladeenc/docs/Makefile
 
creating bladeenc/docs/en/Makefile
 
creating config.h
 
455
 
Kapitel 14. Multimedia
 
debian:/home/fr/bladeenc-0.92.0# make
 
make all-recursive
 
make[1]: Entering directory ‘/home/fr/bladeenc-0.92.0’
 
Making all in bladeenc
 
...
 
make[2]: Entering directory ‘/home/fr/bladeenc-0.92.0’
 
make[2]: Leaving directory ‘/home/fr/bladeenc-0.92.0’
 
make[1]: Leaving directory ‘/home/fr/bladeenc-0.92.0’
 
debian:/home/fr/bladeenc-0.92.0# make install
 
Making install in bladeenc
 
make[1]: Entering directory ‘/home/fr/bladeenc-0.92.0/bladeenc’
 
Making install in docs
 
make[2]: Entering directory ‘/home/fr/bladeenc-0.92.0/bladeenc/docs’
 
...
 
make[2]: Nothing to be done for ‘install-data-am’.
 
make[2]: Leaving directory ‘/home/fr/bladeenc-0.92.0’
 
make[1]: Leaving directory ‘/home/fr/bladeenc-0.92.0’
 
Danach können Sie Grip zum Erstellen von MP3-Dateien benutzen. Wählen Sie hierzu zunächst unter „Tracks“
 
die gewünschten Tracks mit der rechten Maustaste aus. Unter „Rip“ klicken Sie nun auf „Rip+Encode“.
 
Abbildung 14-9. Grip
 
Die Dateien werden zunächst von der CD gelesen und als .wav-Dateien gespeichert. Diese werden dann in das
 
MP3-Format umgewandelt. Beide Schritte laufen parallel ab, Sie können dies an den beiden
 
Fortschrittsanzeigen sehen.
 
456
 
Kapitel 14. Multimedia
 
Die Webseiten zu Grip finden Sie unter der URL: http://www.nostatic.org/grip/
 
14.6. Videobearbeitung
 
Die Bearbeitung von Videos ist mittlerweile auch auf GNU/Linux Systemen möglich. Lange Zeit mangelte es
 
an entsprechender Software, kommerzielle Anbieter haben bis heute nicht diesen Markt erschlossen. Als
 
Ausnahme ist hier lediglich die Firma Mainconcept mit dem Produkt MainActor zu nennen.
 
Glücklicherweise haben sich aber auch in diesem Marktsegment Programierer gefunden die passende Lösungen
 
als Freie Software anbieten. Diese wird im folgenden vorgestellt.
 
Es wird hier lediglich auf die komplett digitale Bearbeitung von Videos eingegangen. Die hier vorgestellte
 
Software kann natürlich auch mit Filmen die aus analogen Quellen digitalisiert wurden umgehen. Dieser Schritt
 
der digitalisierung von analogen Bildmaterial wird jedoch nicht beschrieben.
 
14.6.1. iLink / Firewire / IEEE1394
 
Die offiziell als IEEE1394 bezeichnete, serielle, Schnittstelle findet in vielen modernen Digitalen
 
Videokameras Anwendung. Die Übertragungsrate von 400 MBit/Sekunde eignet sich hervoragend zur
 
Übertragung von großen Datenmengen (wie beispielsweise Videodaten). Bei Apple ist dieser schnelle Anschluß
 
in den aktuellen G3/G4 MACs und im neuen iMAC DV sowie in den neuen Powerbooks vorhanden und heißt
 
dort "Firewire". Sony nennt die Schnittstelle "iLink" und rüstet viele Notebooks von Hause aus damit aus. Trotz
 
der unterschiedlichen Bezeichnungen meinen alle Hersteller die IEEE1394 Schnittstelle.
 
Um Videos von einer DV (Digital Video) Kamera auf ein GNU/Linux System zu übertragen, benötigt man eine
 
Firewire/iLink oder auch IEEE1394 Schnittstelle am Rechner und natürlich eine Kamera mit dieser
 
Schnittstelle. Für Desktop Systeme sind PCI Karten mit IEEE1394 ab ca. 70 Euro erhältlich.
 
Um die IEEE1394 Schnittstelle auch unter GNU/Linux ansprechen zu können, muß der verwendete Kernel mit
 
den entsprechenden Treibern ausgestattet sein. Es existieren Treiber für die Kernel Version 2.2.x, es wird jedoch
 
dringend zu einem Kernel der Reihe 2.4 geraten. Die Debian Kernel Pakete der Version 2.4 liefern die
 
benötigten Treiber als Module mit. Benötigt werden die Module „ieee1394“ (IEEE1394 Treiber), „ohci1394“
 
(Chipsatz Unterstützung) und „raw1394“ („roher“ Zugriff auf die Geräte). Diese können wie gewohnt mittels
 
modprobe geladen werden. Eventuell wird ein anderer Chipsatz Treiber benötigt (beispielsweise „aic5800“)
 
dies ist von der verwendeten Hardware abhängig.
 
wasabi:~# lsmod |grep 1394
 
raw1394 6416 0 (unused)
 
ohci1394 15008 0 (unused)
 
ieee1394 24584 0 [raw1394 ohci1394]
 
Die IEEE1394 Schnittstelle ist „hot-plug“ fähig, Geräte können also gefahrlos im laufenden Betrieb
 
miteinander verbunden werden. Dies kann auch im Syslog verfolgt werden.
 
Jul 9 12:27:21 localhost kernel: ieee1394: registered ohci1394 driver, initializing now
 
Jul 9 12:27:21 localhost kernel: ohci1394: looking for Ohci1394 cards
 
Jul 9 12:27:21 localhost kernel: ohci1394_0: remapped memory spaces reg 0xc48bf000
 
Jul 9 12:27:21 localhost kernel: ohci1394_0: allocated interrupt 9
 
Jul 9 12:27:21 localhost kernel: ohci1394_0: soft reset finished
 
Jul 9 12:27:21 localhost kernel: ohci1394_0: max packet size = 2048 bytes
 
Jul 9 12:27:21 localhost kernel: ohci1394_0: 4 iso contexts available
 
Jul 9 12:27:21 localhost kernel: ohci1394_0: Receive DMA ctx=0 initialized
 
Jul 9 12:27:21 localhost kernel: ohci1394_0: Receive DMA ctx=1 initialized
 
Jul 9 12:27:21 localhost kernel: ohci1394_0: AT dma ctx=0 initialized
 
Jul 9 12:27:21 localhost kernel: ohci1394_0: AT dma ctx=1 initialized
 
Jul 9 12:27:21 localhost kernel: ohci1394_0: Receive DMA ctx=2 initialized
 
Jul 9 12:27:21 localhost kernel: ohci1394_0: resetting bus on request and attempting to become root
 
Jul 9 12:27:21 localhost kernel: ieee1394: detected 1 ohci1394 adapter
 
457
 
Kapitel 14. Multimedia
 
Jul 9 12:27:21 localhost kernel: ohci1394_0: PhyControl: 800301FF
 
Jul 9 12:27:21 localhost kernel: ohci1394_0: SelfID process finished (phyid 0, root)
 
Jul 9 12:27:21 localhost kernel: ohci1394_0: selfid packet 0x807f8056 rcvd
 
Jul 9 12:27:21 localhost kernel: ieee1394: including selfid 0x56807f80
 
Jul 9 12:27:21 localhost kernel: ohci1394_0: This node self-id is 0x807f8056
 
Jul 9 12:27:21 localhost kernel: ohci1394_0: calling self-id complete
 
Jul 9 12:27:21 localhost kernel: ohci1394_0: Got phy packet ctx=0 ... discarded
 
14.6.2. dvgrab
 
dvgrab (http://www.schirmacher.de/arne/dvgrab/) speichert Audio und Video Daten von einem digitalen
 
Camcorder in AVI Dateien. Diese AVI Dateien können später mit einer beliebigen anderen Software
 
weiterbearbeitet werden.
 
dvgrab verfügt über einige Parameter, hier nur zwei einfache Beispiele:
 
Das Kommando dvgrab film speichert alle von Camcorder kommenden Daten in den Dateien
 
film_001.avi, film_002.avi usw. Die Dateigröße wird dabei auf knapp ein Gigabyte beschnitten.
 
Um nur eine bestimmte Anzahl von Bildern (Frames) zu speichern kann folgendes Kommando verwendet
 
werden: dvgrab --frames 750 film. /50 Frames entsprechen bei einem PAL Camcorder 30 Sekunden
 
Filmzeit.
 
Weitere Parameter und Optionen liefert die Dokumentation zu dvgrab.
 
14.6.3. Kino
 
Kino ist ein einfaches Programm zum bearbeiten von Videos. Die Möglichkeit digitale Videos direkt vom
 
Camcorder auf Platte zu schreiben vermeidet den Umgang mit der Kommandozeilenversion von dvgrab.
 
458
 
Kapitel 14. Multimedia
 
Abbildung 14-10. Kino
 
Auf der rechten Seite besteht über verschiedene Reiter Zugriff auf die Funktionen „Editor“, „Capture“,
 
„Timeline“ und „Export“ von Kino.
 
Im Editor können Filme zusammengeschnitten oder Stücke herausgeschnitten werden. Der Bereich Capture
 
dient zum einlesen der Filme. Die Dateien werden im AVI-Format gespeichert.
 
14.7. TV Karten
 
TV-Karten auf Basis des Brooktree Chips bt848 / bt878 sind weitverbreitet und werden von vielen Herstellern
 
eingesetzt. Zunächst müssen die notwendigen Module geladen werden:
 
modprobe videodev
 
modprobe i2c
 
modprobe bttv pll=1 card=1
 
Die notwendigen Parameter für das bttv-Modul weichen je nach verwendeter Karte ab. Um den für die
 
installierte Karte passenden Treiber zu finden ist ein Blick in die Datei
 
/usr/src/linux/Documentation/video4linux/bttv/CARDLIST hilfreich. Diese Datei ist Bestandteil
 
459
 
Kapitel 14. Multimedia
 
der Kernel Sourcen. Weitere Informationen zum bttv Treiber finden sich auf der Seite von Gerd Knorr
 
(bytesex.org/bttv/).
 
14.7.1. xawtv
 
Um nun ein Fernsehbild auf den Monitor zu zaubern, bedarf es noch einer passenden Anwendung. Mit xawtv
 
steht diese unter Debian zur Verfügung. Während der Installation kann eine systemweite Konfigurationsdatei
 
erzeugt werden, diese wird aus einem Scan aller Kanäle erstellt. xawtv wurde von Gerd Knorr geschrieben,
 
aktuelle Debian Pakete stehen auf seiner Homepage (http://bytesex.org/xawtv/) zur Verfügung.
 
14.7.2. aletv
 
Um auch Videotext Seiten nutzen zu können wird das Paket aletv benötigt. Die Webseiten von aletv sind
 
unter http://www.goron.de/~froese/ zu finden.
 
14.8. Videoplayer
 
14.8.1. xine
 
xine xine.sourceforge.net) (gesprochen „ksin“) ist ein GPL-lizenzierter Video-Player für Unix, Linux und
 
andere Systeme. Es werden u.a. folgende Formate unterstützt: MPEG-1 Audio und Video, MPEG-2 Audio und
 
Video, MP3, AVI (verschiedene Formate, auch DivX), Ogg Vorbis, QuickTime (eingeschränkt).
 
xine spielt sowohl Audio- und Videodaten eines Streams. Die dazu benötigte Hardware-Leistung ist abhängig
 
vom Format des Streams. Die untere Grenze für MPEG-2 bei voller Bildrate ist ein Pentium II mit 400MHz.
 
xine kann CDs, SVCDs und DVDs direkt abspielen. Leider ist in vielen Ländern das Abspielen verschlüsselter
 
DVDs durch „nichtauthorisierte“ Software verboten oder rechtlich unklar. Aus diesem Grund besitzt xine keine
 
Funktion zum Abspielen verschlüsselter DVDs.
 
Abbildung 14-11. xine
 
460
 
Kapitel 14. Multimedia
 
xine kann aus dem Menü oder aus einem Terminal gestartet werden. Auf der Kommandozeile können direkt
 
Video CDs (mittels: xine vcd://1) oder DVDs (mittels: xine dvd://VTS_01_1.VOB) abgespielt werden.
 
Das Standard-Plugin zum Abspielen von DVDs (wie im oberen Beispiel) unterstützt weder Menüs noch
 
verschlüsselte DVDs. Bessere DVD-Plugins sind „xine-dvdnav“, „xine-dmd“, „xine-d5d“.
 
14.9. Videokonferenzen
 
14.9.1. Gnomemeeting
 
Gnomemeeting ist ein Client für Video- und Telefonkonferenzen, welcher durch die H.323 Kompatibilität
 
Verbindungen zu Microsoft Netmeeting Clients erlaubt.
 
Abbildung 14-12. Gnomemeeting
 
Bei ersten Start von Gnomemeeting sind einige Einstellungen vorzunehmen.
 
461
 
Kapitel 14. Multimedia
 
Abbildung 14-13. Gnomemeeting - Konfiguration 1/4
 
Zunächst sind einige persönliche Daten einzugeben, diese können auf einem öffentlichen Server gespeichert
 
werden, so ist es möglich das andere Benutzer Kontakt aufnehmen können. Wenn dies nicht gewünscht ist, so
 
kann die Übermittlung der Daten unten links im Fenster deaktiviert werden.
 
462
 
Kapitel 14. Multimedia
 
Abbildung 14-14. Gnomemeeting - Konfiguration 2/4
 
Weiterhin muss der Netzwerktyp ausgewählt werden.
 
463
 
Kapitel 14. Multimedia
 
Abbildung 14-15. Gnomemeeting - Konfiguration 3/4
 
464
 
Kapitel 14. Multimedia
 
Abbildung 14-16. Gnomemeeting - Konfiguration 4/4
 
Damit ist die Konfiguration von Gnomemeeting abgeschlossen.
 
Abbildung 14-17. Gnomemeeting - Fenster
 
465
 
Kapitel 14. Multimedia
 
In der Voreinstellung bietet Gnomemeeting nur ein recht beschränktes Fenster, über das Menü können einige
 
weitere Komponenten, beispielsweise ein Chat Fenster und ein Menü für Einstellungen, aktiviert werden.
 
Abbildung 14-18. Gnomemeeting - Übertragung
 
In der URL Zeile kann nun die IP Nummer des Kommunikationpartners eingegeben werden, wenn dort
 
ebenfalls eine entsprechende Software läuft und der Partner das Gespräch annimmt, so sollte ein Videobild
 
erscheinen.
 
466
 
Kapitel 15. CD brennen
 
Wenn Sie einen CD-Brenner besitzen, so können Sie diesen natürlich auch unter Debian GNU/Linux benutzen.
 
Bevor wir auf die einzelnen Programme eingehen, sind jedoch einige Vorarbeiten zu erledigen.
 
15.1. Hardware
 
CD-Brenner sind mit SCSI- oder IDE-Schnittstellen im Handel erhältlich. Wenn Sie den Kauf eines
 
CD-Brenners noch vor sich haben, sollten Sie sich, wenn möglich, für ein SCSI-Modell entscheiden. Diese sind
 
in der Anschaffung nur unwesentlich teurer. Der Vorgang des Brennens einer CD erfordert aus technischen
 
Gründen einen kontinuierlichen Datenstrom. Ein CD-Brenner verfügt über etwas Zwischenspeicher (Cache),
 
um eventuelle Engpässe überbrücken zu können. Trotzdem kann es zu Abbrüchen kommen, falls Ihr System
 
nicht in der Lage ist, die benötigten Daten schnell genug zu liefern. SCSI-Systeme sind hier im Vorteil.
 
Auch sollten Sie vor dem Kauf des Gerätes einen Blick in die Liste der von cdrecord (mit diesem Programm
 
werden die Daten auf die CD geschrieben) unterstützten Geräte werfen. Für die Version 1.8 von cdrecord
 
lautet die URL:
 
http://www.fokus.gmd.de/research/cc/glone/employees/joerg.schilling/private/cdwriters-1.8.html
 
Wenn Sie das Gerät bereits angeschlossen haben, können Sie mit dem Kommando dmesg | more überprüfen,
 
ob die Geräte gefunden wurden. Suchen Sie nach Zeilen, die mit scsi: beginnen. Auf einem System mit
 
IDE-Geräten, die über eine SCSI-Emulation betrieben werden, werden Sie in etwa folgendes finden:
 
scsi0 : SCSI host adapter emulation for IDE ATAPI devices
 
scsi : 1 host.
 
Vendor: GoldStar Model: CD-ROM CRD-8241B Rev: 2.03
 
Type: CD-ROM ANSI SCSI revision: 02
 
Detected scsi CD-ROM sr0 at scsi0, channel 0, id 0, lun 0
 
scsi : detected 1 SCSI generics 1 SCSI cdroms total.
 
*sr0: scsi3-mmc drive: 1x/24x cd/rw xa/form2 cdda tray
 
Für ein reines SCSI-System bekommen Sie folgendes angezeigt:
 
scsi0 : Tekram DC390/AM53C974 V2.0d 1998/12/25
 
scsi : 1 host.
 
DC390: Target 4: Sync transfer 10.0 MHz, Offset 15
 
Vendor: TEAC Model: CD-R58S Rev: 1.0G
 
Type: CD-ROM ANSI SCSI revision: 02
 
Detected scsi CD-ROM sr0 at scsi0, channel 0, id 4, lun 0
 
sr0: scsi3-mmc drive: 24x/24x writer cd/rw xa/form2 cdda tray
 
Die genauen Bezeichnungen der Geräte sowie die Adressen sind natürlich von der Konfiguration Ihres Rechners
 
abhängig. Wenn Ihre Geräte nicht erkannt werden, müssen Sie die benötigten Module laden beziehungsweise
 
einen neuen Kernel übersetzen.
 
15.2. Kernel
 
Um einen CD-Brenner benutzen zu können, ist es wichtig zu wissen, welche Schnittstelle das Gerät besitzt:
 
15.2.1. SCSI
 
Wenn Sie bereits ein SCSI-Gerät besitzen, haben Sie sicher schon den nötigen Treiber für den SCSI-Hostadapter
 
(SCSI-Controller) eingebunden. Der Standard-Debian GNU/Linux-Kernel verfügt über fast alle verfügbaren
 
Treiber. Wenn Sie einen eigenen Kernel erstellt haben, sorgen Sie dafür, daß der Hostadapter erkannt wird.
 
Weiterhin ist es nötig, das Modul für den Generischen SCSI-Treiber sg zu laden. Auch dies können Sie mit dem
 
Kommando modprobe sg erledigen.
 
Sie können die Module auch fest in den Kernel einbinden:
 
467
 
Kapitel 15. CD brennen
 
Abbildung 15-1. Kernel SCSI
 
Je nachdem ob Sie ein Modul erstellen wollen, oder den Treiber in den Kernel compilieren wollen, wählen Sie
 
hier M oder Y. Übersetzen Sie dann den Kernel neu und starten Sie das System noch einmal.
 
Damit sind die nötigen Schritte für SCSI-CD-Brenner abgeschlossen.
 
15.2.2. IDE
 
Für ein IDE-Gerät ist die Kernel-Konfiguration etwas schwieriger, aber lesen Sie ruhig weiter... Wählen Sie
 
zunächst das Menü „Block Devices“ und deaktivieren Sie den Punkt „IDE CD-ROM support“. Aktivieren Sie
 
dafür den Punkt „SCSI emulation support“ einige Zeilen tiefer. Gehen Sie nun zum Hauptmenü der
 
Kernel-Konfiguration zurück und wählen Sie das Menü „SCSI support“ an. Dort aktivieren Sie den SCSI
 
Support (das ist korrekt, auch wenn Sie ein IDE-Gerät einsetzen). Weiterhin aktivieren Sie im gleichen Menü
 
die Punkte „SCSI CD-ROM drivers“ und „SCSI generic support“.
 
Speichern Sie diese Konfiguration und übersetzen Sie einen neuen Kernel.
 
15.3. Software
 
Die grafischen Oberflächen unter GNU/Linux benutzen in der Regel Programme wie mkisofs, zum Erstellen
 
des CD-Images, und cdrecord, um die Daten auf die CD zu schreiben. Eine sehr schöne Übersicht zu vielen
 
verfügbaren Programmen, um CDs unter GNU/Linux zu erstellen, finden Sie unter:
 
http://sites.inka.de/~W1752/cdrecord/frontend.de.html. Keines dieser grafischen Frontends kommt aber an die
 
Leistungsfähigkeit der zugrundeliegenden Programme (mkisofs und cdrecord) heran. Wenn Sie sich mit den
 
Programmen auf Kommandozeilenebene auseinandersetzen möchten, empfehlen wir Ihnen einen Blick auf die
 
Webseiten: http://www.fokus.gmd.de/research/cc/glone/employees/joerg.schilling/private/cdrecord.html. Eine
 
deutsche Übersetzung der cdrecord-Dokumentation finden Sie unter
 
http://sites.inka.de/~W1752/cdrecord/online/.
 
468
 
Kapitel 15. CD brennen
 
Eine weitere empfehlenswerte Seite ist
 
http://www.fokus.gmd.de/research/cc/glone/employees/joerg.schilling/private/cdb.html, mit einer großen
 
Übersicht über alles an Programmen, was zur CD-Erstellung benötigt wird.
 
Für den täglichen Gebrauch werden Sie aber mit den hier beschriebenen grafischen Tools sicher auskommen.
 
Weitere Informationen zum Erstellen von CDs unter GNU/Linux finden Sie im CD-Writing HOWTO unter:
 
http://www.linuxdoc.org/HOWTO/CD-Writing-HOWTO.html.
 
15.3.1. mkhybrid
 
mkhybrid ist ebenso wie mkisofs ein Programm, um CD-Images zu erzeugen, die dann (im einfachsten Fall)
 
mit cdrecord auf einen Rohling gebrannt werden. Weitere Informationen finden Sie unter der URL:
 
ftp://ftp.gwdg.de/pub/linux/misc/mkhybrid/
 
15.3.2. CDs aus der Shell
 
Wenn Sie keinen Wert auf komfortable grafische Oberflächen legen oder CDs aus einem Script heraus erzeugen
 
lassen wollen, so können Sie natürlich auch die kommandozeilenbasierten Programme benutzen. Mit dem
 
Programm mkisofs erzeugen Sie ein CD-Image, welches die später zu brennende CD darstellt.
 
Tip: Vor dem eigentlichen Brennvorgang haben Sie die Möglichkeit, das Image zu überprüfen. Mit dem
 
sogenannten „loop device“ im Linux-Kernel können Sie eine Datei wie ein Dateisystem mounten. Geben Sie
 
hierzu dem Kommando mount die Option -o loop hinzu, ein Beispiel: mount meinecd.raw /cdrom -o
 
loop. Das Image entfernen Sie aus dem Dateisystem wie gewohnt mit dem Kommando umount.
 
Wenn Sie mit dem Inhalt des Images zufrieden sind, können Sie mit dem Kommando cdrecord das Image auf
 
eine CD schreiben. Dem Kommando cdrecord sind hierzu im wesentlichen die Optionen -dev (für das
 
benutzte Gerät) und -speed (die Geschwindigkeit, mit der CDs geschrieben werden können) anzugeben.
 
Weitere Optionen finden Sie in der Dokumentation zu cdrecord.
 
Natürlich können Sie auch auf eine Überprüfung des Images verzichten und die Daten praktisch in einem Rutsch
 
von der Festplatte auf die CD befördern, verketten Sie hierzu mittels einer Pipe (|) die beiden Kommandos:
 
mkisofs -R /cdrom/ | cdrecord dev=0,2,0 speed=8 -fs=8m -eject -v -
 
Achten Sie bitte peinlichst genau darauf, die richtigen Angaben für den Parameter dev zu benutzen, dies könnte
 
Sie sonst den Inhalt einer kompletten Festplatte kosten!
 
Einsteiger sollten auf alle Fälle eines der im folgenden vorgestellten Programme mit grafischer Oberfläche
 
benutzen.
 
15.3.3. X-CD-Roast
 
X-CD-Roast war eines der ersten Programme mit einer grafischen Oberfläche zur Herstellung von CDs auf
 
Unix-Systemen. Den aktuellen Stand der Entwicklung finden Sie auf der Homepage von X-CD-Roast unter:
 
http://www.xcdroast.org
 
469
 
Kapitel 15. CD brennen
 
Abbildung 15-2. X-CD-Roast
 
X-CD-Roast zeichnet sich durch folgende Features aus:
 
• Einfach zu bedienende grafische Oberfläche.
 
• Automatische Erkennung von SCSI- und IDE-Geräten.
 
• Erzeugen von ISO9660-CDs, „mastering“
 
• Erzeugen von Audio-CDs.
 
• Schnelles Kopieren von CDs, Audio und Daten.
 
X-CD-Roast unterstützt sowohl SCSI als auch IDE CD-Brenner. Natürlich können Sie diese Geräte auch
 
gemischt betreiben. Die meisten der im Handel erhältlichen Geräte werden von X-CD-Roast automatisch
 
erkannt. Beim ersten Start wird X-CD-Roast Sie dazu auffordern, die Konfiguration zu prüfen beziehungsweise
 
neu zu erstellen. Die meisten Einstellungen sind sehr einfach, etwas mehr Aufmerksamkeit sollten Sie den
 
Pfaden oder Partitionen widmen, auf denen die Daten zwischengespeichert werden. Sie können hier komplette,
 
ungenutzte Partitionen verwenden oder, falls Sie keine freie Partition auf einer Ihrer Festplatten haben, die
 
Daten in ein Verzeichnis schreiben lassen.
 
Wenn Sie Audio-CDs nicht nur kopieren, sondern auch eigene CDs zusammenstellen wollen, können Sie in der
 
Konfiguration auch die nötigen Einstellungen für Ihre Soundkarte vornehmen, Sie haben dann die Möglichkeit,
 
direkt in die Titel reinzuhören.
 
470
 
Kapitel 15. CD brennen
 
Abbildung 15-3. X-CD-Roast
 
In der Konfiguration des CD-Brenners sollten Sie noch die gewünschte Brenngeschwindigkeit angeben, diese
 
kann nicht automatisch ermittelt werden. Wundern Sie sich nicht, daß Sie hier keine acht-fache
 
Brenngeschwindigkeit einstellen können, diese finden Sie später im Menü für den eigentlichen Brennvorgang.
 
15.3.3.1. Kopieren von CDs
 
Wenn Sie nur über einen CD-Brenner verfügen und kein extra CD-ROM zum Lesen der Daten in Ihrem Rechner
 
haben, müssen Sie zunächst die Original-CD einlesen und als Datei (image) auf Ihrer Festplatte speichern.
 
Beachten Sie, daß hierzu genügend Platz auf der Partition frei sein muß, eine CD faßt knapp 700 MB Daten.
 
471
 
Kapitel 15. CD brennen
 
Abbildung 15-4. X-CD-Roast
 
Wenn Sie über mehr Platz verfügen, können Sie natürlich auch mehrere Images auf der Platte vorhalten und von
 
diesen bei Bedarf Kopien erstellen.
 
Natürlich können Sie auch CDs direkt kopieren, ohne den Umweg über ein Image zu machen. Sie erreichen
 
diese Funktion über die Schaltfläche „Quick CD-Copy“. Hierzu ist es aber wichtig, daß das zum Lesen der
 
Daten verwendete Gerät mindestens doppelt, besser dreifach, so schnell die Daten lesen kann wie diese dann
 
von dem Brenner auf CD geschrieben werden. Beim Brennen von CDs müssen die Daten ohne Unterbrechung
 
auf den CD-Rohling geschrieben werden. Die CD-Brenner verfügen über einen Zwischenspeicher (meist 1-2
 
MB), um kleinere Aussetzer in der Datenübertragung zu überbrücken. Wenn jedoch auf der Original-CD
 
Kratzer sind, die vom Lesegerät korrigiert werden können, ist es manchmal nötig, diesen Bereich noch einmal
 
einzulesen. Dies kann den Datenfluß unterbrechen, wenn das Lesegerät nicht schnell genug ist.
 
In jedem Fall sind Sie auf der sicheren Seite, wenn Sie die Daten (auch wenn Sie über ein Lese- und ein
 
Schreibgerät verfügen) zunächst auf die Festplatte schreiben und von dort auf den Rohling brennen.
 
472
 
Kapitel 15. CD brennen
 
15.3.3.2. Erstellen von Daten-CDs
 
Abbildung 15-5. X-CD-Roast
 
Auch das Erstellen eigener CDs ist mit X-CD-Roast recht einfach. Zunächst müssen Sie natürlich das
 
Verzeichnis angeben, in dem sich die Daten befinden, die Sie auf die CD brennen wollen. Sie können dann noch
 
Angaben zum Titel der CD und zum Hersteller sowie eine kurze Beschreibung eingeben. Zuletzt müssen Sie
 
sich noch für einen CD-Typ entscheiden. X-CD-Roast kann die verschiedensten Formate erzeugen, unter
 
GNU/Linux sollten Sie im allgemeinen das ISO9660-Format verwenden, welches auch von den meisten
 
anderen Betriebssystemen gelesen werden kann. Wenn Sie Daten in die Windows-Welt transportieren möchten,
 
steht Ihnen auch ein spezielles Windows98/NT-Format zu Auswahl. Sie können sich aber auch gezielt einzelne
 
Parameter zusätzlich auswählen und so die vorgegebenen Werte ergänzen.
 
Wenn Sie alle gewünschten Einstellungen vorgenommen haben, können Sie ein Image erzeugen lassen und
 
dieses dann auf eine CD schreiben.
 
Vielleicht ist es Ihnen schon passiert, daß Sie eine CD erstellt haben und diese nicht Ihren Vorstellungen
 
entsprach. Für solche Fälle gibt es zwar nicht die Möglichkeit, die CD zu korrigieren, aber Sie können sich den
 
Inhalt der späteren CD schon vorher ansehen. Der Linux-Kernel verfügt hierzu über ein sogenanntes
 
„loop-device“, mit dem Sie eine Datei, also auch ein CD-Image, wie jedes andere Gerät in das Dateisystem
 
einbinden. Sie können dies, als Superuser, ganz einfach mit dem Kommando mount und der zusätzlichen
 
Option -o loop erreichen:
 
sushi:~# mount linux-cd.raw /mnt -o loop
 
Nun können Sie, wie auf jeden anderen Bereich in Ihrem Dateisystem, mit den normalen Programmen den
 
Inhalt der CD kontrollieren. Wenn Sie mit dem Ergebnis zufrieden sind, können Sie die Datei auf einen
 
CD-Rohling befördern.
 
15.3.3.3. Audio-CDs
 
Das Erstellen von Audio-CDs beziehungsweise das kopieren einzelner Tracks von einer Audio-CD, ist von der
 
Bedienung her sehr einfach, jedoch unterstützen nicht alle CD-ROMs bzw. CD-Brenner dies optimal. Um CDs
 
473
 
Kapitel 15. CD brennen
 
in einer optimalen Qualität zu bekommen, sollten Sie in jedem Fall die Daten zunächst auf Festplatte speichern.
 
Legen Sie nun die zu kopierende Audio-CD ein und klicken Sie auf „Update Information-Windows“, damit das
 
Inhaltsverzeichnis der CD neu eingelesen wird.
 
Abbildung 15-6. X-CD-Roast
 
Sie können nun einzelne Titel (Tracks) auswählen oder die komplette CD auf die Festplatte übertragen. Klicken
 
Sie hierzu auf „Read Tracks“. Über „Select/Show Tracks to Read“ können Sie die gewünschten Titel
 
auswählen. Die Lesegeschwindigkeit sollten Sie, im Interesse der besten Qualität, möglichst nicht zu schnell
 
einstellen. Wenn beim Lesen der Tracks von der Audio-CD in einem CD-ROM Probleme auftreten oder Sie das
 
Gefühl haben, daß die Qualität nicht optimal ist, sollten Sie versuchen, die Tracks noch einmal, diesmal aber
 
mit dem CD-Brenner einzulesen.
 
Wenn Sie zum Einlesen ein IDE-Gerät benutzen, stellen Sie den Wert für „Audio-Read-Mode“ in den
 
Voreinstellungen auf „ATAPI“. Sie können hier noch diverse andere Werte einstellen, sie werden in der
 
Dokumentation näher erläutert.
 
Wenn alle gewünschten Stücke eingelesen sind und Sie eine Soundkarte konfiguriert haben, können Sie sich die
 
Stücke über die Schaltfläche „Play Audio-Track“ vor dem Schreibvorgang anhören. Prüfen Sie dabei, ob Sie mit
 
der Qualität der einzelnen Tracks zufrieden sind.
 
Abschließend können Sie über die Schaltfläche „Select/Show Tracks to Write“ die Titel auswählen, die Sie auf
 
den Rohling brennen möchten. Hier können Sie ebenfalls die Reihenfolge der Titel auf der CD festlegen. Wenn
 
Sie auch WAV-Dateien auf die CD brennen möchten, müssen Sie die Option „Fix wav-Files“ aktivieren. Bei
 
einigen CD-Brennern kann es notwendig sein, die Option Swap Audio zu aktivieren, dies werden Sie nach der
 
ersten CD sehr schnell merken.
 
15.3.4. gcombust
 
gcombust ist eine grafische Oberfläche für die Programme mkisofs / mkhybrid / cdda2wav / cdrecord und
 
cdlabelgen. Die Homepage finden Sie unter der URL: http://www.abo.fi/~jmunsin/gcombust/. Die
 
474
 
Kapitel 15. CD brennen
 
herausragenden Eigenschaften von gcombust sind:
 
• CD-Erstellung „On-The-Fly“, ohne ein Image zu erzeugen.
 
• CD - CD-Kopie, ohne ein Image zu erzeugen. Auch bei Audio-CDs
 
• Tooltips, Direkthilfe am Mauszeiger
 
• Leichte Erstellung von ISO-Images. Sie können Sich die CD selber zusammenstellen, ohne auf der Platte ein
 
Verzeichnis mit Links anlegen zu müssen.
 
• Erstellung von Audio-CDs
 
• Konvertierung von WAV nach Audio und umgekehrt.
 
• Drucken von CD Covern, über cdlabelgen
 
• Multisession-Unterstützung
 
• Erstellen von bootfähigen CDs
 
• Laden und Speichern von Verzeichnissen, zum Beispiel für Backups.
 
• NLS (National Language Support) und DnD (Drag and Drop)-Unterstützung.
 
Abbildung 15-7. gcombust
 
475
 
Kapitel 16. Netzwerk
 
Wenn Sie über verschiedene Rechner verfügen, liegt der Gedanke nahe, ein kleines Netzwerk aufzubauen. Dies
 
kann sinnvoll sein, um Daten zwischen den Rechnern auszutauschen, um Festplatten, Drucker oder Scanner, die
 
an einem Rechner angeschlossen sind, auch an anderen Rechnern nutzen zu können oder auch, um einfach mal
 
damit experimentiert zu haben.
 
Eine weitere Anwendung wäre, über das Netzwerk und den Linux-Server auch anderen Rechnern, eventuell mit
 
anderen Betriebssystemen, einen Zugang zum Internet zu verschaffen.
 
Netzwerkkarten sind sehr preiswert zu haben, schon ab 15 Euro pro Stück für die einfachsten Modelle.
 
Weiterhin benötigen Sie noch ein passendes Kabel. Ein einfaches Netzwerk läßt sich mit zwei 10
 
MBit-Netzwerkkarten und einem BNC-Kabel aufbauen. Eine solche Zusammenstellung ist häufig auch als
 
Komplettpaket zu bekommen.
 
Stand der Dinge sind aber 100MBit-Karten (welche nur unwesentlich teurer sind). Diese benötigen allerdings
 
sogenannte TP (Twisted Pair-) Kabel, die über einen Hub miteinander verbunden werden. Es sind auch spezielle
 
(gekreuzte) TP-Kabel im Handel, damit können Sie jedoch maximal zwei Rechner miteinander verbinden.
 
Auch die Kombination: zwei 100MBit-Karten, Hub und Kabel bekommen Sie im Paket. Für ein Notebook
 
benötigen Sie eine Netzwerkkarte im PCMCIA-Format, diese sind ab ca. 35 Euro erhältlich.
 
Nachdem Sie die Hardware beschafft und in Ihrem Rechner installiert haben, müssen Sie diese noch Ihrem
 
Debian GNU/Linux bekannt machen, sprich den passenden Treiber installieren und das TCP/IP Routing
 
aufsetzen. Sollten Sie die nötigen Eintragungen nicht während der Basisinstallation vorgenommen haben (dies
 
ist der einfachste Weg!), so müssen Sie die Treiber nachträglich installieren.
 
16.1. Netzwerkkarte
 
Das Einbinden einer Netzwerkkarte ist nicht weiter schwierig, in den meisten Fällen reicht das Laden eines
 
einzigen Modules aus. Auch bei Netzwerkkarten ist es sehr von Vorteil, wenn der Hersteller und der Typ der
 
Karte bekannt ist. Bei großen Herstellern (3Com, Intel usw.) ist dies recht einfach, dort sind die Angaben meist
 
auf der Karte aufgedruckt. Wenn Sie aber eine Karte von einem unbekannten Hersteller gekauft haben, wird die
 
Sache etwas schwieriger. Hier sollten Sie einen Blick auf den größten Chip werfen und den Hersteller und ggf.
 
die Nummer notieren.
 
Bei neueren Karten mit PCI-Bus kommen momentan hauptsächlich zwei Treiber in die engere Auswahl:
 
sogenannte NE2000-kompatible Karten werden vom Modul ne2k-pci bedient. Ebenfalls weit verbreitet sind
 
Karten mit einem RealTek-Chipsatz, hierfür ist in Kerneln mit der Version 2.2.x das Modul rtl8139 zuständig.
 
Dieses wurde ab dem Kernel 2.4 in 8139too umbenannt.
 
Ältere ISA-Bus-Karten, die man manchmal sogar geschenkt bekommt, sind ebenfalls häufig
 
NE2000-kompatibel. Für diese Karten benötigen Sie das Modul 8390 (welches von modprobe automatisch mit
 
dem eigentlichen Treiber geladen wird) sowie das Modul ne. Oft ist es bei diesen Karten allerdings nötig, dem
 
Modul weitere Parameter mitzugeben. In den meisten Fällen kommt man mit dem Kommando: modprobe ne
 
io=0x300 aus. Weitere Werte für den Parameter io sind: 0x280, 0x320, 0x340 usw. In Ausnahmefällen
 
kann auch die Angabe des Interrupts weiterhelfen, Beispiel: modprobe ne irq=7 io=0x300. Mit dem
 
Kommando cat /proc/interrupts können Sie herausfinden, welche Interrupts bereits benutzt werden.
 
Wenn Sie erfolgreich die Treiber für Ihre Karte laden konnten, können Sie diese Angaben dauerhaft in die Datei
 
/etc/modules eintragen.
 
Nun müssen Sie noch die Netzwerkkarte konfigurieren und die passenden Routen für Ihr Netzwerk setzen.
 
Tragen Sie die gewünschten Werte in die Datei /etc/network/interfaces ein:
 
# /etc/network/interfaces -- configuration file for ifup(8), ifdown(8)
 
# The loopback interface
 
iface lo inet loopback
 
# The first network card - this entry was created during the Debian installation
 
# (network, broadcast and gateway are optional)
 
iface eth0 inet static
 
476
 
Kapitel 16. Netzwerk
 
address 192.168.1.1
 
netmask 255.255.255.0
 
network 192.168.1.0
 
broadcast 192.168.1.255
 
gateway
 
Dieses Beispiel benutzt nicht geroutete Adressen und kann ohne Probleme für Ihr privates Netz übernommen
 
werden. Um die Einstellungen zu aktivieren, können Sie das Programm ifup mit dem gewünschten Namen des
 
Interfaces als Superuser ausführen. In diesem Beispiel mit dem Kommando: ifup eth0. Um ein
 
Netzwerkinterface zu deaktivieren, benutzen Sie den Befehl ifdown. Beide Kommandos verfügen noch über
 
eine Reihe weiterer Optionen, eine kurze Übersicht erhalten Sie mit der Option --help:
 
linux:~# ifup --help
 
Usage: ifup -anvsh -i<file> <ifaces...>
 
-a --all de/configure all interfaces automatically
 
-s --scheme SCHEME use SCHEME as scheme
 
-h --help this help
 
-i --interfaces FILE use FILE for interface definitions
 
-n --no-act print out what would happen, but don’t do it
 
-v --verbose print out what would happen before doing it
 
Eine ausführliche Beschreibung finden Sie in der jeweiligen Man-Page.
 
16.2. PCMCIA-Netzwerkkarte
 
Wenn Sie die PCMCIA-Netzwerkkarte sowie die PCMCIA-Treiber nicht bei der Erstinstallation Ihres Debian
 
GNU/Linux-Systems installiert haben, so müssen Sie diese nachträglich installieren und konfigurieren. Hierzu
 
steht Ihnen das Programm pcnetconfig zur Verfügung. Starten Sie zunächst pcnetconfig als Superuser:
 
sushi:/home/fr# pcnetconfig
 
This program will create a basic /etc/pcmcia/network.opts file, the
 
pcmcia-cs package’s network adapter configuration file, based on choices
 
that you make.
 
A sample network.opts file is supplied in pcmcia-cs; you can edit this
 
file to match your local network setup. Refer to the PCMCIA-HOWTO
 
(usually in /usr/doc/HOWTO/PCMCIA-HOWTO.gz) for a detailed description
 
of this file’s contents.
 
Before continuing with this program, ensure that you know your host’s
 
network configuration.
 
Do you want to continue? [y]
 
Bevor Sie fortfahren, ist es sinnvoll, wenn Sie sich die nötigen Daten für die Netzwerkkonfiguraton bereitlegen.
 
Choose a method for obtaining the host’s IP address and routing
 
information
 
1) Use the BOOTP protocol
 
2) Use the dhcpcd or dhclient program
 
3) Use /sbin/pump
 
4) Use netenv (from the netenv package)
 
5) Specify the IP address now (default)
 
5
 
Wählen Sie zunächst eine der oben angeführten Methoden. Auf Punkt 2, die Konfiguration via DHCP, gehen
 
wir später noch einmal ein. Wir werden die Konfiguration am Beispiel von statischen Adressen vorstellen,
 
wählen Sie hierzu die 5.
 
477
 
Kapitel 16. Netzwerk
 
Enter the IP address for this interface:
 
(type ’none’ to leave blank)
 
192.168.0.4
 
Geben Sie zunächst die IP-Adresse für Ihre PCMCIA-Netzwerkkarte ein. Adressen wie die oben gezeigte
 
können Sie ohne Probleme in einem internen Netz benutzen, diese werden nicht im Internet benutzt (geroutet).
 
Enter the netmask:
 
(the default is ’255.255.255.0’; type ’none’ to leave blank)
 
255.255.255.0
 
Der Wert für die Netzmaske (netmask).
 
Note: the "network address" here is NOT the same as the IP address.
 
See the Networking HOWTO. In short, the network address is the IP
 
address masked by the netmask.
 
Enter the network address:
 
(the default is ’192.168.0.0’; type ’none’ to leave blank)
 
192.168.0.0
 
Die Netzwerkadresse.
 
Enter the broadcast address:
 
(the default is ’192.168.255.255’; type ’none’ to leave blank)
 
192.168.255.255
 
Die Broadcast-Adresse.
 
Enter the gateway address:
 
(the default is ’192.168.0.1’; type ’none’ to leave blank)
 
192.168.0.1
 
Die Adresse des Gateways, dies ist der Rechner, der die Verbindung zu anderen Netzen „kennt“. Dieser Rechner
 
wird häufig auch als „Router“ bezeichnet.
 
Enter the local domain name:
 
(type ’none’ to leave blank)
 
openoffice.de
 
Der Name Ihrer Domain. Für ein internes Netz können Sie sich hier auch irgendeinen Namen ausdenken.
 
You may now specify up to three host names or IP addresses for
 
nameservers for this interface, to be added to /etc/resolv.conf. The
 
nameservers defined here complement the nameservers already defined in
 
/etc/resolv.conf.
 
The 1st nameserver:
 
(type ’none’ to leave blank)
 
194.25.2.129
 
Geben Sie hier die Adresse Ihres Nameservers ein. Wenn Sie hier keinen Wert eingeben (weil Sie keinen
 
Nameserver in Ihrem Netz konfiguriert haben und auch keinen Zugang zum Netz haben), können Sie diesen
 
Wert auch freilassen. Sie können dann aber die benachbarten Rechner nur über die IP-Nummer ansprechen,
 
oder Sie müssen alle Rechner in die Datei /etc/hosts eintragen.
 
The 2nd nameserver:
 
(type ’none’ to leave blank)
 
To automatically mount and unmount NFS filesystems, first add all these
 
filesystems to /etc/fstab, but include noauto in the mount options.
 
WARNING: It is especially important to use either cardctl or cardinfo
 
to shut down a network card when NFS mounts are configured this way.
 
478
 
Kapitel 16. Netzwerk
 
It is not possible to cleanly unmount NFS filesystems if a network card
 
is simply ejected without warning.
 
Enter a list of NFS mount points to be mounted for this interface:
 
(type ’none’ to leave blank)
 
The next two parameters are for IPX networks. They are passed to
 
the ipx_interface command.
 
Enter the frame type (i.e., 802.2):
 
(type ’none’ to leave blank)
 
Enter the IPX network number:
 
(type ’none’ to leave blank)
 
Die weiteren Werte können Sie normalerweise freilassen.
 
In addition to the usual network configuration parameters, the
 
network.opts script can specify extra actions to be taken after
 
an interface is configured, or before an interface is shut down.
 
If network.opts defines a shell function called start_fn, it will be
 
invoked by the network script after the interface is configured, and the
 
interface name will be passed to the function as its first (and only)
 
argument. Similarly, if it is defined, stop_fn will be invoked before
 
shutting down an interface. Refer to the PCMCIA-HOWTO for more details.
 
This program will now write the network.opts file. Please take care
 
not to overwrite a previously configured version of this file.
 
Do you want to write /etc/pcmcia/network.opts? [y] y
 
Wenn Sie die Einstellungen speichern möchten, geben Sie hier y ein.
 
Die Konfiguration ist damit abgeschlossen. Wenn Sie nun die Netzwerkkarte in den PCMCIA Slot stecken, wird
 
diese anhand der Daten in der Datei /etc/pcmcia/network.opts konfiguriert und ins System eingebunden.
 
16.3. TCP/IP
 
Das Protokollpaar TCP/IP hat sich in den vergangenen Jahren, auch unterstützt durch das schnelle Wachstum
 
das Internets, durchgesetzt. Physikalisch besteht das Internet aus allen möglichen Verbindungen, sei es eine
 
Modemstrecke oder ein Ethernet, bis hin zu schnellen ATM-basierten Strecken. Gemeinsam ist allen, daß dort
 
TCP/IP zur Kommunikation eingesetzt wird. Auf allen diesen Verbindungen lassen sich Dienste wie WWW,
 
Mail, News oder IRC benutzen.
 
Im folgenden werden die Grundlagen beschrieben, Sie benötigen diese nicht unbedingt für die in diesem Buch
 
vorgestellten, einfachen Beispiele. Wenn Sie aber Ihr Netz erweitern wollen oder tiefer in die Materie einsteigen
 
möchten, sollten Sie jetzt weiterlesen.
 
16.3.1. IP-Adressen
 
Jeder an das Internet (oder jedes andere IP-basierte Netzwerk) angeschlossene Computer wird über eine
 
einmalige IP-Adresse identifiziert. IP-Adressen haben eine Länge von vier Byte, die normalerweise als vier
 
dezimale Zahlen, getrennt durch Punkte, dargestellt werden. Im folgenden einige gültige Beispiele:
 
127.0.0.1
 
192.168.0.5
 
240.250.240.250
 
479
 
Kapitel 16. Netzwerk
 
Anhand einer IP-Adresse lassen sich zwei Dinge feststellen. Erstens das Netzwerk, in dem sich ein bestimmter
 
Rechner befindet, und zweitens der Rechner selber - dies entspricht dem sogenannten Netzwerk- und dem
 
Host-Teil der Adresse.
 
Für den Host-Teil der Adresse gibt es zwei besondere Werte: Wenn alle Bits auf 0 gesetzt sind, nennt man dies
 
die Netzwerkadresse (network address, 0), wenn alle auf 1 gesetzt sind, beschreibt dies alle Rechner in diesem
 
Netz - die sogenannte Broadcast-Adresse (255).
 
16.3.2. IP-Interface-Konfiguration
 
... oder „wie kommt die Netzwerkkarte zu Ihrer Adresse“. In den meisten Fällen werden Sie die Konfiguration
 
Ihrer Netzwerkkarte bereits bei der Installation von Debian GNU/Linux vorgenommen haben. Wenn Sie eine
 
solche Karte später einbauen oder das System mit einer zweiten Karte erweitern, müssen Sie diese von Hand
 
einbinden.
 
Das Kommando ifconfig wird benutzt, um einem Netzwerkinterface (dies kann eine Netzwerkkarte, ein
 
Modem, ISDN Verbindung oder ähnliches sein...) die benötigten Einstellungen zuzuweisen.
 
• Loopback - ein „virtuelles“ Netzwerkinterface. Dieses bezieht sich immer auf den Rechner selbst und hat die
 
IP-Adresse: 127.0.0.1. Interface: lo
 
• Ethernet - um zwei oder mehrere Rechner miteinander zu vernetzen, verwendet man eine Netzwerkkarte,
 
Standard ist dabei der Einsatz von Ethernet-Karten. Interface: eth0, eth1, eth2 ...
 
• Tokenring - ebenfalls zur Vernetzung über relativ kurze Strecken. Interface: tr0, tr1, tr2 ...
 
• PPP - „Point-to-Point Protocol“ (Punkt-zu-Punkt-Protokoll), zur Verwndung über serielle Verbindungen, wie
 
zum Beispiel Modemstrecken, ISDN usw. Interface: ppp0, ppp1, ppp2 ...
 
• Dummy - für System, die ansonsten keine Netzwerkverbindungen haben. Interface: dummy, dummy0, dummy1
 
...
 
Es gibt noch einige weitere Beispiele, wir werden uns hier mit dem am meisten verbreiteten, dem Ethernet,
 
beschäftigen.
 
Wenn Ihr Kernel die installierte Netzwerkkarte nicht erkennt, müssen Sie das passende Modul laden. Sie
 
können dies temporär mit dem Kommando insmod oder modprobe durchführen. Wenn Sie das richtige Modul
 
gefunden haben, tragen Sie die nötigen Werte in die Datei /etc/modules oder /etc/conf.modules ein. Für
 
eine NE2000-kompatible Karte wäre dies beispielsweise die Zeile alias eth0 ne (in der Datei
 
/etc/conf.modules).
 
Um nun der Karte eine IP-Adresse zuzuweisen, dient das Kommando ifconfig. Im einfachsten Fall, also ohne
 
weitere Optionen, gibt ifconfig die bisher konfigurierten Interfaces aus:
 
# /sbin/ifconfig
 
lo Link encap:Local Loopback
 
inet addr:127.0.0.1 Bcast:127.255.255.255 Mask:255.0.0.0
 
UP BROADCAST LOOPBACK RUNNING MTU:3584 Metric:1
 
RX packets:18584 errors:0 dropped:0 overruns:0 frame:0
 
TX packets:18584 errors:0 dropped:0 overruns:0 carrier:0
 
Collisions:0
 
Bisher sollte auf Ihrem Rechner lediglich das Loopback Interface (lo) konfiguriert sein.
 
Rufen Sie nun ifconfig mit dem Namen des Interfaces (eth0 für die erste, eth1 für die zweite Karte usw.)
 
sowie der gewünschten IP-Nummer auf, und sehen Sie sich die Veränderung an:
 
# /sbin/ifconfig eth0 192.109.42.23
 
# /sbin/ifconfig
 
lo Link encap:Local Loopback
 
inet addr:127.0.0.1 Bcast:127.255.255.255 Mask:255.0.0.0
 
UP BROADCAST LOOPBACK RUNNING MTU:3584 Metric:1
 
RX packets:18584 errors:0 dropped:0 overruns:0 frame:0
 
TX packets:18584 errors:0 dropped:0 overruns:0 carrier:0
 
480
 
Kapitel 16. Netzwerk
 
Collisions:0
 
eth0 Link encap:Ethernet HWaddr 00:00:F7:C3:45:1B
 
inet addr:192.109.42.23 Bcast:192.109.42.255 Mask:255.255.255.0
 
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
 
RX packets:55 errors:0 dropped:0 overruns:0 frame:0
 
TX packets:5 errors:0 dropped:0 overruns:0 carrier:0
 
Collisions:7
 
Interrupt:10 Base address:0x300
 
ifconfig gibt Ihnen nun auch die Informationen zur Ethernetkarte aus. Die Werte für die Netzmaske,
 
Broadcast Adresse usw. wurden automatisch gesetzt. Wenn Sie bei diesen Werten andere Einstellungen
 
benötigen, so müssen Sie diese ebenfalls mit ifconfig setzen:
 
# /sbin/ifconfig eth0 192.109.42.23 netmask 255.255.255.240
 
Die verändert die zuvor angegebenen Werte. Wenn Sie ein Interface komplett deaktivieren wollen, benutzen Sie
 
die Option down:
 
# /sbin/ifconfig eth0 down
 
Wenn Sie Ihre Netzwerkkarte bereits bei der Installation von Debian GNU/Linux eingerichtet haben, so werden
 
Sie feststellen, daß einfach schon alles funktioniert... hierzu wurden die notwendigen Werte in die Datei
 
/etc/network/interfaces geschrieben.
 
# /etc/network/interfaces -- configuration file for ifup(8), ifdown(8)
 
# The loopback interface
 
iface lo inet loopback
 
# The first network card - this entry was created during the Debian installation
 
# (network, broadcast and gateway are optional)
 
iface eth0 inet static
 
address 192.109.42.18
 
netmask 255.255.255.240
 
network 192.109.42.16
 
broadcast 192.109.42.16
 
gateway 192.109.42.17
 
In dieser Datei sind einige Variablen definiert, die beim Aufruf des Programms ifup ausgelesen werden.
 
Wenn Sie Ihre Netzwerkkarte erst später eingerichtet haben, erstellen Sie diese Datei und passen sie Ihren
 
Bedürfnissen an.
 
16.3.3. IP Routing
 
Wenn Sie der Netzwerkkarte die eigenen Einstellungen mitgeteilt haben, müssen Sie dem Linux-Kernel noch
 
beibringen, die IP-Pakete auch an die richtige Stelle zu schicken. Dies kann bei mehreren Netzwerkkarten
 
durchaus richtige Arbeit werden...
 
Der Kernel hält diese Informationen, welcher Rechner oder welches Netzwerk über welchen Weg zu erreichen
 
ist, in der sogenannten „routing table“. Das Kommando, um sich diese Tabelle anzusehen, lautet: route. Wenn
 
Sie bisher nur das Loopback Device konfiguriert haben, wird das Ergebnis folgendes sein:
 
# /sbin/route
 
Kernel IP routing table
 
Destination Gateway Genmask Flags Metric Ref Use Iface
 
127.0.0.0 * 255.0.0.0 U 0 0 2 lo
 
Dies bedeutet, daß alle IP-Pakete (auch „traffic“ genannt) für das Netzwerk 127 über das Loopback Device (lo)
 
geschickt werden sollen.
 
481
 
Kapitel 16. Netzwerk
 
Wenn Sie nun eine Netzwerkkarte konfiguriert haben, müssen Sie diese auch in die Routing-Tabelle des Kernels
 
eintragen:
 
# /sbin/route add -net 192.109.42.0
 
# /sbin/route
 
Kernel IP routing table
 
Destination Gateway Genmask Flags Metric Ref Use Iface
 
127.0.0.0 * 255.0.0.0 U 0 0 2 lo
 
192.109.42.0 * 255.255.255.0 U 0 0 137 eth0
 
Dies führt dazu, daß alle IP-Pakete für das Class-C Netz 192.109.42.xxx über das Interface eth0 zu
 
erreichen sind. Wenn Sie nur einen kleinen Teil eines Netzes zur Verfügung haben, müssen Sie dies über die
 
Netzmaske (netmask) steuern:
 
# /sbin/route add -net 192.109.42.16 netmask 255.255.255.240
 
In diesem Beispiel stehen 16 IP-Nummern zur Verfügung (.16 bis .31).
 
Dies reicht schon aus, um ein kleines, internes Netzwerk zu betreiben. Wenn Sie jedoch zwei Netzwerke
 
miteinander verbinden wollen, müssen Sie dies über ein sogenanntes „gateway“ (oder auch „router“ genannt)
 
tun.
 
Wenn über das neue Interface nur ein bestimmtes Netzwerk zu erreichen ist, und Sie die Adresse des Gateways
 
(Routers) für dieses Netz kennen, müssen Sie die Routing-Tabelle um genau diesen Eintrag ergänzen. Sie
 
erreichen dies mit der Option -net:
 
# route add -net 193.174.1.0 gw 192.109.42.17
 
Dies bedeutet, daß das Netz 193.174.1.0 (Class C) über das Gateway 192.109.42.17 zu erreichen ist, setzt aber
 
auch voraus, daß schon bekannt ist, wie das Netz 192.109.42.x zu ereichen ist.
 
Eine andere häufig anzutreffende Möglichkeit ist es, alle IP-Pakete, für die es keinen passenden Eintrag in der
 
Routing-Tabelle gibt, an ein Gateway zu schicken, die sogenannte „default route“.
 
# route add default gw 192.109.42.17
 
Dies würde zu folgender Routing-Tabelle führen.
 
Kernel IP routing table
 
Destination Gateway Genmask Flags Metric Ref Use Iface
 
127.0.0.0 * 255.0.0.0 U 0 0 2 lo
 
192.109.42.16 0.0.0.0 255.255.255.240 U 0 0 0 eth0
 
0.0.0.0 192.109.42.17 0.0.0.0 UG 1 0 0 eth0
 
Sehen wir uns die Einträge im einzelnen einmal an: die erste Zeile bezieht sich auf das Loopback Device
 
(127.0.0.0, lo). Wenn Sie einen neueren Kernel verwenden, wird dies unter Umständen nicht angezeigt.
 
Werfen wir jedoch zunächst nochmal einen genaueren Blick auf die Datei /etc/network/interfaces:
 
# /etc/network/interfaces -- configuration file for ifup(8), ifdown(8)
 
# The loopback interface
 
iface lo inet loopback
 
# The first network card - this entry was created during the Debian installation
 
# (network, broadcast and gateway are optional)
 
iface eth0 inet static
 
address 192.109.42.18
 
netmask 255.255.255.240
 
network 192.109.42.16
 
broadcast 192.109.42.16
 
gateway 192.109.42.17
 
482
 
Kapitel 16. Netzwerk
 
Diese Datei definiert einige Variablen, wenn Sie eine Änderung an dieser Datei vornehmen, können Sie diese
 
einfach mit dem Kommando ifup eth0 aktivieren. In den ersten Zeilen wird das sogenannte Loopback Device
 
konfiguriert.
 
Die folgenden Zeilen beinhalten die benötigten Variablen für Ihr Netz.
 
In dieser Datei werden IP-Nummern verwendet. Wenn Sie das Kommando route aufrufen um sich die Routing
 
Tabelle anzeigen zu lassen, werden Sie bemerken, daß dort die Namen der Rechner und Netze verwendet
 
werden. Sie können die Ausgabe der IP-Nummern mit der Option -n hinter dem Kommando route erzwingen.
 
In der Datei /etc/hosts finden Sie den Namen des lokalen Rechners, in der Datei /etc/networks den
 
Namen des Netzes. Systeme, deren Name nicht in der Datei /etc/hosts beschrieben sind, werden im
 
allgemeinen über den Nameserver aufgelöst.
 
16.3.4. Domain Name Server - DNS
 
Jeder mit dem Internet verbundene Rechner oder jedes Netzwerk, welches IP als Netzwerk-Protokoll benutzt,
 
hat eine (oder mehrere) IP-Adressen, mit der das Routing von und zu diesem System sichergestellt wird. Da die
 
Benutzer sich diese Zahlenkolonnen nur schwer merken können, kann jedem Rechner (eigentlich jeder
 
IP-Nummer) ein Name zugewiesen werden. Sicher haben Sie dies schon bei der Installation von Debian
 
GNU/Linux bemerkt, Sie werden nach einem Rechnernamen (Hostname) gefragt.
 
Dieser Name wird an verschiedenen Stellen gespeichert. Sie können mit dem Kommando hostname den
 
Namen des Rechners herausfinden, es wird der Wert aus der Datei /etc/hostname ausgegeben. Wenn Sie dies
 
an einem (dauerhaft) ans Internet angeschlossenen Rechner probieren, besteht dieser Name aus verschiedenen
 
Teilen, die durch Punkte getrennt sind, zum Beispiel linux.openoffice.de.
 
Nur der erste Teil ist der Name des Rechners (hostname), der Rest wird als „Domain Name“ bezeichnet (hier:
 
openoffice.de). Da es natürlich viele Menschen gibt, die möchten, daß Ihr Rechner den Namen linux
 
bekommt, wurde jeder dieser Namen dadurch einmalig gemacht, daß man ihn einer bestimmten Domain
 
zuordnet.
 
Innerhalb einer Domain (eine Gruppe von Computern, ein Netzwerk) ist meist eine Person für die Vergabe von
 
Computernamen zuständig und pflegt die Daten(-bank) mit den notwendigen Informationen. Dieses System ist
 
als DNS ( Domain Name Service) bekannt und mit einem Telefonverzeichnis vergleichbar. Sie können nach
 
einem Computernamen suchen und erhalten dessen IP-Adresse.
 
Vor der Einführung von DNS mußte man sich die IP-Adressen der Rechner merken, um sich im Internet
 
bewegen zu können. Namen wurden nur innerhalb kleinerer Netzwerke benutzt und konnten in verschiedenen
 
Netzen doppelt vergeben werden. Diese (lokalen) Namen wurden in der Datei /etc/hosts gespeichert.
 
Natürlich können Sie auch heute noch diese Datei benutzen, sie wird auch bei der Installation von Debian
 
GNU/Linux angelegt. Die Datei enthält den Namen des eigenen Rechners und die dazugehörige IP-Adresse.
 
DNS ist ein sehr umfangreiches Thema, wir werden uns an dieser Stelle nur aus der Sicht des Nutzers (Client)
 
damit befassen.
 
Wenn ein Debian GNU/Linux-System die IP-Adresse eines anderen Rechners benötigt (zum Verschicken von
 
Mail oder um eine Webseite aufzurufen), wird ein Teil der C Library benutzt, um die Informationen zu
 
bekommen - der „resolver“. Zuerst wird ein Blick in die Datei /etc/nsswitch.conf geworfen (können Sie
 
an dieser Stelle auch tun...). In dieser ist aufgeführt, an welchen Stellen versucht werden soll, die IP-Nummer zu
 
finden. Hier sind drei verschiedene Einträge möglich, wenn mehrere vorhanden sind, werden diese der
 
Reihenfolge nach durchsucht.
 
 
files - versucht den Hostnamen in der Datei /etc/hosts zu finden
 
 
dns - probiert es über eine Nameserverabfrage
 
 
483
 
Kapitel 16. Netzwerk
 
nis - fragt eine NIS-Datenbank
 
Ein üblicher Eintrag in der Datei /etc/nsswitch wäre:
 
hosts: files dns
 
Dieser Eintrag bringt den Resolver dazu, zuerst die Datei /etc/hosts und dann den (in /etc/resolv.conf
 
definierten) Nameserver (DNS) nach dem Rechnernamen zu durchsuchen.
 
Die Datei /etc/resolv.conf enthält, neben dem Eintrag für einen oder mehrere Nameserver, zunächst den
 
Namen der lokalen Domain.
 
domain openoffice.de
 
nameserver 194.25.2.129
 
nameserver 192.168.22.33
 
Die erste Zeile bewirkt, daß wenn nur ein Rechnername ohne Angabe der Domain angegeben wird, die lokale
 
Domain an den Rechnernamen (Hostname) angehängt wird. Die folgenden Zeilen beschreiben die (IP-technisch
 
gesehen möglichst gut erreichbaren) Nameserver. Sie sollten hier in jedem Fall IP-Nummer und nicht die
 
Namen der Rechner verwenden.
 
Alle Programme, die Sie benutzen (zum Beispiel Webbrowser), erfragen automatisch die IP-Nummer, wenn Sie
 
einen Rechnernamen eingeben. Natürlich können Sie aber auch selber solche Abfragen starten. Das zu Debian
 
GNU/Linux gehörende Paket dnsutils enthält das Programm nslookup. Sie können nslookup interaktiv
 
benutzen, um mehrere Abfragen nacheinander zu starten. Die häufigste Anwendung ist aber, nslookup für eine
 
einzelne Abfrage zu benutzen. Hierzu geben Sie nach dem Kommando einfach den Namen des gesuchten
 
Rechners an:
 
# nslookup www.debian.org
 
Server: 194.25.2.129
 
Address: 194.25.2.129#53
 
Non-authoritative answer:
 
Name: www.debian.org
 
Address: 198.186.203.20
 
Nach dem befragten Server wird weiter unten die IP-Adresse für den gewünschten Server angegeben.
 
16.3.5. resolv.conf
 
Auf die Datei /etc/resolv.conf wurde ja schon im vorherigen Abschnitt eingegangen. Hier noch ein etwas
 
erweitertes Beispiel:
 
domain openoffice.de
 
search openoffice.de belug.org debian.org
 
nameserver 194.25.2.129
 
nameserver 192.168.22.33
 
Hinzugekommen ist die zweite Zeile. Diese ist nicht zwingend notwendig, erleichtert aber die Arbeit. Mit dieser
 
Zeile werden einfach (wenn Sie nur den Hostnamen angeben) die angegebenen Domains nach dem
 
gewünschten Namen durchsucht, der Hostname wird automatisch um den Domainnamen ergänzt.
 
484
 
Kapitel 17. Server-Dienste
 
17.1. Apache
 
Anfang 1995 war die beliebteste Server-Software für das WWW (World Wide Web) der frei verfügbare HTTP (
 
Hypertext Transfer Protocol) -Server „NCSA“, der von Rob McCool am National Center for Supercomputing
 
Applications (daher der Name: NCSA), University of Illinois, Urbana-Champaign entwickelt wurde. Zu dieser
 
Zeit fand aber schon keine weitere Entwicklung statt, da Rob McCool fast ein Jahr zuvor das NCSA verlassen
 
hatte. Viele Webmaster entwickelten eigene Erweiterungen und beseitigten Fehler. Einige dieser Webmaster
 
kommunizierten miteinander und koordinierten Ihre Entwicklungen in Form von sogenannten „Patches“.
 
Diese Vielzahl der Patches führte auch zum Namen: „A PAtCHy server“ - Apache.
 
Auf Basis des NCSA httpd Version 1.3 und allen verfügbaren Patches entstand im April 1995 die erste offizielle
 
Version 0.6.2 des Apache Webservers. Bereits im Dezember 1995 wurde die Verion 1.0 veröffentlicht, die auch
 
intern komplett überarbeitet war. Bereits ein Jahr, nachdem die Entwicklung aufgenommen wurde, konnte der
 
Apache mehr Installationen aufweisen als der NCSA Server.
 
Auch wenn Sie Ihren Rechner nicht permanent am Netz betreiben, macht ein eigener Webserver auf Ihrem
 
System Sinn. Bei der Entwicklung eigener Webseiten können Sie diese sofort „Live“ auf Ihrem System testen.
 
Sie müssen dazu nicht die Seiten erst auf den Server Ihres Providers übertragen. Ebenso können Sie selbst
 
geschriebene CGI-Programme gleich testen.
 
17.1.1. Apache installieren & einrichten
 
Die Installation von Apache können Sie wie gewohnt mit apt-get install apache durchführen. Auch
 
dieses Paket beinhaltet ein Konfigurationscript, welches während der Installation gestartet wird. Wenn Sie
 
Apache später neu konfigurieren möchten, können Sie das mit dem Programm apacheconfig durchführen.
 
sushi:~# apt-get install apache
 
Reading Package Lists... 100%
 
Reading Package Lists... Done
 
Building Dependency Tree... Done
 
The following NEW packages will be installed:
 
apache
 
0 packages upgraded, 1 newly installed, 0 to remove and 246 not upgraded.
 
Need to get 0B/356kB of archives. After unpacking 666kB will be used.
 
Selecting previously deselected package apache.
 
(Reading database ... 64458 files and directories currently installed.)
 
Unpacking apache (from .../web/apache_1.3.9-10.deb) ...
 
Setting up apache (1.3.9-10) ...
 
Installing new configuration file /etc/apache/httpd.conf ...
 
Installing new configuration file /etc/apache/access.conf ...
 
Installing new configuration file /etc/apache/srm.conf ...
 
Installing new configuration file /etc/apache/cron.conf ...
 
Updating alias /doc/ -> /usr/doc/ in srm.conf (for Debian docs).
 
Your config files will not be modified until you select Y at "save changes."
 
Enter the email address of your server administrator. This address
 
will be used in error messages allowing users to submit reports of
 
faulty links or misconfigured cgi-programs to you. It should be an email
 
address that corresponds to a human.
 
Who should the ServerAdmin be? [you@your.address] fr@openoffice.de
 
Geben Sie hier Ihre E-Mail Adresse an. Diese Adresse können Sie später automatisch in Ihre Webseiten
 
einbinden, zum Beispiel wenn es gewünscht ist, den Betreiber des Servers (Webmaster) zu erreichen.
 
485
 
Kapitel 17. Server-Dienste
 
The DocumentRoot is set to /var/www.
 
Installing your new homepage in /var/www.
 
This release of the Apache server can be configured to load only certain
 
modules into memory. This program can automagically configure Apache
 
so only modules that are actually needed are loaded.
 
Do you want to manually choose which modules to load? [y/N]
 
Das Apache-Paket kommt mit einer ganzen Reihe von Modulen die, ähnlich wie die Module des Linux-Kernels,
 
die Funktionalität des Webservers erweitern. Wir werden später noch einige interessante Module vorstellen. Sie
 
können jetzt aber ohne Probleme darauf verzichten, weitere Module auszuwählen. Der Webserver wird auch so
 
funktionieren.
 
Working magic...........................................done.
 
# LoadModule vhost_alias_module /usr/lib/apache/1.3/mod_vhost_alias.so
 
# LoadModule env_module /usr/lib/apache/1.3/mod_env.so
 
LoadModule config_log_module /usr/lib/apache/1.3/mod_log_config.so
 
LoadModule rewrite_module /usr/lib/apache/1.3/mod_rewrite.so
 
# LoadModule mime_magic_module /usr/lib/apache/1.3/mod_mime_magic.so
 
LoadModule mime_module /usr/lib/apache/1.3/mod_mime.so
 
LoadModule negotiation_module /usr/lib/apache/1.3/mod_negotiation.so
 
LoadModule status_module /usr/lib/apache/1.3/mod_status.so
 
# LoadModule info_module /usr/lib/apache/1.3/mod_info.so
 
# LoadModule includes_module /usr/lib/apache/1.3/mod_include.so
 
LoadModule autoindex_module /usr/lib/apache/1.3/mod_autoindex.so
 
LoadModule dir_module /usr/lib/apache/1.3/mod_dir.so
 
LoadModule cgi_module /usr/lib/apache/1.3/mod_cgi.so
 
# LoadModule asis_module /usr/lib/apache/1.3/mod_asis.so
 
# LoadModule imap_module /usr/lib/apache/1.3/mod_imap.so
 
# LoadModule action_module /usr/lib/apache/1.3/mod_actions.so
 
# LoadModule speling_module /usr/lib/apache/1.3/mod_speling.so
 
LoadModule userdir_module /usr/lib/apache/1.3/mod_userdir.so
 
# LoadModule proxy_module /usr/lib/apache/1.3/libproxy.so
 
LoadModule alias_module /usr/lib/apache/1.3/mod_alias.so
 
LoadModule access_module /usr/lib/apache/1.3/mod_access.so
 
LoadModule auth_module /usr/lib/apache/1.3/mod_auth.so
 
# LoadModule anon_auth_module /usr/lib/apache/1.3/mod_auth_anon.so
 
# LoadModule dbm_auth_module /usr/lib/apache/1.3/mod_auth_dbm.so
 
# LoadModule db_auth_module /usr/lib/apache/1.3/mod_auth_db.so
 
# LoadModule digest_module /usr/lib/apache/1.3/mod_digest.so
 
# LoadModule cern_meta_module /usr/lib/apache/1.3/mod_cern_meta.so
 
LoadModule expires_module /usr/lib/apache/1.3/mod_expires.so
 
# LoadModule headers_module /usr/lib/apache/1.3/mod_headers.so
 
# LoadModule usertrack_module /usr/lib/apache/1.3/mod_usertrack.so
 
LoadModule unique_id_module /usr/lib/apache/1.3/mod_unique_id.so
 
LoadModule setenvif_module /usr/lib/apache/1.3/mod_setenvif.so
 
# LoadModule sys_auth_module /usr/lib/apache/1.3/mod_auth_sys.so
 
# LoadModule put_module /usr/lib/apache/1.3/mod_put.so
 
# LoadModule throttle_module /usr/lib/apache/1.3/mod_throttle.so
 
# LoadModule auth_ldap_module /usr/lib/apache/1.3/auth_ldap.so
 
# LoadModule allowdev_module /usr/lib/apache/1.3/mod_allowdev.so
 
# LoadModule pgsql_auth_module /usr/lib/apache/1.3/mod_auth_pgsql.so
 
# LoadModule cvs_module /usr/lib/apache/1.3/mod_cvs.so
 
# LoadModule define_module /usr/lib/apache/1.3/mod_define.so
 
# LoadModule eaccess_module /usr/lib/apache/1.3/mod_eaccess.so
 
# LoadModule roaming_module /usr/lib/apache/1.3/mod_roaming.so
 
Pondering...........................................done.
 
Save these changes to the configuration files? [Y/n]
 
486
 
Kapitel 17. Server-Dienste
 
Das Konfigurationsprogramm wird die nötigen Dateien unter /etc/apache/ speichern. Wie Sie sehen, sind
 
viele Zeilen auskommentiert, hierzu dient das Zeichen # am Zeilenanfang. Wenn Sie später bestimmte
 
Funktionen benötigen, entfernen Sie dieses Zeichen und starten Sie den Server neu. Bei einigen Modulen sind
 
weitere Eintragungen in der Konfiguration notwendig, ein paar Beispiele finden Sie weiter unten, die anderen
 
werden in der Dokumentation zu Apache beschrieben.
 
Rotated ‘/etc/apache/httpd.conf’ at Sun Jan 23 19:25:42 CET 2000.
 
Rotated ‘/etc/apache/srm.conf’ at Sun Jan 23 19:25:42 CET 2000.
 
Restart Apache now? [Y/n]
 
Stopping apache with apachectl ...
 
Waiting for apache to terminate ...done.
 
/usr/sbin/apachectl start: httpd started
 
Der Webserver ist nun installiert und Sie können diesen mit einem beliebigen Webbrowser unter der Adresse:
 
http://localhost/ erreichen. Es wurde bei der Installation eine Testseite eingerichtet, diese sollte Ihnen angezeigt
 
werden. Die Dateien zu dieser Seite finden Sie unter /var/www/. Sie können dort nun eigene Seiten ablegen.
 
Wenn Sie sich näher mit dem Apache Webserver beschäftigen wollen, sollten Sie auch die Dokumentation
 
installieren, die sich im Paket apache-doc befindet.
 
17.1.2. Konfigurationsdateien
 
Unter Debian GNU/Linux befinden sich die Konfigurationsdateien des Apache unter /etc/apache/.
 
Apache benutzt drei Konfigurationdateien:
 
• httpd.conf - Informationen zum Verhalten des Servers.
 
• srm.conf - Informationen zu den Dokumenttypen
 
• access.conf - Informationen zu den Zugriffen auf die Dokumente
 
Debian GNU/Linux benutzt während der Installation des Paketes das Programm apacheconfig, um diese
 
Dateien (speziell httpd.conf) zu konfigurieren. Sie können apacheconfig zu jeder Zeit wieder aufrufen
 
(als Superuser).
 
17.1.3. Logdateien
 
Apache protokolliert alle Aktionen in zwei Logdateien, welche unter /var/log/apache/ zu finden sind:
 
• error_log - Fehlermeldungen.
 
• access_log - Hier werden alle übertragenen Dateien protokolliert.
 
17.1.4. Starten & Stoppen
 
Sie können den Apache als Superuser über das Script /etc/init.d/apache starten, neu starten und stoppen.
 
linux:/home/fr# /etc/init.d/apache
 
Usage: /etc/init.d/apache {start|stop|reload|reload-modules|force-reload|restart}
 
linux:/home/fr# /etc/init.d/apache restart
 
Restarting apache daemon... done.
 
Wenn Sie Veränderungen an den Konfigurationsdateien vorgenommen haben, müssen Sie den Apache neu
 
starten. Wenn dieser Neustart mißlingt, liegt ein Fehler in den Konfigurationsdateien vor.
 
487
 
Kapitel 17. Server-Dienste
 
17.1.5. CGI-Programme
 
CGI (Common Gateway Interface) -Programme werden auf dem Webserver ausgeführt und liefern dynamische
 
Daten als HTML-Datei an den Browser zurück. Im einfachsten Fall kann ein CGI-Programm ein einfaches
 
Shell-Script sein, Sie können aber auch in jeder anderen Programmiersprache Anwendungen erstellen. Sehr
 
beliebt sind Datenbankanwendungen, als Scriptsprache haben sich Perl und PHP durchgesetzt.
 
Wenn Sie ein CGI-Programm erstellt haben, so muß dieses in dem Verzeichnis /usr/lib/cgi-bin/ liegen.
 
Im Browser ist beispielsweise das Programm test.sh als http://localhost/cgi-bin/test.sh zu erreichen. Ein
 
einfaches Beispiel für ein Programm test.sh wäre:
 
#!/bin/sh
 
# disable filename globbing
 
set -f
 
echo Content-type: text/plain
 
echo
 
echo CGI/1.0 test script report:
 
echo
 
echo argc is $#. argv is "$*".
 
echo
 
echo SERVER_SOFTWARE = $SERVER_SOFTWARE
 
echo SERVER_NAME = $SERVER_NAME
 
Vergessen Sie nicht das Script ausführbar zu machen. Wenn Sie dieses Script über die oben gezeigte URL
 
aufrufen, erhalten Sie folgende Ausgabe in Ihrem Webbrowser:
 
CGI/1.0 test script report:
 
argc is 0. argv is .
 
SERVER_SOFTWARE = Apache/1.3.12 (Unix) Debian/GNU
 
SERVER_NAME = surimi
 
Sie können einem CGI-Programm auch Parameter übergeben, dies geschieht in der URL hinter einem
 
Fragezeichen. Das Script zählt die Anzahl der Parameter und gibt auch den übergebenen String aus. Wenn Sie
 
die URL http://localhost/cgi-bin/test.sh?Linuxrules! benutzen, um das Script aufzurufen, verändert sich die
 
Ausgabe im Webbrowser in der zweiten Zeile wie folgt:
 
argc is 1. argv is Linuxrules!.
 
17.1.6. Apache konfigurieren & optimieren
 
Der Apache Webserver verfügt über eine Vielzahl von Funktionen, einige interessante möchten wir Ihnen im
 
folgenden vorstellen.
 
17.1.6.1. URL-Korrekturen
 
Der Apache Webserver kann URLs, die nicht auf dem Server vorhanden sind, in den meisten Fällen automatisch
 
korrigieren. Es werden sowohl fehlende Buchstaben ergänzt als auch Groß- und Kleinschreibung geprüft und
 
ggf. korrigiert. Hierzu werden alle Dateinamen auf dem Server geprüft und mit der URL verglichen. Wenn nur
 
eine passende Datei gefunden wird, wird die URL korrigiert und die gefundene Datei angezeigt. Bei mehreren
 
passenden Dateien wird eine Liste angezeigt.
 
488
 
Kapitel 17. Server-Dienste
 
Um diese Funktion zu aktivieren, müssen Sie den Kommentar (#) vor der Zeile: # LoadModule
 
speling_module /usr/lib/apache/1.3/mod_speling.so in der Datei /etc/apache/httpd.conf
 
entfernen und die Option „CheckSpellig“ aktivieren. Hier ein Ausschnitt aus der Datei:
 
...
 
LoadModule speling_module /usr/lib/apache/1.3/mod_speling.so
 
...
 
...
 
CheckSpelling on
 
...
 
Danach müssen Sie den Apache neu starten (mit /etc/init.d/apache reload).
 
17.1.6.2. Geschützte Verzeichnisse
 
Wenn Sie Verzeichnisse auf Ihrem Webserver mit einem Paßwort schützen wollen, so erzeugen Sie in dem
 
gewünschten Verzeichnis die Datei .htaccess.
 
Diese sollte folgenden Inhalt haben:
 
AuthUserFile /home/user007/www/.passwd
 
AuthName "user007"
 
AuthType Basic
 
<Limit GET POST>
 
require valid-user
 
</Limit>
 
Nun benötigen Sie noch die Datei mit dem Paßwort in verschlüsselter Form. Achten Sie darauf, daß diese Datei
 
auf keinen Fall innerhalb der aus dem Netz zugänglichen Webseiten liegt! Erzeugen Sie die Datei
 
/home/user007/www/.passwd, mit folgendem Eintrag:
 
user007:gfrzGZ98bsd8
 
Sie können ein verschlüsseltes Paßwort mit dem Programm mkpasswd aus einem Klartext erzeugen.
 
17.1.6.3. SSI - Server Side Includes
 
Server Side Includes (SSI) erlauben es, Webseiten, bevor diese zum Browser geschickt werden, zu
 
interpretieren. Sie können über speziellen Code innerhalb der Seite Variablen benutzen oder einfach
 
Entscheidungen (if then...) treffen und viele andere Dinge.
 
Um diese Funktionalität zu aktivieren, muß das Modul mod_include entweder mit eincompiliert sein, oder es
 
muß beim Start des Servers geladen werden. Weiterhin müssen Seiten, die interpretiert werden sollen, die
 
Endung .shtml bekommen und Sie müssen dies in der Konfiguration aktivieren:
 
AddType text/html .shtml
 
AddHandler server-parsed .shtml
 
Die erste Zeile weist den .shtml-Dateien den Mime-Type text/html zu, die zweite Zeile bestimmt, daß diese
 
Dateien durch den Server interpretiert (parsed) werden sollen.
 
Weiterhin müssen Sie diese Funktion noch explizit einschalten, mit der Zeile
 
Options +Includes
 
in der Datei /etc/apache/httpd.conf oder in einer Datei .htaccess innerhalb des gewünschten
 
Verzeichnisses Ihres Webservers (hierzu muß AllowOverride ebenfalls aktiviert sein).
 
489
 
Kapitel 17. Server-Dienste
 
Die zu interpretierenden Kommandos müssen innerhalb des HTML-Codes als SGML-Kommentare eingebettet
 
werden. Die Syntax hierzu lautet:
 
<!--#element attribute=value attribute=value ... -->
 
Die Werte (value) werden meist in doppelten Anführungszeichen, seltener in einfachen Anführungszeichen,
 
gefaßt. Beachten Sie, daß der Abschluß dieser Zeile ( -->) mit einem Leerzeichen beginnt!
 
Erlaubte Elemente sind unter anderem: „config“, „echo“, „exec“, „fsize“, „flastmod“, „printenv“, „set“ und
 
„include“. Nähere Informationen zu diesen Elementen finden Sie in der Dokumentation, auf das Element
 
„include“ gehen wir nun etwas genauer ein.
 
Mit dem Element „include“ können Sie Text aus einer anderen Datei in die aktuelle Datei einfügen. Jede dieser
 
so eingebundenen Dateien unterliegt den Zugriffsrechten des jeweiligen Verzeichnisses, wenn Sie also für den
 
betreffenden Bereich die Option „IncludesNoExec“ gesetzt haben, werden so eingebundene CGI-Scripte
 
ignoriert. Wenn diese Option nicht angegeben ist, wird das CGI-Script ausgeführt und das Ergebnis
 
eingebunden.
 
Das Element „include“ benötigt noch weitere Attribute, diese definieren den Ort, an dem die einzubindende
 
Datei zu finden ist:
 
file - dieses Attribut gibt einen relativen Pfad zu der Datei an. Der Wert darf kein absoluter Pfad sein und darf
 
keinen Verweis auf ein höherliegendes Verzeichnis (../) enthalten.
 
virtual - hiermit wird eine komplette URL relativ zum aktuellen Dokument angegeben. Hier sind keine
 
Rechnernamen (hostname) zugelassen. Wenn die URL nicht mit einem / beginnt, wird ein Pfad relativ zum
 
aktuellen Dokument angenommen.
 
Weiterhin stehen Ihnen einige Variablen zur Verfügung, die Sie entweder direkt oder in Zusammenhang mit den
 
Kommandos echo oder if und elif verwenden können:
 
DATE_GMT
 
Die aktuelle Zeit als „Greenwich Mean Time“
 
DATE_LOCAL
 
Die aktuelle Zeit in der eingestellten Zeitzone
 
DOCUMENT_NAME
 
Der Dateiname, ohne Pfadangabe, des Dokumentes
 
DOCUMENT_URI
 
Die komplette URL des Dokumentes, dies ist bei eingebundenen Dateien nicht die URL des aktuellen
 
Dokumentes
 
LAST_MODIFIED
 
Das Datum der letzten Änderung des Dokumentes
 
Hier nun ein kleines Beispiel für die Anwendung in der Praxis. Wenn Sie einen Webserver mit vielen Seiten
 
pflegen müssen, sind Sie vielleicht schon mal in die Verlegenheit gekommen, das Layout verändern zu müssen.
 
Nun ist es natürlich sehr aufwendig, dies in allen Dateien ändern zu müssen. Die Lösung hierfür ist nun, eine
 
HTML-Datei zu erstellen, in der das Layout der Seite(n) bestimmt wird. Innerhalb des BODY Tags erstellen Sie
 
nun sinngemäß folgende Einträge:
 
<!--#if expr="\"$DOCUMENT_URI\" = \"/foo/file.html\"" -->
 
in foo
 
<!--#elif expr="\"$DOCUMENT_URI\" = \"/bar/file.html\"" -->
 
in bar -->
 
<!--#else -->
 
490
 
Kapitel 17. Server-Dienste
 
in neither
 
<!--#endif -->
 
Dies bewirkt, daß je nachdem mit welcher URL die Datei aufgerufen wird, eine andere Datei in den BODY Tag
 
eingelesen wird. Sie müssen natürlich nicht die Hauptdatei entsprechend der Namen der anderen Dateien
 
kopieren, ein passender Link reicht hier völlig aus. Natürlich können Sie die Liste der Dateien beliebig
 
erweitern, dies soll nur ein kurzes Beispiel darstellen. Jede Veränderung des Aussehens der HTML-Seiten im
 
Kopf der Datei wird nun sofort auf allen Seiten wirksam.
 
17.1.6.4. Umleitungen
 
Manchmal ist es gewünscht, einzelne Webseiten oder gar komplette Server umzuleiten. Dies kann bei einem
 
Providerwechsel nötig sein oder wenn Sie die Struktur Ihres Servers verändert haben.
 
Wenn Sie einen kompletten Server umleiten wollen, weil sich beispielsweise der Name geändert hat, so
 
aktivieren Sie das Modul mod_alias und ergänzen Sie die Datei /etc/apache/httpd.conf um die Zeile:
 
Redirect / http://www.debian.org/
 
Dies führt aber nicht in allen Fällen zu dem gewünschten Ergebnis, zum Beispiel wenn nicht auf die Hauptseite,
 
sondern auf eine alte URL unterhalb der Hauptseite zugegriffen wird. Besser ist es, wenn Sie alle Zugriffe auf
 
den Server abfangen und dem Client (Browser) eine neue URL „unterschieben“.
 
Hierzu benötigen Sie das Modul mod_rewrite und folgende Zeilen in der Konfiguration:
 
RewriteEngine On
 
RewriteRule /.* http://www.debian.org/ [R]
 
Dies bewirkt, daß alle Anfragen auf den Server umgeleitet werden.
 
17.1.6.5. Fehlermeldungen
 
Sicher haben Sie in Ihrem Webbrowser schon einmal die Meldung gesehen, daß eine gesuchte Seite nicht mehr
 
gefunden wurde ( „Error 404: Page Not Found“). Der Anbieter hat vielleicht seinen Server umstrukturiert und
 
die URL hat sich verändert. Sowas wird sicher auch auf Ihrem Server mal passieren. Sie können mit dem
 
Apache Webserver diese Fehlermeldungen individuell gestalten oder auch dafür sorgen, daß in dem Fall, daß
 
eine Seite nicht gefunden wird, der Client auf eine andere Seite geleitet wird.
 
Standardmäßig bekommen Sie eine Fehlermeldung, wenn eine Seite nicht gefunden wurde, dazu müssen Sie
 
nichts konfigurieren.
 
Je nach Fehlernummer können Sie ein anderes Verhalten erzwingen. Neben der Fehlernummer müssen Sie noch
 
eine URL angeben, die dem Client übermittelt werden soll. Diese URLs können mit einem / beginnen, wenn es
 
sich um lokale URLs handelt, oder auf entfernte Server verweisen.
 
ErrorDocument 500 http://foo.example.com/cgi-bin/tester
 
ErrorDocument 404 /cgi-bin/bad_urls.pl
 
ErrorDocument 401 /subscription_info.html
 
ErrorDocument 403 "Sorry can’t allow you access today"
 
491
 
Kapitel 17. Server-Dienste
 
17.2. FTP-Server
 
Um Dateien über das Netzwerk (oder auch im Internet) zu kopieren, hat sich seit langer Zeit das FTP (File
 
Transfer) Protokoll etabliert. Sehr verbreitet ist der WU-FTPD-Server, welcher auch als Debian GNU Paket
 
vorliegt. Wir möchten Ihnen jedoch an dieser Stelle den ProFTPD-Server vorstellen, der sich durch eine sehr
 
leichte Konfiguration auszeichnet und durch ein moderneres Konzept größere Sicherheit bietet.
 
Zunächst sollten Sie das Paket proftpd installieren. Danach finden Sie die Konfigurationsdatei im Verzeichnis
 
/etc/ unter dem Namen proftpd.conf.
 
Auch für dieses Debian-Paket wurde eine kleine Konfigurationsroutine hinzugefügt:
 
+------------------------- Configuring Proftpd --------------------------+
 
| |
 
| This option will create a ’ftp’ user if needed, and set up ProFTPD to |
 
| allow anonymous ftp access to /home/ftp. |
 
| |
 
| Enable anonymous ftp access? |
 
| |
 
| <Yes> <No> |
 
| |
 
+------------------------------------------------------------------------+
 
Editing /etc/proftpd.conf ...
 
Starting professional ftp daemon: proftpd.
 
Sie können hier auswählen, ob Sie Ihren FTP-Bereich (Standard ist das Verzeichnis /home/ftp/) auch für
 
anonyme Benutzer freigeben wollen.
 
Werfen wir nun mal einen Blick in die erzeugte Konfigurationsdatei:
 
# This is a basic ProFTPD configuration file (rename it to
 
# ’proftpd.conf’ for actual use. It establishes a single server
 
# and a single anonymous login. It assumes that you have a user/group
 
# "nobody" and "ftp" for normal operation and anon.
 
ServerName "ProFTPD"
 
ServerType standalone
 
DeferWelcome off
 
ShowSymlinks on
 
MultilineRFC2228 on
 
DefaultServer on
 
ShowSymlinks on
 
AllowOverwrite on
 
TimeoutNoTransfer 600
 
TimeoutStalled 600
 
TimeoutIdle 1200
 
DisplayLogin welcome.msg
 
DisplayFirstChdir .message
 
LsDefaultOptions "-l"
 
# Port 21 is the standard FTP port.
 
Port 21
 
# Umask 022 is a good standard umask to prevent new dirs and files
 
# from being group and world writable.
 
Umask 022
 
# Set the user and group that the server normally runs at.
 
User root
 
492
 
Kapitel 17. Server-Dienste
 
Group root
 
# A basic anonymous configuration, no upload directories.
 
<Anonymous ~ftp>
 
User ftp
 
Group nogroup
 
# We want clients to be able to login with "anonymous" as well as "ftp"
 
UserAlias anonymous ftp
 
RequireValidShell off
 
##
 
# Limit the maximum number of anonymous logins
 
MaxClients 10
 
# We want ’welcome.msg’ displayed at login, and ’.message’ displayed
 
# in each newly chdired directory.
 
DisplayLogin welcome.msg
 
DisplayFirstChdir .message
 
# Limit WRITE everywhere in the anonymous chroot
 
<Directory *>
 
<Limit WRITE>
 
DenyAll
 
</Limit>
 
</Directory>
 
##
 
# <Directory incoming>
 
# <Limit READ WRITE>
 
# DenyAll
 
# </Limit>
 
# <Limit STOR>
 
# AllowAll
 
# </Limit>
 
# </Directory>
 
</Anonymous>
 
Wenn Sie sich bereits mit der Konfigurations des Apache Webservers beschäftigt haben, werden Ihnen in dieser
 
Konfiguration sicher viele Dinge bekannt vorkommen.
 
Damit wäre die grundsätzliche Konfiguration abgeschlossen. Wenn Sie wirklich den Zugriff von außen auf
 
Ihren Rechner erlauben wollen, müssen Sie noch etwas mehr tun. Sehen Sie zunächst in die Datei
 
/etc/hosts.deny, dort sollte lediglich der Eintrag ALL: ALL zu finden sein, um erst einmal alle Zugriffe von
 
außen auf den Rechner abzublocken. Es ist einfacher, die Übersicht zu behalten, wenn man explizit die Rechner
 
freigibt, die zugreifen dürfen. Dies geschieht über die Datei /etc/hosts.allow.
 
Wenn Sie den Zugriff auf Ihren FTP-Server von jedem Rechner weltweit erlauben wollen, tragen Sie die Zeile
 
ftpd: ALL
 
in dieser Datei ein. Um den Zugriff aus der Domain .openoffice.de zu erlauben, genügt die folgende Zeile:
 
ftpd: .openoffice.de
 
Natürlich läßt sich der Zugriff auch auf einzelne Rechner beschränken, hierzu tragen Sie folgende Zeile
 
(sinngemäß) ein:
 
ftpd: 198.186.203.20
 
493
 
Kapitel 17. Server-Dienste
 
Wenn Sie an den ProFTPD-Konfigurationdateien Veränderungen vorgenommen haben, müssen Sie den Dämon
 
mit dem Kommando /etc/init.d/proftpd reload zum Einlesen der neuen Dateien überreden.
 
Zum ProFTPD-Paket gehören einige weitere interessante Programme. Dies sind: ftpcount, ftpwho,
 
ftpstats und ftpshut.
 
ftpcount zeigt die Anzahl der Verbindungen zu jedem Server an.
 
ftpwho zeigt Prozessinformationen zu allen aktiven Verbindungen an.
 
ftpshut beendet alle ProFTPD-Server auf dem System zu einer bestimmten Zeit.
 
In den Man-Pages zu den einzelnen Programmen finden Sie weitere Informationen.
 
Weitere Informationen zu ProFTPD finden Sie im Netz unter der URL: http://www.proftpd.net.
 
17.3. DHCP
 
DHCP ist ein sehr verbreitetes Protokoll, um automatisch Rechner für den Zugang zum Netz zu konfigurieren.
 
Hierzu ist es notwendig, einen DHCP-Server aufzusetzen, von dem die Clients (zum Beispiel die
 
Arbeitsplatzrechner) die nötigen Daten (IP-Nummer, Netzmaske oder auch Nameserver-Adresse) beziehen.
 
Schauen wir uns zuerst die Konfiguration des Servers an:
 
Installieren Sie zunächst das Paket dhcp. Die Konfiguration für den DHCP-Server finden Sie in der Datei
 
/etc/dhcpd.conf.
 
Hier ein Beispiel für die Datei /etc/dhcpd.conf bei der jedem Rechner (Client) eine feste IP-Nummer
 
zugewiesen wird. Diese wird anhand der Hardware Adresse ( MAC-Adresse) der Netzwerkkarte zugeordnet.
 
# dhcpd.conf
 
#
 
option domain-name "openoffice.de";
 
option domain-name-servers gateway.openoffice.de;
 
option subnet-mask 255.255.255.240;
 
default-lease-time 600;
 
max-lease-time 7200;
 
subnet 192.168.1.0 netmask 255.255.255.0 {
 
range 192.168.1.10 192.168.1.255;
 
option broadcast-address 192.109.42.16;
 
option routers gateway.openoffice.de;
 
}
 
host imac {
 
hardware ethernet 08:00:07:26:c0:a5;
 
fixed-address sushi.openoffice.de;
 
}
 
Diese Konfiguration benutzt ein nicht geroutetes Netz, welches Sie problemlos zu Hause für Ihr internes Netz
 
verwenden können. Weiterhin werden die ersten 9 Adressen nicht benutzt, Rechner, die Ihre Netzwerkangaben
 
per DHCP beziehen, benutzen IP-Nummer ab der 192.168.0.10 aufwärts.
 
Sie müssen für jeden Rechner, den Sie über den DHCP-Server versorgen wollen, einen Eintrag, wie hier im
 
Beispiel für den Rechner „imac“ gezeigt, vornehmen. Wenn Sie die Hardware-Adresse Ihrer Netzwerkkarte
 
nicht kennen, konfigurieren Sie den DHCP-Server erst einmal ohne diesen Eintrag und lesen weiter. Sie können
 
die Hardware-Adresse auch später aus dem Logfile Ihres Servers entnehmen.
 
Weiterhin müssen Sie in der Datei /etc/init.d/dhcp die Variable run_dhcp auf 1 ändern. Danach können
 
Sie mit /etc/init.d/dhcp start den DHCP-Server aktivieren.
 
Starten Sie nun einen der Rechner, die per DHCP versorgt werden sollen (Client). Wenn Sie noch keinen
 
Eintrag für die Hardware-Adresse vorgenommen haben, können Sie diese aus dem Logfile entnehmen.
 
494
 
Kapitel 17. Server-Dienste
 
Benutzen Sie dazu als Superuser das Kommando: tail -f /var/log/messages. Fügen Sie die angezeigte
 
Adresse in die Konfigurationsdatei ein und starten Sie den DHCP-Server neu (mit: /etc/init.d/dhcp stop
 
und /etc/init.d/dhcp start). Sollte Ihr Client mittlerweile aufgegeben haben, so starten Sie diesen
 
Rechner ebenfalls neu.
 
Alternativ kann auch das Kommando pump benutzt werden um erneut eine DCHP Abfrage zu starten.
 
Eine etwas umfangreichere Konfiguration, die auch eine dynamische Adressvergabe zuläßt und für einen
 
Rechner eine feste IP-Adresse zuweist finden Sie hier:
 
# option definitions common to all supported networks...
 
option domain-name "openoffice.de";
 
option domain-name-servers ns.openoffice.de;
 
#option subnet-mask 255.255.255.224;
 
default-lease-time 600;
 
max-lease-time 7200;
 
subnet 192.168.1.0 netmask 255.255.255.0 {
 
range 192.168.1.20 192.168.1.255;
 
option domain-name-servers 192.168.1.6;
 
option domain-name "openoffice.de";
 
option routers 192.168.1.6;
 
option subnet-mask 255.255.255.0;
 
option broadcast-address 192.168.1.255;
 
default-lease-time 600;
 
max-lease-time 7200;
 
}
 
host surimi {
 
hardware ethernet 00:60:08:78:c3:67;
 
fixed-address surimi;
 
}
 
Im folgenden einige kurze Informationen, wie Sie auch Ihre anderen Rechner auf DHCP umstellen.
 
17.3.1. GNU/Linux Notebook als DHCP-Client
 
Die Konfiguration eines Notebooks mit Debian GNU/Linux ist denkbar einfach, benutzen Sie wie schon vorab
 
beschrieben das Programm pcnetconfig und beantworten Sie die Frage nach der Methode mit 2 für „Use the
 
dhcpcd or dhclient program“
 
sushi:/home/fr# pcnetconfig
 
This program will create a basic /etc/pcmcia/network.opts file, the
 
pcmcia-cs package’s network adapter configuration file, based on choices
 
that you make.
 
A sample network.opts file is supplied in pcmcia-cs; you can edit this
 
file to match your local network setup. Refer to the PCMCIA-HOWTO
 
(usually in /usr/doc/HOWTO/PCMCIA-HOWTO.gz) for a detailed description
 
of this file’s contents.
 
Before continuing with this program, ensure that you know your host’s
 
network configuration.
 
Do you want to continue? [y]
 
Choose a method for obtaining the host’s IP address and routing
 
information
 
1) Use the BOOTP protocol
 
2) Use the dhcpcd or dhclient program
 
495
 
Kapitel 17. Server-Dienste
 
3) Use /sbin/pump
 
4) Use netenv (from the netenv package)
 
5) Specify the IP address now (default)
 
2
 
In addition to the usual network configuration parameters, the
 
network.opts script can specify extra actions to be taken after
 
an interface is configured, or before an interface is shut down.
 
If network.opts defines a shell function called start_fn, it will be
 
invoked by the network script after the interface is configured, and the
 
interface name will be passed to the function as its first (and only)
 
argument. Similarly, if it is defined, stop_fn will be invoked before
 
shutting down an interface. Refer to the PCMCIA-HOWTO for more details.
 
This program will now write the network.opts file. Please take care
 
not to overwrite a previously configured version of this file.
 
Do you want to write /etc/pcmcia/network.opts? [y] y
 
Speichern Sie die Konfiguration dann ab.
 
17.3.2. MacOS als DHCP-Client
 
Unter MacOS wählen Sie unter dem Apfel-Menü den Punkt „Kontrollfelder“ / „TCP/IP“ aus.
 
Abbildung 17-1. MacOS TCP/IP
 
496
 
Kapitel 17. Server-Dienste
 
Wenn Sie gefragt werden, ob TCP/IP aktiviert werden soll, klicken Sie auf „Ja“. Wählen Sie danach aus dem
 
Menü „DHCP“ aus und schließen Sie das Fenster.
 
Abbildung 17-2. MacOS DHCP
 
Beim nächsten Neustart versucht der Mac die Netzwerkinformationen per DHCP zu beziehen. Achten Sie
 
darauf, daß der Mac an das Netzwerk angeschlossen ist.
 
17.4. Samba
 
Samba verbindet zwei Welten miteinander. Auf einem Unix oder Debian GNU/Linux-Rechner installiert, dient
 
es als Datei- und Druckerserver für über das Netzwerk angeschlossene Windows-Rechner. Samba benutzt
 
hierzu das von Microsoft benutze SMB (Server Message Block)-Protokoll, es sind so an den
 
Windows-Rechnern keinerlei Veränderungen vorzunehmen oder gar zusätzliche Software zu installieren.
 
Dieses wird durch Protokolle erreicht, die als CIFS ( Common Internet File System) bekannt wurden. Eines der
 
wichtigsten Elemente von CIFS ist das Protokoll SMB (Server Message Block). Samba ist eine freie
 
Implementation von CIFS.
 
Samba wurde bisher auf eine Vielzahl von Nicht-Unix-Betriebssystemen wie zum Beispiel VMS, AmigaOS
 
und NetWare portiert.
 
17.4.1. Entstehung von Samba
 
Vor einigen Jahren entwickelten die Firmen IBM und Sytec gemeinsam ein einfaches Netzwerk-System für
 
kleine, lokale Netzwerke. Dieses wurde NetBIOS oder „Network Basic Input Output System“ genannt.
 
Microsoft erweiterte die Funktionalität, so daß Laufwerke übers Netz verwendet werden konnten. Diese Version
 
wurde SMB und später CIFS genannt.
 
NetBIOS wurde für kleine, lokale Netzwerke entwickelt, im Zusammenspiel mit TCP/IP kann diese Grenze
 
überwunden werden. Der Trick besteht darin, die 16 Byte langen NetBIOS-Namen auf IP-Adressen umzulegen,
 
so daß diese ihren Weg in einem gerouteten IP-Netzwerk finden. Dieser Mechanismus wird in den RFCs 1001
 
und 1002 beschrieben. Mit der weiteren Entwicklung von Windows wurden zwei Funktionen hinzugefügt: Das
 
„Browsen“ nach Diensten im Netz und eine Funktion zur zentralen Authentifizierung und Autorisierung, der
 
sogenannte „Windows NT Domain Control“.
 
497
 
Kapitel 17. Server-Dienste
 
17.4.2. Funktionen von Samba
 
Samba besteht aus zwei existenziellen Programmen, smbd und nmbd, welche die grundlegenden, aktuellen
 
Funktionen von CIFS implementieren. Diese sind:
 
• Datei- und Druckdienste
 
• Authentifikation und Authorisation
 
• Namensauflösung
 
• „browsing“
 
Hierbei sind die Datei- und Druckdienste sicherlich die wichtigsten Bausteine des CIFS. Diese werden von
 
smbd, dem SMB-Daemon, zur Verfügung gestellt. smbd verwaltet auch die sogenannte "Share mode" und "User
 
mode"-Authentifizierung und Autorisation. Mit diesen können Sie Laufwerke und Druckdienste mit Paßwörtern
 
schützen. Im einfachsten, im „Share“-Modus, kann ein Paßwort einem Laufwerk oder Drucker zugeordnet
 
werden. Dieses Paßwort muß jedem Benutzer bekannt sein, der auf dieses Gerät zugreifen soll. Diese Methode
 
ist natürlich durch ein Paßwort, welches vielen Benutzern bekannt ist, nicht sehr sicher. Empfehlenswerter ist
 
es, jedem Benutzer einen eigenen Benutzernamen und ein Paßwort zu geben, der Systemadministrator
 
entscheidet dann über die Konfiguration, welche Zugriffe für welchen Benutzer gestattet sind.
 
Das mit Windows NT eingeführte System, der „Domain Controller“, erlaubt eine weitere Stufe der
 
Authentifizierung. Die grundlegende Idee dahinter ist, daß ein Benutzer sich nur einmal legitimieren muß, um
 
auf alle Netzwerkdienste zugreifen zu können. Das NT-System koordiniert dies über einen Server, den
 
sogenannten Domain Controller. Eine NT Domain (nicht zu verwechseln mit dem Domain Name System
 
(DNS)) ist eine Gruppe von Rechnern, die auf einen gemeinsamen Domain Controller zugreifen.
 
Die anderen beiden Teile von CIFS, Namensauflösung und „browsing“, werden von nmbd zur Verfügung
 
gestellt.
 
Die Auflösung von Namen kann auf zwei Arten, „broadcast“ oder „point-to-point“, erfolgen. Ein Rechner kann
 
eine oder beide dieser Methoden nutzen. Die Broadcast-Methode erinnert noch am meisten an die originale
 
NetBIOS-Funktionalität, ein Rechner, der einen Service sucht, „ruft“ ins Netz und wartet auf eine Antwort. Dies
 
kann einigen Traffic verursachen, ist aber in einem kleinen Netz kein echtes Problem.
 
Die zweite Methode benutzt einen NBNS (NetBIOS Name Service)-Server. Unter Windows ist dies als WINS
 
(Windows Internet Name Service) bekannt. Die Funktionsweise ist recht schnell erklärt: Jeder Client sendet
 
seinen NetBIOS-Namen und die IP-Adresse an den NBNS-Server, der die Informationen in einer Datenbank
 
speichert. Wenn ein Client mit einem anderen Client „sprechen“ möchte, sendet er den Namen des gewünschten
 
Rechners an den NBNS-Server und dieser liefert die passende IP-Adresse zurück.
 
Clients in verschiedenen Subnetzen können einen gemeinsamen NBNS-Server benutzen. Somit ist die
 
Broadcast-Methode nicht auf lokale Netze beschränkt. NBNS läßt sich in etwa mit den DNS vergleichen, die
 
Namensliste von NBNS ist allerdings komplett dynamisch und es gibt kaum Überprüfungen, ob ein Client zur
 
Namesregistrierung authorisiert ist. Dies kann sehr schnell zu Konflikten führen.
 
Bleibt noch das „browsing“. Dies hat nichts mit dem Surfen im WWW zu tun, sondern stellt vielmehr eine Liste
 
der verfügbaren Laufwerke und Drucker dar.
 
In einem LAN gibt es zwischen den teilnehmenden Rechnern eine „Abstimmung“ und der dominierende
 
Rechner wird zum LMB (Local Master Browser) erklärt. Dieser LMB bekommt einen zusätzlichen Namen,
 
seine Aufgabe ist es, eine Liste der verfügbaren Dienste zu pflegen. Diese Liste erscheint beim Anklicken des
 
Symbols „Netzwerk Umgebung“.
 
Als Ergänzung zu den LMBs gibt es noch DMBs (Domain Master Browsers). Diese koordinieren die Listen
 
zwischen NT-Domänen und gerouteten Netzwerken. Über den NBNS kann ein LMB seinen DMB herausfinden
 
und die Listen austauschen und ergänzen. Somit können die Listen an alle Teilnehmer in einer NT Domain
 
verteilt werden. Leider dauert es bis zu einer Stunde, bis eine Änderung in einem Subnetz im Netz verbreitet ist.
 
498
 
Kapitel 17. Server-Dienste
 
17.4.3. Samba-Werkzeuge
 
Im Samba-Paket sind eine Reihe von Werkzeugen enthalten, andere sind unter Debian GNU/Linux als separate
 
Pakete verfügbar.
 
• smbclient - ein einfaches Programm, ähnlich wie ftp, mit dem Sie eine Verbindung von einem
 
GNU/Linux-System zu einem SMB-Laufwerk oder einem Drucker herstellen können und Dateien übertragen
 
können.
 
• nmblookup - ein NetBIOS Name Service Client. Hiermit können Sie IP-Adressen und Namen von anderen
 
Rechnern im Netz ermitteln.
 
• swat - Ein webbasiertes Administrationstool.
 
17.4.4. SMB-Dateisysteme
 
Mit Samba können Sie von einem Windows-Rechner aus Dateisysteme Ihres Linux-Rechners völlig transparent
 
nutzen, als wenn diese auf einer lokalen Festplatte liegen würden. Beispielsweise kann das Laufwerk „N:“ auf
 
irgendeinem entfernten Rechner angelegt sein.
 
Aber auch der umgekehrte Weg funktioniert, über das smbfs-Dateisystem können Sie auf Laufwerke zugreifen,
 
die von einem Windows-Rechner freigegeben wurden. So können Sie zum Beispiel ein Verzeichnis /mnt/win/
 
anlegen und das entsprechende Laufwerk Ihres Windows-Rechners dort mounten. Sie können in diesem
 
Verzeichnis alle Aktionen (lesen, schreiben, löschen usw. von Dateien) ausführen, wie auf Ihren lokalen Platten.
 
17.4.5. Konfiguration und Verwaltung
 
Samba wird über die Datei /etc/smb.conf konfiguriert. Dies ist, wie unter Debian GNU/Linux üblich, eine
 
normale ASCII-Datei, die Syntax ähnelt den von Windows bekannten*.ini-Dateien. Ziel ist es,
 
Netzwerk-Administratoren, die mit Windows vetraut sind, einen leichten Umstieg zu bieten. Mit der
 
wachsenden Funktionalität von Samba wuchsen auch die in der Konfigurationsdatei verfügbaren Parameter.
 
Diese sind gut dokumentiert und erlauben sehr detaillierte Einstellungen.
 
Neben der unter /usr/doc/samba/ liegenden mitgelieferten Dokumentation ist unter
 
http://www.oreilly.com/catalog/samba/ auch die englischsprachige Online-Version des bei O’Reilly
 
erschienenen Buches „Using Samba“ zu finden. Wer sich über den neuesten Stand der Samba-Entwicklung
 
informieren möchte, dem sei die URL http://kt.linuxcare.com/KC/samba/ empfohlen. Die Homepage von
 
Samba finden Sie unter: http://samba.org/.
 
Als grafische Werkzeuge stehen Ihnen gnomba und tkchooser zur Verfügung, um exportierte Drucker und
 
Laufwerke im Netz aufzuspüren und am System anzumelden.
 
17.4.6. SWAT
 
Das Samba Web Administration Tool (SWAT) stellt eine webbasierte Konfigurationsoberfläche für Samba zur
 
Verfügung. Eine Demoversion finden Sie unter der URL: http://anu.samba.org/cgi-bin/swat/. SWAT ist
 
Bestandteil der Samba Distribution, wurde aber für Debian GNU/Linux als eigenes Paket gepackt. Da SWAT
 
webbasiert ist, benötigen Sie ebenfalls einen Webserver (apache, roxen ...) auf Ihrem System. Starten Sie
 
dann Ihren Webbrowser mit der URL http://localhost:901/. Bitte beachten Sie: Wenn Sie auf SWAT von einem
 
anderen Rechner zugreifen (in einem internen Netz oder über das Internet), so werden alle Paßwörter
 
unverschlüsselt übertragen.
 
Informationen über die möglichen Einstellungen finden Sie in der Anleitung zu Samba.
 
499
 
Kapitel 17. Server-Dienste
 
17.4.7. gnosamba
 
gnosamba ist ein grafisches Werkzeug zur Konfiguration von Samba. Die Webseiten zu gnosamba finden Sie
 
unter der URL: http://www.open-systems.com/gnosamba.html.
 
Sie können mit gnosamba eine bestehende Samba-Konfigurationsdatei einlesen und verändern. Sie können
 
diese auch unter einem anderen Namen abspeichern, für Testzwecke beispielsweise.
 
Abbildung 17-3. Gnosamba
 
gnosamba befindet sich noch in der Entwicklung, es ist daher empfehlenswert, immer eine Sicherheitskopie der
 
Samba-Konfigurationsdateien zu erstellen. Auch eine Unterstützung für die „höheren“ Funktionen, wie zum
 
Beispiel PDC ( Primary Domain Controller)-Support sind noch nicht implementiert.
 
17.4.8. gnomba
 
gnomba ist eine grafische Oberfläche für das zum Samba-Paket gehörende Programm smbclient. Sie können
 
mit gnomba die freigegebenen Laufwerke und Drucker suchen lassen und gleich an Ihrem System anmelden.
 
500
 
Kapitel 17. Server-Dienste
 
Abbildung 17-4. gnomba
 
Dies entspricht in etwa der von Windows bekannten „Netzwerkumgebung“. Weitere Screenshots finden Sie auf
 
der Webseite zu gnomba : http://gnomba.darkcorner.net/.
 
17.5. netatalk
 
netatalk ist eine Implementierung der AppleTalk-Protokolle für Unix-Systeme. Die aktuelle Version
 
unterstützt: EtherTalk Phase I und II, DDP, RTMP, NBP, ZIP, AEP, ATP, PAP, ASP sowie AFP.
 
Sie können über netatalk, wie bei samba, Laufwerk und Drucker im Netz zur Verfügung stellen. AppleTalk
 
findet in allen Versionen des MacOS auf Apples PowerMac-Architektur Verwendung.
 
Auch die erste Konfiguration von netatalk ist unter Debian GNU/Linux sehr einfach. Installieren Sie einfach
 
das Paket netatalk, und schon können Sie (eine korrekte Netzwerkkonfiguration vorausgesetzt) von Ihrem
 
Mac aus auf Ihr Homeverzeichnis zugreifen. Sie finden die Konfigurationsdateien (papd.conf,
 
AppleVolumes.default, AppleVolumes.system, afpd.conf und atalkd.conf zu netatalk) unter
 
/etc/netatalk/. Eine Beispielkonfiguration, die zwei Arbeitsgruppen definiert, wie sie in einem kleinen
 
Grafikbüro anzutreffen sein könnte, könnte durch folgende Einträge in der Datei AppleVolumes.default
 
erreicht werden:
 
~/ "Home Directory"
 
/home/public "public" access=fr,geka
 
/home/macuser/grafik "Grafik" access=geka
 
/home/macuser/design "Grafik" access=geka
 
/home/macuser/web "Grafik" access=fr,geka
 
Nach einem Neustart von netatalk, können Sie von Ihrem Mac aus über das Kontrollfeld „Auswahl“ auf den
 
Server zugreifen. Klicken Sie hierzu auf das Symbol „AppleShare“. Im rechten Teil des Fensters können Sie
 
nun einen Server wählen (hier „gateway“) oder, über die Schaltfläche „Server IP-Adresse“, die IP-Adresse des
 
Servers angeben.
 
501
 
Kapitel 17. Server-Dienste
 
Abbildung 17-5. MacOS Auswahl
 
Geben Sie nun Ihren Benutzernamen und das entsprechende Paßwort an.
 
Abbildung 17-6. MacOS Paßwort
 
Sie können nun die freigegebenen Laufwerke anmelden. Wenn Sie möchten, daß einzelne Laufwerke auch nach
 
dem nächsten Systemstart zur Verfügung stehen, so sind diese auf der rechten Seite mit einem Haken zu
 
versehen. Sie können auch den Benutzernamen und das Paßwort speichern, dies ist aus Sicherheitsgründen
 
allerdings nicht zu empfehlen.
 
502
 
Kapitel 17. Server-Dienste
 
Abbildung 17-7. MacOS Laufwerke
 
Die ausgewählten Laufwerke erscheinen nun auf dem Schreibtisch, und Sie können mit diesen genauso arbeiten
 
wie mit lokalen Laufwerken Ihres Macs.
 
Die Seiten im Web zu netatalk finden Sie unter: http://www.umich.edu/~rsug/netatalk/.
 
17.5.1. tkchooser
 
Wenn Sie sich mit netatalk befassen, ist Ihnen sicher das MacOS-Kontrollfeld „Auswahl“ bekannt.
 
tkchooser bildet dieses unter GNU/Linux nach und Sie können damit bequem Laufwerke und Drucker an
 
Ihrem System anmelden. Weiterhin ist tkchooser auch in der Lage, via SMB exportierte Laufwerke und
 
Drucker aufzuspüren und ins System einzubinden.
 
Die Seiten im Web zu tkchooser finden Sie unter: http://www.cs.columbia.edu/~etgold/software/tkchooser2/.
 
503
 
Kapitel 18. Exotische Hardware
 
In diesem Kapitel möchten wir Ihnen einiges an „exotischer“ Hardware für Ihr GNU/Linux-System vorstellen.
 
Auf dem Hardwaremarkt tummeln sich einige Gerätschaften, für die noch keine GNU/Linux-Treiber verfügbar
 
sind, beliebtes Beispiel sind die sogenannten „Win-Drucker“ oder „Win-Modems“, bei denen Funktionen, die
 
eigentlich das Gerät übernimmt, in Software auf dem Rechner realisiert wurden. Eine Suche im Netz lohnt sich
 
aber auf alle Fälle. An einigen Beispielen möchten wir Ihnen vorstellen, was die GNU/Linux-Gemeinde bisher
 
an Treibern und Programmen geschaffen hat.
 
18.1. Notebook-Spezialitäten
 
Notebooks zählen zwar nicht zu den Erweiterungen, die man sich „mal eben so“ zulegt, sind aber doch recht
 
verbreitet. Interessant sind diese Geräte in diesem Abschnitt auch aufgrund der benutzten
 
Hardwarekomponenten.
 
Wenn Sie häufig mit Ihrem Notebook unterwegs sind, bietet Ihnen Debian GNU/Linux einige interessante
 
Pakete:
 
An erster Stelle steht sicher das Paket task-laptop, dieses faßt die wichtigsten Pakete für Besitzer tragbarer
 
Computer zusammen. Es werden automatisch die Pakete apmd (kümmert sich um den Stromsparmodus Ihres
 
Rechners), pcmcia-cs (die „allgemeinen“ PCMCIA-Treiber) sowie anacron (eine Ergänzung zu cron, die
 
auch die „Ruhezeiten“ Ihres Rechners berücksichtigt und Jobs ggf. später startet) installiert.
 
Weitere sinnvolle Pakete (die auch von task-laptop vorgeschlagen werden) sind: netenv (hiermit können
 
Sie beim Systemstart zwischen verschiedenen Netzwerkkonfigurationen wählen), irda-tools und
 
irda-common (Infrarotschnittstellen-Unterstützung), sowie toshutils (einige Helferlein speziell für Toshiba
 
Notebooks).
 
Generelle Informationen zur Benutzung von GNU/Linux auf Notebooks finden Sie auf der Seite „UniX with
 
Mobile Computers“ von Werner Heuser unter der URL: tuxmobil.org. Konfigurationstips wie Sie die Laufzeit
 
des Systems erhöhen können finden Sie im Battery Powered Linux Mini-HOWTO.
 
Wenn Sie in den Paketen forschen, werden Sie noch weitere nützliche Programme finden. Aber einen Teil der
 
Arbeit haben wir Ihnen schon abgenommen.
 
18.1.1. divine
 
divine wird aus den Startdateien des PCMCIA-Systems heraus aufgerufen und kann anhand der vorhandenen
 
Konfigurationsdateien feststellen, welche Einstellungen für das Netzwerk vorzunehmen sind. Schließen Sie
 
einfach Ihr Notebook ans Netz an, starten Sie den Rechner und „schon sind Sie drin“ ;-). Die Homepage von
 
divine finden Sie unter: http://www.fefe.de/divine.
 
18.1.2. wmbattery
 
Um den Ladezustand des Akkus anzuzeigen, leistet wmbattery gute Dienste. Dieses Programm läßt sich im
 
„Dock“ des Windowmanagers WindowMaker ablegen, benötigt diesen aber nicht zwingend.
 
Abbildung 18-1. WMBattery
 
504
 
Kapitel 18. Exotische Hardware
 
Sie können wmbattery auch mit jedem anderen Windowmanager benutzen. Um wmbattery betreiben zu
 
können, muß das Bios Ihres Notebooks über eine APM (Advanced Power Management)-Unterstützung
 
verfügen, und Sie müssen diese auch (unter „Character Devices“) im Kernel aktivieren. wmbattery zeigt Ihnen
 
den prozentualen Ladezustand an. Zusätzlich wird der Zustand auch farblich dargestellt (grün, gelb, rot). Wenn
 
das Notebook über das Netzteil betrieben wird und so der Akku geladen wird, wird auch dies angezeigt.
 
18.1.3. netenv
 
Mit dem Paket netenv können Sie beim Systemstart zwischen verschiedenen Netzwerkkonfigurationen
 
wählen, je nachdem, wo Sie sich gerade befinden. Bitte beachten Sie, daß der Bootvorgang unterbrochen wird
 
und Sie ein Profil auswählen müssen, wenn Sie netenv installiert haben. Sie können netenv auch dazu
 
benutzen, einen anderen Windowmanager oder einen anderen Drucker zu benutzen.
 
18.1.4. cardinfo
 
cardinfo ist Bestandteils des Paketes pcmcia-cs. Sie können mit cardinfo alle Informationen über die
 
erkannten PCMCIA-Karten sehen und auch Karten an- und abmelden oder zurücksetzen.
 
Abbildung 18-2. Cardinfo
 
18.2. USB
 
Der Trend bei neueren Motherboards und bei vielen Notebooks geht weg von parallelen und seriellen
 
Schnittstellen, hin zu USB. Apples aktuelle Modelle, wie zum Beispiel der iMac, stellen sogar zur Tastatur und
 
Maus die Verbindung über den USB-Bus her.
 
Debian installiert in den aktuellen Versionen einen Kernel in der Version 2.4.19 oder höher. Dieser ist im Bezug
 
auf den USB Support auf dem aktuellen Stand und enthält alle notwendigen Module.
 
Wenn Sie dennoch einen 2.2.xer Kernel verwenden wollen, sollten Sie auf jeden Fall den USB-Teil aus den
 
2.4.xer Kernel übernehmen. Ein angepaßtes Paket finden Sie unter:
 
http://www.suse.cz/development/usb-backport/.
 
18.2.1. Kernel-Konfiguration
 
Diesen Abschnitt kann übersprungen werden wenn auf dem System bereits ein aktuelles Debian System mit
 
dem Kernel 2.4.x (ab Debian 3.0, „bf24“) läuft. In jedem Fall ist zur Verwendung von Debian Kernel Paketen zu
 
raten, dort sind alle Module bereits enthalten.
 
Um USB nutzen zu können, müssen Sie auf älteren Systemen einen neuen Kernel übersetzen oder einen Kernel
 
als Debian Paket einspielen. Am einfachsten benutzen Sie dazu make menuconfig auf der Console oder make
 
xconfig, wenn Sie unter X11 arbeiten.
 
505
 
Kapitel 18. Exotische Hardware
 
Abbildung 18-3. USB Kernel Konfiguration
 
Aktivieren Sie zunächst den allgemeinen USB Support und wählen Sie dann entweder UHCI (wenn Sie ein Intel
 
PIIX4, VIA oder ähnliches Chipset benutzen) oder OHCI-HCD (bei Compaq-Rechnern, iMacs, OPTi, SiS, ALi
 
usw.) aus. Dies ist von dem verwendeten Motherboard abhängig, eventuell hilft auch ein Blick in das Handbuch
 
zu Ihrem Motherboard. Sie können auch versuchen, das USB Chipset in der Ausgabe des Kommandos cat
 
/proc/pci zu finden. Wenn es sich um eine kurze Angabe (wie etwa: i/o at 0xe400) handelt, wählen Sie
 
UHCI, wenn die Ausgabe länger ist (etwa: 32 bit memory at 0xee000000), dann wählen Sie OHCI.
 
Eine weitere Möglichkeit das verwendete USB Chipset zu ermitteln stellt das Kommando lspci zur Verfügung.
 
lspci listet alle vom Bios erkannten PCI Geräte auf. In der ersten Spalte findet sich eine ID mit deren Hilfe
 
sich genauere Informationen zu einzelnen PCI Geräte herausfinden lassen. Hierzu folgendes Beispiel:
 
sushi:/home/fr# lspci
 
00:00.0 Host bridge: Intel Corporation 440BX/ZX - 82443BX/ZX Host bridge (rev 03)
 
00:01.0 PCI bridge: Intel Corporation 440BX/ZX - 82443BX/ZX AGP bridge (rev 03)
 
00:07.0 ISA bridge: Intel Corporation 82371AB PIIX4 ISA (rev 02)
 
00:07.1 IDE interface: Intel Corporation 82371AB PIIX4 IDE (rev 01)
 
00:07.2 USB Controller: Intel Corporation 82371AB PIIX4 USB (rev 01)
 
00:07.3 Bridge: Intel Corporation 82371AB PIIX4 ACPI (rev 02)
 
00:09.0 Ethernet controller: Intel Corporation 82557 [Ethernet Pro 100] (rev 08)
 
00:0a.0 Multimedia audio controller: Ensoniq ES1371 [AudioPCI-97] (rev 08)
 
00:0b.0 SCSI storage controller: Symbios Logic Inc. (formerly NCR) 53c810 (rev 23)
 
506
 
Kapitel 18. Exotische Hardware
 
01:00.0 VGA compatible controller: ATI Technologies Inc 3D Rage LT Pro AGP-133 (rev dc)
 
sushi:/home/fr# lspci -v -s 00:07.2
 
00:07.2 USB Controller: Intel Corporation 82371AB PIIX4 USB (rev 01) (prog-if 00 [UHCI])
 
Flags: bus master, medium devsel, latency 64, IRQ 10
 
I/O ports at e000 [size=32]
 
Zunächst werden mittels lspci alle USB Geräte angezeigt und der entsprechende Eintrag für USB ermittelt.
 
Danach wird lspci mit den Optionen -v -s und der entsprechenden ID aufgerufen. Anhand dieser Ausgabe
 
läßt sich ermitteln das es sich bei diesem System um einen UHCI Controller handelt.
 
Wenn Sie sich nicht sicher sind, probieren Sie einfach beide nacheinander aus.
 
Damit haben Sie die grundsätzliche USB-Unterstützung aktiviert. Sie müssen nun noch entscheiden, für welche
 
Gerätegruppen Sie Treiber benötigen. Sie können hier frei wählen, ob Sie die Treiber fest in den Kernel
 
einbinden wollen oder lieber Module verwenden möchten. USB Hubs werden automatisch erkannt, dies müssen
 
Sie nicht extra aktivieren.
 
Folgende Treiber stehen Ihnen zur Verfügung:
 
• USB Device Filesystem
 
• HID - Human Interface Device, Tastatur, Maus, Joystick, Gamepads...
 
• Scanner
 
• Audio - Lautsprecher
 
• CDC ACM - ISDN-Modems
 
• Printer - Drucker
 
• Serial Converter - serielle Schnittstellen
 
• CPiA - Kameras mit Vision CPiA Chipset
 
• OV511 - Kameras mit OmniVision’s OV511 chipset
 
• Kodak DC-2xx - Kodak’s DC-200 Kameras
 
• Massenspeicher - Festplatten, Diskettenlaufwerke... Hierzu muß auch „SCSI“ aktiviert werden!
 
• EZUSB - Firmware Downloader für Anchor Chips USB Microkontroller
 
• USS720 - für parallele Schnittstellen
 
• DABUSB - Digital Audio Broadcast Empfänger
 
Übersetzen Sie nun den Kernel und ggf. auch die Module neu und starten Sie das System mit dem neuen Kernel.
 
Wenn Sie sich entschieden haben, Module zu benutzen, müssen Sie diese laden. Sie benötigen mindestens die
 
Module usbcore.o und entweder usb-uhci.o oder usb-ohci-hcd.o. Weiterhin müssen Sie die
 
gewünschten Treiber, also beispielsweise scanner.o oder printer.o laden.
 
Wenn Sie UHCI und einen externen USB-Hub benutzen, werden Sie in etwa folgendes in der Datei
 
/var/log/syslog sehen:
 
.......
 
Jul 19 20:46:02 rachel kernel: USB HID boot protocol mouse registered.
 
.......
 
Jul 19 20:46:02 rachel kernel: uhci_control_thread at c01b8c5c
 
Jul 19 20:46:02 rachel kernel: New bus registered
 
Jul 19 20:46:02 rachel kernel: USB hub driver registered
 
Jul 19 20:46:02 rachel kernel: uhci_connect_change: called for 0
 
.......
 
Jul 19 20:46:02 rachel kernel: USB hub found
 
Jul 19 20:46:02 rachel kernel: hub: 4-ports detected
 
Jul 19 20:46:02 rachel kernel: hub: individual port power switching
 
Jul 19 20:46:02 rachel kernel: hub: standalone hub
 
507
 
Kapitel 18. Exotische Hardware
 
Jul 19 20:46:02 rachel kernel: hub: individual port over current protection
 
Jul 19 20:46:02 rachel kernel: hub: power on to power good time: 100ms
 
Jul 19 20:46:02 rachel kernel: hub: hub controller current requirement: 100mA
 
Jul 19 20:46:02 rachel kernel: hub: port 1 is removable
 
Jul 19 20:46:02 rachel kernel: hub: port 2 is removable
 
Jul 19 20:46:02 rachel kernel: hub: port 3 is removable
 
Jul 19 20:46:02 rachel kernel: hub: port 4 is removable
 
Jul 19 20:46:02 rachel kernel: hub: local power source is good
 
Jul 19 20:46:02 rachel kernel: hub: no over current condition exists
 
Jul 19 20:46:02 rachel kernel: enabling power on all ports
 
Jul 19 20:46:02 rachel kernel: uhci_connect_change: called for 1
 
.......
 
Jul 19 20:46:02 rachel kernel: hub: port 3 connection change
 
.......
 
Folgendes Beispiel zeigt ein UHCI System mit den USB Treibern des Kernels 2.4.5:
 
Jul 23 10:54:33 sushi kernel: usb-uhci.c: $Revision: 1.259 $ time 18:23:00 May 27 2001
 
Jul 23 10:54:33 sushi kernel: usb-uhci.c: High bandwidth mode enabled
 
Jul 23 10:54:33 sushi kernel: usb-uhci.c: USB UHCI at I/O 0xe000, IRQ 10
 
Jul 23 10:54:33 sushi kernel: usb-uhci.c: Detected 2 ports
 
Jul 23 10:54:33 sushi kernel: usb.c: new USB bus registered, assigned bus number 1
 
Jul 23 10:54:33 sushi kernel: hub.c: USB hub found
 
Jul 23 10:54:33 sushi kernel: hub.c: 2 ports detected
 
Jul 23 10:54:33 sushi kernel: usb-uhci.c: v1.251 Georg Acher, Deti Fliegl, Thomas Sailer, Roman Weissgaerber
 
Jul 23 10:54:33 sushi kernel: usb-uhci.c: USB Universal Host Controller Interface driver
 
Jul 23 10:54:33 sushi kernel: hub.c: USB new device connect on bus1/2, assigned device number 2
 
Jul 23 10:54:33 sushi kernel: hub.c: USB hub found
 
Jul 23 10:54:33 sushi kernel: hub.c: 4 ports detected
 
Hier noch ein Beispiel von einem Apple iMac, bei dem die Tastatur und die Maus über den USB Port
 
angeschlossen sind.
 
PCI: Probing PCI hardware
 
USB: kernel-interface.c:107: Universal USB Driver v$Revision: 1.53 $
 
USB-OHCI: driver.c:898: USB Open Host Controller Interface Driver
 
USB-OHCI: driver.c:758: Host controller found at PCI bus 0 dev 20 fn 0
 
USB-OHCI: driver.c:564: Disabling OHCI legacy support on controller 0xc5fbd020
 
USB-OHCI: driver.c:843: Host Controller 0xc5fe0e00 (0) at PCI bus 0 dev 20 fn 0 initialized
 
USB-OHCI: driver.c:844: IRQ 28
 
USB: kernel-interface.c:154: 1 USB host found
 
USB-HUBD: driver.c:105: UUSBD Hub Driver v$Revision: 1.33 $
 
USB-HIDBP: driver.c:90: USB HID Boot Protocol Driver v$Revision: 1.5 $
 
adb devices:
 
.....
 
USB-HUBM: khubdd.c:468: Starting khubdd (pid 2)
 
USB-HUBM: hubm-stch.c:678: Device attachment detected on port 0 of hub 0xc5fe0e20 (0 -1)
 
hdc: ATAPI 1X CD-ROM drive, 4224kB Cache
 
Uniform CDROM driver Revision: 2.52
 
scsi0 : MESH
 
scsi : 1 host.
 
USBD: usbd-descr.c:1108: Device id 0x80d59b8 (0 1) at port 0, hub (0 -1): (no information available)
 
USBD: usbd-descr.c:777: Processing USB device 0xc5fbdec0 (0 1), configuration index 0
 
USBD: usbd-descr.c:399: Processing interface 0, alternate setting 0
 
USBD: usbd-drv.c:331: Considering driver 0xc5fe4400 ‘USB HID Boot Protocol Driver v$Revision: 1.5 USBD: usbd-drv.c:331: Considering driver 0xc5fe4360 ‘UUSBD Hub Driver v$Revision: 1.33 $’, weight USB-HUBM: hubm-stch.c:678: Device attachment detected on port 0 of hub 0xc5fa6000 (0 1)
 
508
 
Kapitel 18. Exotische Hardware
 
USBD: usbd-descr.c:1100: Device id 0xc3e494bb (0 2) at port 0, hub (0 1): Alps Electric M2452
 
USBD: usbd-descr.c:777: Processing USB device 0xc5fa6120 (0 2) ’M2452’, configuration index 0
 
USBD: usbd-descr.c:673: Unknown descriptor type 0x21 from device 0xc5fa6120 (0 2)’s configuration USBD: usbd-descr.c:399: Processing interface 0, alternate setting 0
 
USBD: usbd-drv.c:331: Considering driver 0xc5fe4400 ‘USB HID Boot Protocol Driver v$Revision: 1.5 USBD: usbd-drv.c:331: Considering driver 0xc5fe4360 ‘UUSBD Hub Driver v$Revision: 1.33 $’, weight USB-HIDBP: cfg.c:110: Interface 0 of device (0 2) supports HID Keyboard Boot Protocol
 
USB-HUBM: hubm-stch.c:678: Device attachment detected on port 2 of hub 0xc5fa6000 (0 1)
 
USBD: usbd-descr.c:1100: Device id 0x6411c61a (0 3) at port 2, hub (0 1): Logitech M4848
 
USBD: usbd-descr.c:777: Processing USB device 0xc5fa6360 (0 3) ’M4848’, configuration index 0
 
USBD: usbd-descr.c:673: Unknown descriptor type 0x21 from device 0xc5fa6360 (0 3)’s configuration USBD: usbd-descr.c:399: Processing interface 0, alternate setting 0
 
USBD: usbd-drv.c:331: Considering driver 0xc5fe4400 ‘USB HID Boot Protocol Driver v$Revision: 1.5 USBD: usbd-drv.c:331: Considering driver 0xc5fe4360 ‘UUSBD Hub Driver v$Revision: 1.33 $’, weight USB-HIDBP: cfg.c:139: Interface 0 of device (0 3) supports HID Boot Protocol Mouse
 
Wenn Sie keinerlei Einträge finden, die beim Laden der Treiber auf USB-Geräte hindeuten, so probieren Sie
 
einen anderen Treiber (UHCI statt OHCI-HCD oder umgekehrt), prüfen Sie, ob USB-Geräte angeschlossen
 
sind, und sehen Sie im BIOS nach, ob die USB-Unterstützung aktiviert ist.
 
18.2.2. USB-Device-Dateisystem
 
Das USB-Device-Dateisystem wird wie das /proc-Dateisystem dynamisch generiert. Sie können dieses
 
Dateisystem an jeder beliebigen Stelle mounten, üblicherweise geschieht dies unter /proc/bus/usb. Dieses
 
Verzeichnis wird automatisch vom Linux-Kernel erzeugt, wenn die USB-Unterstützung aktiviert wurde. Wenn
 
Sie das USB-Device-Dateisystem an anderer Stelle im Dateisystem mounten möchten, kann es unter Umständen
 
zu Problemen mit Programmen kommen, die das Dateisystem unterhalb von /proc/bus/usb erwarten.
 
Um dieses Dateisystem zu aktivieren, müssen Sie die Option „Preliminary USB Device Filesystem“ sowie das
 
/proc-Dateisystem aktivieren.
 
Um dieses Dateisystem zu mounten, benötigen Sie Superuser-Rechte (root). Mit dem Kommando
 
mount -t usbdevfs none /proc/bus/usb
 
können Sie dies temporär bis zum nächsten Systemstart benutzen.
 
Um dies nicht nach jedem Neustart des Systems wiederholen zu müssen, sollten Sie folgenden Eintrag in die
 
Datei /etc/fstab aufnehmen:
 
none /proc/bus/usb usbdevfs defaults 0 0
 
Hierbei ist zu beachten, daß dieser Eintrag nach dem Eintrag für das /proc, Dateisystem stehen muß, da das
 
USB-Device-Dateisystem unterhalb von diesem gemountet wird.
 
Sehen Sie sich nun einmal den Inhalt dieses Dateisystems an:
 
dr-xr-xr-x 1 root root 0 Jan 26 10:40 001
 
-r--r--r-- 1 root root 0 Jan 26 10:40 devices
 
-r--r--r-- 1 root root 0 Jan 26 10:40 drivers
 
Auch wenn diese Dateien eine Größe von 0 Byte aufweisen lassen sich mit den üblichen Unix Tools
 
(beispielsweise more, less oder cat) die Informationen in diesen Dateien anzeigen) die Informationen in
 
diesen Dateien anzeigen.
 
509
 
Kapitel 18. Exotische Hardware
 
18.2.3. Human Interface Device (HID)-Konfiguration
 
Der Linux-Kernel unterstützt vier verschiedene Gerätetypen über das HID Interface: Tastaturen, Mäuse,
 
Joysticks und eine generische Schnittstelle.
 
18.2.3.1. HID Maus-Konfiguration
 
Zunächst müssen Sie die (USB-) Mausunterstützung im Kernel aktiviert haben. Weiterhin ist es nützlich, wenn
 
Sie die Option Mix all Mice into one device aktivieren, es werden dann alle angeschlossenen
 
USB-Mäuse zu einem Gerät zusammengefaßt. Wenn Sie die Treiber als Module erzeugt haben, laden Sie die
 
Module hid.o, input.o und mousedev.o.
 
Wenn Sie nun die Maus einstecken, sollte diese vom Kernel erkannt werden. Sie können dies in der Datei
 
/var/log/syslog prüfen. Weiterhin sollten Sie in der Datei /proc/interrupts einen Eintrag finden, der
 
sich auf USB bezieht. Klicken Sie ein paarmal mit der Maus, und Sie können in dieser Datei verfolgen, daß dies
 
Interrupts auslöst.
 
fr@surimi:~$ cat /proc/interrupts
 
CPU0 CPU1
 
0: 150269498 154722102 IO-APIC-edge timer
 
1: 304690 303233 IO-APIC-edge keyboard
 
2: 0 0 XT-PIC cascade
 
9: 0 0 IO-APIC-edge acpi
 
12: 3049906 3085565 IO-APIC-edge PS/2 Mouse
 
14: 8349647 8378011 IO-APIC-edge ide0
 
15: 4 4 IO-APIC-edge ide1
 
16: 12624976 12621964 IO-APIC-level eth0
 
17: 26754608 26755521 IO-APIC-level es1371
 
18: 0 0 IO-APIC-level bttv
 
19: 1728387 1729572 IO-APIC-level tmscsim, usb-uhci
 
NMI: 304991583 304991583
 
LOC: 304969599 304969534
 
ERR: 9
 
Hier als Beispiel die Daten von einem Dual-Prozessor System.
 
Erstellen Sie nun ein Verzeichnis unterhalb von /dev/ eine Gerätedatei für die Maus, eventuell ist diese aber
 
auch schon vorhanden:
 
mkdir /dev/usb
 
mknod /dev/usb/usbmouse0 c 10 32
 
Wenn Sie nun das Kommando cat /dev/usb/usbmouse0 aufrufen und dann die Maus bewegen, sollten Sie
 
viele wilde Zeichen sehen. Brechen Sie das Kommando mit CTRL+C ab.
 
Wenn bis hierhin Ihre Tests erfolgreich waren, können Sie die Maus auch im praktischen Einsatz erproben. Um
 
die Maus auf der Konsole mit gpm zu benutzen, starten Sie gpm wie folgt: gpm -m /dev/usb/usbmouse0 -t
 
imps2. Sie können gpm auch dauerhaft zur Benutzung der USB-Maus überreden, indem Sie die entsprechenden
 
Änderungen in der Datei /etc/gpm.conf aufnehmen oder das Programm gpmconfig benutzen.
 
Wenn Sie die USB-Maus auch unter X benutzen möchten, verändern Sie den Abschnitt „Mouse“ in der Datei
 
/etx/X11/XF86Config wie folgt:
 
Section "Xinput"
 
SubSection "Mouse"
 
DeviceName "USB Mouse"
 
Protocol "IMPS/2"
 
Port "/dev/usb/usbmouse0"
 
AlwaysCore
 
EndSubSection
 
EndSection
 
und starten Sie den X-Server neu.
 
510
 
Kapitel 18. Exotische Hardware
 
18.2.3.2. HID Tastatur-Konfiguration
 
Wenn Sie eine USB-Tastatur an einer i386-Architektur benutzen, so wird dies bereits vom BIOS unterstützt.
 
Hierzu muß die Tastatur am HUB auf dem Motherboard angeschlossen sein. Es schadet aber auch nicht, wenn
 
Sie dies trotzdem im Kernel aktivieren. Auf der PowerPC-Plattform müssen Sie dies in jedem Fall im Kernel
 
aktivieren.
 
Wenn Sie Module benutzen, laden Sie die Module: hid.o, input.o und keybdev.o.
 
Wenn Sie einige Zeichen auf der Tastatur tippen, sehen Sie in der Datei /proc/interrupts, wie die Interrupts
 
zu der USB-Tastatur hochgezählt werden. Auch in der Datei /var/log/syslog sollten Sie beim Einstecken
 
der Tastatur einige Informationen finden.
 
Beachten Sie, daß Sie beim Systemstart die Tastatur nur benutzen können, wenn das BIOS dies unterstützt, zu
 
dieser Zeit ist der Linux-Kernel noch nicht geladen. Wenn das BIOS Ihres Systems dies nicht unterstützt,
 
können Sie keine Kernel-Parameter übergeben oder ein alternatives Kernel-Image auswählen.
 
18.2.3.3. HID Joystick- und Gamepad-Konfiguration
 
Wenn Sie die USB-Joystick-Unterstützung aktivieren, funktionieren Ihre normalen Joysticks nicht mehr. Wenn
 
Sie Module verwenden, laden Sie die Module: hid.o, input.o und joydev.o.
 
Wie schon bei der USB-Maus müssen Sie auch für die USB-Joystick-Unterstützung entsprechende
 
Gerätedateien erzeugen:
 
mknod /dev/usb/usbjs0 c 15 0
 
mknod /dev/usb/usbjs1 c 15 1
 
mknod /dev/usb/usbjs2 c 15 2
 
mknod /dev/usb/usbjs3 c 15 3
 
Mit dem Kommando: cat /dev/usb/usbjs0 werden nun bei jeder Aktion mit dem Joystick Zeichen auf dem
 
Bildschirm ausgegeben. Sie können nun den Joystick in allen Spielen nutzen, die dies auch unterstützen.
 
18.2.4. Scanner-Konfiguration
 
Der USB Scanner-Treiber arbeitet mit allen USB Scannern zusammen. Um aber sinnvoll damit arbeiten zu
 
können, muß auch für SANE ein entsprechender Treiber vorhanden sein.
 
Wenn Ihr Scanner nicht automatisch einem passenden Treiber zugeordnet wird, sollten Sie die Treiber als
 
Module erzeugen und die Hersteller und Produkt-ID von Hand den Modulen übergeben (alternativ können Sie
 
auch die Sourcen ändern). Das Kommando hierzu lautet: insmod scanner.o vendor=0xXXXX
 
product=0xYYYY, ersetzen Sie XXXX mit der hexadezimalen Hersteller-ID und YYYY mit der Produkt-ID.
 
Auch hier müssen Sie wieder Gerätedateien anlegen:
 
mknod /dev/usb/usbscanner0 c 180 48
 
chmod a+rw /dev/usb/usbscanner0
 
Um die Gerätedatei und damit den Scanner benutzen zu können, benötigen Sie noch ein entsprechendes
 
Programm. Unter GNU/Linux ist das Programm der Wahl hierbei SANE. Wenn Sie beispielsweise einen HP
 
Scanner benutzen, müssen Sie die Datei /etc/sane.d/hp.conf so verändern, daß diese nur folgendes
 
enthält:
 
/dev/usb/usbscanner0
 
option connect-device
 
Sie sollten nun den Scanner nutzen können.
 
511
 
Kapitel 18. Exotische Hardware
 
18.2.5. Modem-Konfiguration
 
Um mit dem Linux USB-Modem Treiber zu funktionieren, müssen die angeschlossenen Geräte
 
(Analog-Modems oder ISDN) der CDC (Communication Device Class)-Spezifikation entsprechen.
 
Die benötigten Gerätedateien erzeugen Sie mit folgenden Kommandos:
 
mknod /dev/usb/ttyACM0 c 166 0
 
mknod /dev/usb/ttyACM1 c 166 1
 
mknod /dev/usb/ttyACM2 c 166 2
 
mknod /dev/usb/ttyACM3 c 166 3
 
Sie können bis zu 32 solcher Gerätedateien anlegen. Sie können nun mit jeder Software auf das Modem
 
zugreifen.
 
18.2.6. Drucker-Konfiguration
 
Auch für einen USB-Drucker müssen Sie eine Gerätedatei erzeugen:
 
mknod /dev/usb/usblp0 c 180 0
 
Ändern Sie nun die Gerätedatei in der Datei /etc/printcap, und Sie können den Drucker mit den üblichen
 
Programmen ansprechen.
 
18.2.7. USB / Serielle Konfiguration
 
Der serielle Treiber arbeitet momentan mit Geräten der Hersteller Belkin, Peracom und Connect Tech
 
zusammen. Es werden bis zu 8 serielle Geräte unterstützt, auch dafür müssen Sie Gerätedateien anlegen:
 
mknod /dev/usb/ttyUSB0 c 188 0
 
mknod /dev/usb/ttyUSB1 c 188 1
 
mknod /dev/usb/ttyUSB2 c 188 2
 
mknod /dev/usb/ttyUSB3 c 188 3
 
mknod /dev/usb/ttyUSB4 c 188 4
 
mknod /dev/usb/ttyUSB5 c 188 5
 
mknod /dev/usb/ttyUSB6 c 188 6
 
mknod /dev/usb/ttyUSB7 c 188 7
 
Sie können dann auf diese Geräte wie auf normale serielle Geräte zugreifen.
 
18.2.8. CPiA Kamera-Konfiguration
 
Dieser Treiber unterstützt einen Chipsatz der Firma Vision, der in einer Reihe von Kameras zu finden ist,
 
beispielsweise in der Creative WebCamII. Um diesen Treiber benutzen zu können, müssen Sie auch die „Video
 
for Linux“-Unterstützung (zu finden unter „Character Devices“ in der Kernel-Konfiguration) im Kernel
 
aktivieren.
 
Auch dieser Treiber benötigt eine Gerätedatei:
 
mknod /dev/video0 c 81 0
 
ln -s /dev/video0 /dev/video
 
Um diese Hardware zu betreiben ist w3cam von Rasca Gmelch geeignet. Sie finden dies unter der URL:
 
http://www.hdk-berlin.de/~rasca/w3cam/. Wenn Sie bereits eine TV-Karte in Ihrem Rechner installiert haben,
 
können Sie für die ersten Versuche auch das Programm xawtv benutzen, hierbei müssen Sie auf der
 
Kommandozeile die entsprechende Gerätedatei angeben (zum Beispiel: xawtv -c /dev/video1). Weiterhin
 
ist es nötig, die Fenstergröße auf die Auflösung der Kamera anzupassen.
 
512
 
Kapitel 18. Exotische Hardware
 
18.2.9. OV511 Kamera-Konfiguration
 
Dieser Treiber unterstützt ein Chipset der Firma OmniVision, welches zum Beispiel in der Creative WebCam III
 
oder der Lenco MVC 95998 benutzt wird. Auch dieser Treiber benötigt die „Video for Linux“-Unterstützung
 
und eine Gerätedatei:
 
mknod /dev/video0 c 81 0
 
ln -s /dev/video0 /dev/video
 
Sie können die gleichen Programme wie schon beschrieben nutzen.
 
18.2.10. Massenspeicher-Konfiguration
 
Dieser Treiber (usb-storage) kann mit einer Vielzahl von Geräten benutzt werden. Dies kommt daher, daß
 
eine Verbindung zum SCSI-Treiber im Kernel hergestellt wird, Sie müssen daher auch den SCSI Support im
 
Kernel aktivieren. Sie können dann auf USB-Diskettenlaufwerke, Zip-Laufwerke, LS120-Laufwerke und USB
 
CD-ROMs zugreifen.
 
Wenn Sie die entsprechenden Module geladen haben, sollte in der Datei /proc/scsi/scsi das Gerät
 
aufgeführt sein.
 
Sie können nun in der Datei /etc/fstab für die verschiedenen Geräte folgende Einträge vornehmen, um
 
einfach darauf zugreifen zu können. Bitte beachten Sie, daß Sie, wenn Sie über weitere SCSI-Geräte verfügen,
 
den Eintrag /dev/sda anpassen müssen, dieses Beispiel bezieht sich auf ein System ohne SCSI Hostadapter.
 
Für ein Diskettenlaufwerk:
 
/dev/sda /mnt/usbfd auto noauto,user 0 0
 
Für ein Zip-Laufwerk:
 
/dev/sda /mnt/usbzip vfat noauto,user 0 0
 
Für ein CD-ROM:
 
/dev/sda /mnt/usbcdrom iso9660 ro,noauto,user 0 0
 
und für eine Festplatte:
 
/dev/sda /mnt/usbhd ext2 defaults 1 2
 
18.3. PDA - Personal Digital Assistant
 
PDAs sind mittlerweile sehr verbreitete kleine Geräte, mit denen sich sehr komfortabel Adressen, Termine,
 
ToDo-Listen und vieles andere mehr verwalten lassen. Am beliebtesten sind die Geräte der Firma 3Com,
 
welche das Betriebssystem PalmOS benutzen. Die Modellpalette ist schon recht umfangreich ( PalmPilot,
 
PalmPilot Pro, Palm III, Palm IIIx, Palm V, Palm Vx, Palm VII) und wird auch teilweise von IBM in Lizenz
 
vertrieben. Wir möchten hier nicht auf die Installation von Linux auf einem PalmPilot eingehen (eine Portierung
 
ist in Arbeit), sondern einige Programme aufzeigen, mit denen Sie auf die Daten in Ihrem PalmPilot zugreifen
 
können.
 
Weitere Informationen zur Benutzung dieser Geräte mit GNU/Linux finden Sie unter
 
tuxmobil.org/pda_linux.html.
 
Zur Synchronisierung der PDA-Daten mit den Anwendungen auf dem heimischen Rechner stehen unter
 
GNU/Linux verschiedene Anwendungen zur Verfügung. Solche Programme werden auch oft „conduit“
 
genannt. Zunächst müssen Sie jedoch das mitgelieferte „Cradle“ an eine freie serielle Schnittstelle anschließen.
 
Das „Cradle“ verfügt über einen sogenannten „HotSync“-Knopf, dieser startet die Übertragung der Daten.
 
513
 
Kapitel 18. Exotische Hardware
 
18.3.1. pilot-link
 
Basis aller im weiteren beschriebenen Programme ist das Paket pilot-link. Dieses dient zur Kommunikation
 
mit dem Palm Pilot und kann auch direkt auf der Kommandozeile eingesetzt werden, beispielsweise um von
 
Zeit zu Zeit ein komplettes Backup zu erstellen.
 
Um die Einstellungen in den einzelnen Programmen zu erleichtern, sollten Sie einen Link von der
 
entsprechenden seriellen Schnittstelle auf die Gerätedatei /dev/pilot anlegen. Wenn Sie das „Cradle“ an der
 
zweiten seriellen Schnittstelle angeschlossen haben, können Sie diesen Link mit dem Kommando ln -s
 
/dev/ttyS1 /dev/pilot anlegen.
 
Das Paket pilot-link dient zur Übertragung von Daten von und zum PalmPilot und besteht aus einer Reihe
 
verschiedener Programme. Sie müssen jedesmal, wenn Sie eines der Programme aus dem pilot-link-Paket
 
benutzen, die „HotSync“-Taste drücken, um die Datenübertragung zu starten. Sie können pilot-link auf der
 
Kommandozeile angeben, welche Schnittstelle zu benutzen ist. Ändern Sie die hier gezeigten Beispiele nach
 
Ihren Gegebenheiten.
 
18.3.1.1. pilot-xfer
 
pilot-xfer dient zum Sichern und Zurückspielen von Daten und zum Installieren von weiteren Programmen.
 
Um ein Programm auf dem PalmPilot zu installieren, können Sie das Kommando
 
pilot-xfer /dev/pilot -i programm.prc
 
benutzen. Dagegen erstellt
 
pilot-xfer /dev/pilot -b pilot-backup
 
eine komplette Kopie aller Datenbanken das PalmPilots in dem Verzeichnis pilot-backup. Wenn dieses
 
Verzeichnis nicht existiert, wird es neu angelegt. Um alle Daten wieder auf den PalmPilot zurückzuspielen,
 
benutzen Sie das Kommando:
 
pilot-xfer /dev/pilot -r pilot-backup
 
18.3.1.2. install-memo
 
Mit diesem Kommando können Sie eine Datei als Merkzettel (Memo) auf dem PalmPilot installieren. Mit der
 
Option -c können Sie die gewünschte Kategorie angeben, in der dieser Merkzettel erscheinen soll, diese muß
 
bereits auf dem PalmPilot existieren.
 
install-memo /dev/ttyS1 -c privat neues.memo
 
Der Dateiname wird im Merkzettel als erste Zeile angelegt und erscheint damit in der Merkzettel-Übersicht.
 
18.3.1.3. memos
 
Dieses Programm liest alle Merkzettel aus dem PalmPilot aus und gibt diese im Format der
 
Standard-Unix-Mailboxen aus. Sie können diese Datei dann mit jedem gängigen Mailprogramm lesen.
 
memos /dev/pilot > meine-memos
 
18.3.1.4. pilot-addresses
 
Mit diesem Kommando können Sie die Adressdatenbank sichern und wieder zurückspielen. Benutzen Sie
 
pilot-addresses /dev/pilot -w adressen.file
 
514
 
Kapitel 18. Exotische Hardware
 
um die Daten auf Ihrem Rechner zu speichern, und
 
pilot-addresses /dev/pilot -r adressen.file
 
um diese wieder auf dem PalmPilot zu speichern.
 
Neben den Kommandozeilen-Tools gibts es natürlich auch einige Programme mit grafischer Oberfläche zur
 
Kommunikation mit dem PalmPilot. Für die eigentliche Kommunikation mit dem PalmPilot greifen aber auch
 
diese Programme auf das Paket pilot-link zurück.
 
18.3.2. pi-address
 
An dieser Stelle stellen wir Ihnen ein Programm vor, welches nicht im normalen Umfang von Debian
 
GNU/Linux 2.2 enthalten ist. Wenn Sie den Abschnitt über das Programm alien durchgearbeitet haben,
 
werden Sie pilot-address bereits kennen und wissen, wie Sie sich ein passendes Debian-Paket erstellen
 
können.
 
Ein weiterer Grund, dieses Programm hier aufzuführen, ist die tatkräftige Hilfe des Autors Michael Wiedmann
 
bei der Erstellung dieses Buches, an dieser Stelle nochmals: Danke Michael!
 
Natürlich kam pilot-address aber auch deshalb in die Auswahl, weil es einfach ein sehr nützliches
 
Werkzeug für jeden Pilot-Besitzer ist.
 
pilot-address ist ein grafisches Frontend zur Adressdatenbank Ihres Palm Piloten. Die Daten werden über
 
das Programm pilot-xfer gelesen und geschrieben, dieses müssen Sie in jedem Fall installieren.
 
pilot-xfer ist Bestandteil des Paketes pilot-link
 
Abbildung 18-4. pi-Address
 
515
 
Kapitel 18. Exotische Hardware
 
Da (noch) kein Debian-Paket von pilot-address den Weg auf die Debian-Server gefunden hat, müssen Sie
 
zunächst die aktuelle Version von der Homepage http://www.in-berlin.de/User/miwie/pia/ besorgen. Sie können
 
nun das Paket aus dem Quellcode (Source) selber übersetzen oder sich das Leben etwas leichter machen und
 
eines der RPM-Pakete mit alien konvertieren. Sie finden dort auch ein Paket im Debian-Format, als kleine
 
Übung können Sie aber auch das RPM-Paket konvertieren.
 
18.3.3. j-pilot
 
Auch j-pilot setzt auf pilot-link auf. Sie können mit j-pilot Ihre Adressen, Termine, Notizen und
 
Aufgaben verwalten und mit dem Palm Pilot synchronisieren, als und auch neue Programme installieren. Für
 
die Anwendung „Ausgaben“ steht ein Modul zu Verfügung.
 
Standardmäßig benutzt j-pilot die Gerätedatei /dev/pilot, diese sollten Sie als Link auf die entsprechende
 
serielle Schnittstelle einrichten.
 
18.3.3.1. Einstellungen
 
Nach dem ersten Start sollten Sie j-pilot einrichten, Sie können dies über den Menüpunkt „Preferences“ tun.
 
Wenn Sie, wie schon beschrieben, einen symbolischen Link (/dev/pilot) benutzen, so können Sie diesen in
 
der Konfiguration benutzen. Stellen Sie weiterhin die Geschwindigkeit der seriellen Schnittstelle ein.
 
Abbildung 18-5. j-pilot Konfiguration
 
Weiter können Sie hier die Datums- und Zeitformate einstellen sowie den Tag, mit dem die Woche beginnen
 
soll (für die Ansicht im Kalender). Unter „My GTK colors file is“ können Sie zwischen verschiedenen
 
Farbeinstellungen wählen. Sie können die Anzahl der gespeicherten Sicherheitskopien (Backups) einstellen
 
sowie die Anzeige von gelöschten und modifizierten Datensätzen unterdrücken. Außerdem läßt sich die
 
Anzeige von Terminen im Kalender ausschalten.
 
516
 
Kapitel 18. Exotische Hardware
 
18.3.3.2. Kalender
 
Sie können den Kalender öffnen, indem Sie auf das Kalender-Symbol klicken oder den entsprechenden Eintrag
 
(„File“ - „Datebook“) aus dem Menü auswählen. Wenn Sie den Kalender aufrufen, wird jedesmal der aktuelle
 
Tag angezeigt.
 
Abbildung 18-6. j-pilot Kalender
 
Sie können nun, durch einen Mausklick auf den entsprechenden Tag, einen Tag auswählen, die Termine werden
 
dann aufgelistet, und auch hier können Sie einen Termin mit einem Mausklick auswählen, um detaillierte
 
Informationen zu erhalten.
 
18.3.3.3. Adressen
 
In dieser Ansicht können Sie auf Ihre Adressen zugreifen. Wenn Sie Ihre Adressen in verschiedene Kategorien
 
aufgeteilt haben, so können Sie diese über das Menü über den Adressen auswählen.
 
517
 
Kapitel 18. Exotische Hardware
 
Abbildung 18-7. j-pilot Adressen
 
Über die Schaltfläche „Add or Modify a Record“ können Sie Einträge ändern oder auch hinzufügen.
 
18.3.3.4. Aufgaben
 
Auch die Aufgaben können nach Kategorien aufgeteilt sein.
 
Abbildung 18-8. j-pilot Aufgaben
 
518
 
Kapitel 18. Exotische Hardware
 
Auch hier können Sie neue Aufgaben hinzufügen oder bereits existierende verändern.
 
18.3.3.5. Suchen
 
Diese Funktion durchsucht alle Datenbanken nach dem eingegebenen Text.
 
Abbildung 18-9. j-pilot Suchen
 
Sie können weiterhin angeben, ob bei der Suche die Groß- und Kleinschreibung berücksichtigt werden soll.
 
18.3.3.6. Installation von Programmen
 
Über diese Funktion können Sie Programme auswählen, die beim nächsten Hot-Sync auf den PalmPilot
 
übertragen werden.
 
519
 
Kapitel 18. Exotische Hardware
 
Abbildung 18-10. j-pilot Installation
 
18.3.3.7. Quit, Sync, Backup...
 
Sie können j-pilot beenden, indem Sie aus dem Menü „File“ den Eintrag „Quit“ auswählen oder einfach im
 
Hauptfenster links auf die „Quit“-Schaltfläche klicken.
 
Die Schaltfläche „Sync“ führt eine normale Synchronisation der Daten durch, wenn Sie „Backup“ wählen,
 
werden die Datenbanken des PalmPilots auf dem Rechner gesichert. Ein zweites Backup sichert nur die
 
veränderten Daten und nimmt nicht so viel Zeit in Anspruch.
 
Sie können mit j-pilot keine gesicherten Datenbanken auf den PalmPilot zurückspielen. Benutzen Sie hierzu
 
pilot-link.
 
Die Webseite zu j-pilot finden Sie unter der URL http://www.jpilot.org/. Im Netz ist auch eine
 
deutschsprachige Anleitung zu finden.
 
520
 
Kapitel 18. Exotische Hardware
 
18.4. „Geräderte“ Mäuse
 
In den letzten Monaten findet man immer mehr Angebote von Mäusen, die über ein Scrollrad verfügen. Mit
 
diesem können Sie an jeder Stelle in einem Fenster den Bildschirminhalt verschieben, ohne erst an den Rand
 
des Fensters wandern zu müssen, um die Scrollbalken zu betätigen. Dies funktioniert natürlich auch mit Debian
 
GNU/Linux, leider aber noch nicht ohne einen Eingriff des Systemadministrators... aber das sind Sie ja
 
mittlerweile.
 
Am spannendsten ist natürlich die Funktion des Scrollrades unter X, aber auch auf der Konsole können Sie
 
diese Erweiterung benutzen.
 
18.4.1. Scrollrad unter XFree86
 
XFree unterstützt Scrollräder seit der Version 3.3.2, wenn Sie noch eine ältere Version einsetzen, sollten Sie
 
dringend die neueste Version installieren. Sie müssen an der Konfiguration des X-Servers nur eine einzige Zeile
 
ändern bzw. diese hinzufügen. In dem Abschnitt „Pointer“ der Datei /etc/X11/XF86Config fügen Sie die
 
Zeile ZAxisMapping 4 5 ein, ein bereits angepaßter Ausschnitt sieht wie folgt aus:
 
Section "Pointer"
 
Protocol "imps/2"
 
Device "/dev/usbmouse"
 
ZAxisMapping 4 5
 
Buttons 3
 
EndSection
 
Sie können alle bisherigen Einstellungen so beibehalten, dies ist nur ein Beispiel. Eventuell müssen Sie noch
 
das Maus-Protokoll anpassen, hier gilt: „imps/2“ für eine Wheel-Maus am PS/2 oder USB-Anschluß und
 
„intellimouse“, wenn Sie die Maus am seriellen Anschluß eingesteckt haben.
 
Nach der Änderung müssen Sie den X-Server neu starten. Ab sofort können in allen Anwendungen, die auf
 
GTK basieren (ab Version 1.2.x), wie zum Beispiel The GIMP und allen Programmen aus dem GNOME
 
Projekt, einsetzen. Ältere Programme unterstützen dies nicht direkt, können aber in den meisten Fällen sehr
 
einfach angepaßt werden. Eine sehr umfangreiche Übersicht, wie die verschiedenen Programme zur Mitarbeit
 
zu überreden sind, finden Sie unter: http://www.inria.fr/koala/colas/mouse-wheel-scroll/.
 
Um Netscape zur Arbeit mit einer Wheel-Mouse zu überreden, tragen Sie in die Datei ~/.Xresources
 
folgendes ein:
 
!## Netscape Ergaenzung fuer Maus mit Scrollrad
 
Netscape*drawingArea.translations: #replace \
 
<Btn1Down>: ArmLink() \n\
 
<Btn2Down>: ArmLink() \n\
 
~Shift<Btn1Up>: ActivateLink() \n\
 
~Shift<Btn2Up>: ActivateLink(new-window) \
 
DisarmLink() \n\
 
Shift<Btn1Up>: ActivateLink(save-only) \
 
DisarmLink() \n\
 
Shift<Btn2Up>: ActivateLink(save-only) \
 
DisarmLink() \n\
 
<Btn1Motion>: DisarmLinkIfMoved() \n\
 
<Btn2Motion>: DisarmLinkIfMoved() \n\
 
<Btn3Motion>: DisarmLinkIfMoved() \n\
 
<Motion>: DescribeLink() \n\
 
<Btn3Down>: xfeDoPopup() \n\
 
<Btn3Up>: ActivatePopup() \n\
 
Ctrl<Btn4Down>: PageUp()\n\
 
Ctrl<Btn5Down>: PageDown()\n\
 
Shift<Btn4Down>: LineUp()\n\
 
Shift<Btn5Down>: LineDown()\n\
 
None<Btn4Down>: LineUp()LineUp()LineUp()LineUp()LineUp()LineUp()\n\
 
None<Btn5Down>: LineDown()LineDown()LineDown()LineDown()LineDown()LineDown()\n\
 
Alt<Btn4Down>: xfeDoCommand(forward)\n\
 
Alt<Btn5Down>: xfeDoCommand(back)\n
 
521
 
Kapitel 18. Exotische Hardware
 
Sie können nach jeder Änderung an dieser Datei den X-Server neu starten, um die Änderungen zu aktivieren.
 
Alternativ können Sie die Datei auch während des laufenden Betriebes des X-Servers einlesen und aktivieren.
 
Benutzen Sie hierzu das Kommando: xrdb -merge ~/.Xresources.
 
Wundern Sie sich nicht, daß es bei Webseiten, die Frames benutzen, nötig ist, zuerst einmal irgendwo innerhalb
 
des gewünschten Frames zu klicken, damit der gewünschte Bereich gescrollt wird. Dieses Verhalten ist normal,
 
Netscape ist leider nicht in der Lage festzustellen, in welchem Bereich des Fensters sich der Mauszeiger
 
befindet.
 
522
 
Kapitel 19. Systemadministration
 
19.1. Bootloader
 
Vor dem Laden des Linux-Kernels wird mit dem sogenannten Bootloader ein kleines Programm geladen,
 
welches Ihnen eine Auswahl zwischen verschiedenen installierten Betriebssystemen erlaubt. Der unter
 
GNU/Linux gebräuchlichste Bootloader ist lilo.
 
19.1.1. lilo (i386)
 
Bei der Installation von Debian GNU/Linux auf Ihrem System wird generell der Bootloader lilo auf Ihrer
 
Festplatte installiert und so eingerichtet, daß das neue Debian GNU/Linux-System gestartet wird.
 
19.1.1.1. lilo einrichten
 
Nach Installation des Basis-Systems und des Master Boot Records, gelangen Sie beim Booten des Rechners
 
automatisch in den LILO und können plötzlich nur noch Linux starten. In diesem Abschnitt wird beschrieben,
 
wie Sie die alten Systeme wieder aktivieren.
 
LILO ist ein vollständiger Boot-Manager, mit dem nicht nur Linux gebootet werden kann, sondern auch jedes
 
andere System, das sich an die im PC vorherrschenden Konventionen hält. Konfiguriert wird dieser
 
Boot-Manager über die Datei /etc/lilo.conf.
 
Wann immer Sie diese Datei ändern, müssen Sie das Programm lilo auf der Kommandozeile als Superuser
 
aufrufen, um die Änderungen tatsächlich zu übernehmen. Es reicht nicht, die Konfigurationsdatei zu verändern!
 
Wichtig in diesem Zusammenhang sind die Zeilen, die mit image und other anfangen, sowie die jeweils
 
nachfolgende Zeile. Diese Schlüsselwörter dürfen mehrfach verwendet werden. Jede so beginnende Zeile
 
bezeichnet ein System, das von LILO gebootet werden kann. Eine solche Partition kann einen Kernel, eine
 
Root-Partition oder ein anderes, Nicht-Linux-System (other), beinhalten. Die Reihenfolge dieser Systeme ist
 
entscheidend, denn das erste wird automatisch gebootet, wenn die Wartezeit (siehe delay) abgelaufen ist und
 
LILO nicht durch Drücken der Shift-Taste angehalten wurde. Nach einer Erstinstallation existiert lediglich ein
 
einziges solches System, welches das aktuelle Debian GNU/Linux-System bootet.
 
Um ein zweites Linux-System zu booten (z.B. unter Verwendung eines anderen Kernels), müssen Sie die Datei
 
/etc/lilo.conf um folgende Zeilen ergänzen:
 
image=/boot/vmlinuz.neu
 
label=neu
 
append=’mcd=0x320,11’
 
read-only
 
Lediglich die ersten beiden Zeilen sind erforderlich. Um die Bedeutung der nachfolgenden Zeilen zu erfahren,
 
lesen Sie bitte in der Dokumentation zu LILO.
 
19.1.1.2. lilo und fremde Betriebssysteme
 
Um ein anderes System als Linux zu booten, verwenden Sie das Schlüsselwort other wie folgt:
 
other=/dev/hda1
 
label=win
 
Rufen Sie danach lilo als Superuser auf, um lilo neu zu installieren. Bei einem Neustart des Systems können
 
Sie nun am Bootprompt durch Eingeben von „win“ das Betriebssystem auf der Partition /dev/hda1 starten.
 
523
 
Kapitel 19. Systemadministration
 
19.1.2. GRUB
 
GRUB (GRand Unified Bootloader) ist ein weiterer Bootloader, dessen Aufgabe es ist nach dem einschalten des
 
Rechners die weitere Kontrolle an das Betriebssystem (also den Kernel) zu übergeben. Das Betriebsystem
 
initialisiert dann über die geeigneten Treiber alle weitere Hardware im System. GRUB ist in der Lage viele
 
verschiedene Betriebssysteme zu laden. Wird ein Betriebssystem nicht direkt von GRUB unterstützt, so kann
 
dieses dennoch von GRUB über einen sogenannten „Chain-Bootloader“ geladen werden. Für die wichtigsten
 
Betriebssysteme sind diese bereits im GRUB Paket enthalten.
 
Einer der größten Vorteile von GRUB ist, das GRUB in der Lage ist auf das Dateisystem direkt zuzugreifen.
 
Das bedeutet das GRUB nicht wissen muß wo genau der zu ladende Kernel auf der Festplatte liegt. Sie können
 
also jederzeit einen neuen Kernel erzeugen und müssen hinterher nicht nochmal GRUB im MBR der Festplatte
 
installieren. Es ist ebenfalls nicht notwendig alle Kernelversionen die sich auf der Festplatte befinden in die
 
Konfigurationsdatei einzutragen. Sie können mit GRUB jederzeit auf jeden Kernel auf Ihrer Festplatte
 
zugreifen, wenn auch mit ein wenig Tipparbeit.
 
19.1.2.1. Installation
 
Die Installation von GRUB unter Debian ist wie üblich mit einem einfachen apt-get install grub so gut
 
wie abgeschlossen. Sie sollten danach zunächst das Paket lilo entfernen, dies wird nicht mehr benötigt. Leider
 
ist noch keine Installationsroutine zur kompletten automatischen Installation von GRUB verfügbar, so das noch
 
einige wenige Schritte von Hand vorgenommen werden müssen.
 
Um die notwendigen Daten (die Stage 1 und 2 Bootloader) in den Masterboot-Record der Festplatte zu
 
schreiben, benutzen Sie das Programm „grub-install“. Wenn Sie „grub-install“ zunächst ohne Optionen aufrufen
 
bekommen Sie eine kurze Übersicht der möglichen Optionen angezeigt:
 
debian:~# grub-install
 
install_device not specified.
 
Usage: grub-install [OPTION] install_device
 
Install GRUB on your drive.
 
-h, --help print this message and exit
 
-v, --version print the version information and exit
 
--root-directory=DIR install GRUB images under the directory DIR
 
instead of the root directory.
 
--grub-shell=FILE use FILE as the grub shell.
 
--force-lba force GRUB to use LBA mode even for a buggy
 
BIOS.
 
--recheck probe a device map even if it already exists.
 
INSTALL_DEVICE can be a GRUB device name or a system device filename.
 
Reports bugs to <bug-grub@gnu.org>.
 
In den meisten Fällen ist es ausreichend lediglich das gewünschte Device anzugeben auf dem die Daten
 
installiert werden sollen. Dies wird bei einer IDE-Festplatte meist /dev/hda sein.
 
surimi:/home/fr# grub-install /dev/hda
 
Installation finished. No error reported.
 
This is the contents of the device map /boot/grub/device.map.
 
Check if this is correct or not. If any of the lines is incorrect,
 
fix it and re-run the script ‘grub-install’.
 
(fd0) /dev/fd0
 
(hd0) /dev/hda
 
(hd1) /dev/hdb
 
524
 
Kapitel 19. Systemadministration
 
GRUB ist nun funktionsfähig installiert, Sie sollten aber noch ein Menü einrichten um nicht bei jedem
 
Systemstart die Parameter für das Root-Device und den Kernel von Hand eingeben zu müssen. Kopieren Sie
 
hierzu am besten das mitgelieferte Beispiel an die entsprechende Stelle.
 
19.1.2.2. Konfiguration
 
Die Konfiguration von GRUB kann herkömlich, mittels eines Editors, erfolgen oder aber ganz elegant mittels
 
update-grub.
 
19.1.2.2.1. update-grub
 
update-grub ist Bestandteil des GRUB Debian Paketes. Existiert noch keine Konfigurationsdatei, so wird
 
diese automatisch erstellt. Als Basis dienen dazu die Kernel- und RAM-Disk-Images im Verzeichnis /boot/.
 
Zu jedem vorhandenen Kernel wird jeweils ein Eintrag für den normalen Start sowie für den Start im
 
Single-User Modus erstellt.
 
wasabi:~# update-grub
 
Searching for GRUB installation directory ... found: /boot/grub .
 
Testing for an existing GRUB menu.list file...
 
Could not find /boot/grub/menu.lst file. Would you like one generated for you? (y/N) y
 
Updating /boot/grub/menu.lst ... done
 
Please note that configuration parameters for GRUB are stored in
 
/boot/grub/menu.lst . You must edit this file in order to set the options
 
which GRUB passes to the kernel, as well as the drive which GRUB looks in to
 
for the kernel.
 
Everything on the line after "kopt=" is passed to the kernel as parameters,
 
and "groot=" must be set to the partition(in GRUB terms, such as "(hd0,0)")
 
which GRUB will load the kernel from.
 
After you have edited /boot/grub/menu.lst , please re-run ’update-grub’.
 
Natürlich sind Veränderungen an der automatisch erstellten Konfiguration möglich. In der Konfigurationsdatei
 
gibt es einen Abschnitt der mit „### BEGIN AUTOMAGIC KERNELS LIST“ beginnt. Diese Einträge können
 
verändert werden, es dürfen aber auf keinen Fall die Kommentarzeichen (#) am Anfang jeder Zeile verändert
 
werden! Ein Beispiel. Aus:
 
# kopt=root=/dev/hda1 ro
 
Wird:
 
# kopt=root=/dev/hda1 ro apm=on ide2=0x180,0x386
 
Die hinzugefügten Parameter werden beim Starten des Kernels übergeben. Nach der Änderung wird nochmals
 
update-grub aufgerufen und die Änderungen werden in die eigentliche Konfiguration am Ende der Datei
 
übernommen.
 
525
 
Kapitel 19. Systemadministration
 
19.1.2.2.2. Manuelle Konfiguration
 
Wenn Sie im Verzeichnis /boot/grub/ eine Datei eine Datei menu.lst erzeugen, so wird GRUB beim
 
nächsten Start aus dieser Datei ein Menü erstellen und Sie können dann aus den verschiedenen Einträgen dieses
 
Menüs den gewünschten auswählen. Ein Beispiel für ein solches Menü finden Sie unter
 
/usr/share/doc/grub/examples/menu.lst.
 
debian:~# cp /usr/share/doc/grub/examples/menu.lst /boot/grub/
 
In dem Beispiel finden Sie einige Einträge für die verschiedensten Betriebssysteme, sowie einige andere
 
Goodies die Sie mit GRUB anstellen können. Eine funktionsfähige Minimalkonfiguration könnte wie folgt
 
aussehen:
 
timeout 10
 
default 0
 
# For booting Linux
 
title Debian GNU/Linux
 
root (hd0,0)
 
kernel /vmlinuz root=/dev/hda1
 
Wenn ein Kernelpaket verwendet wird, so ist darauf zu achten das diese normalerweise eine Init-Ramdisk
 
(initrd) verwenden. Ein entsprechender Eintrag, um eben diese Ramdisk ergänzt sieht wie folgt aus:
 
title GNU/Linux 2.4.6 SMP
 
root (hd0,6)
 
kernel /vmlinuz-2.4.6-686-smp root=/dev/hda1 read-only
 
initrd /initrd-2.4.6-686-smp
 
Dieses Beispiel verwendet einen SMP Kernel und eine etwas andere Festplattenaufteilung, aber das Prinzip
 
sollte erkennbar sein.
 
19.1.2.3. Hardwarebezeichnungen
 
Vielleicht haben Sie sich schon über die etwas ungewohnten Bezeichnungen der Laufwerke in der
 
Konfigurationsdatei gewundert. GRUB benutzt die von HURD-Kernel verwendeten Bezeichnungen für
 
Gerätedateien, die Umstellung ist aber für den geübten Linux-Admin nicht sehr groß.
 
Zunächst ist zu bemerken das alle Bezeichnungen für Geräte in Klammern () geschrieben werden. Statt der unter
 
Linux üblichen Buchstaben (z.B. hda) werden die einzelnen Platten mit fortlaufenden Zahlen ab 0 bezeichnet.
 
hda entspricht also hd0. Die einzelnen Partitionen einer Platten werden wie unter Linux mit Zahlen bezeichnet,
 
allerdings beginnend mit 0 und getrennt mit einem Komma. Somit entspricht /dev/hda1 also (hd0,0).
 
Weitere Geräte werden als (fd0) (Diskette) und (sd0) (SCSI Platten) bezeichnet. Sie können GRUB auch
 
zum booten übers Netz einsetzen oder das Root-Filesystem per NFS mounten. Die Bezeichnung des
 
Netzwerkdevices lautet (nd).
 
19.1.2.4. Kommandozeile
 
GRUB verfügt auch über eine sehr leistungsfähige Kommandozeile, bedenken Sie dabei das zu dieser Zeit noch
 
kein komplettes Betriebssystem oder gar ein Kernel geladen ist! Sollte es Ihnen nicht gelungen sein ein
 
funktionsfähiges Menü zu erstellen, so landen Sie automatisch auf der GRUB-Kommandozeile. Sie können hier
 
alle Kommandos, Laufwerksbezeichnungen und Dateinamen mit der TAB-Taste automatisch vervollständigen
 
lassen, diese Feature kennen Sie sicher schon aus der Shell.
 
526
 
Kapitel 19. Systemadministration
 
Wenn jedoch ein Menü angezeigt wird, können Sie dieses mit der Taste c verlassen und auf der Kommandozeile
 
zum Beispiel von Hand einen anderen Kernel starten. Fehlerhafte Einträge im Menü lassen sich aus dem Menü
 
mit der Taste e temporär verändern. Vergessen Sie nicht diese Änderungen später in die Datei
 
/boot/grub/menu.lst einzutragen.
 
19.1.2.5. weitere Informationen
 
Weitere Informationen zu GRUB finden Sie auf Ihrem System unter file:///usr/share/doc/grub/ und auf der
 
Webseite des Projektes unter http://www.gnu.org/software/grub/grub.en.html.
 
19.2. Init Scripte
 
Nach dem laden des Linux Kernels wird als erstes Programm überhaupt das Programm init gestartet. Dieses
 
Programm startet alle weiteren Programme, welche dies sind wird über die Scripte im Verzeichnis
 
/etc/init.d bestimmt. Je nach gewünschtem Runlevel des Systems zeigen Links auf die Scripte in diesem
 
Verzeichnis. Das anlegen und löschen dieser Links wird bei der Installation der jeweiligen Dienste automatisch
 
vorgenommen. Ein installierter Dienst wird normalerweise immer auch gestartet. Natürlich können Links von
 
Hand hinzugefügt oder entfernt werden, aber auch für diese Arbeiten am System stellt Debian einige
 
Werkzeuge zur Verfügung.
 
19.2.1. rcconf
 
rcconf ist ein einfaches Werkzeug mit dem einzelne Dienste aus den Init-Scripten aktiviert oder deaktiviert
 
werden können. Es ist mit rcconf nicht möglich den Runlevel eines Dienstes zu bestimmen.
 
Abbildung 19-1. rcconf
 
527
 
Kapitel 19. Systemadministration
 
19.2.2. update-rc.d
 
Detailiertere Einstellmöglichkeiten bietet update-rc.d. Zunächst sollte update-rc.d in jedem Fall mit der
 
Option -n aufgerufen werden, diese zeigt lediglich an welche Aktionen durchgeführt werden sollen, lässt die
 
entsprechenden Links aber unangetastet.
 
usage: update-rc.d [-n] [-f] <basename> remove
 
update-rc.d [-n] <basename> defaults [NN | sNN kNN]
 
update-rc.d [-n] <basename> start|stop NN runlvl [runlvl] [...] .
 
-n: not really
 
-f: force
 
Grundsätzlich ist natürlich immer der Name des Paketes anzugeben von welchem die Initscripte angepasst
 
werden sollen. Bei Verwendung der Option remove werden alle Links auf das entsprechende Script entfernt.
 
Hierbei prüft update-rc.d ob das Script bereits entfernt wurde. Ist dies nicht der Fall so bricht update-rc.d
 
ab. Mit der Option -f kann erzwungen werden das die Links auch bei vorhandensein eines Script gelöscht
 
werden.
 
Mit den Optionen start, stop oder defaults werden die notwendigen Links angelegt, bzw.
 
wiederhergestellt. Wird zusätzlich einer oder mehrere Runlevel angegeben so können die Links entsprechend
 
den Wünschen des Systemadministrators angepasst werden.
 
19.3. alternatives
 
Vielleicht ist Ihnen schon das Verzeichnis /etc/alternatives aufgefallen. In diesem befinden sich einige
 
Links ins Dateisystem. Haben Sie schon herausgefunden wozu diese dienen? OK, dann wird das Geheimnis nun
 
aufgedeckt....
 
„Alternativen“ sind eine weitere dieser vielen, netten Kleinigkeiten die das Leben in einem Debian GNU
 
System leichter und schöner machen. Über Alternativen können beliebte Programme (beispielsweise vi) durch
 
„Alternativen“ (beispielsweise vim) ersetzt werden. Hierbei sind keine Einträge in irgendwelchen
 
Konfigurationsdateien notwendig. Sehen wir uns das einmal am Beispiel vi an. Zunächst versuchen wir zu
 
ermitteln wo das eigentlich Programm vi zu finden ist:
 
wasabi:/home/fr# ls -l ‘which vi‘
 
lrwxrwxrwx 1 root root 20 24. Feb 13:47 /usr/bin/vi -> /etc/alternatives/vi
 
Und dieser Link wiederrum:
 
wasabi:/home/fr# ls -l /etc/alternatives/vi
 
lrwxrwxrwx 1 root root 12 20. Mär 08:15 /etc/alternatives/vi -> /usr/bin/vim
 
... zeigt auf das Programm vim. Nun lassen sich auch diese Links natürlich mir Unix Bordmitteln verändern,
 
doch halt! Auch hier gibt es wieder ein Werkzeug aus der Debian Werkzeugkiste.
 
update-alternatives ist das Werkzeug des Debian Systemadministrators um die Konfiguration dieser
 
Links vorzunehmen. Hierbei ist es möglich aus sinnvollen Alternativen auszuwählen, es werden sogar
 
Einschätzungen zum am besten geeigneten Programm für den jeweiligen Zweck abgegeben.
 
update-alternatives: need --display, --config, --install, --remove or --auto
 
Debian update-alternatives 1.9.20.
 
528
 
Kapitel 19. Systemadministration
 
Copyright (C) 1995 Ian Jackson.
 
Copyright (C) 2000,2001,2002 Wichert Akkerman
 
This is free software; see the GNU General Public Licence
 
version 2 or later for copying conditions. There is NO warranty.
 
Usage: update-alternatives --install <link> <name> <path> <priority>
 
[--slave <link> <name> <path>] ...
 
update-alternatives --remove <name> <path>
 
update-alternatives --auto <name>
 
update-alternatives --display <name>
 
update-alternatives --config <name>
 
<name> is the name in /etc/alternatives.
 
<path> is the name referred to.
 
<link> is the link pointing to /etc/alternatives/<name>.
 
<priority> is an integer; options with higher numbers are chosen.
 
Options: --verbose|--quiet --test --help --version
 
--altdir <directory> --admindir <directory>
 
Zunächst sollten man sich einen Überblick über den aktuellen Zustand des Programmes, hier vi, verschaffen:
 
wasabi:/home/fr# update-alternatives --display vi
 
vi - status is manual.
 
link currently points to /usr/bin/vim
 
/usr/bin/nvi - priority 30
 
slave vi.1.gz: /usr/share/man/man1/nvi.1.gz
 
/usr/bin/vim - priority 120
 
slave vi.1.gz: /usr/share/man/man1/vim.1.gz
 
Current ‘best’ version is /usr/bin/vim.
 
Sehr schön zu sehen, es stehen zwei Programm zur Verfügung die dem System als Editor vi dienen können:
 
nvi und vim. Beide Versionen sind mit unterschiedlich hohen Prioritäten versehen, die höhere Version wird
 
bevorzugt und in der letzetn Zeile als Empfehlung ausgegeben.
 
Mit der Option --config können Veränderungen an der aktuellen Einstellung vorgenommen werden. Dies
 
Auswahl des neuen Wertes erfolgt mit der jeweils vorrangestellten Zahl.
 
19.4. hdparm
 
Mit dem Programm hdparm lassen sich Festplattenparameter auslesen und verändern.
 
Die Syntax zu diesem Befehl lautet:
 
hdparm - get/set hard disk parameters - version v5.2
 
Usage: hdparm [options] [device] ..
 
Options:
 
-a get/set fs readahead
 
-A set drive read-lookahead flag (0/1)
 
-b get/set bus state (0 == off, 1 == on, 2 == tristate)
 
-B set Advanced Power Management setting (1-255)
 
-c get/set IDE 32-bit IO setting
 
-C check IDE power mode status
 
-d get/set using_dma flag
 
-D enable/disable drive defect-mgmt
 
-E set cd-rom drive speed
 
-f flush buffer cache for device on exit
 
529
 
Kapitel 19. Systemadministration
 
-g display drive geometry
 
-h display terse usage information
 
-i display drive identification
 
-I detailed/current information directly from drive
 
-Istdin similar to -I, but wants /proc/ide/*/hd?/identify as input
 
-k get/set keep_settings_over_reset flag (0/1)
 
-K set drive keep_features_over_reset flag (0/1)
 
-L set drive doorlock (0/1) (removable harddisks only)
 
-M get/set acoustic management (0-254, 128: quiet, 254: fast) (EXPERIMENTAL)
 
-m get/set multiple sector count
 
-n get/set ignore-write-errors flag (0/1)
 
-p set PIO mode on IDE interface chipset (0,1,2,3,4,...)
 
-P set drive prefetch count
 
-q change next setting quietly
 
-Q get/set DMA tagged-queuing depth (if supported)
 
-r get/set readonly flag (DANGEROUS to set)
 
-R register an IDE interface (DANGEROUS)
 
-S set standby (spindown) timeout
 
-t perform device read timings
 
-T perform cache read timings
 
-u get/set unmaskirq flag (0/1)
 
-U un-register an IDE interface (DANGEROUS)
 
-v defaults; same as -mcudkrag for IDE drives
 
-V display program version and exit immediately
 
-w perform device reset (DANGEROUS)
 
-W set drive write-caching flag (0/1) (DANGEROUS)
 
-x tristate device for hotswap (0/1) (DANGEROUS)
 
-X set IDE xfer mode (DANGEROUS)
 
-y put IDE drive in standby mode
 
-Y put IDE drive to sleep
 
-Z disable Seagate auto-powersaving mode
 
-z re-read partition table
 
hdparm ist ein Kommandozeilenprogramm um verschiedene Festplattenparameter im Linux Kernel zu
 
verändern. Dieses Programm benötigt mindestens einen Kernel der Version 1.2.13, dies sollte aber auf einem
 
aktuellen Debian System kein Problem sein.
 
19.4.1. Optionen
 
Wenn keine weiteren Optionen angegeben werden so wird bei einem IDE Device automatisch die Optionen
 
-acdgkmnru und bei einem SCSI Device die Optionen -gr benutzt.
 
Im einzelnen bewirken die Optionen folgendes:
 
• -A Schaltet die „read-lookahead“ Funktion einer IDE Festplatte ein oder aus. Normalerweise ist diese
 
Funktion aktiviert.
 
• -c Zeigt den Status oder aktiviert den (E)IDE 32-Bit I/O Support. Die Parameter hier für sind: 0 um den
 
Support zu deaktivieren, und 1 um den Support zu aktivieren. Der Wert 3 aktivert den 32-Bit Support mit
 
einer speziellen Sync Sequenz die von einigen Chipsets benötigt wird. Diese Option funktioniert mit fast
 
allen Chipsets, bringt jedoch etwas mehr Overhead mit sich. Wird kein Parameter angegeben, so wird die
 
aktuelle Einstellung angezeigt.
 
• -C Zeigt den aktuellen Power Mode Status einer IDE Festplatte an. Dieser kann folgende Werte annehmen:
 
„unknown“ - Das Laufwerk unterstützt dieses Kommando nicht. „active“/„idle“ - Normalbetrieb. „standby“ -
 
Low Power Modus, die Festplatte dreht sich nicht oder „schläft“ sogar komplett. Die -S, -y, -Y und -Z
 
können zur Veränderung der IDE Power Modes verwendet werden.
 
• -d Zeigt ob für das genannte Gerät der DMA Modus benutzt wird oder aktiviert/deaktiviert den Modus. Das
 
Flag „using_dma“ funktioniert nur mit wenigen Kombinationen aus Festplatte und Controllern.
 
Beispielsweise wird beim Intel Triton Chipset der Bus-Master DMA Modus in verbindung mit vielen
 
530
 
Kapitel 19. Systemadministration
 
Festplatten ünterstützt. Wenn möglich sollte die Option -X34 zusammen mit -d1 benutzt werden um
 
sicherzustellen das das Laufwerk selber den Multiword DMA Modus 2 unterstützt.
 
• -f Synchonisieren und speichern des Cache Puffers der Festplatte beim beenden des Programmes. Dieser
 
Vorgang wird auch bei den Optionen -t und -T durchgeführt.
 
• -g Zeigt die Plattengeometrie (Zylinder, Köpfe, Sektoren), die Größe (in Sektoren) des Laufwerkes und den
 
Offset (in Sektoren) des Devices vom Anfang der Platte.
 
• -h Zeigt die Hilfeinformationen.
 
• -i Zeigt die Identifikation der Festplatte, welche beim booten ausgelesen wurden, falls diese verfügbar sind.
 
Diese Funktion wird nur von neueren Festplatten unterstützt. Die Informationen können veraltet sein wenn
 
das System seit den Start viel beschäftigt war.
 
• -I Zeigt die aktuelle Identifikation der Festplatte an. Wie die Option -i, die Informationen werden allerdings
 
neu ausgelesen.
 
• -k Liest oder setzt das keep_settings_over_reset Flag für das Laufwerk. Wenn diese Option gesetzt
 
ist, werden die -dmu Optionen über einen (Soft-) Reset hinaus gespeichert.
 
• -K Setzt das keep_features_over_reset Flag. Das setzen dieser Option rettet die -APSWXZ
 
Einstellungen über einen (Soft-) Reset hinaus. Diese Option wird nicht von alle Laufwerken unterstützt.
 
• -m Zeigt den aktuellen Zustand oder setzt den IDE Block Modus. Ein Wert von 0 deaktiviert diese Funktion.
 
• -p Versucht das IDE Interface Chipset auf den gewünschten PIO Modus zu setzen oder versucht den
 
bestmöglichen PIO Modus einzustellen.
 
• -q Diese Option unterdrückt die Ausgabe von Meldungen für die folgenden Optionen. Dies kann eingesetzt
 
werden wenn hdparm aus einer Datei beim Systemstart heraus aufgerufen wird. Diese Option hat keine
 
Auswirkungen auf die Optionen -i, -v, -t oder -T.
 
• -r Liest oder setzt das Read-Only Flag.
 
• -S Setzt die Standby-Zeit des Gerätes. Nach der eingestellten Zeit in Sekunden fährt die Festplatte in den
 
Ruhezustand. Ein Wert von 0 schaltet diese Funktion aus.
 
• -T Führt einen Benchmark mit Lesezugriffen auf den Cache durch. Um sinnvolle Ergebnisse zu bekommen,
 
sollte ein Test 2-3 mal auf einem System mit möglichste wenig anderen Prozessen durchgeführt werden.
 
• -t Führt einen Benchmark mit Lesezugriffen auf das Gerät durch. Um sinnvolle Ergebnisse zu bekommen,
 
sollte ein Test 2-3 mal auf einem System mit möglichste wenig anderen Prozessen durchgeführt werden.
 
• -u Liest oder setzt das „interrupt-unmask“ Flag. Dies kann auf vielen Systemen die Reaktionszeit des
 
Systems verbessern, ist aber mit Vorsicht einzusetzen, da nicht alle Chipsets diese Funktion richtig umsetzen
 
können. Ein Wert von 1 aktiviert diese Funktion.
 
• -v Zeigt die aktuellen Einstellungen an, mit Ausnahme von -i. Wenn keinerlei Optionen auf der
 
Kommandozeile angegeben werden wird ebenfalls -v angenommen. Bei einem SCSI Gerät entspricht dies
 
den Optionen -gr, bei einem IDE Gerät den Optionen -acdgkmnru.
 
• -W Aktiviert oder deaktiviert bei einem IDE Laufwerk das write-caching Feature. Dies ist Standardmäßig
 
deaktiviert.
 
• -X Setzt den IDE Übertragungsmodus bei neueren (E)IDE/ATA2 Laufwerken. Diese Option wird meistens
 
zusammen mit -d1 benutzt um den DMA Modus von/zu einem Laufwerk mit Chipsets die dies unterstützen
 
(beispielsweise Intel 430FX Triton) zu aktivieren. Dort können dann auch mit -X34 „multiword DMA
 
mode2“ Übertragungen aktiviert werden. Die Option -X66 aktiviert UltraDMA Mode2 Übertragungen.
 
• -y Aktiviert sofort den Energiesparmodus bei einem IDE Laufwerk.
 
• -Y Aktiviert sofort den Energiesparmodus mit dem geringsten Stromverbrauch bei einem IDE Laufwerk.
 
• -Z Deaktiviert die Stromsparfunktionen bei einigen Seagate Laufwerken die diese Funktion nur fehlerhaft
 
implementiert haben.
 
531
 
Kapitel 19. Systemadministration
 
19.4.2. Einbinden von hdparm
 
Um nun nicht nach jedem Systemstart (als Superuser) das Programm hdparm neu aufrufen zu müssen, ist es
 
sinnvoll den Aufruf in die Init-Scripte mit aufzunehmen. Im einfachsten Fall reicht es den entsprechenden
 
Eintrag in der Datei /etc/init.d/bootmisc.sh aufzunehmen.
 
Eleganter ist es wenn ein eigenes Startscript erstellt wird. Dies kann beispielsweise wie folgt aussehen:
 
#!/bin/sh
 
HDPARM=‘which hdparm‘
 
if [ $UID != 0 ] ; then
 
exit 0
 
else
 
if [ -f ‘which hdparm‘ ] ; then
 
if [ -f "/etc/hdparm.conf" ] ; then
 
{ while read dummy
 
do IN="$dummy"
 
$HDPARM ‘echo $IN | cut -d : -f 2‘ /dev/‘echo $IN | cut -d : -f 1‘
 
done
 
} < /etc/hdparm.conf
 
else
 
# no config file: guess params
 
for i in ‘ls -1 /proc/ide/|grep hd[a-d]‘ ; do
 
if [ ‘cat /proc/ide/$i/media‘ = "disk" ] ; then
 
$HDPARM -d1 -c1 -S12 /dev/$i
 
else
 
echo; echo "/dev/$i: no disk! media is: ‘cat /proc/ide/$i/media‘"
 
fi
 
done
 
fi
 
fi
 
fi
 
Ohne an dem Script Veränderungen vorzunehmen, wird hdparm mit den Parametern -c1 -d1 -S12
 
aufgerufen. Dies kann entweder direkt im Script, oder aber besser mittels der Konfigurationsdatei
 
/etc/hdparm.conf beeinflusst werden:
 
hda:-c1d1
 
hdc:-c1d1
 
Wie hier gezeigt, können die Parameter für jedes Gerät einzeln angegeben werden.
 
19.5. Systemzeit
 
(Fast) jeder Rechner verfügt heute über eine eingebaute Uhr, die über eine eingebaute Batterie die Uhrzeit auch
 
im ausgeschalteten Zustand weiterlaufen läßt, so das immer eine korrekte Systemzeit eingestellt ist. Das
 
Betriebssystem kümmert sich während der Laufzeit um die richtige Zeit und liest die Zeit einmalig beim
 
Systemstart aus der Hardware-Uhr aus. Die Zeit des Betriebssystems läßt sich mit dem Kommando date
 
anzeigen.
 
bash-2.03$ date
 
Sat Jan 22 17:54:00 CET 2000
 
532
 
Kapitel 19. Systemadministration
 
Die Uhrzeit, die vom Uhrenchip auf dem Motherboard geliefert wird, ist normalerweise ausreichend genau.
 
Wenn diese Zeit um mehrere Monate oder Jahre nach dem Einschalten des Rechners abweicht, sollten Sie die
 
Batterie auf dem Motherboard wechseln (lassen).
 
Das Kommando date, so wie oben gezeigt, zeigt den Wochentag, den Monat, den Tag, die Uhrzeit, die
 
Zeitzone sowie das Jahr an.
 
Ein weiteres Kommando, welches auf die Systemzeit zugreift, ist das Kommando time. Dieses zeigt allerdings
 
nicht die Zeit an, wie man vielleicht vermuten könnte, sondern dient dazu, die Zeit zu bestimmen, die
 
bestimmte Komandos zur Ausführung benötigen.
 
$ time sleep 60
 
real 1m0.057s
 
user 0m0.000s
 
sys 0m0.000s
 
Wundern Sie sich nicht, dieses Kommando benötigt eine Minute. Das Kommando sleep „schläft“ in diesem
 
Beispiel 60 Sekunden, time ermittelt diese Zeit... nicht sehr sinnvoll, aber ein Beispiel ;-). Wenn Sie sich
 
einen neuen Rechner zugelegt haben und Ihre Freunde wissen, daß Sie diesen unter GNU/Linux betreiben,
 
werden diese vielleicht fragen, wie lange es dauert, einen neuen Kernel zu übersetzen. Sie können diese Zeit
 
jetzt mit dem Kommando time ermitteln. Natürlich kommt es auch darauf an, welche Treiber Sie in den Kernel
 
einbinden wollen und welche Kernel-Version Sie übersetzen... doch das ist ein anderes Thema...
 
19.5.1. date
 
Um die Systemzeit auf Ihrem Rechner zu korrigieren, können Sie das Kommando als Superuser benutzen. date
 
hat eine Vielzahl von Optionen, um die Zeit zu stellen, Sie können die gewünschte Zeit in allen nur denkbaren
 
Formaten angeben. Hier einmal die Übersicht der Optionen:
 
bash-2.03$ date --help
 
Usage: date [OPTION]... [+FORMAT]
 
or: date [OPTION] [MMDDhhmm[[CC]YY][.ss]]
 
Display the current time in the given FORMAT, or set the system date.
 
-d, --date=STRING display time described by STRING, not ‘now’
 
-f, --file=DATEFILE like --date once for each line of DATEFILE
 
-I, --iso-8601[=TIMESPEC] output an ISO-8601 compliant date/time string.
 
TIMESPEC=‘date’ (or missing) for date only,
 
‘hours’, ‘minutes’, or ‘seconds’ for date and
 
time to the indicated precision.
 
-r, --reference=FILE display the last modification time of FILE
 
-R, --rfc-822 output RFC-822 compliant date string
 
-s, --set=STRING set time described by STRING
 
-u, --utc, --universal print or set Coordinated Universal Time
 
--help display this help and exit
 
--version output version information and exit
 
FORMAT controls the output. The only valid option for the second form
 
specifies Coordinated Universal Time. Interpreted sequences are:
 
%% a literal %
 
%a locale’s abbreviated weekday name (Sun..Sat)
 
%A locale’s full weekday name, variable length (Sunday..Saturday)
 
%b locale’s abbreviated month name (Jan..Dec)
 
%B locale’s full month name, variable length (January..December)
 
%c locale’s date and time (Sat Nov 04 12:02:33 EST 1989)
 
%d day of month (01..31)
 
%D date (mm/dd/yy)
 
%e day of month, blank padded ( 1..31)
 
%h same as %b
 
533
 
Kapitel 19. Systemadministration
 
%H hour (00..23)
 
%I hour (01..12)
 
%j day of year (001..366)
 
%k hour ( 0..23)
 
%l hour ( 1..12)
 
%m month (01..12)
 
%M minute (00..59)
 
%n a newline
 
%p locale’s AM or PM
 
%r time, 12-hour (hh:mm:ss [AP]M)
 
%s seconds since 00:00:00, Jan 1, 1970 (a GNU extension)
 
%S second (00..60)
 
%t a horizontal tab
 
%T time, 24-hour (hh:mm:ss)
 
%U week number of year with Sunday as first day of week (00..53)
 
%V week number of year with Monday as first day of week (01..52)
 
%w day of week (0..6); 0 represents Sunday
 
%W week number of year with Monday as first day of week (00..53)
 
%x locale’s date representation (mm/dd/yy)
 
%X locale’s time representation (%H:%M:%S)
 
%y last two digits of year (00..99)
 
%Y year (1970...)
 
%z RFC-822 style numeric timezone (-0500) (a nonstandard extension)
 
%Z time zone (e.g., EDT), or nothing if no time zone is determinable
 
By default, date pads numeric fields with zeroes. GNU date recognizes
 
the following modifiers between ‘%’ and a numeric directive.
 
‘-’ (hyphen) do not pad the field
 
‘_’ (underscore) pad the field with spaces
 
Report bugs to <bug-sh-utils@gnu.org>.
 
In der Praxis werden Sie die Zeit aber nur selten korrigieren müssen, so daß an dieser Stelle ein Beispiel reichen
 
sollte. Sehen Sie sich nochmal die Hilfe zu date an, in der zweiten Zeile finden Sie folgendes: or: date
 
[OPTION] [MMDDhhmm[[CC]YY][.ss]]. Die gewünschte Zeit kann im Format MM (Month - Monat), DD
 
(Day - Tag), hh (Hour - Stunde) und mm (Minute) angegeben werden. Die anderen Werte können Sie
 
ignorieren, diese werden Sie nur selten gebrauchen. Um die Zeit drei Tage und eine halbe Stunde
 
zurückzustellen, benutzen Sie folgendes Kommando:
 
linux:/home# date
 
Sun Jan 23 10:47:59 CET 2000
 
linux:/home# date 01201017
 
Thu Jan 20 10:17:00 CET 2000
 
19.5.2. rdate
 
Wenn Sie über einen Internetanschluß verfügen, können Sie dies auch Programmen wie zum Beispiel rdate
 
überlassen. rdate übernimmt die Zeit von einem Server, der über eine Funkuhr (DCF77-Signal) verfügt, aus
 
dem Netz.
 
Sie können dieses Kommando in die Scripte, die Sie zum Aufbau der Internetverbindung benutzen, einbinden.
 
Wenn Ihr Rechner ständig oder immer zu bestimmten Zeiten mit dem Internet verbunden ist, können Sie rdate
 
auch über das Programm cron aufrufen, indem Sie es in die crontab des Superusers eintragen. Rufen Sie dazu
 
das Kommando crontab mit der Option -e (edit - verändern) auf:
 
bash-2.03$ su
 
Password:
 
linux:/home# crontab -e
 
534
 
Kapitel 19. Systemadministration
 
Ergänzen Sie nun die Einträge in dieser Datei um folgende Zeile:
 
10 01 * * * /usr/sbin/rdate time.fu-berlin.de > /dev/null
 
Ein solcher Eintrag stellt jede Nacht um zehn Minuten nach eins die Systemzeit nach den Angaben des Servers
 
time.fu-berlin.de neu. Benutzen Sie bitte einen Server in Ihrer Nähe. Viele Provider bieten einen solchen
 
Service an, fragen Sie einfach nach.
 
Wenn Sie keinen geeigneten Server finden können, sollten Sie die Server der Physikalisch-Technischen
 
Bundesanstalt (PTB) benutzen. Wie Sie vielleicht wissen, wird von der PTB das amtliche Zeitsignal
 
ausgesendet, welches von DCF-77-Empfängern (Funkuhren) empfangen werden kann. Seit Anfang 2000 stellt
 
die PTB diesen Dienst auch übers Internet zur Verfügung. Sie können die beiden öffentlichen Zeitserver der
 
PTB als ptbtime1.ptb.de und ptbtime2.ptb.de erreichen.
 
Um die vorhin in die Vergangenheit beförderte Systemzeit zu korrigieren, können Sie rdate natürlich auch auf
 
der Kommandozeile ausführen:
 
linux:/home# /usr/sbin/rdate time.fu-berlin.de
 
Sun Jan 23 10:49:22 2000
 
19.6. Kernel erzeugen
 
Auf einem Debian GNU/Linux System gibt es grundsätzlich zwei verschiedene Wege einen individuellen
 
Kernel zu erzeugen. Zunächst ist es natürlich möglich alle Arbeitsschritte auf klassischem Wege „zu Fuß“, wie
 
auf jedem anderen Linux System, durchzuführen. Die elegantere Methode ist es jedoch ein eigenes Debian
 
Kernel-Paket zu erzeugen und dieses zu installieren.
 
Sehen wir uns zunächst die etwas elegantere Debian Methode an, die klassische Methode werden wir später
 
besprechen.
 
19.6.1. Debian Kernel (kernel-package)
 
Das Paket kernel-package unterstützt den Debian GNU/Linux-Systemadministrator bei der Verwaltung von
 
individuellen Linux-Kerneln auf seinem System.
 
Sicherlich haben Sie schon die bei Debian GNU/Linux mitgelieferten Kernel-Pakete entdeckt. Diese sind so
 
konfiguriert, daß diese auf den meisten Systemen funktionsfähig sind. Trotzdem ist es manchmal notwendig,
 
einen eigenen Kernel zu übersetzen, um neue Hardware einzubinden oder um Hardwarekonflikte zu umgehen.
 
Sie können hierbei das Paket kernel-package zu Hilfe nehmen. Dieses erzeugt ein Debian-Paket mit einem
 
individuellen Kernel und allen Modulen für Ihr System.
 
Zunächst benötigen Sie, neben dem Paket kernel-package, welches Sie schon installieren können, ein Paket
 
mit dem gewünschten Kernel-Quellcode (Source). Sie finden die Archive unter ftp://ftp.kernel.org oder auf den
 
Spiegelservern in Deutschland: ftp://ftp.de.kernel.org oder ftp://ftp2.de.kernel.org.
 
Tip: aktuelle Kernel-Version herausfinden: Wenn Sie sich nicht per FTP durch die Verzeichnisse auf dem
 
Kernel-Server „wühlen“ möchten um nachzusehen, ob es eine neue Version gibt, können Sie mit dem
 
Kommando finger @www.kernel.org die aktuelle Kernel-Version ermitteln.
 
Weiter benötigen Sie einige zusätzliche Pakete, um einen neuen Kernel zu übersetzen, dies sind: gcc,
 
libc5-dev oder besser (weil aktueller) libc6-dev, binutils, make, gawk oder mawk, gzip, shellutils,
 
grep sowie bin86 auf der i386-Plattform. Wenn Sie das Kommando make menuconfig zur
 
Kernel-Konfiguration benutzen möchten, muß das Paket libncurses5-dev installiert sein. Aber sicher haben
 
Sie einige davon bereits installiert...
 
535
 
Kapitel 19. Systemadministration
 
Wenn die notwendigen Pakete installiert sind, entpacken Sie die Kernel-Quellen, üblicherweise geschieht dies
 
unter /usr/src/. Die entpackten Quellen befinden sich dann im Verzeichnis /usr/src/linux. Es ist ratsam,
 
wenn Sie verschiedene Kernelversionen verwalten wollen, diese umzubenennen, beispielsweise in:
 
kernel-source-2.2.14.
 
Wählen Sie in jedem Fall ein Verzeichnis auf Ihrer Platte, in dem genug Platz vorhanden ist. Die neuesten
 
Kernel-Versionen sind in gepackter Form ca. 16,5 MB groß und nehmen im entpackten Zustand ca. 97 MB
 
sowie ca. 116 MB, wenn alles übersetzt ist, ein. Je entpackter Kernel-Version! Wechseln Sie nun in das
 
Verzeichnis, in dem die Kernel-Quellcodes liegen.
 
Der Name eines Debian GNU/Linux-Paketes besteht immer aus dem Basisnamen (hier: kernel-image), der
 
Versionsnummer des Kernels (zum Beispiel 2.2.14, diese wird aus dem Kernel-Makefile ermittelt) und der
 
sogenannten Revisionsnummer, diese können Sie individuell vergeben (über die Option --revision, die Sie
 
dem Programm make-kpkg übergeben können). Sie sollten diese Revisionsnummer eindeutig wählen, um zu
 
verhindern, daß ein bereits installierter Kernel überschrieben wird. Weiterhin darf das Zeichen „_“ (Unterstrich)
 
nicht verwendet werden. Alternativ können Sie auch die Umgebungsvariable DEBIAN_REVISION auf den
 
gewünschten Wert setzen.
 
Sie sollten die Revisionsnummer bei jedem neuen Kernel erhöhen, das Debian-Paketsystem kann so
 
automatisch ein Update durchführen. Auch für das Paket kernel-package gibt es natürlich eine
 
Konfigurationsdatei, diese finden Sie wie üblich im Verzeichnis /etc/ als kernel-pkg.conf. Üblicherweise
 
sollten Sie dort mindestens Ihren Namen sowie die E-Mail-Adresse angeben, Sie können so immer feststellen,
 
daß dieses Paket kein Original-Debian-Paket ist. Sie können, wenn nötig, noch weitere Variablen in dieser Datei
 
benutzen. Momentan werden folgende Optionen unterstützt:
 
• maintainer: Der „Betreuer“ dieses Kernel-Paketes. Wenn Sie hier ein Apostroph (’) verwenden möchten, so
 
müssen Sie dieses wie folgt angeben: John O’\\”Brien.
 
• email: Ihre E-Mail-Adresse
 
• pgp: Name, der in der PGP-Datenbank gesucht werden soll. Normalerweise wird hier der Maintainer
 
automatisch eingesetzt, Sie können dies auch mit der Umgebungsvariablen PGP_SIGNATURE überschreiben.
 
• debian: Revisionsnummer des Paketes, Standardwert ist 1.00. Es kann die Umgebungsvariable
 
DEBIAN_REVISION benutzt werden.
 
• image_in_boot: Wenn Sie diese Variable auf TRUE setzen, wird der Kernel im Verzeichnis /boot/ abgelegt
 
und ein entsprechender symbolischer Link angelegt, anstatt wie sonst üblich den Kernel direkt in das
 
„root-“Verzeichnis (/) zu kopieren. Dies kann auch über die Umgebungsvariable IMAGE_IN_BOOT gesetzt
 
werden.
 
• kimage: Typ des Kernel-Images, zum Beispiel zImage oder bzImage, Standardwert ist bzImage. Dieser
 
Wert kann über die Umgebungsvariable IMAGE_TYPE gesetzt werden.
 
• no_symlink: kann nicht zusammen mit reverse_symlink verwendet werden. Sinnvoll kann diese Option im
 
Zusammenspiel mit image_in_boot verwendet werden. Bei Verwendung der no_symlink Option wird das
 
Kernel Image immer als Datei vmlinuz abgelegt (und nicht als /boot/vmlinuz-x.x.xx). Ein bereits
 
existierendes Kernel Image wird in jedem Fall (und nicht nur wenn es sich vom neuen Kernel Image
 
unterscheidet) in vmlinuz.old umbenannt. Dieses bringt eine Beschränkung auf zwei Kernel Images mit
 
sich, weitere Versionen müssen dann von Hand eingepflegt werden. Diese Option kann auf Systemen
 
eingesetzt werden welche keinen symbolischen Links unterstützen, beispielsweise wenn loadlin eingesetzt
 
wird. Diese Option ist aber eher als Hack zu betrachten...
 
19.6.2. klassische Kernel
 
19.6.2.1. Anpassen des Kernels von Hand
 
In einigen Fällen kann es notwendig sein, den Linux-Kernel an die eigenen Bedürfnisse anzupassen. Debian
 
GNU/Linux installiert einen Standardkernel, der in den meisten Fällen ausreichend ist. Zusätzliche Treiber
 
können über Module im laufenden Betrieb hinzugeladen werden.
 
536
 
Kapitel 19. Systemadministration
 
19.6.2.2. Benötigte Programme
 
Um aus den Kernel-Sourcen einen lauffähigen Kernel zu erzeugen, müssen die Quelltexte mittels eines
 
passenden Compilers übersetzt werden. Der komplette Linux-Kernel wurde in der Programmiersprache C
 
geschrieben - mit Ausnahme einiger ganz weniger Zeilen, die aus Geschwindigkeitsgründen in der
 
Maschinensprache Assembler geschrieben wurden. Übrigens steht unter Linux der gcc (GNU C-Compiler) -
 
eine freie Implementierung eines C-Compilers - zur Verfügung.
 
Sie benötigen folgende Pakete, um einen Kernel selber zu erzeugen:
 
• binutils - der GNU Assembler, Linker und einige Zusatzprogramme.
 
• libc6-dev - GNU C-Bibliothek, Entwicklerpaket.
 
• gcc - Der eigentliche GNU (EGCS) C-Compiler.
 
• make - GNU-Version von "make".
 
• bin86 - 16-bit Assembler
 
Nützlich, aber nicht zwingend erforderlich, sind weiterhin folgende Pakete:
 
• libncurses4-dev - Entwickler-Bibliotheken und Dokumentation für ncurses
 
• tkstep8.0-dev - NeXTStep ähnlich Version des Tk Toolkits. (oder tk8.0-dev oder tkstep4.2-dev
 
oder tk4.2-dev)
 
• kernel-package - Debian Linux-Kernel Paket-Scripte.
 
19.6.2.3. Entpacken der Sourcen
 
Möchten Sie einen individuell auf Ihr System angepassten Kernel installieren, so ist es zuerst nötig, die
 
Kernel-Sourcen (Quellcode) zu installieren. Für den ersten Versuch ist es ratsam, die gleiche Kernelversion zu
 
installieren, die auch schon vom Installationsprogramm installiert wurde. Der Befehl cat /proc/version
 
gibt Ihnen die installierte Version aus. Installieren Sie nun (mit dselect, dpkg oder apt) die Sourcen zu
 
diesem Kernel.
 
Die Kernel-Sourcen werden vom Installationsprogramm unter /usr/src/ als Datei
 
kernel-source-2.x.x.tgz abgelegt und müssen noch von Hand entpackt werden. Dies erreichen Sie mit
 
dem Befehl tar xvfz kernel-source-2.x.x.tgz. Die entpackten Sourcen finden sich nun in dem
 
Verzeichnis kernel-source-2.x.x/.
 
Auf den Servern finden sich die aktuellen Archive des Linux Kernels auch in einer mit bzip2 anstatt gzip,
 
komprimierten Form. Diese Archive sind nochmal ein wenig kleiner, da bzip2 bessere
 
Kompressionsalgorithmen verwendet. Die so gepackten Archive enden auf .bz2. Diese Archive können
 
ebenfalls mit tar entpackt werden, hierzu ist aber die Option -j statt -z anzugeben. Bitte beachten Sie: es sind
 
zwischenzeitlich einige Versionen von tar im Umlauf gewesen bei denen für bzip2 komprimierte Archive die
 
Option -I zu verwenden ist.
 
19.6.2.4. Konfiguration des Kernels
 
Wechseln Sie nun in das Verzeichnis, in dem Sie vorher die Kernel-Sourcen entpackt haben. Mit dem
 
Kommando make config erzeugen Sie die benötigte Konfigurationsdatei. Sie können hier den Kernel
 
individuell auf Ihre eigene Hardware anpassen. Bei vielen Optionen haben Sie die Möglichkeit, zwischen fest
 
im Kernel integrierten Treibern * oder Modulen M zu wählen. Achten Sie darauf, nur die nötigen Treiber fest in
 
den Kernel einzubinden, da sonst der Kernel zu groß wird und nicht mehr von lilo geladen werden kann. Gute
 
Kandidaten auf der Liste der Module sind alle Treiber, die nicht zum unmittelbaren Systemstart benötigt werden
 
(Netzwerk, Bandlaufwerke...).
 
Neben make config stehen Ihnen alternativ die Befehle make menuconfig mit einer textbasierten
 
Oberfläche ähnlich wie bei dselect sowie make xconfig unter X11 zur Verfügung. Diese erleichtern kleine
 
Änderungen am Kernel sehr, da die gewünschten Einstellungen direkt anzuwählen sind.
 
537
 
Kapitel 19. Systemadministration
 
Wenn Sie die Option menuconfig benutzen wollen, muß das Paket libncurses5-dev installiert sein, dieses
 
stellt die notwendigen Funktionen für die textbasierte Oberfläche zur Verfügung.
 
19.6.2.5. Übersetzen des Kernels
 
Nachdem Sie die gewünschten Einstellungen gemacht haben, werden mit dem Befehl make dep die
 
Abhängigkeiten geprüft. Ein make clean räumt noch übrig gebliebene Dateien von der Platte. Einen neuen
 
Kernel erzeugen Sie mit dem Befehl: make bzImage. Zum Übersetzen des Kernels müssen neben einem
 
C-Compiler auch die Pakete bin86 und natürlich make (das haben Sie aber sicher vorher schon bemerkt...)
 
installiert sein. Nach einiger Zeit (wenn alles ohne Fehlermeldungen über die Bühne gegangen ist) finden Sie
 
den neuen Kernel unter /usr/src/kernel-source-2.x.x/arch/i386/boot/. Dieser muß nun noch an
 
die passende Stelle (bei Debian üblicherweise /boot/) kopiert werden. Abschließend ist die Konfiguration von
 
lilo zu prüfen und ggf. anzupassen.
 
Statt make bzImage können Sie auch make bzlilo verwenden: dieser Befehl kopiert den Kernel nach
 
/vmlinuz und benennt vorher den schon vorhandenen Kernel in vmlinuz.old um. Danach wird automatisch
 
lilo aufgerufen und somit steht der Kernel dann ab dem nächsten Neustart zu Verfügung.
 
19.6.2.6. Übersetzen der Module
 
Sie können nun die Treiber, die Sie bei der Konfiguration als Module ausgewählt haben, übersetzen. Dies
 
geschieht mit dem Befehl make modules. Nach dem Übersetzen der Module, werden diese mit make
 
modules_install an den richtigen Ort kopiert.
 
19.6.2.7. Tips
 
Benutzen Sie das Zeichen „;“ um mehrere Kommandos nacheinander auszuführen. Sie müssen so nicht die
 
einzelnen Schritte beim Übersetzen eines neuen Kernels abwarten. make dep && make clean && make
 
bzlilo && make modules && make modules_install erledigt einen kompletten Durchlauf ohne Pause.
 
Probieren Sie einfach einmal den Kernel mit der Option -s zu übersetzen, also: make -s zImage oder make
 
-s bzImage. Bei einem so übersetzten Kernel werden lediglich Warnungen und Fehlermeldungen des Kernels
 
beim Systemstart ausgegeben. Alle Ausgaben der Treiber werden unterdrückt.
 
Sie können das Übersetzen des Kernels beschleunigen, indem Sie den Parameter -j # einfügen, wobei # für
 
eine (fast beliebige) Zahl steht. Mit diesem Parameter werden, entsprechend der angegebenen Zahl, mehrere
 
Prozesse gestartet und Teile des Kernels gleichzeitig übersetzt. Sinnvolle Werte für die Anzahl der Prozesse sind
 
in erster Linie vom Ausbau des Hauptspeichers (RAM) abhängig. Auf Systemen mit mehreren Prozessoren
 
wirkt sich dies natürlich auch positiv aus. Bedenken Sie bitte, daß zu hoch gewählte Werte zum Auslagern
 
(swappen) führen und den Vorgang merklich verlangsamen.
 
Um festzustellen, welcher Wert sinnvoll ist, benutzen Sie das Kommando: time make -j 10 bzImage und
 
variieren den Wert für die Anzahl der Prozesse.
 
Sollten Sie nach dem Übersetzen der Module mit make modules; make modules_install Probleme
 
haben, diese zu laden, liegt dies wahrscheinlich daran, daß die Datei modules.dep, in der die Abhängigkeiten
 
(dependencies) beschrieben sind, nicht aktuell ist. Es ist nicht nötig, in dieser Datei irgendetwas von Hand zu
 
ändern: der Befehl depmod -a 2.2.x erstellt eine aktuelle Datei für Sie, wobei 2.2.x der neuen
 
Kernelversion entspricht.
 
Wenn Sie viele verschiedene Kernelversionen auf der Platte halten, kann es vorkommen, daß Fehlermeldungen
 
in der Form: Warning: /boot/System.map has an incorrect kernel version. erscheinen. Neben
 
der Möglichkeit, je eine Version der System.map in /boot/ und eine weitere in /usr/src/linux/ zu halten
 
(was maximal zwei Versionen erlaubt), bietet Debian GNU/Linux sozusagen eine „Komplettlösung“. Das Script
 
/etc/init.d/sysklogd startet beim Systemstart auch den klogd. Sie können am Anfang dieses Scripts in
 
der Variablen KLOGD als Parameter -k /boot/System.map-$(uname -r) angeben. So wird je nach
 
verwendeter Kernelversion eine passende System.map aus /boot/ geladen. Diese müssen Sie nach dem
 
Übersetzen des Kernels in das Verzeichnis /boot/ kopieren und passend zur Kernelversion benennen. Am
 
einfachsten können Sie das mit folgendem Kommando erledigen: cp /usr/src/linux/System.map
 
/boot/System.map-‘uname -r‘.
 
538
 
Kapitel 19. Systemadministration
 
Hier ein kleines Script, welches in /boot/ nach Kerneln sucht und eine passende lilo.conf erstellt, mit dem
 
neuesten Kernel als Standardkernel.
 
#!/bin/bash
 
umask 772
 
kernel_dir=/boot
 
# lilo assumes the default image is the first one in lilo.conf, so
 
# we sort the kernel images backwards, hence the highest-version’d kernel
 
# will be the default.
 
images=‘cd $kernel_dir && ls -1 vmlinuz-* \
 
| egrep "vmlinuz-([0-9]+).([0-9]+).([0-9]+)[^-]*$" \
 
| sort -rn‘
 
cp -f /etc/lilo.conf.static /tmp/lilo.conf
 
# three lines per entry, 3 x 19 images = 57
 
( for img in $images ; do
 
label=‘echo $img | sed ’s/vmlinuz/linux/ ; s/-//g ; s/\.//g’‘
 
echo "image=$kernel_dir/$img"
 
echo "label=$label"
 
echo ""
 
done ) | head -57 >> /tmp/lilo.conf
 
if /sbin/lilo -C /tmp/lilo.conf ; then
 
mv -f /etc/lilo.conf /etc/lilo.conf.last
 
cp -f /tmp/lilo.conf /etc/lilo.conf
 
echo successfully installed new bootloader.
 
rm -f /tmp/lilo.conf
 
exit 0
 
else
 
echo eek, lilo barfed
 
rm -f /tmp/lilo.conf
 
exit 1
 
fi
 
Wenn Sie einen der neuesten Kernel (2.3.x oder 2.4.x) mit Debian GNU/Linux 2.2 verwenden möchten, sollten
 
Sie folgende Zeile in die Datei /etc/fstab einfügen:
 
none /var/shm shm defaults 0 0
 
Ab der Kernel-Version 2.3.51 wurde das „Shared-memory“-Dateisystem eingeführt.
 
19.6.3. SMP - Linux mit mehreren Prozessoren
 
Mittlerweile sind Motherboards mit mehreren Prozessoren recht preiswert zu erhalten. Diese werden natürlich
 
auch von Debian GNU/Linux unterstützt. Die Kernelversion 2.0.x kann bereits mit mehreren Prozessoren
 
umgehen, im Kernel 2.2.x wurde die Unterstützung wesentlich verbessert. Ein Umstieg ist ratsam, aber nicht
 
zwingend nötig.
 
19.6.3.1. Kernel 2.0
 
Um einen SMP-fähigen 2.0.x Kernel zu erzeugen, muß im Makefile die Zeile: # SMP=1 auskommentiert (also
 
das erste Zeichen #) entfernt werden. Dies ist unabhängig von der Anzahl der Prozessoren, es wird lediglich die
 
Fähigkeit mehrere Prozessoren zu nutzen, aktiviert. Linux erkennt die Anzahl der Prozessoren dann
 
automatisch.
 
539
 
Kapitel 19. Systemadministration
 
19.6.3.2. Kernel 2.2
 
Mit der Kernelversion 2.2.x wurde die SMP-Funktionalität weiter ausgebaut und es gibt bei der Konfiguration
 
des Kernels die Option SMP einzuschalten. Sie müssen nichts von Hand ändern. Den Parameter können Sie bei
 
make config, make menuconfig oder make xconfig aktivieren.
 
19.7. Kernel Pakete
 
Die Installation eines neuen Kernels kann nicht nur über den Weg eines selbstcompilierten Kernels aus den
 
Sourcen erfolgen, bereits übersetzte Kernel werden auch vom Debian Team bereitgestellt. Hierbei kann
 
zwischen verschiedensten Kerneln, die jeweils für die netsprechenden Prozessoren optimiert sind, gewählt
 
werden. Für den Kernel in der Version 2.4.5 stehen beispielsweise folgende Pakete zur Auswahl:
 
fr@surimi:~$ apt-cache search kernel-image-2.4.5
 
kernel-image-2.4.5-386 - Linux kernel image for version 2.4.5 on 386.
 
kernel-image-2.4.5-586 - Linux kernel image for version 2.4.5 on 586/K5/5x86/6x86/6x86MX.
 
kernel-image-2.4.5-586tsc - Linux kernel image for version 2.4.5 on Pentium-Classic.
 
kernel-image-2.4.5-686 - Linux kernel image for version 2.4.5 on PPro/Celeron/PII/PIII.
 
kernel-image-2.4.5-686-smp - Linux kernel image 2.4.5 on PPro/Celeron/PII/PIII SMP.
 
kernel-image-2.4.5-k6 - Linux kernel image for version 2.4.5 on AMD K6/K6-II/K6-III
 
kernel-image-2.4.5-w4l-jb - Linux kernel binary image for version 2.4.5-w4l-jb.
 
Je nach vorhandener Hardware ist das entsprechende Paket zu wählen und beispielsweise mit apt-get zu
 
installieren.
 
sushi:~# apt-get install kernel-image-2.4.5-686
 
Reading Package Lists... Done
 
Building Dependency Tree... Done
 
The following extra packages will be installed:
 
ash initrd-tools mkcramfs
 
The following NEW packages will be installed:
 
ash initrd-tools kernel-image-2.4.5-686 mkcramfs
 
0 packages upgraded, 4 newly installed, 0 to remove and 6 not upgraded.
 
Need to get 7769kB of archives. After unpacking 21.5MB will be used.
 
Do you want to continue? [Y/n]
 
Nach erfolgter Installation des Paketes findet sich der eigentliche Kernel (vmlinuz-2.4.5-686-smp), die
 
passende System.map (System.map-2.4.5-686-smp) sowie die Konfigurationsdatei mit der das
 
Kernel-Image erzeugt wurde (config-2.4.5-686-smp) im Verzeichnis /boot.
 
Weiterhin wurden die zum Kernel gehörenden Module unter /lib/modules/2.4.5... installiert.
 
Je nach verwendetem Bootloader ist nun noch die Konfiguration anzupassen. Die von Debian Projekt zur
 
Verfügung gestellten Linux Kernel verwenden eine RAM-Disk (initrd) beim Start. Deshalb ist es notwendig
 
diese auch in der Konfiguration des Bootloaders anzugeben. Für GRUB würde eine solche Konfiguration wie
 
folgt aussehen
 
title GNU/Linux 2.4.5 686
 
root (hd0,8)
 
kernel /vmlinuz-2.4.5-686 root=/dev/hda1
 
initrd /initrd-2.4.5-686
 
540
 
Kapitel 19. Systemadministration
 
Wenn auf dem System lilo als Bootloader verwendet wird ist eine entsprechende Zeile in die Konfiguration
 
aufzunehmen.
 
19.8. Webbasierte Administration mit Webmin
 
Viele Administratoren sind der Meinung, daß das Programm der Wahl zur Konfiguration des Systems der Editor
 
vi ist. Dem soll hier auf keinen Fall widersprochen werden. Vielmehr soll eine Alternative aufgezeigt werden,
 
die es erlaubt, sich im Dschungel der Konfigurationsdateien etwas besser zurecht zu finden.
 
Webmin ist ein von Jamie Cameron in Perl geschriebenes Administrations-Werkzeug, welches über Module
 
erweiterbar ist. Webmin ist mittlerweile in 14 Sprachen übersetzt worden und wird von einigen
 
Distributionsherstellern bereits mitgeliefert.Webmin ist seit der Debian Version 3.0 Bestandteil der Distribution.
 
Webmin ist für verschiedene Unix Varianten verfügbar, natürlich auch für GNU/Linux. Neue Funktionen
 
können leicht über Module hinzugefügt werden, dies wird durch eine gut dokumentierte API erleichtert.
 
Webmin ist ein in der Unix-Welt einmaliges Werkzeug. Für nahezu jede Funktion des Systems wird eine
 
einheitliche Benutzeroberfläche geboten, für deren Benutzung lediglich ein Webbrowser benötigt wird. Hierbei
 
werden keine speziellen Konfigurationsdateien verwendet, alle Änderungen werden in den bisher verwendeten
 
Konfigurationsdateien gespeichert. Natürlich können weiterhin Änderungen wie bisher mit einem Editor
 
vorgenommen werden.
 
19.8.1. Installation
 
Die Installation erfolgt wie üblich über die vom Debian-Projekt zur Verfügung gestellten Pakete. Neben dem
 
eigentlichen Basispaket webmin gibt es eine Reihe weiterer Pakete, die sich zum Teil auch im Bereich non-free
 
finden. Diese sind im einzelnen:
 
webmin - Web-based administration toolkit
 
webmin-apache - apache control module for webmin
 
webmin-bind8 - bind8 control module for webmin
 
webmin-core - core modules for webmin
 
webmin-cpan - CPAN module for webmin
 
webmin-dhcpd - dhcpd control module for webmin
 
webmin-exports - NFS exports control module for webmin
 
webmin-fetchmail - fetchmail mail retrieval module for webmin
 
webmin-grub - grub control module for webmin
 
webmin-inetd - inetd control module for webmin
 
webmin-lpadmin - printer control module for webmin
 
webmin-mysql - mysql-server control module for webmin
 
webmin-nis - NIS clients/servers control module for webmin
 
webmin-postfix - postfix control module for webmin
 
webmin-postgresql - postgresql control module for webmin
 
webmin-ppp - PPP configuration module for webmin
 
webmin-quota - disk quota control module for webmin
 
webmin-raid - raid control module for webmin
 
webmin-samba - samba control module for webmin
 
webmin-sendmail - sendmail control module for webmin
 
webmin-software - software control module for webmin
 
webmin-squid - squid control module for webmin
 
webmin-status - server and system status control module for webmin
 
webmin-wuftpd - wu-ftpd control module for webmin
 
webmin-xinetd - xinetd control module for webmin
 
webmin-ssl - Web-based administration toolkit
 
Alle Module können beispielsweise mit apt-get installiert werden. Minimal sollten die Pakete webmin und
 
webmin-status sowie die Module für die auf dem Zielsystem verwendeten Dienste installiert werden.
 
541
 
Kapitel 19. Systemadministration
 
Während der Installation des Basispaketes von Webmin wird der Benutzer „root“ angelegt, das Passwort wird
 
aus der Datei /etc/shadow kopiert. Bitte beachten Sie, daß Übertragungen über das Protokoll HTTP
 
unverschlüsselt erfolgen. Webmin kann auch über HTTPS mitttels einer verschlüsselten Kommunikation
 
angesprochen werden. Hierzu ist das Paket webmin-ssl zu installieren.
 
19.8.2. Zugriff auf Webmin
 
Der Zugriff auf Webmin erfolgt über einen beliebigen Webbrowser von einem Rechner aus, der über das
 
Netzwerk Zugriff auf das zu administrierende System hat. Zusätzlich zu dem Rechnernamen ist der Port, auf
 
dem Webmin läuft (10000), anzugeben. Wenn beispielsweise der Rechner webmin.openoffice.de
 
administriert werden soll, so ist als URL anzugeben: http://webmin.openoffice.de:10000/. Wenn Sie
 
Webmin auf einem System mit grafischer Benutzeroberfläche einsetzen, so kann die Administration natürlich
 
auch lokal erfolgen, die URL lautet dann http://localhost:10000/. Wenn auf dem System nur eine verschlüsselte
 
Kommunikation möglich ist, so ist http durch https zu ersetzen.
 
Nach erfolgreicher Anmeldung (als Benutzer „root“ mit dem entsprechenden Passwort) gelangt man zur
 
Startseite von Webmin.
 
Webmin unterteilt die verschiedenen Module in sogenannte Kategorien. Jede Kategorie wird durch einen
 
„Reiter“ wie bei einer Karteikarte dargestellt. Beachten Sie, daß jede dieser Kategorien eigene, spezielle
 
Funktionen darstellt. Beispielsweise können mit „Webmin Users“ aus der Kategorie „Webmin“ keine Benutzer
 
für das darunterliegende GNU/Linux System angelegt werden, diese Funktion dient dazu Webmin Benutzer
 
einzurichten.
 
Bevor wir detailliert auf die einzelnen Module eingehen, verändern Sie bitte die Konfiguration so daß Webmin
 
Ihnen eine deutschsprachige Oberfläche bietet. Somit sollten Sie die gleiche Konfiguration vorfinden, wie hier
 
beschrieben. Sie finden die Einstellung in der Kategorie „Webmin“ unter „Webmin Configuration“, „Language“.
 
Abbildung 19-2. Webmin - Spracheinstellung
 
19.8.3. Kategorie Webmin
 
Diese Kategorie dient zur generellen Konfiguration von Webmin. Webmin kann unterschiedlichen Benutzer
 
administrativen Zugriff auf das System gewähren. Speziell unter „Webmin Konfiguration“ finden sich sher viele
 
Einstellungsmöglichkeiten.Weiterhin ist ein Einblick in die Logfiles vonWebmin über diese Kategorie möglich.
 
542
 
Kapitel 19. Systemadministration
 
Abbildung 19-3. KategorieWebmin
 
19.8.3.1. Webmin Actions Log
 
Im Actions Log werden alle Änderungen die über Webmin vorgenommen werden verzeichnet. Die
 
Konfiguration kann für jedes Modul oder für individuelle Benutzer in der Webmin Konfiguration vorgenommen
 
werden. Über diesen Eintrag können Ereignisse im Webmin Log gesucht werden.
 
Abbildung 19-4. KategorieWebmin - Actions Log
 
543
 
Kapitel 19. Systemadministration
 
19.8.3.2. Webmin Benutzer
 
Während der Installation von Webmin wurde bereits der Benutzer „root“ angelegt, das Passwort wurde aus der
 
Datei /etc/shadow übernommen. Hier können nun für diesen Benutzer die Zugriffe auf die einzelnen Module
 
festgelegt werden und neue Benutzer hinzugefügt oder gelöscht werden. Weiterhin ist es hier möglich
 
Benutzergruppen zu definieren und Benutzer, die auf dem darunterliegendem System eingetragen sind, in die
 
Webmin-Konfiguration zu übernehmen.
 
Abbildung 19-5. KategorieWebmin - Benutzer
 
19.8.3.3. Webmin Konfiguration
 
Hier finden sich verschiedene Einstellungen zur Netzwerkkonfiguration von Webmin. Es können
 
Zugriffsbeschränkungen von bestimmten Rechnern aus vergeben werden, bei mehreren Netzwerkkarten kann
 
544
 
Kapitel 19. Systemadministration
 
der Zugriff auf bestimmte Interfaces beschränkt werden. Es können Module gelöscht oder hinzugefügt werden,
 
(dies sollte allerdings besser über die Paketverwaltung von Debian erfolgen) und die Sprache kann hier gewählt
 
werden.
 
Abbildung 19-6. KategorieWebmin - Konfiguration
 
19.8.3.3.1. Webmin Konfiguration - IP-Zugriffskontrolle
 
Der Webmin-Server kann mit diesem Formular konfiguriert werden, um Anfragen von bestimmten IPs
 
abzuweisen oder nur bestimmte IPs zuzulassen. Host-Namen (wie foo.bar.de) und IP-Netzwerke (wie
 
10.254.3.0 oder 10.254.1.0/255.255.255.128) können auch angegeben werden. Sie sollten den Zugriff auf Ihren
 
Server auf vertraute Adressen beschränken, besonders, wenn der Server im Internet verfügbar ist. Anderenfalls
 
hat jeder, der Ihr Passwort errät, vollständige Kontrolle über Ihr System.
 
545
 
Kapitel 19. Systemadministration
 
Abbildung 19-7. KategorieWebmin - Konfiguration - IP-Zugriffskontrolle
 
19.8.3.3.2. Webmin Konfiguration - Anschluss und Adresse
 
Wenn der Host, auf dem Webmin läuft, mehrere IP-Adressen hat, kann der Server so konfiguriert werden, dass
 
er nur eine davon abhört. Der TCP-Anschluss, den Webmin abhört, kann hier auch konfiguriert werden.
 
Beachten Sie: Ihr Webbrowser kann Sie erneut auffordern, sich anzumelden, wenn Sie Anschluss oder Adresse
 
geändert haben.
 
Abbildung 19-8. KategorieWebmin - Konfiguration - Anschluss und Adresse
 
546
 
Kapitel 19. Systemadministration
 
19.8.3.3.3. Webmin Konfiguration - Protokollierung
 
Webmin kann so konfiguriert werden, dass er eine Protokolldatei für Seitenanfragen im
 
Standard-CLF-Protokolldateiformat schreibt. Wenn Protokollierung aktiviert ist, können Sie wählen, ob
 
IP-Adressen oder Host-Namen aufgezeichnet werden sollen und wie oft die Protokolldatei gelöscht werden soll.
 
Wenn Protokollierung aktiviert ist, schreibt Webmin das Protokoll in /var/log/webmin/miniserv.log.
 
Wenn das Logging aktiviert ist, schreibt Webmin ausserdem detailierte Informationen zu den
 
Benutzeraktivitäten in die Datei /var/log/webmin.log. Diese Logdatei kann mit dem Webmin Actions Log
 
Modul ausgewertet werden.
 
Abbildung 19-9. KategorieWebmin - Konfiguration - Protokollierung
 
19.8.3.3.4. Webmin Konfiguration - Proxyserver
 
Wenn der Host, auf dem Webmin läuft, sich hinter einer Firewall befindet, kann es sein, dass Sie Proxyserver
 
zum Zugriff auf Web- und FTP-Seiten verwenden müssen. Einige Module, wie zum Beispiel das „Modul
 
Software Pakete“, werden diese Proxies benutzen, wenn Sie Dateien oder Programme herunterladen.
 
547
 
Kapitel 19. Systemadministration
 
Abbildung 19-10. KategorieWebmin - Konfiguration - Proxyserver
 
19.8.3.3.5. Webmin Konfiguration - Benutzerschnittstelle
 
In diesem Formular können Sie die Optionen für die Benutzerschnittstelle bearbeiten, die von allen Modulen
 
verwendet werden sollen. Jede Farbe wird mit dem RGB-System definiert, wobei jeder Wert eine hexadezimale
 
Zahl zwischen 00 und ff ist.
 
Abbildung 19-11. KategorieWebmin - Konfiguration - Benutzerschnittstelle
 
548
 
Kapitel 19. Systemadministration
 
19.8.3.3.6. Webmin Konfiguration - Webmin-Module
 
Webmin-Module können nach der Installation durch Benutzen des Formulars rechts hinzugefügt werden.
 
Module werden typischerweise als .wbm -Dateien vertrieben. Jede dieser Dateien kann ein oder mehrere
 
Module enthalten. Module können auch von RPM-Dateien installiert werden, wenn dies von Ihrem
 
Betriebssystem unterstützt wird.
 
Wenn Sie mehr als eine Kopie desselben Moduls mit unterschiedlichen Konfigurationen benutzen wollen, dann
 
können Sie mit dem Formular „Module klonen“ ein existierendes Modul klonen. Der Klon wird einen neuen
 
Namen, eine neue Modulkonfiguration und neue Zugriffskontrollen haben und kann für andere Benutzer
 
verfügbar gemacht werden.
 
Existierende Module und Klone können mit dem Formular „Module löschen“ gelöscht werden. Wenn ein
 
Modul mit Klonen gelöscht wird, werden die Klone ebenfalls entfernt. Wenn ein Modul entfernt wurde, muss es
 
erst neu installiert werden, bevor Sie es wieder benutzen können. Ein Modul kann nicht gelöscht werden, wenn
 
andere Module davon abhängen.
 
549
 
Kapitel 19. Systemadministration
 
Abbildung 19-12. KategorieWebmin - Konfiguration - Module
 
19.8.3.3.7. Webmin Konfiguration - Betriebssystem
 
In diesem Formular können Sie das Betriebssystem ändern, als das Webmin Ihr System behandelt. Dies kann
 
nützlich sein, wenn Sie Ihr Betriebssystem zu einer neueren Version aktualisiert haben. Beachten Sie, dass die
 
Konfiguration bereits installierter Module nicht geändert wird, selbst wenn es Unterschiede zwischen dem alten
 
und dem neuen System gibt.
 
Sie können ebenso den Suchpfad, der von Webmin beim Ausführen von Programmen benutzt wird, und den
 
Pfad der freigegebenen Bibliotheken, der an Programme übergeben wird, ändern.
 
550
 
Kapitel 19. Systemadministration
 
Abbildung 19-13. KategorieWebmin - Konfiguration - Betriebssystem
 
19.8.3.3.8. Webmin Konfiguration - Sprache
 
Auf dieser Seite können Sie die Sprache wählen, in der Webmin Titel, Eingabeaufforderungen und Nachrichten
 
anzeigen wird. Module, für die noch keine Übersetzung in die gewünschte Sprache existiert, werden in
 
englischer Sprache angezeigt.
 
Abbildung 19-14.Webmin - Spracheinstellung
 
551
 
Kapitel 19. Systemadministration
 
19.8.3.3.9. Webmin Konfiguration - Indexseitenoptionen
 
Auf dieser Seite können Sie definieren, wieviele Symbole pro Reihe auf der Indexseite angezeigt werden sollen.
 
Weiterhin können Module in Kategorien angezeigt werden, und es kann eine „Default“-Kategorie gewählt
 
werden. Wenn ein Benutzer lediglich auf ein Modul Zugriff hat, so kann dieses automatisch angezeigt werden.
 
Abbildung 19-15.Webmin - Indexseitenoptionen
 
19.8.3.3.10. Webmin Konfiguration - Webmin aktualisieren
 
Dieses Formular erlaubt Ihnen, Ihre gesamte Webmin-Installation zu einer neuen Version zu aktualisieren. Sie
 
können einfach aus einer lokalen Datei, aus einer hochgeladenen Datei oder einfach von der letzten Version von
 
www.webmin.com installieren. Wie bei einer manuellen Aktualisierung werden alle Einstellungen und Module
 
Dritter behalten.
 
Im Interesse eines konsistenten Systems sollten Sie auf einem Debian GNU System allerdings die Installation
 
und die Updates für Webmin über das Debian GNU Paketsystem vornehmen.
 
552
 
Kapitel 19. Systemadministration
 
Abbildung 19-16.Webmin - Webmin aktualisieren
 
19.8.3.3.11. Webmin Konfiguration - Authentication
 
Wenn die Option („Enable password timeouts“)aktiviert wird, wird bei jedem fehlgeschlagenen Loginversuch
 
die Zeit bis zum nächsten Loginversuch erhöht. Dies erschwert sogenannte „Brute-Force“ Angriffe auf das
 
System.
 
Wenn die Option „Enable session authentication“ aktiviert wird, wird jeder Benutzerlogin beobachtet und Sie
 
haben die Möglichkeit einen Benutzer nach einer bestimmten Zeit der Inaktivität automatisch auszuloggen.
 
553
 
Kapitel 19. Systemadministration
 
Abbildung 19-17.Webmin - Authentication
 
19.8.3.3.12. Webmin Konfiguration - Reassign Modules
 
Hier kann beeinflusst werden welches Modul in welchem Bereich der Webmin-Oberfläche angezeigt werden
 
soll.
 
554
 
Kapitel 19. Systemadministration
 
Abbildung 19-18.Webmin - Reassign Modules
 
19.8.3.3.13. Webmin Konfiguration - Edit Categories
 
Hier können bestehenden Kategorien umbenannt oder neue Kategorien hinzugefügt werden.
 
555
 
Kapitel 19. Systemadministration
 
Abbildung 19-19.Webmin - Edit Categories
 
19.8.3.3.14. Webmin Konfiguration - Webmin Themes
 
Im oberen Bereich kann zunächst das aktive Theme ausgewält werden. Im unteren Bereich können neue
 
Themes installiert werden.
 
Abbildung 19-20.Webmin - Webmin Themes
 
556
 
Kapitel 19. Systemadministration
 
19.8.3.3.15. Webmin Konfiguration - Trusted Referers
 
Hier können vertrauenswürdige Websites definiert werden von denen aus der Zugriff auf Webmin erlaubt
 
werden soll.
 
Abbildung 19-21.Webmin - Trusted Referers
 
19.8.3.4. Webmin Server Index
 
Hier können entfernte Server im Netz administriert werden. Der Eintrag eines neuen Servers kann von Hand
 
erfolgen, oder es kann ein Broadcast Request für das gesammte Netz durchgeführt werden. Die Suche kann aber
 
auch gezielt nach Subnetzen erfolgen.
 
557
 
Kapitel 19. Systemadministration
 
Abbildung 19-22. KategorieWebmin - Servers
 
19.8.4. Kategorie System
 
In dieser Kategorie finden Sie Konfigurationsmöglichkeiten die das System betreffen. Die sind beispielsweise
 
die Benutzer- und Gruppenverwaltung, die verwendeten lokalen und über das Netzwerk gemounteten
 
Dateisysteme und die Verwaltung des Init-Vorgangs. Interessant ist auch der Link ganz unten rechts auf der
 
Seite. Über diesen Link kann der Benutzer gewechselt werden, dies ist sonst bei Authentifizierungen übers Web
 
nur durch einen Neustart des Browsers zu erreichen.
 
Abbildung 19-23. KategorieWebmin - System
 
558
 
Kapitel 19. Systemadministration
 
19.8.4.1. Benutzer und Gruppen
 
Diese Administrationsseite ist in drei Bereich geteilt: „Lokale Benutzer“ (dies sind die Benutzer des Systems
 
sowie einige spezielle Benutzer die von bestimmten Diensten benötigt werden), „Lokale Gruppen“ (Gruppen
 
für Benutzer und Systemdienste) sowie „Zeige Anmeldungen für“ (hier können Logins angezeigt werden).
 
Abbildung 19-24. KategorieWebmin - System - Benutzer und Gruppen
 
In den Bereichen „Lokale Benutzer“ und „Lokale Gruppen“ kann durch einen Mausklick auf einen Benutzer,
 
bzw. eine Gruppe, dieser verändert werden.
 
559
 
Kapitel 19. Systemadministration
 
Abbildung 19-25. KategorieWebmin - System - Benutzer und Gruppen - ändern
 
Hinter dem Link „Neuen Benutzer erstellen“ findet sich eine ähnlich Administrationsoberfläche, allerdings ohne
 
vorgegebene Werte.
 
Mittels „Create, modify and delete users from batch file“ können Benutzer mittels der Daten aus einer Datei
 
hinzugefügt, verändert oder auch gelöscht werden. Hierbei können die verschiedensten Aktionen, beispielsweise
 
das setzen entsprechender Zugriffsrechte oder auch das kopieren von Voreinstellungen, durchgeführt werden.
 
560
 
Kapitel 19. Systemadministration
 
Abbildung 19-26. KategorieWebmin - System - Benutzer und Gruppen - Batch
 
Über die Schaltfläche „Zeige Anmeldungen für“ können Logins auf dem Rechner mit Datum und Uhrzeit
 
angezeigt werden.
 
Abbildung 19-27. KategorieWebmin - System - Benutzer und Gruppen - Anmeldungen
 
561
 
Kapitel 19. Systemadministration
 
19.8.4.2. Change Passwords
 
Hier können die Passwörter für die Benutzer auf dem System verändert werden. Zunächst ist ein Benutzer
 
auszuwählen, danach ist das neue Passwort zweimal einzugeben.
 
Abbildung 19-28. KategorieWebmin - System - Passwörter ändern
 
19.8.4.3. Geplante Cron-Jobs
 
Die Administration der Cron-Jobs für die einzelnen Benutzer kann über diese Seite erfolgen. Der obere Bereich
 
dieser Seite zeigt die Benutzer für die bereits Cron-Jobs definiert wurden. Durch einen Mausklick auf einen
 
dieser Cron-Jobs kann dieser verändert werden. Unterhalb der Tabelle können auch neue Cron.Jobs definiert
 
werden (über „Neuer geplanter Cron-Job erstellt“).
 
562
 
Kapitel 19. Systemadministration
 
Abbildung 19-29. KategorieWebmin - System - Cron-Jobs
 
Über den Link „Benutzerzugriff auf Cron-Jobs kontrollieren“ können Cron-Jobs beschränkt werden. Es kann
 
einzelnen Benutzern der Zugriff erlaubt oder verboten werden. Normalerweise ist die Benutzung von Cron allen
 
Benutzern gestattet.
 
19.8.4.4. Laufende Prozesse
 
Hier werden zunächst die aktuell laufenden Prozesse in einer Tabelle angezeigt. Über das Menü am oberen
 
Bildschirmrand können weitere Angagen wie PID, Benutzer, Speicher und CPU angezeigt werden. Desweiteren
 
kann hier nach Prozessen gesucht werden (Link „Suchen“).
 
563
 
Kapitel 19. Systemadministration
 
Abbildung 19-30. KategorieWebmin - System - Laufende Prozesse
 
Durch einen Mausklick auf die Prozessid gelangt man zu weiteren Informationen zu diesem Prozess. Hier
 
finden sich Angaben zu Laufzeit, CPU- und Speicherauslastung usw.. Weiterhin kann hier dem Prozess ein
 
Signal (beispielsweise KILL oder HUP) gesendet werden. Sollte dieser Prozess weitere Unterprozesse haben,
 
so sind diese über eine Link erreichbar.
 
Abbildung 19-31. KategorieWebmin - System - Prozessinformationen
 
564
 
Kapitel 19. Systemadministration
 
19.8.4.5. NFS-Exporte
 
An dieser Stelle können Verzeichnisse die per NFS exportiert wurden verändert, oder neue Verzeichnisse zum
 
Export freigegeben werden.
 
Abbildung 19-32. KategorieWebmin - System - NFS-Exporte
 
19.8.4.6. PAM-Authentification
 
Hier können Einstellungen zu PAM in Bezug auf die einzelnen Anwendungen des Systems (beispielsweise
 
GDM oder Samba) vorgenommen werden, durch einen Mausklick auf einen Anwendungsnamen lassen sich für
 
diese Anwendung die gewünschten Anpassungen vornehmen.
 
Abbildung 19-33. KategorieWebmin - System - PAM-Authentification
 
Hier können, am Beispiel der PAM Module für GDM, die einzelnen Module angepasst und verändert werden.
 
565
 
Kapitel 19. Systemadministration
 
Abbildung 19-34. KategorieWebmin - System - Edit PAM Service
 
19.8.5. Kategorie Server
 
Hier finden sich die verschiedenen Einträge für die installierten Server auf dem System. Je nach Anzahl, der auf
 
Ihrem System installierten Dienste, können hier unterschiedlich viele Server aufgeführt sein.
 
566
 
Kapitel 19. Systemadministration
 
Abbildung 19-35. Kategorie Server
 
19.8.5.1. Apache Webserver
 
Die Konfiguration des Apache Webservers ist in verschiedene Bereiche aufgeteilt, die entsprechende Abschnitte
 
in der/den Konfigurationsdatei/en darstellen. Die Startseite dieser Serverkonfiguration gliedert sich in die
 
Globale Konfiguration, in der Einstellungen zu den Systemresourcen, zu den Adressen, Modulen usw. gemacht
 
werden können und in die Konfiguration der virtuellen Server. Mit virtuellen Servern können mehrere Server
 
unter eine IP-Nummer betrieben werden.
 
567
 
Kapitel 19. Systemadministration
 
Abbildung 19-36. Kategorie Server - Apache
 
19.8.5.1.1. Apache Webserver - Prozesse und Grenzwerte
 
Auf dieser Seite können Einstellungen zu den Grenzwerten von Apache vorgenommen werden. Normalerweise
 
sind alle Werte sinnvoll eingestellt, es kann jedoch auf Systemen mit wenig Speicher oder mit sehr vielen
 
Zugriffen sinnvoll sein, die Voreinstellungen zu verändern.
 
568
 
Kapitel 19. Systemadministration
 
Abbildung 19-37. Kategorie Server - Apache - Prozesse und Grenzwerte
 
• Maximum headers in request - Verändert den Wert LimitRequestFields in der Konfiguration.
 
• Maximum request header size - Beschreibt die maximale Größe des Headers. Hiermit wird der Eintrag
 
LimitRequestFieldsize verändert.
 
• Maximum request line size - Die maximale Länge einer HTTP-Request Zeile. Dieser Wert sollte ausreichen
 
bemessen werden, so daß jede Seite auf dem Server (auch beispielsweise Datenbankabfragen) erreicht
 
werden kann. Hiermit wird der Wert LimitRequestLine verändert.
 
• Maximum concurrent requests - Die maximal erlaubte Anzahl von gleichzeitigen Anfragen. Jede Anfrage
 
veranlasst den Apache dazu, einen neuen Prozess zu starten. Diese maximale Grenze beschränkt die Anzahl
 
der Apache Prozesse. Dieses Feld beeinflußt die Variable MaxClients. Um den Wert auf über 256 erhöhen
 
zu können, muß in der Datei httpd.h der Apache Quellen die Variable HARD_SERVER_LIMIT angepasst
 
werden, und der Server muß neu compiliert werden.
 
• Maximum requests per server process - Maximale Anzahl von Anfragen je Serverprozess bevor dieser
 
beendet und neugestartet wird. Dies ist aus mehreren Gründen sinnvoll: einmal werden so Speicherlöcher, die
 
bei der Benutzung des Servers über einen längeren Zeitraum dazu führen würden, daß der gesamte
 
Hauptspeicher verbraucht wird, umgangen. Weiterhin würde ohne diese Option immer die maximale Zahl
 
von Prozessen, die bisher benutzt wurden, im Speicher gehalten werden. Dies beeinflußt die Option
 
MaxRequestsPerChild.
 
• Maximum spare server processes - Beschreibt die maximale Anzahl von unbenutzten Servern, die „auf
 
Vorrat“ bereitgehalten werden. Somit können neue Anfragen sofort von bereits im Speicher gehaltenen
 
Prozessen bearbeitet werden, ohne das ein neuer Prozess von der Festplatte geladen werden muß. Hiermit
 
wird die Option MaxSpareServers verändert.
 
• Minimum spare server processes - Dies entspricht der minimalen Anzahl der vorgehaltenen Server, der Wert
 
wird in MinSpareServers gehalten.
 
• Initial server processes - Die Anzahl der Serverprozesse, die beim Start des Daemons aufgerufen werden.
 
Variable in der Konfigurationsdatei: StartServers.
 
569
 
Kapitel 19. Systemadministration
 
• Display extended status information - Zeigt erweiterte Status-Informationen an. Verändert die Variable
 
ExtendedStatus.
 
19.8.5.1.2. Apache Webserver - Netzwerk und Adressen
 
In diesem Abschnitt werden die Netzwerkadressen und Ports definiert auf denen der Apache Webserver laufen
 
soll. Weiterhin können Zugriffsrechte, Timeouts usw. definiert werden.
 
Abbildung 19-38. Kategorie Server - Apache - Netzwerk und Adressen
 
• Listen on addresses and ports - Diese Option beschreibt die Adressen und Ports, auf denen der Apache
 
Webserver wacht und Anfragen entgegennimmt. Vorgabe ist der Port 80, es werden Anfragen auf allen
 
IP-Adressen angenommen. Diese Einstellungen sollten für die meisten Anwendungen ausreichend sein. Es
 
können verschiedene Apache-Instanzen auf einem System mit unterschiedlichen Konfigurationen und auf
 
verschiedenen Adressen oder auch Ports laufen. Die Einstellungen in diesen Feldern verändern die Werte
 
Listen und Port in der Apache Konfiguration.
 
• Multiple requests per connection - Wenn die Option KeepAlive aktiviert ist, so kann hier die maximale
 
Anzahl von Client-Anfragen eingestellt werden. Dies verändert die Option MaxKeepAliveRequests.
 
• Keep-alive timeout - Zeit in Sekunden, die der Apache Webserver nach einer begonnenen Anfrage wartet, bis
 
die Verbindung geschlossen wird. Der Wert wird im Parameter KeepAliveTimeout gespeichert.
 
• Listen queue lenght - Die maximale Länge noch wartender Anfragen, die in der Queue hängen. Dieser Wert
 
kann verkleinert werden, falls der Server Opfer eines TCP SYN Flood Angriffes wird. Dies verändert die
 
Variable ListenBacklog.
 
570
 
Kapitel 19. Systemadministration
 
• Adress for name virtual servers - Hier können die Adressen der virtuellen Server eingetragen werden.
 
Virtuelle Server basieren auf Namen. Dies bedeutet, daß verschiedene Rechnernamen oder Domainnamen auf
 
einem System betrieben werden können. Beachten Sie, daß hierzu auch Anpassungen im Nameserver (DNS)
 
notwendig sind. Die verändert die Option NameVirtualHost in der Apache Konfiguration.
 
• TCP send buffer size - Dies verändert die Option SendBufferSize. Diese setzt die Größe des Sendepuffers
 
für TCP Pakete. Dieser Wert sollte nicht verändert werden.
 
• Request timeout - Zeit in Sekunden, die der Server auf eine Anfrage wartet, nachdem die Verbindung
 
hergestellt wurde. Parameter in der Konfiguration: TimeOut.
 
19.8.5.1.3. Apache Webserver - Apache-Module
 
Der Apache Webserver wurde modular ausgelegt um so die Funktionalität des Basisservers erweitern zu
 
können. Dies hält den Basisserver klein und nur die tatsächlich benötigten Funktionen können als Modul
 
hinzugeladen werden. Mit diesem Konfigurationsabschnitt können die benötigten Module festgelegt werden.
 
Abbildung 19-39. Kategorie Server - Apache - Apache-Module
 
Das erste Modul, mod_so, stellt die grundsätzliche Funktionalität, weitere Module zur Laufzeit des Servers
 
hinzuzuladen, bereit. Alle weiteren hier aufgeführten Module sind von der jeweiligen Installation auf dem
 
System abhängig. Beispielsweise ist das Modul mod_php4 nur verfügbar wenn auch das entsprechende PHP4
 
Paket installiert ist.
 
Informationen zu den einzelnen Modulen finden sich in der Dokumentation des Apache Webservers.
 
19.8.5.1.4. Apache Webserver - MIME-Typen
 
MIME Types beschreiben die notwendigen Methoden, wie ein Webserver und die auf diesen zugreifenden
 
Clients auf die verschiedenen Dateitypen, die vom Server geliefert werden, zugreifen können. In den meisten
 
Fällen sind diese Informationen für die Clients wichtiger, da diese tatsächlich wissen müssen was mit den Daten
 
571
 
Kapitel 19. Systemadministration
 
zu geschehen hat, während der Server selbst lediglich für die Auslieferung der Daten, und eben der MIME
 
Informationen, zuständig ist. MIME oder „Multipurpose Internet Mail Extensions“ wurde ursprünglich
 
erschaffen, um zu beschreiben wie E-Mails erweitert werden können, so daß auch andere Dateiformate als
 
ASCII Texte versendet werden können. Mittlerweile hat sich MIME aber als allgemeiner Standard über die
 
ursprüngliche Verwendung im Zusammenhang mit E-Mails hinaus etabliert.
 
In diesem Abschnitt der Konfiguration können die bekannten MIME Types verändert werden. Am Ende der
 
Seite können neue MIME Types hinzugefügt werden.
 
Abbildung 19-40. Kategorie Server - Apache - MIME-Typen
 
Weitere Informationen zu MIME Types finden sich auf der Seite von Earl Hood. Dort finden sich Links zu den
 
relevanten RFCs und auch zur MIME FAQ. http://www.oac.uci.edu/indiv/ehood/MIME/MIME.html und
 
http://www.faqs.org/faqs/mail/mime-faq/mime0/.
 
19.8.5.1.5. Apache Webserver - Verschiedenes
 
Unter diesem Punkt finden sich, wie die Überschrift schon sagt, Einstellungsmöglichkeiten zu verschiedenen
 
Funktionen. Die Seite bietet eine große Anzahl von Optionen, von denen im täglichen Gebrauch nur einige
 
wenige von Bedeutung sind.
 
572
 
Kapitel 19. Systemadministration
 
Abbildung 19-41. Kategorie Server - Apache - Verschiedenes
 
• Core dump directory - Dies beschreibt das Verzeichnis, in dem der Apache Webserver bei einem Absturz die
 
Core Dump Datei schreiben soll. Normalerweise werden diese Dateien in das Server-Root Verzeichnis
 
geschrieben. Normalerweise hat der Server aber in diesem Verzeichnis keinen Schreibzugriff, es sollte hier
 
also ein Verzeichnis angegeben werden in das der Server auch tatsächlich die Datei schreiben kann.
 
CoreDumps dienen zur Fehlersuche in Programmen. Dies verändert den Wert CoreDumpDirectory in der
 
Apache Konfiguration.
 
• Server lock file - Setzt den Namen der Server-Lockdatei. Eine Lockdatei informiert einen neu gestarteten
 
Prozess darüber, daß bereits ein Prozess mit der gleichen Funktionalität läuft. Normalerweise wird ein
 
Prozess, wenn dieser Fall eintritt, sofort beeendet. Wenn jedoch auf einem System mehrere Server,
 
beispielsweise auf unterschiedlichen IP-Nummern, laufen sollen, sind unterschiedliche Lockdateien zu
 
verwenden. Die Angabe wird als Option LockFile gespeichert.
 
• Server PID file - Die Datei, in der die Nummer der ProzessID des laufenden Server Prozesses gespeichert
 
wird. Variable: PidFile.
 
• Shared memory scoreboard file - Einige Architekturen benötigen Dateien, damit die Kinder mit den
 
Elternprozessen kommunizieren können. Variable: ScoreBoardFile.
 
• Server HTTP header - Hier können zusätzliche Daten, die im HTTP Header übertragen werden sollen,
 
definiert werden. Die Angaben werden in der Variablen ServerTokens gespeichert.
 
• Server execution - Beschreibt auf welche Weise der Server gestartet wird. Standalone startet den Server als
 
Daemon, während Run from inetd den Server bei einer Anfrage über den inetd startet. Variable:
 
ServerType
 
19.8.5.1.6. Apache Webserver - CGI
 
CGI, oder Common Gateway Interface dient zur Bereitstellung von dynamischen Inhalten auf einer Webseite.
 
CGI Programme können in nahezu jeder Programmiersprache geschrieben werden, beispielsweise Perl, PHP,
 
Python, Java, C und bash oder andere Shell-Skripte und alle anderen Skript-Sprachen. CGI Programme stellen
 
den Zugriff auf die CGI Funktionen des Apache zur Verfügung.
 
573
 
Kapitel 19. Systemadministration
 
Abbildung 19-42. Kategorie Server - Apache - CGI
 
• CGI Script log - Verzeichnis, in dem die Error-Logdateien der CGI-Scripte abgelegt werden. Wird hier kein
 
Verzeichnis angegeben, so werden keine Logfiles erzeugt. Parameter in der Konfigurationsdatei: ScriptLog.
 
• Maximum logged post data size - Daten auf GET oder PUT Requests von CGI-Skripten werden bei einem
 
Fehler in die Logdateien geschrieben. Da diese Requests sehr groß sein können, kann die Größe der
 
Logfileeinträge hier beschränkt werden. Die Voreinstellung ist 1024 Byte, die Konfigurationsvariable
 
ScriptLogBuffer.
 
• Maximum CGI log post size - Beschränkt die Gesamtgröße der CGI-Logdateien. Wird dieser Wert erreicht, so
 
werden keine weiteren Einträge dieser Datei hinzugefügt. Dies entspricht dem Eintrag ScriptLogLength
 
in der Apache Konfigurationsdatei.
 
• Variables set based on browser type - Hier können für bestimmte Browser gezielt Variablen gesetzt werden.
 
Einträge an dieser Stelle verändern den Eintrag BrowserMatch in der Konfigurationsdatei. Weiterhin muß
 
hierzu das Modul mod_setenvif geladen sein.
 
• Variable set based on request headers - Setzt Variablen anhand der Attribute einer Anfrage. Variable:
 
SetEnvIf.
 
19.8.5.1.7. Apache Webserver - Per-Verzeichniseinstellungen
 
Die Konfiguration des Apache Servers besteht aus globalen Einstellungen, die in den meisten Fällen später
 
nocheinmal für bestimmte Verzeichnisse (beispielsweise Unterverzeichnisse auf dem Server oder komplette
 
virtuelle Server) überschrieben werden können. Dieses Webmin Konfigurationsmodul erlaubt die Anpassung
 
dieser Parameter. Um Optionen für ein Verzeichnis zu setzen, ist der Pfad und der Dateiname anzugeben und
 
dann „Create Options File“ anzuklicken. Vereinbarungsgemäß werden diese Dateien .htaccess genannt, dies
 
ist aber natürlich auch konfigurierbar. Mit dieser Datei ist auch eine einfache Authentifizierung möglich.
 
574
 
Kapitel 19. Systemadministration
 
Abbildung 19-43. Kategorie Server - Apache - Per-Verzeichniseinstellungen
 
Detaillierte Informationen zu den möglichen Optionen, die je Verzeichnis eingestellt werden können, finden
 
sich unter http://httpd.apache.org/docs/mod/core.html#options.
 
19.8.5.1.8. Apache Webserver - Apache-Module neukonfigurieren
 
In diesem Menü können Module neu konfiguriert werden. Dies stellt eine Liste mit allen von Webmin
 
unterstützten Apache-Modulen dar, die bereits installierten markiert sind. Falls Sie dynamisch geladene Module
 
benutzen, dann können Sie diese jetzt auswählen.
 
Abbildung 19-44. Kategorie Server - Apache - Apache-Module neu konfigurieren
 
575
 
Kapitel 19. Systemadministration
 
19.8.5.1.9. Apache Webserver - Definierte Parameter bearbeiten
 
Wenn Apache gestartet wird, können Parameter mit der Befehlzeilenoption -D übergeben werden. Weil diese
 
Parameter die Direktiven beeinflussen können, die in Ihren Konfigurationsdateien vorkommen, muss Webmin
 
wissen, welche Parameter dem Apache Webserver beim Start übergeben werden sollen.
 
Abbildung 19-45. Kategorie Server - Apache - Definierte Parameter bearbeiten
 
19.8.5.2. Postfix
 
Die Konfiguration des Mailservers Postfix gliedert sich in verschiedene Bereiche, die wiederum die
 
verschiedenen Aufgabenbereiche des Postfix Mailservers darstellen.
 
576
 
Kapitel 19. Systemadministration
 
Abbildung 19-46. Kategorie Server - Postfix
 
Machen Sie sich zunächst einmal mit den verschiedenen Bereichen der Konfiguration vertraut, bevor Sie
 
beginnen, Veränderungen an der Konfiguration vorzunehmen.
 
19.8.5.2.1. Postfix Mailserver - Allgemeine Einstellungen
 
In den allgemeinen Einstellungen finden Sie eine große Anzahl von Optionen. Bitte lesen Sie in der
 
Dokumentation zu Postfix nach, welche Möglichkeiten sich hier bieten. Die drei wichtigsten Optionen finden
 
sich ganz oben auf der Seite unter „Nützlichste allgemeine Einstellungen“. Auf diese werden wir kurz eingehen,
 
da diese im allgemeinen ausreichend sind, um Postfix sinnvoll zu konfigurieren.
 
577
 
Kapitel 19. Systemadministration
 
Abbildung 19-47. Postfix Mailserver - Allgemeine Einstellungen
 
• Welche Domäne soll in ausgehender Mail verwendet werden - bei einer vom System ausgehenden E-Mail
 
wird die Absenderadresse aus dem Benutzernamen, eventuell dem Rechnernamen und dem Domainnamen
 
gebildet. Hier können Sie wählen, aus welchen Informationen der Domainname ermittelt werden soll.
 
• Für welche Domänen soll E-Mail empfangen werden - hier können Domains angegeben werden für die Mails
 
akzeptiert werden sollen. Von allen hier nicht aufgeführten Domains werden E-Mail abgelehnt.
 
• Welche Probleme werden an den Postmaster gemeldet - der Administrator des Mailsystems (Postmaster)
 
578
 
Kapitel 19. Systemadministration
 
bekommt Problemmeldungen des Systems per E-Mail. Hier kann gewählt werden, welche Art von Fehlern
 
und Problemen gemeldet werden sollen.
 
Die weiteren Optionen auf dieser Seite sind in der Postfix-Dokumentation beschrieben.
 
19.8.5.2.2. Postfix Mailserver - Adressumschreibung und Maskierung
 
Hier können Adressen automatisch verändert werden.
 
Abbildung 19-48. Postfix Mailserver - Adressumschreibung und Maskierung
 
Es können die verschiedensten Veränderungen an den Mailadressen vorgenommen werden. Dies kann
 
beispielsweise für Sites sinnvoll sein die E-Mail via UUCP beziehen oder ausliefern. Über Funktionen wie
 
„Adressmaskierung“ können Rechnernamen vor dem Domainnamen verborgen werden, so wird beispielsweise
 
aus user@host.$mydomain user@$mydomain.
 
19.8.5.2.3. Postfix Mailserver - Mail-Aliases
 
Hier können Aliase für Benutzer auf dem System definiert werden.
 
579
 
Kapitel 19. Systemadministration
 
Abbildung 19-49. Postfix Mailserver - Mail-Aliases
 
Im oberen Bereich können die zur Erzeugung der Datenbank notwendigen Kommandos definiert werden. Hier
 
sind im Normalfall keine Änderungen notwendig. Im unteren Bereich dieser Konfiguration kann zu jedem
 
Beutzernamen ein Alias angelegt werden.
 
19.8.5.2.4. Postfix Mailserver - Kanonische Verknüpfung
 
Hier können verschiedene Adressen über zu definierende Tabellen verknüpft werden.
 
580
 
Kapitel 19. Systemadministration
 
Abbildung 19-50. Postfix Mailserver - Kanonische Verknüpfung
 
19.8.5.2.5. Postfix Mailserver - Virtuelle Domänen
 
Dieser Parameter beschreibt verschiedene Tabellen, in denen Mailadressen oder komplette Domains umgeleitet
 
werden können. Hiermit werden typischerweise virtuelle Domains realisiert,.
 
Die Standardeinstellung nimmt keine Umleitung von Adressen vor.
 
Einige Beispiele für eine mögliche Konfiguration:
 
dbm:/etc/postfix/virtual
 
hash:/etc/postfix/virtual
 
hash:/etc/postfix/virtual, nis:virtual
 
hash:/etc/postfix/virtual, netinfo:/virtual
 
581
 
Kapitel 19. Systemadministration
 
Abbildung 19-51. Postfix Mailserver - Virtuelle Domänen
 
19.8.5.2.6. Postfix Mailserver - Transportverknüpfung
 
In diesen Tabellen werden zusätzliche Transportwege für Domains oder einzelne Mailserver beschrieben. Auch
 
diese Funktion ist normalerweise deaktiviert. In der Manpage zu transport(5) finden sich weitergehende
 
Informationen.
 
Beispiele:
 
dbm:/etc/postfix/transport
 
hash:/etc/postfix/transport
 
hash:/etc/postfix/transport, nis:transport
 
hash:/etc/postfix/transport, netinfo:/transport
 
Abbildung 19-52. Postfix Mailserver - Transportverknüpfung
 
582
 
Kapitel 19. Systemadministration
 
19.8.5.2.7. Postfix Mailserver - Neu eingerichtete Verknüpfung
 
Diese Funktion (englisch: „Relocated Mapping“) kann Nachrichten erzeugen, die darüber informieren, daß ein
 
Benutzer auf ein anderes System gewechselt ist. Es wird in diesem Fall eine sogenannte „bounce message“
 
erzeugt.
 
Abbildung 19-53. Postfix Mailserver - Neu eingerichtete Verknüpfung
 
19.8.5.2.8. Postfix Mailserver - Lokale Lieferung
 
Hier können verschiedene Parameter, die die Auslieferung von E-Mails auf dem lokalen System betreffen
 
verändert werden. Zunächst einmal kann beispielsweise ein externes Programm mit der lokalen Auslieferung
 
beauftragt werden („Name des Transports für lokale Lieferungen“). Auch kann hier das Verzeichnis gewählt
 
werden, in dem die Mails gesammelt werden sollen („Verzeichnis für E-Mails in Warteschlange“).
 
583
 
Kapitel 19. Systemadministration
 
Abbildung 19-54. Postfix Mailserver - Lokale Lieferung
 
19.8.5.2.9. Postfix Mailserver - Allgemeine Resourcenkontrolle
 
Unter Allgemeinen Ressourcen finden sich Parameter, die sich auf Dateigrößen oder Timeouts bei der
 
Mailauslieferung beziehen.
 
584
 
Kapitel 19. Systemadministration
 
Abbildung 19-55. Postfix Mailserver - Allgemeine Resourcenkontrolle
 
19.8.5.2.10. Postfix Mailserver - SMTP-Server-Einstellungen
 
In den Servereinstellungen können Parameter wie beispielsweise die maximale Anzahl der Empfänger einer
 
E-Mail eingestellt werden. Hier finden sich auch Möglichkeiten einzelne SMTP-Kommandos einzuschränken
 
und die Fehlermeldungen für die verschiedenen Arten von Fehlern können verändert werden.
 
585
 
Kapitel 19. Systemadministration
 
Abbildung 19-56. Postfix Mailserver - SMTP-Server-Einstellungen
 
19.8.5.2.11. Postfix Mailserver - SMTP-Client-Einstellungen
 
In diesem Menü können Einstellungen, die die Clients betreffen, vorgenommen werden. Dies betrifft
 
insbesondere Timeouts bei verschiedenen Ereignissen, als auch beispielsweise Fehler beim MX-Lookup.
 
586
 
Kapitel 19. Systemadministration
 
Abbildung 19-57. Postfix Mailserver - SMTP-Client-Einstellungen
 
19.8.5.2.12. Postfix Mailserver - Auslieferungsraten
 
Unter Ausliefungsraten finden sich Einstellungen zur maximalen Anzahl gleichzeitig geöffneter Verbindungen
 
und auch verschiedene Timeouteinstellungen für die Auslieferung.
 
587
 
Kapitel 19. Systemadministration
 
Abbildung 19-58. Postfix Mailserver - Auslieferungsraten
 
19.8.5.2.13. Postfix Mailserver - Debugging-Funktionen
 
Debugging-Funktionen dienen zur Fehlersuche bei Problemem mit dem Mailsystem. Hier können Domainen
 
aufgeführt werden für die eine ausführliche Protokollierung gewünscht ist.
 
588
 
Kapitel 19. Systemadministration
 
Abbildung 19-59. Postfix Mailserver - Debugging-Funktionen
 
19.8.5.3. DHCP
 
Mittels eines DHCP Servers können Netzwerkeinstellungen zentral verwaltet werden. Ein DHCP Server liefert
 
dem Client auf Anfrage alle notwendigen Informationen zum Netzwerk wie beispielsweise IP-Nummer,
 
Netzmaske, Gateway oder auch den Host- und Domainnamen. Diese Angaben können entweder dynamisch
 
(also zufällig) vergeben werden, oder jeder MAC-Adresse eines Clients werden feste Werte zugeordnet.
 
Im oberen Bereich werden zunächst die gewünschten (Sub-) Netze definiert, im gezeigten Beispiel handelt es
 
sich um ein internes, nicht geroutetes Netz (192.168.1.0). Im unteren Bereich werden dann die einzelnen
 
Rechner definiert und den Netzen, bzw. IP-Adressen zugewiesen.
 
589
 
Kapitel 19. Systemadministration
 
Abbildung 19-60. Kategorie Server - DHCP
 
Ein Subnetz kann bearbeitet werden indem auf das entsprechenden Subnetz geklickt wird. Die Dialoge um ein
 
neues Subnetz hinzuzufügen und um ein freigegebenes Subnetz hinzuzufügen sind ähnlich gestaltet, so das auf
 
diese nicht weiter eingegangen wird.
 
In diesem Beispiel wird ein internes, nicht geroutetes, Netz verwenden. Der Adressbereich liegt zwischen
 
192.168.1.20 und 192.168.1.255, die ersten 20 Adressen in diesem Netz wurden für fest installierte
 
Systeme vergeben. Die restlichen Optionen befassen sich größtenteils mit Parametern die im Zusammenhang
 
mit bootp stehen.
 
590
 
Kapitel 19. Systemadministration
 
Abbildung 19-61. Kategorie Server - DHCP - Subnet bearbeiten
 
In diesem Bereich können einzelne Hosts im Netz bearbeitet, gelöscht oder hinzugefügt werden. Neben dem
 
Hostnamen müssen bei fest vergebenen IP-Adressen hier auch die Hardware Adresse der Netzwerkkarte
 
angegeben werden. Die weiteren Einträge befassen sich wiederrum mit dem Protokol bootp.
 
591
 
Kapitel 19. Systemadministration
 
Abbildung 19-62. Kategorie Server - DHCP - Hosts und Hostgruppen
 
Hier können allgemeine Einstellungen für alle Netzwerke, Hosts und Gruppen vorgenommen werden.
 
592
 
Kapitel 19. Systemadministration
 
Abbildung 19-63. Kategorie Server - DHCP - Client Einstellungen
 
Hinter der Schaltfläche „Liste aktive Vergaben auf“, werden alle momentan vergebenen dynamischen und
 
statischen IP-Nummer aufgelistet. Weiterhin findet sich dort eine Schaltfläche („List all active and expired
 
leases“) mit der sich auch ältere Einträge über vergebene Adressen anzeigen lassen.
 
593
 
Kapitel 19. Systemadministration
 
Abbildung 19-64. Kategorie Server - DHCP - Vergaben
 
Die Schaltfläche „Änderungen anwenden“ kann zum Neustart des DHCP-Servers benutzt werden. Die
 
getätigten Änderungen werden damit aktiv.
 
19.8.6. Kategorie Hardware
 
In dieser Kategorie können die verschiedensten Einstellungen vorgenommen werden, die in Zusammenhang mit
 
der Hardware des Systems stehen. Es können beispielsweise neue Partitionen angelegt, die Mountpunkte
 
bestimmt, der Bootloader (Lilo oder GRUB) konfiguriert, Einstellungen am Netzwerk oder der Systemzeit
 
sowie RAID Systeme konfiguriert werden.
 
19.8.6.1. Festplatten Partitionen
 
Dieser Punkt stellt eine Schnittstelle zu fdisk und hdparm dar. Hier können (über „IDE-Parameter bearbeiten“)
 
beispielsweise der DMA-Modus der Festplatte verändert werden, aber auch neue Partitionen angelegt oder
 
bestehende Partitionen verändert werden. Ganz nebenbei stellt dieser Punkt auch noch einen Editor für die Datei
 
/etc/fstab dar, hier können die Mount-Punkte der einzelnen Partitionen bestimmt werden.
 
594
 
Kapitel 19. Systemadministration
 
Abbildung 19-65. Kategorie Hardware - Festplatten
 
Hinter „IDE-Parameter bearbeiten“ verbergen sich die verschiedensten Einstellen die auch über die
 
Kommandozeile mit dem Programm hdparm vorgenommen werden können. Bei IDE-Platten ist es zumindest
 
sinnvoll den DMA Modus zu aktivieren („DMA benutzen“), sowie 32Bit breite Zugriffe zuzulassen („32-bit
 
I/O-Unterstützung“). Eine detailierte Beschreibung aller mögliche Parameter die von hdparm unterstützt
 
werden findet sich im Abschnitt zu hdparm.
 
Abbildung 19-66. Kategorie Hardware - IDE-Parameter bearbeiten
 
595
 
Kapitel 19. Systemadministration
 
Über die Auswahl „Primäre Partition hinzufügen“ und „Logische Partition hinzufügen“, können neue
 
Partitionen erstellt werden.
 
Abbildung 19-67. Kategorie Hardware - Partition erstellen
 
Durch anklicken eines Eintrages in der Spalte „Benutzen“ im Partitionsmanager gelangt man in die
 
Bearbeitungsmaske des gewählten Mount-Punktes. Hier kann beispielsweise der Platz an dem diese Partition in
 
das Dateisystem eingebunden werden soll, verändert werden. Weiterhin können hier die Überprüfungen des
 
Dateisystems beim Systemstart aktiviert oder deaktiviert werden, auch die Reihenfolge kann verändert werden.
 
Unter „Erweiterte Mount-Einstellungen“ finden sich Beschränkungen der Zugriffsrechte und es können
 
Änderungen im Verhalten beim Auftreten von Fehlern vorgenommen werden.
 
596
 
Kapitel 19. Systemadministration
 
Abbildung 19-68. Kategorie Hardware - Bearbeite Mount
 
19.8.6.2. GRUB
 
Hier kann der Bootloader GRUB konfiguriert werden. GRUB kann als leistungsfähige Alternative zu Lilo
 
installiert werden. GRUB ist auch in der Lage, neben auf dem Linux Kernel basierenden Betriebssystemen
 
beispielsweise GNU Hurd zu booten. Durch eine Mausklick auf einen bestehenden Eintrag kann dieser
 
verändern werden. Mittels „Add a new boot option“ kann ein neuer Eintrag der Konfiguration hinzugefügt
 
werden. Die Schaltfläche „Edit global options“ dient dazu allgemeine Konfigurationsparameter anzupassen. Mit
 
der Schaltfläche „Install grub“ wird der Bootloader auf der Festplatte installiert.
 
597
 
Kapitel 19. Systemadministration
 
Abbildung 19-69. Kategorie Hardware - GRUB
 
Zu jedem Eintrag eines zu bootenden Betriebsystems in der GRUB Konfiguration gehört zunächst ein Titel
 
(„Option title“). Dieser kann frei gewählt werden. Weiterhin ist die Partition zu wählen, auf der sich der Kernel
 
befindet. Dieser Wert kann auch aus einer Liste der verfügbaren Partitionen ausgewält werden.
 
Natürlich ist dann noch das zu bootende Betriebsystem zu wählen. Dieser wird zunächst einmal sicher Linux
 
sein, hier ist dann noch der Name, und ggf. der Pfad, zum Kernel-Image anzugeben. In der nächsten Zeile
 
können noch Optionen für den Kernel definiert werden, dies wird meistens die zu verwendende Root-Partition
 
sein, aber auch Parameter wie IRQ oder IO Bereiche gehören hier hinein.
 
Wenn andere Betriebssysteme mit GRUB gebootet werden sollen, so kann gewählt werden, ob dies aus dem
 
ersten Sector der Partition erfolgen soll, alternativ kann eine sogenannten „Chainloader“ Datei verwendet
 
werden. Weiterhin kann diese Partition dann bootfähig gemacht werden.
 
Als dritte Möglichkeit kann auch ein Eintrag erzeugt werden, der nicht zum Booten eines Betriebsystems dient.
 
Dies kann beispielsweise ein Eintrag zum verändern der Farben des GRUB-Menüs sein, oder ein Eintrag um
 
GRUB zu installieren.
 
598
 
Kapitel 19. Systemadministration
 
Abbildung 19-70. Kategorie Hardware - GRUB - Edit Boot Option
 
Dieser Eintrag ist mit dem vorhergehenden identisch, lediglich sind die Felder nicht mit Werte vorbelegt und
 
müssen erst ausgefüllt werden.
 
Abbildung 19-71. Kategorie Hardware - GRUB - Add Boot Option
 
Als „Globale Optionen“ werden Parameter, die generell Auswirkungen auf die Konfiguration haben und nicht
 
einem einzelnen Eintrag zuzuordnen sind, bezeichnet. Dies sind: Ein Default-Booteintrag und ein
 
599
 
Kapitel 19. Systemadministration
 
Fallback-Eintrag, das Timeout in Sekunden bis der Default-Eintrag gestartet, wird sowie die gewünschte
 
Festplatte oder Partition auf der GRUB installiert werden soll.
 
Abbildung 19-72. Kategorie Hardware - GRUB - Global Options
 
Ein Mausklick auf diese Schaltfläche installiert GRUB sofort auf der Festplatte, es gibt keine weitere Abfrage.
 
Die Ausgabe des Programmes wird angezeigt, überprüfen Sie genau ob es während der Installation zu
 
Problemen gekommen ist.
 
Abbildung 19-73. Kategorie Hardware - GRUB - Install GRUB
 
19.8.6.3. Lilo
 
Wenn Lilo auf dem System als Booloader verwendet wird, so kann dieser hier konfiguriert werden. Auch dieses
 
Menü ist in zwei Bereiche geteilt, im oberen Bereich können bestehende Einträge in der Konfiguration
 
verändert oder neue hinzugefügt werden. Darunter finden sich Einstellmöglichkeiten für globale Parameter die
 
nicht direkt in Zusammenhang mit einem Eintrag für einen bestimmten Kernel stehen.
 
600
 
Kapitel 19. Systemadministration
 
Abbildung 19-74. Kategorie Hardware - Lilo
 
Durch einen Mausklick auf einen bestehenden Eintrag kann dieser verändert werden. Hinter dem Link „Einen
 
neuen Boot-Kernel erstellen“, verbirgt sich das gleiche Menü, jedoch ohne Vorgabewerte.
 
Zunächst ist im Feld „Name“ ein Titel für diesen Eintrag zu vergeben. Im Feld „Zu bootender Kernel“ ist der
 
Pfad und der Dateiname des gewünschten Kernels anzu geben, dieser kann aber auch über die Schaltfläche ...
 
direkt ausgewählt werden. Weiterhin können Kernel-Parameter die bei Booten des Systems aktiviert werden
 
sollen im Feld „Kernel-Parameter“ angegeben werden.
 
Als „Root-Gerät“ wird hier die Root-Partition bezeichnet. Weitere Parameter beeinflussen die Auflösung der
 
Text-Konsole („VGA-Textmodus“), den Modus in dem das Root-Dateisystem gemountet werden
 
soll(„Root-Mount-Modus“) und das Passwort welches bei der Benutzung von Lilo generell oder nur bei der
 
Angabe von Optionen verwendet werden soll („Boot-Kennwort“ und „Kennwort benötigt für“). Natürlich kann
 
an dieser Stelle auch eine eventuell zu verwendende RAM Disk konfiguriert werden.
 
Wenn die gewünschten Einstellungen vorgenommen wurden, kann der Eintrag durch einen Mausklick auf
 
„Speichern“ auf die Platte geschrieben werden. Dies schreibt lediglich die Veränderungen in die Datei
 
/etc/lilo.conf, der Aufruf von lilo um den MBR neu zu schreiben wird dabei nicht ausgeführt.
 
601
 
Kapitel 19. Systemadministration
 
Abbildung 19-75. Kategorie Hardware - Lilo - Boot-Kernel bearbeiten
 
Hier werden allgemein gültige Einstellungen vorgenommen, dies sind beispielsweise die Auswahl wohin der
 
Bootloader geschrieben werden soll („Schreibe Bootlader auf“) und verschiedene Wartezeiten sowie auch hier
 
wieder ein allgemeines Kennwort für die gesammte Lilo-Konfiguration.
 
Abbildung 19-76. Kategorie Hardware - Lilo - Globale Einstellungen
 
602
 
Kapitel 19. Systemadministration
 
Über die Schaltfläche „Konfiguration anwenden“ wird der Aufruf von lilo mit der neu erstellten Konfiguration
 
durchgeführt. Eventuell aufgetretene Fehlermeldungen oder auch Statusmeldungen werden angezeigt.
 
Abbildung 19-77. Kategorie Hardware - Lilo - Konfiguration anwenden
 
19.8.6.4. Netzwerk
 
Der Bereich Netzwerk gliedert sich in verschiedene Themen. Hier finde sich Einstellungen zu IP-Adressen,
 
Routing und Namesauflösung.
 
Abbildung 19-78. Kategorie Hardware - Netzwerk
 
Die Konfiguration der Netzwerkschnittstellen zeigt zunächst eine Übersicht der bereits konfigurierten Interfaces
 
an. Hier können über den Link „Eine neue Schnittstelle hinzufügen“ weitere Interfaces hinzugefügt werden.
 
603
 
Kapitel 19. Systemadministration
 
Abbildung 19-79. Kategorie Hardware - Netzwerk - Netzwerkschnittstellen
 
Durch eine Mausklick auf eine der Schnittstellen können Veränderungen an dieser vorgenommen werden. Hier
 
können neben der IP-Adresse, Broadcast und Netmask auch Werte wie MTU und sogar die Hardwareadresse
 
(natürlich wird dies nicht auf der Karte gespeichert sondern nur für den Betrieb überschrieben) verändert
 
werden. Weiterhin können hier einer Karte virtuelle Schnittstellen hinzugefügt werden.
 
Abbildung 19-80. Kategorie Hardware - Netzwerk - Aktive Schnittstelle bearbeiten
 
Hier kann konfiguriert werden welcher Router, bzw. welches Gateway für das System verwendet werden soll.
 
604
 
Kapitel 19. Systemadministration
 
Abbildung 19-81. Kategorie Hardware - Netzwerk - Routing und Gateways
 
In diesem Dialog können Einstellungen zum Hostnamen, den zu verwendenden Nameservern, der Reihenfolge
 
der Möglichkeiten für Nameserverabfragen und den Suchdomänen gemacht werden.
 
Abbildung 19-82. Kategorie Hardware - Netzwerk - DNS-Client
 
Die hier getätigten Einstellungen finden sich in der Datei /etc/hosts wieder. Hier können, falls kein eigener
 
Nameserver für das interne Netz verfügbar ist, lokale Systeme eingetragen werden für die normalerweise keine
 
sinnvolle Namensauflösung verfügbar ist.
 
605
 
Kapitel 19. Systemadministration
 
Abbildung 19-83. Kategorie Hardware - Netzwerk - Host-Adressen
 
19.8.6.5. Systemzeit
 
In dieser Menü kann sowohl die Systemzeit als auch die Hardware-Zeit (also die Zeit in der Uhr auf dem
 
Motherboard) eingestellt und miteinander synchronisiert werden. Weiterhin kann hier ein Zeit-Server
 
eingetragen werden mit dem die Systemzeit abgeglichen werden soll.
 
Abbildung 19-84. Kategorie Hardware - Systemzeit
 
Hier besteht die Möglichkeit Einstellungen zur Zeitzone und einigen anderen Parameter vorzunehmen.
 
606
 
Kapitel 19. Systemadministration
 
Abbildung 19-85. Kategorie Hardware - Systemzeit - Konfiguration
 
19.8.7. Andere
 
In dieser Kategorie finden sich einige Tools die in keine andere Kategorie passen.
 
Abbildung 19-86. Kategorie Andere
 
607
 
Kapitel 19. Systemadministration
 
Mit der Command Shell können Shell Kommandos aus Webmin heraus ausgeführt werden, die
 
Standardausgabe des Kommandos wird im Browser ausgegeben. Das Kommando cd kann dazu benutzt werden,
 
nachfolgenden Programmen das gewünschte Startverzeichnis zu geben.
 
Abbildung 19-87. Kategorie Andere - Command Shell
 
Mit „Eigene Befehle“ können Kommandos definiert die auch unter anderen Benutzerkennungen ausgeführt
 
werden können. Beispielsweise können hier regelmäßige Arbeiten wie das löschen von Core-Dateien von Hand
 
angestoßen werden.
 
Abbildung 19-88. Kategorie Andere - Eigene Befehle
 
Wenn auf dem System ein Telnet-Server installiert ist (was normalerweise nicht zu empfehlen ist) kann hierüber
 
ein Login auf das System erfolgen.
 
608
 
Kapitel 19. Systemadministration
 
Abbildung 19-89. Kategorie Andere - SSH-/Telnet-Login
 
Hier kann der Zustand von verschiedenen Diensten überwacht werden.
 
Abbildung 19-90. Kategorie Andere - System und Server Status
 
19.8.7.1. Themes
 
Webmin läßt sich mit angepassten Themes versehen, mit denen sich das Aussehen der Seiten beeinflussen läßt.
 
Um ein neues Theme zu erzeugen, muß im Verzeichnis /usr/share/webmin/ ein Unterverzeichnis erzeugt
 
werden. In diesem Verzeichnis muß zumindest die Datei theme.info vorhanden sein. In dieser Datei ist
 
609
 
Kapitel 19. Systemadministration
 
mindestens der Eintrag desc zwingend erforderlich. Dieser Eintrag beschreibt das Theme kurz und wird als
 
Text in der Themenauswahl angezeigt.
 
Die Syntax für alle Einträge in den Konfigurationsdateien lautet: name=wert.
 
Die meisten Einstellungen werden in der Konfigurationsdatei config vorgenommen. Auch hier entspricht die
 
Syntax der Einträge der oben beschriebenen (name=wert). Die hier definierten Werte überschreiben einige der
 
voreingestellten Werte in der globalen Webmin Konfigurationsdatei /etc/webmin/config. Werte die
 
überschrieben werden können sind:
 
• cs_page - ein sechs Zeichen langer String im Hex-Format der die Werte für RRGGBB für den Hintergrund
 
der Webseiten setzt.
 
• cs_link - ein sechs Zeichen langer String im Hex-Format der die Werte für RRGGBB für die bereits
 
besuchten und noch nicht besuchten Seiten setzt.
 
• cs_text - ein sechs Zeichen langer String im Hex-Format der die Werte für RRGGBB für den normalen
 
Text setzt.
 
• bgimage - die relative URL (beispielsweise pics/hintergrund.jpg) für ein Hintergrundbild welches auf
 
jeder Seite angezeigt wird.
 
• noindex - wenn dieser Wert auf 1 gesetzt wird, so wird auf den Webseiten kein Link auf den Webmin Index
 
angezeigt. Dies ist sinnvoll wenn Frames verwendet werden und über diese die Verwaltung der Seiten
 
realisiert werden soll.
 
• brand - HTML Code für eine Grafik oder einen Text, welcher in der rechten oberen Ecke der Index Seite
 
angezeigt wird.
 
• brand_url - URL, die hinter die Grafik gelegt wird. Diese wird bei einem Klick auf die Grafik aufgerufen.
 
• headhtml - der hier aufgeführte HTML Code wird in der <head> Section jeder Webseite eingefügt.
 
• headinclude - Name der Datei im Verzeichnis dieses Themes, dessen Inhalt in der <head> Section jeder
 
Webseite eingefügt werden soll.
 
• inbody - Dieser Text wird im <body>-Tag der Seite eingefügt.
 
• prebody - dieser HTML Code wird am Anfang der <body> Section jeder Webseite eingefügt. Folgende
 
Variablen sind hier erlaubt:
 
%HOSTNAME% will be replaced with the system’s hostname.
 
%VERSION% will be replaced with the webmin version.
 
%USER% will be replaced with the current user’s login.
 
%OS% will be replaced with the OS name and version.
 
• texttitles - wird diese Variable auf 1 gesetzt, so werden die Überschriften auf jeder Seite als HTML Text
 
dargestellt und nicht durch Grafiken erzeugt.
 
• postbody - dieser HTML Code wird in der <body> Section jeder Seite eingefügt. Auch hier sind die unter
 
prebody erwähnten Variablen erlaubt.
 
• tb - Text der im <tr>-Tag von Tabellenköpfen eingefügt wird.
 
• cb - Text der im <tr>-Tag von Tabellen, unterhalb der Kopfzeile eingefügt wird.
 
Um weitere Veränderungen vorzunehmen, müssen keine Änderungen an der Webmin-Konfigurationsdatei
 
vorgenommen werden. Wenn ein Theme gewählt wird, so wird das Verzeichnis dieses Themes mit allen
 
Inhalten dem Wurzelverzeichnis des Webmin Servers überlagert. Dateien die im Theme-Verzeichnis enthalten
 
sind haben somit eine höhere Wertigkeit und werden bevorzugt geladen.
 
Auf diesem Wege können auch die Icons oder die Grafiken, die die Seitenüberschriften erzeugen, ausgetauscht
 
werden. Aber auch die verwendeten CGI-Programme können auf diesem Wege ausgetauscht werden. Dies kann
 
beispielsweise dazu verwendet werden, um ein neues Hauptmenü zu erzeugen. Hierzu ist eine Datei
 
610
 
Kapitel 19. Systemadministration
 
index.cgi zu erzeugen und im Theme-Verzeichnis abzulegen. Hierbei ist darauf zu achten, daß die tatsächlich
 
benutzten Scripte im Hauptverzeichnis (nicht im Themeverzeichns) von Webmin liegen, die Pfade sind
 
entsprechend zu setzen.
 
Wenn das neue Theme vollendet ist kann es mit tar gepackt werden. Webmin Themes haben normalerweise
 
die Endung .wbt.
 
611
 
Kapitel 20. Systemsicherheit
 
In diesem Abschnitt sollen einige Hinweise gegeben werden wie ein Debian GNU/Linux System sicherer gegen
 
unbefugte Zugriffe auf das System gemacht werden kann. Debian bietet hierzu einige vorbereitete Pakete die
 
mit wenig Aufwand zu installieren oder zu konfigurieren sind.
 
Zunächst sollten Sie bereits bei der Installation des Systems darauf achten das Sie sowohl die Frage nach der
 
Verwendung von Shadow-Passwörtern als auch die Frage nach MD5 verschlüsselten Passwörtern mit „Ja“
 
beantworten.
 
Generell ist zu sagen das jeder auf einem Unix System laufende Dienst ein Sicherheitsrisiko darstellt.
 
Installieren Sie also ausschliesslich Dienste die auch auf dem System eingesetzt werden sollen.
 
Das Debian Team nimmt die Sicherheit des Systems sehr ernst. Sicherheitslücken werden umgehend beseitigt
 
und aktualisierte Versionen sind auf den Debian FTP-Servern verfügbar. Um Zugriff auf die jeweils aktuellen
 
Sicherheitsupdates zu haben, sollte folgende Zeile der Datei /etc/apt/sources.list hinzugefügt werden:
 
deb http://security.debian.org/ stable/updates main contrib non-free .
 
20.1. task-harden
 
Um sicherzustellen das sich keine Pakete mit Sicherheitslücken auf dem System befinden, kann das Paket
 
task-harden installiert werden. In diesem Paket sind verschiedene Task-Pakete aufgeführt, diese wiederrum
 
sind mit entsprechenden Anhängigkeiten belegt. Die „harden-*“ Pakete werden laufend aktualisiert und
 
sicherheitkritische Software wird durch entsprechende Abhängigkeiten die in diesen Paketen festgelegt sind von
 
der Verwendung ausgeschlossen. Es kann also durchaus passieren das die Installation dieses Paketes dazu führt
 
das ein benötigter Dienst gelöscht wird!
 
Das Debian Team ist dabei der Meinung das es besser ist einen Dienst eine zeitlang nicht zur Verfügung zu
 
stellen, statt einem Angreifer einen Angriffspunkt zu liefern.
 
task-harden besitzt definierte Abhängigkeiten zu diversen anderen Paketen, welche auch gesondert installiert
 
werden können. Diese decken kleinere Bereiche ab, so das es möglich ist einzelne Dienste oder bestimmte
 
Systeme gezielt zu schützen. Diese Pakete sind:
 
harden - Makes your system hardened.
 
harden-3rdflaws - Avoid packages with security problems.
 
harden-clients - Avoid clients that are known to be insecure.
 
harden-development - Development tools for creating more secure programs.
 
harden-doc - Useful documentation to secure a Debian system.
 
harden-environment - Hardened system environment.
 
harden-localflaws - Avoid packages with security holes.
 
harden-nids - Harden a system by using a network intrusion detection system.
 
harden-remoteaudit - Audit your system from this host.
 
harden-remoteflaws - Avoid packages with security holes.
 
harden-servers - Avoid servers that are known to be insecure.
 
harden-surveillance - Check services and/or servers automaticly.
 
harden-tools - Tools to enhance or analyze the security of the local system.
 
Die durch diese Pakete vorgenommenen Veränderungen basieren auf den im Debian Security HOWTO
 
beschriebenen Aktionen.
 
20.2. Securing Debian HOWTO
 
Im „Securing Debian HOWTO“ (das englische Original ist erreichbar unter
 
http://www.debian.org/doc/manuals/securing-debian-howto/index.html) finden sich Informationen an welchen
 
Stellen ein Debian System noch sicherer gemacht werden kann. Daher soll an dieser Stelle nur auf einige
 
grundlegende Dinge hingewiesen werden.
 
612
 
Kapitel 20. Systemsicherheit
 
Zunächst müssen Sie sich darüber im klaren sein das ein System nur dann 100%tig sicher ist wenn keinerlei
 
Dienste auf diesem nach aussen hin über das Netzwerk angeboten werden oder sogar garkeine Verbindung zu
 
einem Netzwerk besteht. Dies ist in der Realität natürlich unsinnig und nicht durchsetzbar, das System würde so
 
nicht sinnvoll benutzbar sein.
 
Man sollte sich auch darüber im klaren sein das die Anforderungen an die Sicherheit stark vom Einsatz des
 
Systems abhängig sind. Ein Privatnutzer wird deutlich andere Anforderungen stellen wie der Administrator
 
eines Firewall Systems. Viele Einstellungen die die Sicherheit eines Systems erhöhen vereinfachen die
 
Bedienung nicht unbedingt, auch hier ist zwischen Benutzbarkeit und Paranoia abzuwägen.
 
Die Softwareseitigen Einstellungen an einem Debian System die zur Verbesserung der Sicherheit dienen,
 
können nicht den physikalischen Zugriff auf das System verhindern. Wenn von Systemsicherheit die Rede ist
 
muß auch bedacht werden das zu einem völlig sicheren System auch gehört das der Zugriff auf die Hardware
 
unterbunden wird. Ein Angreifer der Zugriff auf die Hardware hat kann beispielsweise über eine Boot-CD oder
 
Diskette Zugriff auf das System erlangen. Auch ein BIOS- oder Lilo-Passwort kann den Diebstahl der Festplatte
 
nicht verhindern. Ein völlig sicheres System gehört also hinter gut verschlossene Türen. Doch Betrachtungen
 
zur Hardwaresicherung sollen an dieser Stelle nicht weiter verfolgt werden.
 
20.2.1. Vor und während der Installation
 
Bereits vor der Installation können einige Maßnahmen zur Sicherheit des Systems getroffen werden. Das
 
Debian Installationsprogramm enthält ebenfalls einige Punkte an denen die Sicherheit des Systems verbessert
 
werden kann.
 
20.2.1.1. BIOS Einstellungen
 
Bevor ein Betriebsystem auf einem neuen Computer installiert wird, sollte ein BIOS Passwort gesetzt werden
 
und die Booteinstellungen sollten so gewählt werden das ein Systemstart von Diskette nicht möglich ist. Nach
 
der Installation sollte darauf geachtet werden das so schnell wie möglich auch der Start von CD-ROM
 
abgeschaltet wird.
 
Ein weitere Vorteil dieser Einstellungen zeigt sich wenn das System als Server betrieben wird. Es wäre nicht das
 
erste mal das eine vergessene Diskette im Laufwerk einen erfolgreichen Reboot eines Systems verhindert, sehr
 
ärgerlich wenn ein direkter Zugriff auf das System nur mit einer längeren Anfahrt möglich ist.
 
20.2.1.2. Plattenpartitionen
 
Die Einteilung des verfügbaren Plattenplatzes hängt von der Verwendung des Systems ab. Hierzu sollte einige
 
Dinge beachtet werden:
 
• Jede Partition auf die Schreibzugriff von den Benutzern des Systems besteht, sollte auf einer eigenen
 
Partition liegen, beispielsweise die Bereiche /home und /tmp. Dies verhindert das ein Benutzer das
 
/-Dateisystem unbenutzbar macht und das gesamte System in einen instabilen Zustand bringt. Es bleibt
 
natürlich ein gewisser Platz (meist 5%, dieser Wert kann mit tunefs angepasst werden) für den Superuser
 
reserviert, doch kann so anderen Benutzern das Arbeit mit dem System unmöglich gemacht werden.
 
• Es sollte für jeden Bereich der automatisch mit Daten gefüllt wird, beispielsweise /var und hier
 
insbesondere /var/log eine eigene Partition vorgesehen werden. Auf Debian Systemen sollte /var
 
großzügiger bemessen werden, da unter /var/cache/apt/archives Pakete temporär abgelegt werden
 
wenn die Installation übers Netz erfolgt. Weiterhin finden sich unter /var/lib/dpkg viele Dateien die für
 
das Paketmanagement benötigt werden.
 
• Wenn Software installiert werden soll, die nicht in der Debian Distribution enthalten ist, sollten auch diese
 
Bereich auf eigenen Partitionen liegen, diese werden dann bei einer Neuinstallation des nicht überschrieben.
 
Nach dem File Hierarchy Standard (FHS) sind dies /opt oder /usr/local.
 
613
 
Kapitel 20. Systemsicherheit
 
20.2.1.3. Superuser Passwort
 
Während der Installation wird nach einem Passwort für den Superuser (root) gefragt. Zusätzlich kann ein
 
Benutzer dem System hinzugefügt, auch für diesen ist dann ein Passwort einzugeben. Auch wenn es möglich ist
 
hier ein sehr einfaches Passwort zu verwenden, so ist dies natürlich nicht empfehlenswert. Die Auswahl eines
 
guten Passwortes ist auf vielen Webseiten im Netz beschrieben, es sind dabei nur einige einfache Regeln zu
 
beachten. Eine Suche nach „auswahl gutes passwort“ mittels Google führt schnell zum Erfolg.
 
Grundsätzlich sollte auf jedem System neben dem Account für den Superuser auch ein Account für einen
 
Benutzer angelegt werden der nicht alle Rechte hat. Dieser Benutzeraccount sollte für alle Logins auf dem
 
System verwendet werden und nur wenn für eine bestimmte Aufgabe die Zugriffsrechte nicht ausreichend sind
 
sollte mittels des Kommandos su die Identität gewechselt werden. Nach Beendigung der Arbeiten als Superuser
 
sollte man sich umgehend wieder als normaler Benutzer im System bewegen.
 
20.2.1.4. Shadow- und MD5 Passwörter
 
Während der Installation erfolgt eine Abfrage ob „Shadow Passwords“ aktiviert werden sollen. Wenn die Frage
 
positiv beantwortet wird, werden die Passwörter in der Datei /etc/shadow verschlüsselt gespeichert. Diese
 
Datei kann nur vom Superuser und der Gruppe „shadow“ gelesen werden, somit kann kein Benutzer des
 
Systems die verschlüsselten Passwörter lesen und versuchen diese mit Hilfe einer Software zu entschlüsseln.
 
Diese Einstellung kann später mit dem Programm shadowconfig rückgängig gemacht werden. Weiterhin
 
besteht die Möglichkeit die Passwörter mit einer MD5 Verschlüsselung zu speichern, dies ist generell eine gute
 
Idee, da so ein Angriff weiterhin erschwert wird und längere Passwörter möglich sind.
 
20.2.1.5. Aktivierte Dienste
 
Wie bereits beschrieben sollten nur die absolut notwendigen Dienste auf einem System aktiviert werden. Jeder
 
neue Dienst schafft möglicherweise ein neues Sicherheitsloch, welches vielleicht erst später zu einem Problem
 
wird. Werden bestimmte Dienste nur selten benötigt, so können diese über die update-Kommandos
 
(beispielsweise update-inetd) gezielt aktiviert und deaktiviert werden.
 
20.2.1.6. Mailinglisten
 
Lesen Sie die Debian Security Mailinglisten. Relevant sind in diesem Zusammenhang
 
debian-security-announce, dort werden Sicherheitslücken bekanntgegeben und es wird über Bugfixes
 
dagegen informiert, sowie debian-security@lists.debian.org, dort werden alle Sicherheitstemen rund
 
um Debian behandelt.
 
Wenn Sie Meldungen über Sicherheitsupdates per E-Mail bekommen wollen, so senden Sie eine Mail an:
 
debian-security-announce-request@lists.debian.org mit dem Wort „subscribe“ im Betreff der Mail. Die
 
Anmeldung zu dieser Mailingliste ist auch über die Webseite http://www.debian.org/MailingLists/subscribe
 
möglich.
 
Auf dieser Mailingliste kommen nur sehr wenige Mails, man erfährt dort aber sehr schnell über Probleme mit
 
Paketen informiert und erfahren eine Adresse an der eine fehlerbereinigte Version zur Verfügung steht.
 
20.2.2. Nach der Installation
 
Nachdem das System mit allen benötigten Programmen eingerichtet ist, kann mit einigen weiteren Aktionen die
 
Sicherheit des Systems weiter erhöht werden.
 
20.2.2.1. Absicherung des Bootloaders
 
Jede Person die Zugang zur Tastatur des Systems hat kann eine Superuser-Shell bekommen und beispielsweise
 
alle Passwörter ändern, indem am Bootprompt dateiname-des-bootkernels init=/bin/sh eingegeben
 
wird. Um dies zu verhindern kann ein Passwort für den Boot-Loader gesetzt werden. Dies kann global für alle
 
Boot-Images geschehen oder individuell für jedes einzelne.
 
614
 
Kapitel 20. Systemsicherheit
 
Wenn Lilo als Bootloader verwendet wird, muß die Datei /etc/lilo.conf um die Einträge password und
 
restricted erweitert werden.
 
image=/boot/2.2.14-vmlinuz
 
label=Linux
 
read-only
 
password=hackme
 
restricted
 
Danach muß lilo nochmal aufgerufen werden. Sorgen Sie dafür das die Datei /etc/lilo.conf nur vom
 
Superuser gelesen werden kann, da das Passwort unverschlüsselt in der Konfigurationsdatei steht, dies ist mit
 
dem Kommando chmod 600 /etc/lilo.conf zu erreichen. Die Option restricted bewirkt das nur nach
 
einem Passwort gefragt wird wenn der Benutzer versucht zusätzliche Parameter am Bootprompt anzugeben. Die
 
Auswahl verschiedener, bereits in der Konfiguration eingetragener Kernel ist weiterhin möglich. Wird der
 
Eintrag restricted weggelassen, fragt Lilo in jedem Fall nach einem Passwort.
 
Die genannten Einträge können am Anfang der Konfigurationsdatei allgemeingültig für alle Kernel in der
 
Konfiguration angegeben werden, oder aber innerhalb eines Abschnittes der Konfigurationsdatei nur für
 
bestimmte Kernel.
 
Wird auf dem System GRUB verwendet, so müssen folgende Zeile der Datei /boot/grub/menu.lst
 
hinzugefügt werden:
 
timeout 3
 
password hackme
 
Die Option timeout sorgt nach der angegebenen Zeit dafür das der Standardeintrag gebootet wird.
 
20.2.2.2. Starten von Diskette
 
Der von Debian Versionen vor 2.2 installierte MBR (Master Boot Record) wurde mit einer Option installiert die
 
es erlaubte von Diskette zu booten auch wenn dies sonst abgeschaltet war. Ob ein solcher MBR installiert ist
 
läßt sich wie folgt prüfen:
 
• Drücken Sie während des Startvorganges die Shift Taste, der MBR Prompt sollte erscheinen.
 
• Drücken Sie nun „F“ und das System startet von Diskette. Mit dieser kann ein Superuserzugang zum System
 
erreicht werden.
 
Dieses Verhalten kann wie folgt verändert werden:
 
lilo -b /dev/hda
 
Wobei hda dem entsprechenden Devicenamen Ihres Systems angepasst werden muß.
 
Die Bootdisketten ab Debian Version 2.2 installieren lilo direkt in den MBR, hier tritt diese Lücke nicht auf.
 
20.2.2.3. Mounten von Dateisystemen
 
Beim mounten (einhängen in das Dateisystem) von ext2-Partitionen gibt es diverse Optionen die dem
 
Kommando mount übergeben werden oder die direkt in die Datei /etc/fstab eingetragen werden können.
 
Ein solcher Eintrag könnte beispielsweise wie folgt aussehen:
 
/dev/hda7 /tmp ext2 defaults,nosuid,noexec,nodev 0 2
 
615
 
Kapitel 20. Systemsicherheit
 
Die Optionen finden sich in der vierten Spalte. Die Option nosuid ignoriert gesetzte SUID und GUID Bits auf
 
dieser Partition. Eine gesetzte Option noexec verhindert das auf dieser Partition befindliche Programme
 
ausgeführt werden können und nodev ignoriert Device Dateien. Dabei ist zu beachten:
 
• Dies bezieht sich nur auf ext2 Dateisysteme.
 
• Auch solche Optionen können relativ leicht umgangen werden.
 
Hierzu ein Beispiel:
 
fr@sushi:/tmp# mount | grep tmp
 
/dev/hda3 on /tmp type ext2 (rw,noexec,nosuid,nodev)
 
fr@sushi:/tmp# ./date
 
bash: ./date: Keine Berechtigung
 
fr@sushi:/tmp# /lib/ld-linux.so.2 ./date
 
Sun Jul 29 14:40:32 CEST 2001
 
Viele Tools die von Hackern benutzt werden, versuchen im Verzeichnis /tmp Dateien anzulegen und diese
 
auszuführen. Mit der Option noexec kann man dem Einbrecher zumindest das Leben etwas schwerer machen.
 
20.2.2.4. Debian Sicherheitsupdates
 
Sobald eine neue Sicherheitslücke in einem Debian Paket oder einer Software dieses Paketes bekannt wird, wird
 
von den Paket-Maintainern innerhalb weniger Stunden oder Tage ein Update der betroffenen Pakete
 
bereitgestellt. Das aktualisierte Paket wird unter http://security.debian.org zur Verfügung gestellt.
 
Um auch die Sicherheitsupdates bei jeder Aktualisierung des Systems automatisch durchzuführen, muß
 
folgende Zeile in die Datei /etc/apt/sources.list eingefügt werden:
 
deb http://security.debian.org/debian-security stable/updates main contrib non-free
 
In Ländern die den Import von Kryptografischer Software nicht verbieten kann zusätzlich folgende Zeile
 
hinzugefügt werden.
 
deb http://security.debian.org/debian-non-US stable/non-US main contrib non-free
 
Natürlich können auch die entsprechenden deb-src Zeilen hinzugefügt werden wenn auch der Zugriff auf die
 
Sourcen gewährleistet sein soll. Danach ist nur noch ein apt-get update gefolgt von einem apt-get
 
upgrade nötig um das System auf den neuesten Stand zu bringen.
 
20.2.2.5. PAM - Pluggable Authentication Modules
 
PAM erlaubt dem Systemadministrator die Auswahl auf welche Weise die verschiedenen Anwendungen eine
 
Authentifizierung durchführen sollen. Hierzu muß jede Anwendung auf die Verwendung von PAM angepasst
 
sein, dies ist seit Debian 2.2 für die meisten Programme der Fall. Ältere Versionen von Debian benutzen noch
 
keine Authentifizierung über PAM. Für jede Anwendung existiert im Verzeichnis /etc/pam.d eine eigene
 
Konfigurationsdatei.
 
Mit PAM bietet sich die Möglichkeit mehrere Authentifizierungsschritte, vom Benutzer unbemerkt,
 
durchzuführen. Beispielsweise kann eine Authentifizierung sowohl gegen eine Datenbank als auch gegen die
 
Datei /etc/passwd erfolgen.
 
Über PAM können viele Restriktionen auferlegt werden, genauso gut ist es aber möglich das System weit zu
 
öffnen und so Sicherheitslücken zu schaffen. Bei der Veränderung von Einstellungen von PAM sollte also
 
größte Vorsicht bewahrt werden. Eine typische Konfigurationszeile enthält in der dritten Spalte ein Kontrollfeld.
 
616
 
Kapitel 20. Systemsicherheit
 
Dieses sollte auf den Wert „requisite“ gesetzt werden, so das bei einem Fehler in einem Modul ein Login
 
verhindert wird.
 
Zuerst sollte die Unterstützung für MD5 verschlüsselte Passwörter aktiviert werden, um so zu verhindern das
 
ein Passwort leicht von einem Programm über eine Datenbank ermittelt werden kann. Die folgenden Zeilen
 
sollten in allen Dateien in /etc/pam.d/ hinzugefügt werden die Zugang zu dem System erlauben,
 
beispielsweise login und ssh.
 
password required pam_cracklib.so retry=3 minlen=12 difok=3
 
password required pam_unix.so use_authtok nullok md5
 
Der erste Eintrag lädt das Cracklib PAM Modul, welches eine strengere Anforderungen an das verwendete
 
Passwort stellt. Passwörter müssen mit diesem Modul mindestens 12 Zeichen haben, bei einer
 
Passwortänderung müssen mindestens drei Zeichen verändert werden. Weiterhin werden nur 3 Login Versuche
 
erlaubt.
 
Die zweite Zeile benutzt die Standard Authentifizierung des Unix Systems mit einer MD5 Verschlüsselung und
 
erlaubt auch leere Passwörter. Die use_authtok Option wird benötigt um das Passwort vom vorhergehenden
 
Modul zu übernehmen.
 
Um den Zugriff so zu beschränken das der Benutzer root sich lediglich auf den lokalen Terminal einloggen
 
kann, muß die folgende Zeile in der Datei /etc/pam.d/login aktiviert werden:
 
auth requisite pam_securetty.so
 
Weiterhin müssen die Terminal von denen dem Benutzer root der Zugriff auf das System gewährt werden soll
 
in die Datei /etc/security/access.conf eingetragen werden. Um auch die eigentlichen Benutzer des
 
Systems zu beschränken, beispielsweise in der Anzahl der gleichzeitigen Logins, muß noch die folgende Zeile
 
aktiviert werden:
 
session required pam_limits.so
 
In der Datei /etc/pam.d/passwd ist nun noch die erste Zeile zu verändern. Dort muß die Option „md5“
 
eingetragen werden um mit MD5 verschlüsselte Passwörter zu benutzen. Weiterhin kann die minimale
 
Passwortlänge beispielsweise von 4 auf 6 Zeichen erhöht werden. Ebenso kann eine maximale Länge gesetzt
 
werden falls dies gewünscht ist. Schlußendlich sollte die Zeile in etwas wie folgt aussehen:
 
password required pam_unix.so nullok obscure min=6 max=11 md5
 
Wenn das Kommando su so geschützt werden soll das es nur von bestimmten Benutzern ausgeführt werden
 
kann, muß zunächst eine neue Gruppe dem System hinzugefügt werden. Üblich ist es hierzu die Gruppe
 
„wheel“ zu verwenden, da diese noch nicht existiert und es somit unwahrscheinlich ist das bereits Dateien zu
 
dieser Gruppe gehören. Dieser Gruppe ist der Benutzer root sowie alle Benutzer die das Kommando su
 
ausführen sollen, hinzuzufügen. In der Datei /etc/pam/su ist dann folgender Eintrag zu ergänzen:
 
auth requisite pam_wheel.so group=wheel debug
 
Somit wird sichergestellt das nur Benutzer die der Gruppe „wheel“ angehören das Kommando su ausführen
 
können. Alle anderen Benutzer bekommen eine entsprechende Meldung wenn sie versuchen das Kommando
 
auszuführen.
 
Wenn nur bestimmten Benutzern eine Authentifizierung über PAM erlaubt werden soll, so ist dies relativ
 
einfach über Dateien zu erreichen in denen die Benutzer aufgeführt sind denen der Login erlaubt oder verboten
 
werden soll. Wenn beispielsweise nur dem Benutzer „fr“ der Login über ssh erlaubt werden soll, so muß dieser
 
617
 
Kapitel 20. Systemsicherheit
 
in die Datei /etc/sshusers-allowed eingetragen werden und folgender Eintrag muß der Datei
 
/etc/pam.d/ssh hinzugefügt werden.
 
auth required pam_listfile.so item=user sense=allow file=/etc/sshusers-allowed onerr=fail
 
Zu guter letzt sind folgende Einträge der Datei /etc/pam.d/other hinzuzufügen:
 
Last, but not least, create /etc/pam.d/other and enter the following lines:
 
auth required pam_securetty.so
 
auth required pam_unix_auth.so
 
auth required pam_warn.so
 
auth required pam_deny.so
 
account required pam_unix_acct.so
 
account required pam_warn.so
 
account required pam_deny.so
 
password required pam_unix_passwd.so
 
password required pam_warn.so
 
password required pam_deny.so
 
session required pam_unix_session.so
 
session required pam_warn.so
 
session required pam_deny.so
 
Diese Voreinstellungen sind erst einmal eine sinnvolle Vorgabe, es werden grundsätzlich erstmal alle PAM
 
Zugriffe verweigert.
 
Ein Aufmerksamer Blick sollte auch in die Datei /etc/security/limits.conf geworfen werden. Hier
 
werden Resourcen für die Benutzer des Systems festgelegt.
 
20.2.2.6. Anpassungen der /etc/inetd.conf
 
Generell sollten alle nicht benötigten Dienste auf einem System deaktiviert werden. Jeder laufende, nicht
 
unbedingt benötigte Dienst stellt ein potentielles Risiko dar. Dies betrifft beispielsweise die Dienste echo,
 
charges, discard, daytime, time, talk, ntalk sowie die extrem unsicheren „r“-Kommandos wie rsh,
 
rlogin, rcp. Für letztere ist es in jedem Fall besser das Kommando ssh zu benutzen.
 
Nachdem die nicht benötigten Dienste deaktiviert sind, sollte geprüft werden ob der inetd überhaupt noch
 
benötigt wird. Dienste können natürlich auch als Daemon gestartet werden statt den inetd zu benutzen. Denial
 
of Service (DoS) Angriff können auch auf den inetd als Ziel ausgeführt werden und so beispielsweise die
 
Systemlast eines Rechners in die Höhe treiben. Wenn trotzdem nicht auf den Einsatz eines inetd verzichtet
 
werden kann, so sollte unter Umständen ein alternativer inetd eingesetzt werden der vielfältiger konfiguriert
 
werden kann, beispielsweise der xinetd oder der rlinetd.
 
Veränderungen an der inetd.conf können von Hand vorgenommen werden, Debian bietet aber eine einfach zu
 
benutzende Alternative dazu: mit dem Programm update-inetd können einzelne Dienste verändert werden.
 
Beipiel:
 
/usr/sbin/update-inetd --disable telnet
 
/etc/init.d/inetd restart
 
Nach jeder Änderung ist der inetd noch neu zu starten.
 
Das Kommando update-inetd kennt noch viele andere Optionen, beispielsweise auch um Einträge zu
 
löschen:
 
sushi:/home/fr#
 
Usage: update-inetd [OPTION] MODE ARGUMENT
 
618
 
Kapitel 20. Systemsicherheit
 
Options:
 
--version output version information and exit
 
--help display this help and exit
 
--verbose explain what is being done
 
--debug enables debugging mode
 
--multi allow multiple removes/disables
 
--file FILENAME use FILENAME instead of /etc/inetd.conf
 
--group GROUPNAME add entry to section GROUPNAME
 
--comment-chars CHARACTERS use CHARACTERS as comment characters
 
--pattern PATTERN use PATTERN to select a service
 
Modes:
 
--add ENTRY add ENTRY to /etc/inetd.conf
 
--remove ENTRY remove ENTRY (regular expression)
 
--enable SERVICE enable SERVICE in /etc/inetd.conf
 
--disable SERVICE disable SERVICE in /etc/inetd.conf
 
In order to prevent the shell from changing your ENTRY definition
 
you have to quote the ENTRY using single or double quotes. You can
 
use tabs (the tab character or \t) and spaces to separate the fields
 
of the ENTRY. If you want to enable/disable more than one SERVICE you
 
can use a comma separated list of services (no whitespace characters
 
allowed).
 
20.2.2.7. /etc/login.defs
 
Nun sollten einige Einstellungen zum Benutzer Login und zur grundsätzlichen Konfiguration vorgenommen
 
werden.
 
FAIL_DELAY 10
 
Diese Variable sollte auf einen höheren Wert gesetzt werden um „Brute-Force“ Angriffe auf einem Terminal zu
 
erschweren. Wenn ein falsches Passwort eingegeben wird, muß der Benutzer 10 Sekunden warten bis ein neuer
 
Login Versuch gestartet werden kann. Dies frist einiges an Zeit wenn versucht wird ein Passwort zu erraten.
 
Diese Einstellung gilt nur wenn getty benutzt wird, bei mingetty beispielsweise ist diese Einstellung ohne
 
Wirkung.
 
FAILLOG_ENAB yes
 
Mit dieser Variablen werden fehlgeschlagene Logins im Logfile verzeichnet. Dies ist wichtig wenn
 
„Brute-Force“ Angriffe aufgezeichnet werden sollen.
 
LOG_UNKFAIL_ENAB yes
 
Wenn die Variable FAILLOG_ENAB auf yes gesetzt wird, so sollte dies Variable auf yes gesetzt werden. Diese
 
Einstellung schreibt auch unbekannte Benutzernamen bei einem Login ins Logfile. Es ist darauf zu achten das
 
die entsprechenden Logdateien nicht von allen Benutzern gelesen werden können, da Benutzer häufig anstelle
 
des Benutzernamens das Passwort eingeben. Damit andere Benutzer diese Datei nicht lesen können sind die
 
Zugriffsrechte beispielsweise auf 640 zu setzen.
 
SYSLOG_SU_ENAB yes
 
Diese Einstellung verzeichnet die Benutzung des Kommandos su im Syslog.
 
SYSLOG_SG_ENAB yes
 
619
 
Kapitel 20. Systemsicherheit
 
Diese Einstellung erfüllt die gleiche Funktion wie die vorhergehende, jedoch für das Kommando sg.
 
MD5_CRYPT_ENAB yes
 
Wie schon beschrieben reduzieren MD5 verschlüsselte Passwörter die Gefahr des erschleichens eines
 
Passwortes durch entsprechende Software. Wenn auf dem System noch „slink“ (Debian 2.1) eingesetzt wird so
 
ist vor dem aktivieren dieser Option ein Blick in die Dokumentation zu werfen. Ansonsten wird diese
 
Einstellung über PAM realisiert.
 
PASS_MAX_LEN 50
 
Wenn MD5 Passwörter in der PAM Konfiguration aktiviert sind, so sollte diese Variable auf den gleichen Wert
 
wie dort gesetzt werden.
 
20.2.2.8. /etc/ftpusers
 
Diese Datei enthält eine Liste der Benutzer die nicht per FTP Protokoll einloggen dürfen. Benutzen Sie diese
 
Datei nur wenn Sie wirklich sicher sind das auf dem System auf tatsächlich ein FTP-Server laufen soll, da per
 
FTP der Benutzername und das Passwort immer im Klartext übertragen werden. Wenn der benutzte
 
FTP-Daemon PAM unterstützt, so können auch dort die Benutzer zugelassen oder ausgeschlossen werden.
 
20.2.2.9. Einsatz eines TCP Wrappers
 
TCP Wrapper wurde entwickelt als noch keine echten Paketfilter verfügbar waren aber trotzdem eine Kontrolle
 
notwendig wurde. Ein TCP Wrapper erlaubt oder verbietet die Nutzen eines Dienstes einem Rechner oder einer
 
Domain. Nähere Informationen finden sich in der Manpage hosts_access(5).
 
Hier nun vielleicht das kleinste System um Einbruchsversuche zu registrieren. Auf alle Fälle sollte auf jedem
 
System ein Firewall installiert sein, zusätzlich zu diesem TCP-Wrapper. Dieser kleine Trick schickt bei jedem
 
verweigerten Zugriff auf auf einen Service eine Mail an den Superuser.
 
ALL: ALL: spawn ( \
 
echo -e "\n\
 
TCP Wrappers\: Connection refused\n\
 
By\: $(uname -n)\n\
 
Process\: %d (pid %p)\n\
 
User\: %u\n\
 
Host\: %c\n\
 
Date\: $(date)\n\
 
" | /bin/mail -s "Connection to %d blocked" root)
 
Natürlich ist dieses Beispiel nicht perfekt: Bei vielen Verbindungen innerhalb einer kurzen Zeit werden
 
natürlich auch entsprechend viele E-Mails gesendet, was wiederrum einem DoS-Angriff gleichkommt.
 
20.2.2.10. Benutzung von su
 
Sollte es einmal notwendig sein Arbeiten am System als Superuser durchzuführen, so kann das Kommando su
 
benutzt werden um die benötigten Rechte zu erlangen. Es sollte versucht werden allen Benutzern klarzumachen
 
das Arbeiten als Superuser nur in Ausnahmefällen gestattet sind. In jedem Fall ist ein Login als root zu
 
vermeiden und stattdessen das Kommando su zu benutzen. Noch besser ist es jedoch das Kommando su
 
komplett zu entfernen und stattdessen das Kommando sudo zu benutzen, welche eine ganze Reihe weiterer
 
Funktionen bietet. su ist aber weithin bekannt da es auch auf vielen anderen Unix Systemen eingesetzt wird.
 
620
 
Kapitel 20. Systemsicherheit
 
20.2.2.11. Benutzung von sudo
 
sudo erlaubt einem Benutzer Kommandos unter der ID eines anderen Benutzers auszuführen, gegebenenfalls
 
auch als Superuser. Wenn der Benutzer in der Datei /etc/sudoers aufgeführt ist und sich authentifiziert hat,
 
können Kommandos ausgeführt werden die ebenfalls in dieser Datei aufgeführt sind. Verletzungen dieser Regel,
 
wie beispielsweise ein falsches Passwort oder die versuchte Ausführung eines unerlaubten Programmes, werden
 
aufgezeichnet und per E-Mail an den Superuser (root) geschickt.
 
20.2.2.12. Benutzung von chroot
 
chroot ist eine leistungsfähige Möglichkeit um ein Programm oder einen Daemon oder einem Benutzer zu
 
beschränken. Man kann sich das wie in einem Gefängnis vorstellen aus dem ein Ausbruch unmöglich ist
 
(normalerweise... aber einige Leute schaffen es ja doch manchmal...). Wenn einem Benutzer nicht vollkommen
 
vertraut wird, so kann für diesen eine chroot-Umgebung eingerichtet werden. Dies kann einiges an
 
Plattenplatz beanspruchen wenn alle benötigten Binaries und Bibliotheken in diese Umgebung kopiert werden
 
müssen. Auch wenn es dem Benutzer gelingt Schaden anzurichten, so bleibt dieser auf die beschränkte
 
Umgebung beschränkt.
 
Ein gutes Beispiel für eine solche Anwendung ist folgende: die Authentifizierung erfolgt nicht gegen die Datei
 
/etc/passwd sondern gegen LDAP oder/und eine MySQL Datenbank. Ein verwendeter FTP-Daemon benötigt
 
das Binary und ein paar Bibliotheken. Hier bildet eine chroot-Umgebung eine excellente Verbesserung der
 
Sicherheit, falls eine Sicherheitslücke in diesem FTP Daemon auftaucht. In diesem Fall ist lediglich die
 
Benutzer-ID des FTP-Daemons betroffen und keine anderen Benutzer des Systems. Natürlich können auch viele
 
andere Dienste von solch einer Umgebung profitieren.
 
Als Hinweiß: Bisher wird bei keiner Debian Version eine chroot-Umgebung für die Dienste und Server
 
verwendet.
 
20.2.2.13. Kernel Features
 
Viele Funktionen des Kernel können während der Laufzeit verändert werden, beispielsweise indem mit dem
 
Kommando echo ein Wert in die entsprechenden Datei geschrieben wird, oder mit dem Kommando sysctl.
 
Mit dem Kommando sysctl -A kann angezeigt werden welche Einstellungen verändert werden können und
 
welche Optionen verfügbar sind. In seltenen Fällen muß etwas verändert werden, aber auf diesem Weg kann die
 
Sicherheit des Systems erhöht werden.
 
/proc/sys/net/ipv4/icmp_echo_ignore_broadcasts = 0
 
Wird diese Variable auf den Wert 1 gesetzt, so verhält sich das System nach aussen wie ein Windows System
 
wenn ein Broadcast ping das System erreicht.
 
/proc/sys/net/ipv4/icmp_echo_ignore_all = 0
 
Wenn ICMP Pakete auf dem Firewall nicht geblockt werden sollen, so ist dieser Wert auf 1 zu setzen.
 
/proc/sys/net/ipv4/tcp_syncookies = 1
 
Diese Option ist ein zweischneidiges Schwert: Auf der einen Seite schützt es gegen „Syn-Flooding“ Atacken,
 
auf der anderen Seite entspricht dies nicht den RFCs. Diese Option beschäftigt die angreifende Seite ebenso mit
 
„Syn-Floods“ so das diese ebenso beschäftigt ist. Diese Option kann auch in /etc/network/options
 
verändert werden, indem die Option syncookies auf yes gesetzt wird.
 
/proc/sys/net/ipv4/conf/all/log_martians = 1
 
621
 
Kapitel 20. Systemsicherheit
 
Mit dieser Option werden Pakete mit unerlaubten Adresse, beispielsweise wegen eines fehlerhaften Routings,
 
im Netzwerk geloggt.
 
20.2.2.14. Benutzung der svgalib
 
SVGAlib ist eine schöne Einrichtung für Liebhaber der Konsole, in der Vergangenheit hat es sich jedoch gezeigt
 
das immer wieder Sicherheitslücken bekannt geworden sind. Sicherheitslücken in zgv wurden bekannt mit
 
denen Superuser Rechte erlangt werden konnten. Wenn möglich sollte auf die Verwendung der SVGAlib
 
verzichtet werden.
 
20.2.2.15. Sichere Übertragung von Dateien
 
Die Übertragung zwischen zwei Rechnern sollte auf keinen Fall mit Programmen wie ftp oder rcp erfolgen,
 
da diese den Benutzernamen und das Passwort unverschlüsselt übertragen. Als sichere Alternative steht scp zur
 
Verfügung welches im Paket ssh enthalten ist. Hier werden sowohl Benutzername als auch Passwort und auch
 
die Daten selber in verschlüsselter Form übertragen.
 
20.2.2.16. Benutzung von Quotas
 
Eine saubere Definition von Benutzerquotas ist wichtig um zu verhindern das Benutzer ein komplettes
 
Dateisystem mit Daten füllen können.
 
Es können grundsätzlich zwei verschieden Quota Systeme eingesetzt werden - Benutzer- oder
 
Gruppen-orientierte Quotas. Dies ist bei der Planung zu berücksichtigen.
 
Einige Punkte sind bei der Benutzung von Quotas zu beachten:
 
• Quotas sollten in Summe so klein gewählt werden das nicht der gesammte Plattenplatz belegt werden kann.
 
• Quotas sollten so groß gewählt werden das die Benutzer nicht in der Arbeit behindert werden, beispielsweise
 
sollte das Spoolverzeichnis für Mail nicht zu knapp bemessen werden.
 
• Quotas müssen auf allen, von Benutzern beschreibbaren Bereichen eingerichtet werden, beispielsweise
 
/home und /tmp.
 
Für jede Partition, bzw. jedes Verzeichnis, auf das Benutzer einen Schreibzugriff haben, sollten Quotas aktiviert
 
werden. Für diese Bereiche ist ein sinnvoller Wert zu errechnen der eine Balance zwischen Sicherheit und
 
Benutzbarkeit des Systems schafft.
 
Doch nun zur Benutzung von Quotas: Zunächst muß geprüft werden ob im Kernel die Quota Unterstützung
 
aktiviert ist. Wenn dies nicht der Fall ist, muß ein neuer Kernel erzeugt werden. Danach ist zu prüfen ob das
 
Paket quota installiert ist, ggf. ist dies zu installieren.
 
Quotas werden aktiviert indem in der Datei /etc/fstab der Eintrag für das entsprechende Dateisystem in der
 
Spalte „Options“ um den Eintrag usrquota erweitert wird.Wenn statt Benutzer-Quota, Gruppen-Quota benutzt
 
werden sollen, lautet der Eintrag grpquota. Natürlich können auch beide gleichzeitig verwendet werden. Nun
 
muß im Root-Verzeichnis des Dateisystems eine leere Datei quota.user und quota.group erzeugt werden.
 
Das Quota System muß nun neugestartet werden, dies geschieht durch die Kommandos /etc/init.d/quota
 
stop und /etc/init.d/quota start. Nun können die gewünschten Grenzwerte gesetzt werden.
 
Um die Quota für einen Benutzer (beispielsweise fr) zu setzen, wird das Kommando edquota -u fr benutzt.
 
Gruppen-Quota werden mit dem Kommando edquota -g gruppe gesetzt. Nun können die Grenzwerte für
 
„soft“ und „hard“ sowie für die Inodes gesetzt werden.
 
20.2.2.17. Zugriffsrechte von Logdateien
 
Einige Logdateien sind nach der Installation nicht perfekt. Zunächst ist es nicht notwendig das die Dateien
 
/var/log/lastlog und /var/log/faillog von jedem Benutzer gelesen werden können. In der Datei
 
lastlog sind Benutzer verzeichnet die sich in der letzten Zeit am System angemeldet haben, in der Datei
 
faillog finden sich fehlgeschlagene Loginversuche. Bei beiden Dateien sollten die Zugriffsrechte auf 660
 
622
 
Kapitel 20. Systemsicherheit
 
verändert werden. Prüfen Sie genau ob Logdateien mit unnötigen Zugriffsrechten versehen sind. Meist sind
 
Lese- und Schreibrechte für den Superuser und für die Gruppe adm oder root ausreichend.
 
20.2.2.18. setuid Überprüfungen
 
Debian wird mit einem täglichen Cronjob installiert welcher in /etc/cron.daily/standard zu finden ist.
 
Der Aufruf von /usr/sbin/checksecurity führt eine Überprüfung des Systems auf Änderungen des
 
setuid Flags an allen Dateien auf dem System durch.
 
Um diesen Check zu aktivieren muß die Variable CHECKSECURITY_DISABLE in der Datei
 
/etc/checksecurity.conf auf FALSE gesetzt sein. Dies ist auch die Voreinstellung, so das hier eigentlich
 
keine Änderungen erforderlich sind.
 
20.2.2.19. chattr / lsattr
 
Diese beiden Kommandos sind, auf einem ext2-Dateisystem sehr sinnvoll. Mit lsattr können die Attribute
 
einer Datei angezeigt werden, mit chattr können diese verändert werden. Attribute unterscheiden sich von
 
Zugriffsrechten! Es gibt viele verschiedene Attribute, hier werden nur die Sicherheitsrelevanten aufgeführt.
 
Zwei Attribute können nur vom Superuser gesetzt werden.
 
Zunächst wäre das „a“-Flag zu nennen. Wenn diese Attribut gesetzt ist können an die entsprechende Datei nur
 
Daten angehängt (append) werden. Dieses Attribut kann auf einige Dateien in /var/log/ angewendet werden,
 
beachten Sie jedoch das einige Dateien von Zeit zu Zeit rotiert werden.
 
Das zweite wichtige Flag ist „i“, welches für „immutable“ steht. Wenn diese Flag gesetzt wird kann eine Datei
 
weder verändert, gelöscht oder umbenannt werden. Auch kann kein Link auf diese Datei erzeugt werden. Wenn
 
Benutzern die Einsicht in Logdateien verwehrt werden soll, so kann diese Flag gesetzt werden und die
 
Leserechte können entfernt werden. Dies bietet auch eine etwas höhere Sicherheit gegen Eindringlinge, da
 
dieser sich sicher darüber wundert das die Datei nicht gelöscht werden kann. Trotzdem sollten Sie sich nicht
 
darauf verlassen das ein Eindringling diese Funktion nicht kennt. In jedem Fall ist es ihm zu diesem Zeitpunkt
 
bereits gelungen in das System einzudringen...
 
20.2.2.20. Integrität des Dateisystems
 
Sind Sie sicher das die, auf einem bereits seit Wochen oder Monaten ans Internet angeschlossenen System,
 
installierten Programme noch die urspünglichen sind? Oder kann es sein das bereits das Programm
 
/bin/login durch eine veränderte Variante ersetzt wurde, die einen unbemerkten Login als Superuser
 
erlaubt...?
 
Die einzige Methode ein System gegen solche Veränderungen zu schützen, ist die installierten Dateien täglich,
 
wöchentlich oder beispielsweise monatlich (je häufiger dieser Test durchgeführt wird, umso weniger Zeit bleibt
 
einem Eindringling auf dem System zu agieren) mittels eine Checksumme zu prüfen und diese mit vorab
 
gespeicherten Werten zu vergleichen.
 
Pakete die einen regelmäßigen Check der installierten Pakete ermöglichen sind: sXid, AIDE (Advanced
 
Intrusion Detection Environment) und Tripwire (die aktuelle Version befindet sich im Bereich non-free, eine der
 
nächsten Versionen wird unter der GPL stehen).
 
Mit dem Paket debsums können alle MD5-Checksummen der installierten Pakete mit der Original
 
Checksumme der Dateien in den Ursprungspaketen verglichen werden.
 
Mittels debsums -a können alle Pakete des Systems oder aber mit debsums paketname bestimmte Pakete
 
hinsichtlich der Checksummen überprüft werden. Hierbei ist zu beachten das es einem versierten Eindringling
 
durchaus möglich ist auch diese Kontrolle der Checksummen zu beeinflussen. Die ursprünglichen
 
Checksummen der Pakete liegen in den Dateien /var/lib/dpkg/info/paketname.md5sums und können
 
von Angreifer auch angepasst werden. Eine höhere Sicherheit bietet wie schon erwähnt das Paket tripwire.
 
623
 
Kapitel 20. Systemsicherheit
 
20.2.2.21. locate und slocate
 
Um die Sicherheit des Programmes locate zu erhöhen, kann alternativ das Programm slocate verwendet
 
werden. slocate ist eine verbesserte Version von locate aus dem GNU Projekt. Wenn slocate verwendet
 
wird, werden dem Benutzer nur Dateien angezeigt auf die dieser Benutzer auch tatsächlich Zugriff hat.
 
Weiterhin können per Konfiguration auch Dateien und Verzeichnisse gezielt ausgeschlossen werde, so das diese
 
nicht von locate in der Datenbank erfasst werden.
 
20.2.3. Sichere Dienste
 
20.2.3.1. ssh
 
Ssh sollte generell für alle Remote-Logins auf einem System eingesetzt werden. Wenn Sie noch telnetd
 
einsetzen, so ändern Sie dies jetzt sofort. Heutzutage ist es sehr einfach den Netzwerkverkehr mitzuschneiden
 
und so an unverschlüsselte Benutzernamen und Passwörter zu gelangen. Die Verwendung von Programmen die
 
keine verschlüsselte Kommunikation erlauben verbietet sich somit von selbst. Auch der Einsatz von
 
hochwertigen Netzwerkkompenenten wie Switches erlaubt Angreifern das „mitlauschen“ auf den
 
angeschlossenen Ports! Die meisten Switches schalten bei zu hoher Last einfach das „switching“ ab und
 
arbeiten wie ein normaler Hub! Verlassen Sie sich nie auf diese Komponenten, sorgen Sie selbst für Sicherheit.
 
Das Paket ssh kann mit dem Kommando apt-get install ssh schnell und einfach installiert werden.
 
Nun sollten alle Benutzer angewiesen werden ausschliesslich ssh und keinesfalls telnet zu benutzen. Wenn
 
möglich deinstallieren Sie telnet. Auch sollte ein Login als Superuser unmöglich gemacht werden, um
 
Superuser Rechte zu erlangen können die Kommandos su oder besser sudo benutzt werden.
 
Auch die Konfiguration des ssh Daemons kann zur Erhöhung der Sicherheit noch verbessert werden. In der
 
Datei /etc/ssh/sshd_config verbietet folgende Zeile einen Login via ssh als Superuser:
 
PermitRootLogin No
 
Dies verhindert das per Brute-Force Angriff ein Login als Superuser möglich ist, da kein Login als Superuser
 
erlaubt wird. Es sind nun zwei Login-Vorgänge (zunächst als Benutzer, dieser muss dann noch Superuser
 
werden) notwendig.
 
Listen 666
 
Wenn der Port auf dem der ssh Daemon läuft verändert wird, so kann dies einen potentiellen Angreifer auch
 
etwas beschäftigen. Es stehen aber verschiedene Netzwerktools zur Verfügung mit deren Hilfe schnell und
 
einfach ermittelt werden kann auf welchem Port ein Dienst läuft. Verwenden Sie hier nicht zuviel Ehrgeiz...
 
PermitEmptyPasswords no
 
Leere Passwörter sollte ebenfalls verhindert werden.
 
AllowUsers alex geka fr
 
Mit dieser Option wird nur bestimmten Benutzern der Login via ssh erlaubt.
 
AllowGroups wheel admin
 
Gleichermassen wird mit dieser Direktive nur bestimmten Gruppen der Zugriff per ssh erlaubt.
 
624
 
Kapitel 20. Systemsicherheit
 
Um Benutzern oder Gruppen expliziert den Zugriff zu verbieten, stehen die Optionen DenyUsers und
 
DenyGroups zur Verfügung.
 
PasswordAuthentication no
 
Wird diese Option auf „no“ gesetzt, so ist der Login nur Benutzern gestattet deren ssh-Key der Datei
 
~/.ssh/authorized_keys hinzugefügt wurde. Diese Einstellung ist sehr empfehlenswert! Bei Verwendung
 
eines Key wird das Passwort nicht mehr von Client zum Server übermittelt. Die Authorisierung wird anhand
 
eines Hashes geprüft und der Client erhält lediglich die Freigabe für den Server, oder auch nicht.
 
Weiterhin ist der SSH Daemon so einzustellen das auschliesslich das Protokoll der Version 2 verwendet wird.
 
Die Protokollversion 1 ist nach aktuellem Kenntnisstand als angreifbar anzusehen und sollte nicht mehr
 
verwendet werden.
 
Alle diese Optionen beziehen sich auf die Konfigurationsdateien von OpenSSH. Momentan sind drei ssh-Pakete
 
im Umlauf: ssh1, ssh2 und OpenSSH, welches vom OpenBSD Team entwickelt wurde. OpenSSH ist eine
 
komplett freie Implementation eines SSH Daemons, welche sowohl ssh1 als auch ssh2 unterstützt. Wenn das
 
Paket „ssh“ installiert wird, so wird das Paket OpenSSH gewählt.
 
20.2.3.2. FTP
 
Wenn auf dem System tatsächlich ein FTP Server installiert werden muß, so ist sicherzustellen das die Benutzer
 
sich in einer „chroot“ Umgebung bewegen. Diese hält den Benutzer in seinem Homeverzeichnis gefangen,
 
ansonsten könnte er sich frei im Dateisystem bewegen.
 
Mit der Option
 
DefaultRoot ~
 
im Globalen Abschnitt der Datei /etc/proftpd.conf kann dies sichergestellt werden. Danach ist der Server
 
mit /etc/init.d/proftpd restart von der Veränderung der Konfiguration zu unterrichten.
 
20.2.3.3. X Anwendungen im Netz
 
Um X Anwendung von einem Server aus auf einem Client darzustellen, ist zunächst auf dem Client das öffnen
 
der Anwendung durch den Server zu erlauben. Vielfach ist zu lesen das dies durch das Kommando xhost +
 
geschieht. Dies ist auch prinzipiell nicht falsch, erlaubt jedoch jedem System den Zugriff auf das X-Display.
 
Besser ist es den Zugriff nur von den gewünschten Systemen aus zu erlauben, indem der entsprechende
 
Rechnername dem Kommando als Option mitgegeben wird, also beispielsweise xhost +sushi.
 
Eine deutlich sicherere Lösung ist es allerdings die komplette Session über ssh und damit verschlüsselt, zu
 
tunneln. Dies erfolgt automatisch wenn eine ssh Verbindung zu einem System aufgebaut wird. Soll diese
 
Funktion abgeschaltet werden, so ist die Option X11Forwarding in der ssh Konfiguration anzupassen. In
 
Zeiten von ssh sollte auf die Verwendung von xhost komplett verzichtet werden.
 
Wenn keinerlei Zugriff auf den X-Server von anderen Systemen im Netz erlaubt werden soll, so ist es das
 
sicherste dies bereits beim Start von X zu verhindern indem der TCP Port 6000 deaktiviert wird. Wenn X über
 
das Kommando startx gestartet wird, so kann dies mit: startx -- -nolisten tcp geschehen.
 
20.2.3.4. Display Manager
 
Wenn der Displaymanager (das Programm welches einen grafischen Login beritstellt) nur auf dem lokalen
 
System benötigt wird, so ist sicherzustellen das XDMCP (X Display Manager Control Protocol) deaktiviert ist.
 
Wenn das Programm xdm benutzt wird kann dies durch die Zeile
 
DisplayManager.requestPort: 0
 
625
 
Kapitel 20. Systemsicherheit
 
in der Datei /etc/X11/xdm/xdm-config geschehen.
 
Die XDMCP Unterstützung ist bei der Grundinstallation alle Display Manager unter Debian deaktiviert.
 
20.2.3.5. E-Mail
 
Das lesen bzw. empfangen von E-Mail mittels POP3 ist das am häufigsten eingesetzte Protokoll ohne
 
Verschlüsselung. Unabhängig davon ob POP3 oder IMAP als Protokoll verwendet wird, beide benutzen
 
Benutzernamen und Passwörter im Klartext und auch die Daten werden unverschlüsselt übertragen. Als
 
Alternative kann auch hier ssh verwendet werden, falls ein Shell-Account auf dem Rechner vorhanden ist.
 
Mittels fetchmail kann über ssh eine verschlüsselte Verbindung aufgebaut werden, hierzu eine
 
entsprechende .fetchmailrc:
 
poll my-imap-mailserver.org via "localhost"
 
with proto IMAP port 1236
 
user "ref" there with password "hackme" is alex here warnings 3600
 
folders
 
.Mail/debian
 
preconnect ’ssh -f -P -C -L 1236:my-imap-mailserver.org:143 -l ref
 
my-imap-mailserver.org sleep 15 < /dev/null > /dev/null’
 
Die wichtigste Zeile ist der „preconnect“ Eintrag. Dieser startet eine ssh Session und installiert einen Tunnel
 
welcher automatisch die Verbindungen zum IMAP Server auf Port 1236 weiterreicht, verschlüsselt. Alternativ
 
kann fetchmail auch mit SSL benutzt werden.
 
Wenn verschlüsselte IMAP und POP3 Server zur Verfügung gestellt werden sollen, so ist das Paket stunnel zu
 
installieren. Die Daemonen müssen dann über stunnel -p /etc/ssl/certs/stunnel.pem -d pop3s
 
-l /usr/sbin/popd gestartet werden, wobei -l den gewünschten Daemon und -d den Port beschreibt. Die
 
Option -p setzt das SSL Zertifikat.
 
Mittlerweile sind auch POP und IMAP Server verfügbar die über Verschlüsselungsfunktionen mittels SSL
 
verfügen. Als Server für das POP Protokoll wäre hier apop zu nennen.
 
20.2.3.6. loghost - ein Server für Logdateien
 
Ein „loghost“ ist ein Rechner auf dem Daten aus dem Syslog verschiedener Rechner remote gespeichert
 
werden. Wenn ein Eindringling ein System geknackt hat, so ist es ihm unmöglich die Spuren aus den
 
Logdateien zu entfernen, ausser er knackt auch noch den loghost. Somit sollte speziell ein solcher loghost gut
 
abgesichert sein. Um ein System zu einem loghost umzuwandeln muß lediglich der syslog Daemon mit der
 
Option -r gestartet werden. Natürlich muss aber auch auf allen Rechnern die nun die Daten auf diesem loghost
 
abliefern sollen eine Anpassung erfolgen. Auf diesen Systemem sind in der Datei /etc/syslog.conf
 
folgende Einträge hinzuzufügen:
 
facility.level @loghost
 
Das Feld „facility“ kann dabei den Wert authpriv, cron, cron, daemon, kern, lpr, mail, news, syslog,
 
user, uucp oder local1 bis local7 annehmen. Als „level“ kann alert, crit, err, warning, notice oder
 
info angegeben werden. Hinter dem Zeichen „@“ ist der Name des loghosts anzugeben.
 
Wenn generell alle Einträge auf dem entfernten System gelogt werden sollen, so führt folgende Zeile zum
 
Erfolg:
 
*.* @loghost
 
626
 
Kapitel 20. Systemsicherheit
 
Im Idealfall wird man die Logdateien sowohl auf dem lokalen System als auch auf dem Loghost speichern um
 
durch vergleichen der Dateien schneller zu Ergebnis zu kommen. Weitere Informationen finden sich in den
 
Manpages zu syslog(3), syslogd(8) und syslog.conf(5).
 
20.2.3.7. BIND
 
Auf einem unveränderten System läuft der Nameserver BIND nach der Installation mit den Rechten des
 
Benutzers und der Gruppe „root“. BIND kann sehr leicht umkonfiguriert werden, so daß er unter einer anderen
 
Benutzer ID läuft. Leider kann er dann nicht mehr automatisch neue Netzwerkdevices erkennen die während
 
des laufenden Betriebes hinzugefügt wurden, beispielsweise eine PCMCIA Netzwerkkarte in einem Notebook
 
oder auch virtuelle Netzwerkdevices.
 
In der Datei README.Debian des Nameservers finden sich weitere Informationen wie BIND unter einer
 
anderen Benutzer ID zu laufen zu bringen ist. Wenn möglich sollte darauf verzichtet werden BIND mit
 
Superuserrechten zu benutzen.
 
Um BIND mit einer anderen Benutzer ID zu starten muß zunächst ein neuer Benutzer und eine entsprechende
 
Gruppe angelegt werden. Es kann beispielsweise als Benutzername und Gruppe der Name „named“ benutzt
 
werden.
 
Hierzu sind folgende Kommandos notwendig
 
addgroup named
 
adduser --system --ingroup named named
 
Nun muß in der Datei /etc/init.d/bind der Eintrag
 
start-stop-daemon --start
 
in
 
start-stop-daemon --start --quiet --exec /usr/sbin/named -- -g named -u named
 
geändert werden.
 
Natürlich ist BIND nun noch mit /etc/init.d/bind stop und /etc/init.d/bind start neuzustarten.
 
Dabei sollten im syslog (/var/log/syslog) in etwa folgender Eintrag auftauchen:
 
Jul 8 23:21:01 sushi named[12432]: group = named
 
Jul 8 23:21:01 sushi named[12432]: user = named
 
Damit ist die Umstellung abgeschlossen. Idealerweise kann BIND nun noch in einer „chroot“ Umgebung
 
betrieben werden.
 
20.2.3.8. snort
 
snort ist ein flexibler Packet Sniffer welcher verschiedenste Angriff ermitteln kann. Hierzu gehören Buffer
 
Overflows, CGI Angriffe, SMB Angriffe und vieles mehr. Snort kann Alarmierungen in Echtzeit durchführen.
 
Dieses Programm sollte auf jedem Router installiert sein um jederzeit das Netzwerk zu überwachen. Die
 
Installation erfolgt mit einem apt-get install snort, beantworten Sie die Fragen und werfen Sie dann
 
einen Blick auf die Logdateien.
 
627
 
Kapitel 20. Systemsicherheit
 
20.2.4. Vor einem Einbruch
 
20.2.4.1. Debian Sicherheits Updates
 
Unmittelbar nach jeder neuen Debian GNU Installation, beispielsweise von CD, sollten die neuesten
 
verfügbaren Security-Updates installiert werden. Durch die notwendigen Vorlaufzeiten bei der Produktion von
 
CDs sind diese natürlich nicht immer auf dem neuesten Stand. Natürlich ist es nicht ausreichend ein solches
 
Update einmalig auszuführen, vielmehr müssen diese Updates in regelmäßigen Abständen durchgeführt
 
werden. Dies verhindert das Software mit bekannten Sicherheitslücken über längere Zeit im laufenden Betrieb
 
verwendet wird.
 
20.2.4.2. Austausch von Software
 
Zunächst sollten alle Netzwerkdienste deren Passwörter im Klartext übertragen werden, deaktiviert, bzw. gegen
 
Versionen mit verschlüsselter Kommunikation ausgetauscht werden. Dies betrifft Dienste wie
 
FTP/Telnet/NIS/RPC usw..
 
Auch sollte auf die Verwendung von NIS (Network Information Service) verzichtet werden. Bei einer
 
fehlerhaften Konfiguration kann es leicht zu Sicherheitslücken kommen.
 
Auch sollte RPC deaktiviert werden soweit es möglich ist. Für diesen Dienst sind eine ganze Reihe von
 
Sicherheitslücken bekannt. Natürlich wird grade NFS häufig verwendet und stellt in vielen Netzen einen
 
wichtigen Basisdienst dar. Hier gilt es einen Kompromiss zwischen Sicherheit und Benutzbarkeit der
 
Netzwerkdienste zu finden. Viele DDoS (Distributed Denial of Service) Angriffe benutzen RPC
 
Sicherheitslücken um Systeme zu sogenannten „Agents“ oder „Handlern“ umzuwandeln.
 
Das deaktivieren des Portmapers ist relativ einfach, wie für jede Lösung gibt es auch hier verschiedene Wege.
 
Auf einem Debian System ist der einfachste Weg sicherlich ein update-rc.d portmap remove. Dieses
 
Kommando löscht jeden symbolischen Link auf den Portmaper in /etc/rc${runlevel}.d/. Dies kann
 
natürlich auch auf herkömlichem Wege von Hand erledigt werden. Eine weitere, nicht ganz elegante,
 
Möglichkeit ist es die Zugriffsrechte so zu ändern das das Script nicht mehr ausführbar ist, mittels: chmod 644
 
/etc/init.d/portmap. Dies würde jedoch zu einer Fehlermeldung beim Start des Systems führen.
 
Natürlich macht es nur wenig Sinn lediglich einen Teil der Dienste von unverschlüsselter auf verschlüsselte
 
Kommunikation umzustellen, hier sollte der Systemadministrator konsequent durchgreifen. Generell sollten die
 
Dienste ftp, telnet, pop, imap, http entfernt und durch die entsprechenden Dienste mit verschlüsselter
 
Kommunikation (ftp-ssl, telnet-ssl, pop-ssl, https) ersetzt werden.
 
20.2.4.3. Kernel Patches
 
Im Netz sind einige Kernel Patches verfügbar die nicht Bestandteil des Standard Linux Kernels sind, dessen
 
Sicherheit aber verbessern. Vor dem Einsatz ist im Einzelfall zu prüfen ob der gewünschte Patch nicht schon in
 
den gewünschten Kernel eingeflossen ist. Auch erhebt die Auflistung natürlich keinerlei Anspruch auf
 
Vollständigkeit.
 
• OpenWall Patch von „Solar Designer“ Eine Sammlung von Patches die beispielsweise Links beschränken,
 
FIFOs in /tmp/ unterbinden, das /proc-Dateisystem schützen, die Behandlung von Datei-Descriptoren
 
ändern und einiges andere verändern. Momentan werden Kernel der Serien 2.0, 2.2 und 2.4 unterstützt.
 
Detailierte Informationen finden sich auf der Homepage http://www.openwall.com/linux/.
 
• LIDS - Linux intrusion detection system von Huagang Xie und Philippe Biondi. Dieser Patch vereinfacht die
 
Sicherung eines Linux Systems. Jeder Prozess kann beschränkt werden, indem Lese- und
 
Schreibberechtigungen auf Dateien vergeben werden können. Weiterhin können je Prozess „Capabilities“
 
gesetzt werden. Zum Einsatz von LIDS auf Debian GNU Systemen gibt es eine spezielle Seite im Netz unter
 
http://netzwurm.cc/computer/lids.html. Dort findet sich neben einem vorkonfigurierten Kernel auch ein Paket
 
mit dem Administrationstool. Dieser Patch findet sich auf der Homepage des Projektes unter
 
http://www.lids.org.
 
• POSIX Access Control Lists (ACLs) für Linux. Dieser Patch erweitert den Kernel um Access Control Lists
 
(ACLs), eine Methode um den Zugriff auf Dateien detailierter beschränken zu können. http://acl.bestbits.at
 
628
 
Kapitel 20. Systemsicherheit
 
• Linux trustees. Mit diesem Patch wird ein erweitertes System mit Zugriffsrechten dem Kernel hinzugefügt.
 
Alle Objekte werden im Kernel Speicher gehalten, so das ein schneller Zugriff möglich ist. Homepage:
 
http://www.braysystems.com/linux/trustees.html.
 
• International kernel patch. Dieser Patch implementiert cryptografische Dateisysteme im Kernel. Es sind in
 
einigen Ländern die entsprechenden Gesetze zu beachten. Homepage: http://www.kerneli.org.
 
• SubDomain. Mit diesem Patch kann eine noch sicherere chroot Umgebung aufgesetzt werden. Die für die
 
Umgebung benötigten Dateien können einzeln angegeben werden und müssen nicht mit einkompiliert
 
werden. Homepage: http://www.immunix.org/subdomain.html.
 
• UserIPAcct. Dieser Patch bezieht sich nicht direkt auf die Sicherheit eines Systems, erhöht aber die
 
Komtrolle über die unberechenbaren Benutzer. Hiermit können Quotas, bezogen auf den Benutzer, für den
 
Netzwerktraffic vergeben werden. Statistiken sind ebenfalls verfügbar. Homepage:
 
http://rsmeyers.3ti.org/useripacct.
 
• FreeS/WAN. Um IPSec zusammen mit dem Linux Kernel verwenden zu können wird dieser Patch benötigt.
 
Hiermit können VPNs (Virtual Private Network) sehr leicht aufgesetzt werden, zur Not auch mit Windows
 
Rechnern auf der Gegenseite. IPSec ist der für VPNs eingebürgerte Standard. Homepage:
 
http://www.freeswan.org.
 
20.2.4.4. Weitere Möglichkeiten
 
Im folgenden einige Gedanken wie bisher gesagtes weiterhin umgesetzt werden kann.
 
PAM ist durch den modularen Aufbau in der Lage die verschiedensten Authentifizierung Medien zu nutzen.
 
Wie wäre es mit einem Scanner für Fingerabdrücke oder einem Iris-Scanner?
 
Alle bisherigen Logfiles wurden auch in Files geschrieben. Diese können von einem Angreifer natürlich
 
verändert oder gelöscht werden, auch wenn diese auf anderen Rechnern gespeichert werden. Logfiles die auf
 
einem Drucker mit Endlospapier ausgegeben werden können nicht gelöscht werden!
 
Um das löschen oder das verändern von Dateien zu verhindern kann ein komplettes System einmalig
 
konfiguriert werden und dann auf eine bootfähige CD-ROM geschrieben werden. Natürlich sind so noch
 
Angriffe auf das System möglich, es können aber keine Daten verändert, oder zusätzliche Programme installiert
 
werden. Für ein Firewall System ist dies beispielsweise eine sinnvolle Möglichkeit das System zu schützen.
 
Kernel Module: wenn möglich sollten alle Kernel Treiber nicht als Module übersetzt werden. Dann kann die
 
Möglichkeit Module zu laden komplett deaktiviert werden. So können viele Angriffe abgewehrt werden. Auch
 
hier gilt: nicht benutzte Funktionen sind abzuschalten.
 
20.2.5. Nach einem Einbruch...
 
Nach einem Einbruch gibt es nicht viel zu tun. Das System ist sofort vom Netz zu nehmen und komplett neu zu
 
installieren. Einfach, nicht war? Natürlich gilt es herauszufinden wie der Eindringling auf das System
 
gekommen ist. Dies geschieht in einer abgeschotteten Umgebung, also ohne Netzzugang für das betroffene
 
System. Es sind zur späteren weiteren Analyse alle Daten auf einem geeigneten Medium zu sichern.
 
Gegebenenfalls ist eine Meldung an ein CERT zu erstellen und dort der Einbruch zu melden. Ist eine
 
Strafverfolgung des Einbruchs vorgesehen oder geplant, so ist ggf. auf professionelle Unterstützung
 
zurückzugreifen.
 
Weiterhin sind auf dem neuen System alle notwendigen, vorab beschriebenen Sicherheitsvorkehrungen zu
 
treffen.
 
629
 
Kapitel 21. Anpassen und Erzeugen von Debian
 
Paketen
 
Wenn Sie sich schon einige Zeit intensiver mit Debian auseinandergesetzt haben, so kommt vielleicht der
 
Wunsch auf, eigene Pakete für das lokale System zu erzeugen. Vielleicht wollen Sie aber auch Pakete für
 
Freunde bereitstellen oder sogar an der Debian Entwicklung teilhaben. Auch wenn es bei einigen tausend
 
Debian Paketen schwer fällt, für einen Anwendungsbereich keine passende Software zu finden, so kann es doch
 
sinnvoll sein, bestehende Pakete anzupassen (beispielsweise mit einer entsprechenden Konfiguration für das
 
lokale Netzwerk) oder gar komplett neue Pakete zu erzeugen, die noch nicht als Debian Paket verfügbar sind.
 
Für beide Probleme finden Sie in diesem Abschnitt eine Lösung.
 
21.1. Debian Pakete anpassen
 
Das Anpassen von vorhandenen Debian Paketen kann aus verschiedenen Gründen sinnvoll sein. Es kann
 
vorkommen, dass ein Paket auf der verwendeten Release Version von Debian (noch) nicht verfügbar ist, dass
 
andere Flags zur Übersetzung mit dem Compiler verwendet werden sollen, oder dass das Paket auf einer
 
anderen Hardwarearchitektur benutzt werden soll. Auch Anpassungen an den Init-Scripten sind unter
 
Umständen sinnvoll.
 
Zunächst sind von dem gewünschten Paket die entsprechenden Dateien mit den Endungen .dsc (Description /
 
Beschreibung), .diff.gz (die für Debian vorgenommenen Änderungen) und .tar.gz (die eigentlichen
 
Sourcen des Programmes) von Debian FTP Server zu holen. Für das Paket „gato“ finden sich auf dem Debian
 
FTP-Server im Verzeichnis /debian/dists/woody/main/source/admin die Dateien
 
gato_0.6.4-2.diff.gz, gato_0.6.4-2.dsc und gato_0.6.4.orig.tar.gz.
 
Im nächsten Schritt sind die Sourcen des Paketes zu entpacken. Dies geschieht nicht wie sonst bei
 
Sourcepaketen üblich mit dem Kommando tar (dieses würde lediglich die Original Sourcen entpacken)
 
sondern mit dem Kommando dpkg-source -x *.dsc. Hierbei werden zusätzlich die für das Debian Paket
 
vorgenommenen Veränderungen (Patches) und alle Dateien, die sich im Verzeichnis debian/ befinden,
 
entpackt. Die Sourcen befinden sich in einem neuen Verzeichnis, welches sich aus dem Paketnamen und der
 
Programmversion zusammensetzt. Wechseln Sie in dieses Verzeichnis.
 
Nun können die gewünschten Veränderungen an den Sourcen vorgenommen werden. Wenn Sie Veränderungen
 
oder Ergänzungen an Dateien im Verzeichnis debian/ vornehmen, so ist darauf zu achten das unter Umständen
 
auch Veränderungen oder Anpassungen in der Datei debian/rules notwendig sind. Mehr zu den Funktionen
 
der einzelnen Dateien erfahren Sie im nächsten Abschnitt. Abschliessend kann das Paket mit
 
dpkg-buildpackage -us -uc -rfakeroot erstellt werden. Weitere Optionen von dpkg-buildpackage
 
finden Sie ebenfalls im nächsten Abschnitt beschrieben.
 
21.2. Debian Pakete erzeugen
 
Wenn Sie ein komplett neues Debian Paket erzeugen wollen, sei es weil zu den Sourcen noch kein Paket
 
vorhanden ist oder weil Sie selber eine Software entwickelt haben, die Sie als Debian Paket zur Verfügung
 
stellen wollen, so stehen Ihnen auch dafür unter Debian einige Hilfsmittel zur Verfügung.
 
Zunächst sollten Sie sich die Sourcen des gewünschten Paketes besorgen und ein Unterverzeichnis für das neue
 
Projekt erzeugen. Am Beispiel des Programmes dtcltiny, einem Client zur Steuerung von digitalen
 
Modellbahnen, sollen die einzelnen Schritte vorgestellt werden. Die Sourcen diese Programmes finden Sie unter
 
http://www.markus-pfeiffer.de. Natürlich können Sie auch ein beliebiges anderes Programm benutzen von dem
 
Sie ein Debian Paket erzeugen möchten. Sie müssen dann aber ggf. an einigen Stellen etwas Kreativität
 
einsetzen, da die hier gezeigten Beispiele sich nicht 1:1 übertragen lassen. Es ist überigens nicht zwingend
 
notwendig das die Sourcen zu einem Programm verfügbar sind. Natürlich können Sie auch Debian Pakete von
 
Programmen im Binärformat erstellen oder auch Dokumentation, beispielsweise im PDF Format, zu einem
 
Paket packen.
 
Wechseln Sie nun in das Unterverzeichnis und entpacken Sie die Sourcen des Programmes:
 
630
 
Kapitel 21. Anpassen und Erzeugen von Debian Paketen
 
fr@debian:~/Daten/debian-pakete$ mkdir dtcltiny
 
fr@debian:~/Daten/debian-pakete$ cd dtcltiny
 
fr@debian:~/Daten/debian-pakete/dtcltiny$ tar xvfz ../../../dtcltiny-0.3.4.tgz
 
dtcltiny-0.3.4/
 
dtcltiny-0.3.4/Makefile.am
 
dtcltiny-0.3.4/acinclude.m4
 
dtcltiny-0.3.4/Makefile.dist
 
...
 
dtcltiny-0.3.4/dtcltiny/InfoPort.moc.o
 
dtcltiny-0.3.4/dtcltiny/.libs/
 
dtcltiny-0.3.4/configure
 
dtcltiny-0.3.4/stamp-h
 
Wichtig ist hierbei, dass das entstehende Unterverzeichnis schon aus dem Programmnamen und der
 
Versionsnummer besteht. Sollte dies nicht so sein, muß das Verzeichnis entsprechend umbenannt werden. Im
 
nächsten Schritt ist in das Verzeichnis zu wechseln und das Programm dh_make aufzurufen.
 
fr@debian:~/Daten/debian-pakete/dtcltiny$ cd dtcltiny-0.3.4/
 
fr@debian:~/Daten/debian-pakete/dtcltiny/dtcltiny-0.3.4$ dh_make
 
Type of package: single binary, multiple binary, or library? [s/m/l] s
 
Maintainer name : Frank Ronneburg
 
Email-Address : fr@unknown
 
Date : Tue, 13 Nov 2001 21:56:17 +0100
 
Package Name : dtcltiny
 
Version : 0.3.4
 
Type of Package : Single
 
Hit <enter> to confirm:
 
Done. Please edit the files in the debian/ subdirectory now. dtcltiny
 
uses a configure script, so you probably don’t have to edit the Makefiles.
 
dh_make erzeugt ein Unterverzeichnis, debian/ in dem sich Vorlagen für alle notwendigen Dateien zur
 
Erzeugung eines Debian Paketes befinden. dh_make bietet die Möglichkeit verschiedene Pakettypen zu
 
erzeugen, für ein einfaches Paket wie in diesem Beispiel ist „single binary“ die richtige Wahl. Abschliessend
 
wird noch der Hinweis ausgegeben, dass sich im Unterverzeichnis debian/ einige Dateien befinden, auf die
 
nochmal ein Blick geworfen werden sollte. Weiterhin wird darauf hingewiesen, dass in den Sourcen von
 
dtcltiny ein configure Script enthalten ist und somit Änderungen am Makefile wahrscheinlich unnötig
 
sind. Neben dem Verzeichnis debian/ wurde im darüber liegenden Verzeichnis noch eine Kopie des gesamten
 
Verzeichnisbaumes angelegt. Dieser wurde um die Endung .orig ergänzt.
 
Bei genauer Betrachtung des Beispiels ist vielleicht aufgefallen, dass die E-Mail Adressen nicht korrekt erkannt
 
wurde, ein nettes Beispiel also, so kommen wir nicht um einen Blick ins Verzeichnis debian/ herum ;-).
 
21.2.1. README.Debian
 
Die Datei README.Debian enthält Informationen zu den Besonderheiten des Debian Paketes. Wenn
 
Veränderungen oder Ergänzungen gegenüber dem Source Paket vorgenommen werden, so sollten diese hier
 
vermerkt werden. Achten Sie darauf in der letzten Zeile die E-Mail Adresse anzupassen. Eine bereits veränderte
 
Version könnte wie folgt aussehen:
 
dtcltiny for Debian
 
*******************
 
Ergänzungen:
 
- dtcltiny in dtcltiny.bin umbenannt.
 
- dtcltiny ist ein wrapper, wenn vorhanden wird eine Konfigdatei
 
.dtcltiny.data aus dem Homeverzeichnis des Benutzers geladen.
 
- In /usr/share/doc/dtcltiny/ findet sich eine
 
631
 
Kapitel 21. Anpassen und Erzeugen von Debian Paketen
 
Beispielkonfigurationsdatei (SAMPLE.dtcltiny.data)
 
-*- Frank Ronneburg <fr@openoffice.de>, Tue, 6 Nov 2001 22:29:53 +0100
 
Wenn Sie ein offizielles Debian Paket erstellen wollen oder auch nur das Paket im Netz verfügbar machen, so
 
sollte die komplette Dokumentation, also auch Kommentare, in englischer Sprache erstellt werden. Bei Paketen
 
für den privaten Gebrauch bleibt Ihnen die Wahl der Sprache natürlich überlassen.
 
Wenn keine weiteren Veränderungen an den Sourcen, der Dokumentatiion oder den Scripten des Programmes
 
notwendig waren, so kann diese Datei auch einfach gelöscht werden.
 
21.2.2. files
 
Diese Datei enthält lediglich den Paketnamen, den Bereich sowie die Priorität des Paketes.
 
dclttiny_0.3.4-1_i386.deb misc optional
 
21.2.3. changelog
 
In dieser Datei werden Veränderungen zwischen den einzelnen Paketversionen (changes) dokumentiert. Sie
 
sollten hier bei einer aktualisierten Version des Paketes die Veränderungen gegenüber der vorhergehenden
 
Version dokumentieren. Sollte sich das Programm auf einem System plötzlich anders verhalten, so lassen sich
 
meisten aus den Angaben in dieser Datei Rückschlüsse ziehen ob diese Veränderung beabsichtigt war.
 
dtcltiny (0.3.4-1) unstable; urgency=low
 
* Initial Release.
 
-*- Frank Ronneburg <fr@openoffice.de> Tue, 6 Nov 2001 22:29:53 +0100
 
Local variables:
 
mode: debian-changelog
 
End:
 
21.2.4. copyright
 
In dieser Datei finden sich Hinweise zum Copyright dieses Paketes. Es können die gesamten Copyright
 
Informationen hier aufgeführt werden, bei Paketen, die einer weit verbreiteten Lizenz unterliegen, reicht auch
 
ein kurzer Hinweis, wo die Lizenz zu finden ist. Hier ein Beispiel für eine Software die der GPL unterliegt.
 
Hier gibt es immer wieder Diskussionen unter den Debian Entwicklern. Insbesondere bei Paketen die der GPL
 
unterliegen gehen die Meinungen auseinander. Grundsätzlich sollte, um Missverständnisse zu vermeiden, zu
 
jedem Paket die Lizenz mitgeliefert werden. Die GPL hat in der aktuellen Version 2 eine Größe von ca. 18 kB.
 
Das ist nicht sehr viel, wenn man die aber mit einigen tausend Paketen multipliziert so kommt doch eine
 
beachtliche Menge an Speicherplatz zusammen. Es wurde vereinbart im Verzeichnis
 
/usr/share/common-licenses/ jeweils eine Version der gebräuchlisten Lizenzen abzulegen und in jedem
 
Paket nur auf die entsprechende Stelle zu verweisen. Somit ist sichergestellt das die Lizenz auf jedem Debian
 
System installiert ist.
 
Das folgende Beispiel zeigt eine solche Datei mit einem Hinweis auf die GPL.
 
This package was debianized by Frank Ronneburg <fr@openoffice.de> on
 
Tue, 6 Nov 2001 22:29:53 +0100.
 
It was downloaded from http://www.markus-pfeiffer.de/
 
632
 
Kapitel 21. Anpassen und Erzeugen von Debian Paketen
 
Upstream Author(s): Markus Pfeiffer <dtcltiny@markus-pfeiffer.de>
 
This code is released under the terms of the GPL license.
 
See /usr/share/common-licenses/GPL for the full license.
 
21.2.5. control
 
Die Datei control enthält verschiedenste Angaben zu dem Paket. Wichtig ist hier die Zeile Section:, dies ist
 
der Bereich, in dem das Paket in der Debian Paketstruktur erscheint. Die Zeile Description: enthält in einer
 
Zeile eine kurze Beschreibung des Paketes. Alle weiteren Zeilen müssen mit einem Leerzeichen beginnen und
 
beschreiben das Paket ausführlich. Auch diese Texte sollten in englischer Sprache verfasst werden (das hier
 
gezeigte Beispiel spiegelt lediglich den Zeitmangel des Autors wider...).
 
Source: dtcltiny
 
Section: x11
 
Priority: optional
 
Maintainer: Frank Ronneburg <fr@openoffice.de>
 
Build-Depends: debhelper (>> 3.0.0)
 
Standards-Version: 3.5.2
 
Package: dtcltiny
 
Architecture: any
 
Depends: ${shlibs:Depends}
 
Description: Control Locomotives on a Model Railroad, needs SRCP Server (eg. erddcd)
 
dtcltiny ist ein Programm, mit dem man Loks auf einer Modellbahn steuern kann,
 
die mit einem Digitaldecoder ausgerüstet sind. Es stellt für jede Lok einen
 
Regler zur Verfügung, mit dem man die Geschwindigkeit, Fahrtrichtung und
 
Sonderfunktionen einstellen kann. Nebenbei bietet es noch die Möglichkeit,
 
Decoder nach dem NMRA-DCC Standard und Uhlenbrock-Decoder zu Programmieren.
 
Die meisten der verwendeten Schlüsselwörter sollten selbsterklärend sein. Source: beschreibt den Namen der
 
Sourcen des Paketes, mit Priority: kann bestimmt werden ob auf das Paket verzichtet werden kann
 
(optional) oder ob das Paket zwingend notwendig für das System ist. Die Zeile Maintainer: enthält den
 
Namen und die E-Mail Adresse des Paketbetreuers, diese Angaben sind in der gezeigten Schreibweise
 
anzugeben. Build-Depends: beschreibt die Abhängigkeiten des Paketes. Mit dem Schlüsselwort Package:
 
wird der Paketname des Binärpaketes beschrieben, die folgende Zeile Architecture: bezeichnet für welche
 
Architekturen das Paket verwendet werden kann. Die kann beispielsweise i386, powerpc, alpha usw. sein,
 
oder wie hier gezeigt das Schlüsselwort any für alle Architekturen.
 
21.2.6. rules
 
In dieser Datei werden die Regeln zur Erstellung des Paketes definiert. Sollte der von Ihnen verwendete Source
 
Code kein Makefile enthalten oder auch kein configure verwenden, so müssen Sie in dieser Datei die
 
notwendigen Schritte zum erfolgreichen Übersetzen des Paketes beschreiben. Im hier gezeigten Beispiel wurde
 
make ($(MAKE)) mit der Option -j 6 ergänzt, um die Übersetzung etwas zu beschleunigen.
 
Eventuell kann es, beispielsweise bei Paketen die ausschliesslich Dokumentation enthalten, notwendig sein alle
 
Zeilen die make aufrufen auszukommentieren. Sie müssen dann durch geeignete Einträge in der Datei selbst
 
dafür sorgen das die Dateien an die richtige Stelle im Dateisystem kopiert werden. Die hier gezeigte Version
 
wurde bereits an einigen Stellen angepasst.
 
Im Abschnitt install: build sind einige Regeln definiert worden, mit denen das Binary durch ein Script
 
ersetzt wird. Weiterhin wird ein Konfigfile als Beispiel im Dokumentationsverzeichnis abgelegt.
 
#!/usr/bin/make -f
 
# Sample debian/rules that uses debhelper.
 
# GNU copyright 1997 to 1999 by Joey Hess.
 
# Uncomment this to turn on verbose mode.
 
633
 
Kapitel 21. Anpassen und Erzeugen von Debian Paketen
 
#export DH_VERBOSE=1
 
# This is the debhelper compatability version to use.
 
export DH_COMPAT=3
 
configure: configure-stamp
 
configure-stamp:
 
dh_testdir
 
# Add here commands to configure the package.
 
#./configure -*-prefix=/usr -*-mandir=\$${prefix}/share/man -*-infodir=\$${prefix}/share/info
 
./configure -*-prefix=/usr -*-program-suffix=.bin
 
touch configure-stamp
 
build: configure-stamp build-stamp
 
build-stamp:
 
dh_testdir
 
# Add here commands to compile the package.
 
$(MAKE) -j 6
 
#/usr/bin/docbook-to-man debian/dtcltiny.sgml > dtcltiny.1
 
touch build-stamp
 
clean:
 
dh_testdir
 
dh_testroot
 
rm -f build-stamp configure-stamp
 
# Add here commands to clean up after the build process.
 
-$(MAKE) clean
 
dh_clean
 
install: build
 
dh_testdir
 
dh_testroot
 
dh_clean -k
 
dh_installdirs
 
# Add here commands to install the package into debian/dtcltiny.
 
mkdir -p $(CURDIR)/debian/dtcltiny/usr
 
$(MAKE) install prefix=$(CURDIR)/debian/dtcltiny/usr
 
cp $(CURDIR)/debian/dtcltiny.sh $(CURDIR)/debian/dtcltiny/usr/bin/dtcltiny
 
chmod a+x $(CURDIR)/debian/dtcltiny/usr/bin/dtcltiny
 
# Demo Konfigfile
 
mkdir -p $(CURDIR)/debian/dtcltiny/usr/share/doc/dtcltiny/
 
cp /home/fr/.dtcltiny.data $(CURDIR)/debian/dtcltiny/usr/share/doc/dtcltiny/SAMPLE.dtcltiny.data
 
# Build architecture-independent files here.
 
binary-indep: build install
 
# We have nothing to do by default.
 
# Build architecture-dependent files here.
 
binary-arch: build install
 
dh_testdir
 
dh_testroot
 
# dh_installdebconf
 
dh_installdocs
 
dh_installexamples
 
dh_installmenu
 
634
 
Kapitel 21. Anpassen und Erzeugen von Debian Paketen
 
# dh_installlogrotate
 
# dh_installemacsen
 
# dh_installpam
 
# dh_installmime
 
# dh_installinit
 
dh_installcron
 
dh_installman
 
dh_installinfo
 
# dh_undocumented
 
dh_installchangelogs ChangeLog
 
dh_link
 
dh_strip
 
dh_compress
 
dh_fixperms
 
# dh_makeshlibs
 
dh_installdeb
 
# dh_perl
 
dh_shlibdeps
 
dh_gencontrol
 
dh_md5sums
 
dh_builddeb
 
binary: binary-indep binary-arch
 
.PHONY: build clean binary-indep binary-arch binary install configure
 
21.2.7. menu
 
Mit dem Debian Menüsystem können Anwendungen, unabhängig von der verwendeten Benutzeroberfläche, in
 
die Menüs eingebunden werden. Bei der Verwendung eines Icons ist darauf zu achten, dass dieses auch
 
tatsächlich vorhanden ist. Gegebenenfalls muss das Icon mit dem Paket zusammen installiert werden. Das hier
 
verwendete Beispiel verwendet ein Icon aus dem Gnome Paket.
 
?package(dtcltiny):needs=X11 section=Apps/Tools icon="/usr/share/pixmaps/gnome-diskfree.png"\
 
title="dtcltiny" command="/usr/bin/dtcltiny"
 
Neben dem Paketnamen finden sich in dieser Datei weitere Angaben welche Benutzeroberfläche das Programm
 
benötigt und in welchen Menüzweig es erscheinen soll. Das Schlüsselwort title beschreibt den Text der im
 
Menü angezeigt wird, command schliesslich enthält den kompletten Pfad und den Programmnamen.
 
21.2.8. postinst, preinst, postrm, prerm
 
Diese vier Dateien enthalten Informationen die vor (pre) oder nach (post) der Installation des Paketes ausgeführt
 
werden sollen. Hier nur ein Beispiel:
 
Alle in der Datei postinst enthaltenen Kommandos werden nach (post) der Installation (inst) des Paketes
 
ausgeführt. Durch dh_make wurde im Verzeichnis debian/ eine Vorlage erzeugt (postinst.ex), die
 
umbenannt und mit Inhalten gefüllt werden kann.
 
#! /bin/sh
 
# postinst script for erddcd
 
#
 
# see: dh_installdeb(1)
 
set -e
 
# summary of how this script can be called:
 
# * <postinst> ‘configure’ <most-recently-configured-version>
 
# * <old-postinst> ‘abort-upgrade’ <new version>
 
# * <conflictor’s-postinst> ‘abort-remove’ ‘in-favour’ <package>
 
# <new-version>
 
635
 
Kapitel 21. Anpassen und Erzeugen von Debian Paketen
 
# * <deconfigured’s-postinst> ‘abort-deconfigure’ ‘in-favour’
 
# <failed-install-package> <version> ‘removing’
 
# <conflicting-package> <version>
 
# for details, see /usr/share/doc/packaging-manual/
 
#
 
# quoting from the policy:
 
# Any necessary prompting should almost always be confined to the
 
# post-installation script, and should be protected with a conditional
 
# so that unnecessary prompting doesn’t happen if a package’s
 
# installation fails and the ‘postinst’ is called with ‘abort-upgrade’,
 
# ‘abort-remove’ or ‘abort-deconfigure’.
 
case "$1" in
 
configure)
 
;;
 
abort-upgrade|abort-remove|abort-deconfigure)
 
;;
 
*)
 
echo "postinst called with unknown argument \‘$1’" >&2
 
exit 0
 
;;
 
esac
 
# dh_installdeb will replace this with shell code automatically
 
# generated by other debhelper scripts.
 
#DEBHELPER#
 
exit 0
 
Das Script kann während der Installation mit verschiedenen Parametern aufgerufen werden. Entsprechende
 
Abschnitte in der Vorlage können mit den gewünschten Kommandos gefüllt werden.
 
Wenn alle Anpassungen an den Dateien im Verzeichnis debian/ vorgenommen wurden, so kann versucht
 
werden, mit dem Kommando dpkg-buildpackage ein Debian Paket zu erzeugen. Hierbei ist zu beachten,
 
dass das Kommando im Verzeichnis mit den entpackten Quelldateien ausgeführt wird.
 
21.2.9. dpkg-buildpackage
 
Nachdem die Vorbereitungen an den Dateien im Verzeichnis debian/ abgeschlossen sind, kann mit dem
 
Programm dpkg-buildpackage das Paket erstellt werden.
 
dpkg-buildpackage wird ohne weitere Parameter versuchen die Sourcen und die Changes Datei des Paketes
 
digital zu signieren. Hierzu wird ein vorhandener GnuPG Key benutzt. Ist kein solcher Key erzeugt worden, so
 
kann das signieren mit den Optionen -us (unsigned source) und -uc (unsigned changes) verhindert werden. Im
 
einfachsten Fall genügt also das Kommando dpkg-buildpackage -us -uc (als „root“) um das Paket zu
 
erzeugen.
 
dpkg-buildpackage verfügt natürlich noch über viele weitere Optionen
 
debian:~# dpkg-buildpackage --help
 
dpkg-buildpackage: unknown option or argument --help
 
Debian dpkg-buildpackage .
 
Copyright (C) 1996 Ian Jackson.
 
Copyright (C) 2000 Wichert Akkerman
 
This is free software; see the GNU General Public Licence version 2
 
636
 
Kapitel 21. Anpassen und Erzeugen von Debian Paketen
 
or later for copying conditions. There is NO warranty.
 
Usage: dpkg-buildpackage [options]
 
Options: -r<gain-root-command>
 
-p<sign-command>
 
-d do not check build dependencies and conflicts
 
-D check build dependencies and conflicts
 
-k<keyid> the key to use for signing
 
-sgpg the sign-command is called like GPG
 
-spgp the sign-command is called like PGP
 
-us unsigned source
 
-uc unsigned changes
 
-a<arch> Debian architecture we build for (implies -d)
 
-b binary-only, do not build source } also passed to
 
-B binary-only, no arch-indep files } dpkg-genchanges
 
-S source only, no binary files }
 
-t<system> set GNU system type } passed to dpkg-architecture
 
-v<version> changes since version <version> }
 
-m<maint> maintainer for package is <maint> }
 
-e<maint> maintainer for release is <maint> } only passed
 
-C<descfile> changes are described in <descfile> } to dpkg-
 
-si (default) src includes orig for rev. 0 or 1 } genchanges
 
-sa uploaded src always includes orig }
 
-sd uploaded src is diff and .dsc only }
 
-nc do not clean source tree (implies -b)
 
-tc clean source tree when finished
 
-ap add pause before starting signature process
 
-h print this message
 
-W Turn certain errors into warnings. } passed to
 
-E When -W is turned on, -E turned it off. } dpkg-source
 
-i[<regex>] ignore diffs of files matching regex } only passed
 
to dpkg-source
 
dpkg-buildpackage benötigt eine Umgebung die der späteren Installationsumgebung ähnlich ist. Das Paket
 
kann als Superuser (root) erzeugt werden um dies zu gewährleisten. Nun macht es wenig Sinn einen
 
GnuPG-Key für den Superuser zu erzeugen. Um dieses Problem zu umgehen, dient die Option -r, direkt
 
gefolgt von einem Kommando, welches es Benutzer erlaubt, Kommandos als Superuser auszuführen bzw. eine
 
virtuelle root-Umgebung schafft. Dies kann beispielsweise das Kommando fakeroot oder sudo sein, ggf. ist
 
natürlich die Konfiguration des Programmes (sudo) für diesen Benutzer anzupassen.
 
Viele der weiteren Optionen können und sollten in den Konfigurationsdateien im Verzeichnis debian/ definiert
 
werden, bei Bedarf können diese aber auch auf der Kommandozeile angepasst werden.
 
21.3. Package Dateien
 
Die selbst erstellten Pakete können natürlich einfach mit dpkg -i paket.deb installiert werden, eleganter ist
 
es jedoch, die Pakete komplett in die Debian Paketverwaltung einzubinden so das alle Informationen des
 
Paketes über die Paketverwaltungstools verfügbar sind. Sie können so auch Pakete im Netz bereitstellen die
 
dann automatisch auf allen Systemen die darauf zugreifen bei Veränderungen aktualisiert werden.
 
Die notwendigen Informationen sind natürlich in den erzeugten Paketen enthalten und müssen aus diesen
 
extrahiert werden. Auf dem Server, der die Pakete zur Verfügung stellt, stehen die gesammelten Informationen
 
in der Datei Packages. Diese wird bei einem Update durch apt oder dselect eingelesen.
 
Zum Erzeugen einer Packages-Datei dient das Programm dpkg-scanpackages. Wenn Sie beispielsweise
 
Pakete für die Gruppe „misc“ erzeugt haben, so lautet der Aufruf wie folgt: dpkg-scanpackages misc
 
override.woody.main.gz dists/woody/main/binary-all/ > Packages. Die Datei
 
override.woody.main.gz finden Sie ebenfalls auf dem Debian FTP-Server im Verzeichnis /indices/.
 
637
 
Kapitel 21. Anpassen und Erzeugen von Debian Paketen
 
Wenn kein kompletter Verzeichnisbaum für die Pakete existiert, so kann der Pfad - wie hier gezeigt - auf der
 
Kommandozeile angegeben werden.
 
Um die Pakete nun auf einem Server bereitzustellen, muss noch ein entsprechender Eintrag in der Datei
 
/etc/apt/sources.list vorgenommen werden. Eine passende Kombination stellt folgendes Beispiel dar:
 
% cd /wo/die/pakete/liegen
 
% dpkg-scanpackages . /dev/null > Packages && gzip -9c Packages > Packages.gz
 
Dieses erzeugt zunächst die Datei „Packages“ und eine mit gzip komprimierte Version dieser Datei. Der
 
passende Eintrag für die Datei sources.list müsste dann wie folgt aussehen
 
deb http://www.mein.server.name.domain/wo/die/pakete/liegen ./
 
638
 
Kapitel 22. Modellbahnen
 
Modellbahnen: viele von uns haben sicher in ihrer Jugend einige Schienen, Loks und Wagen besessen.
 
Vielleicht findet sich bei dem ein oder anderen noch eine Kiste mit den Jugenderinnerungen im Keller, die unter
 
anderem durch das Hobby Computer vernachlässigt wurde. Warum nicht einfach die beiden Hobbys
 
miteinander verbinden?
 
Die Modellbahnindustrie hat der zunehmenden Verbreitung von Computern Rechnung getragen und in den
 
letzten Jahren Systeme zur Steuerung von kompletten Modellbahnanlagen auf den Markt gebracht. Neben den
 
Lokomotiven können damit auch Weichen und Zubehörartikel wie Kräne via Computer gesteuert werden.
 
22.1. Herkömmliche Systeme
 
Urspünglich wurden elektrische Modellbahnen (auf dem Markt fanden oder finden sich auch Dampf- bzw.
 
Uhrwerkgetriebene Modellbahnen) über einen regelbaren Transformator mit Strom versorgt. Verschiedene
 
Hersteller setzen hier auf unterschiedliche Konzepte. So sind mit Gleich- oder Wechselspannung betriebene
 
Systeme auf dem Markt. Eine weitere Unterscheidung bietet die Stromzuführung nur über die Schienen
 
(2-Leiter) oder über die, hier elektrisch verbundenen Schienen und einen zusätzlichen Mittelleiter (3-Leiter).
 
Verschiedene Hersteller wie Märklin, Fleischmann, Trix usw. brachten Modelle für diese Systeme auf den
 
Markt, leider waren nicht alle untereinander kompatibel.
 
Mit einem immer größer werdenden Fuhrpark entstand der Wunsch mehrere Lokomotiven gleichzeitig auf der
 
Anlage betreiben zu können. Mit den erhältlichen regelbaren Transformatoren konnte je Gleisabschnitt nur
 
jeweils eine Lokomotive individuell gesteuert werden. Aufwendige Schaltungen für getrennte Gleisabschnitte
 
mussten elektrisch oder elektronisch in auswendiger Handarbeit erstellt werden. Für Magnetartikel wie zum
 
Beispiel Weichen, wurde eine aufwendige Verkabelung zu einem Steuerpult notwendig, dort wurden dann über
 
Taster oder Schalter die einzelnen Weichen angesteuert. Eine Erleichterung brachten die Elektronischen
 
Steuerungen, sei es als Impulsbreiten-Steuerung für die Lokomotiven um das Fahrverhalten zu verbessern oder
 
aber elektronische Steuerungen von ganzen Weichenstraßen. Das Problem der Verkabelung wurde damit jedoch
 
nicht gelöst.
 
22.2. Digitale Systeme
 
Die Lösung brachten die sogenannten Digitalsysteme, welche von verschiedenen Herstellern auf den Markt
 
gebracht wurden, leider gab es auch hier wieder unterschiedliche, zueinander inkompatible Systeme.
 
Als erster Hersteller kam Märklin mit einem digitalen System auf den Markt, dieses System wird heute als
 
„Märklin Motorola“ (MM) bezeichnet. Weiterhin hat sich DCC (Digital Command Control) der NMRA
 
(National Model Railroad Association) durchgesetzt. Mittlerweile sind Zentralen auf dem Markt die
 
Lokomotiven und Decoder verschiedener Hersteller gleichzeitig ansprechen können.
 
Eine digital gesteuerte Modellbahn benötigt natürlich auch einen Transformator, welcher die Netzspannung auf
 
ein ungefährliches Mass reduziert. Meist kann hier zunächst auch der alte, regelbare Transformator eingesetzt
 
werden. Das Digitalsystem wird dabei am nicht-geregelten Ausgang des Transformators angeschlossen, dieser
 
diente bisher für die Versorgung von Magnetartikeln oder für die Beleuchtung. Für größere Anlagen auf denen
 
zwei oder mehr Züge gleichzeitig verkehren sollen, ist die Anschaffung eines leistungsfähigeren Transformators
 
zu empfehlen.
 
Neben dem Transformator besteht ein Digitalsystem aus einer Zentraleinheit sowie verschiedenen Geräten zur
 
Steuerung der Lokomotiven und der Magnetartikel wie z.B. Weichen, Beleuchtung usw. Hier ein Beispiel für
 
eine Mögliche Kombination zum Betrieb einer kleinen Anlage
 
639
 
Kapitel 22. Modellbahnen
 
Abbildung 22-1. Digitale Steuerung - Bedienelemente
 
Das hier vorgestellte Beispiel zeigt einige Digital-Komponenten des Herstellers Märklin. Da der Autor dieser
 
Zeilen auch über ein solches System verfügt, wird im folgenden auch weiterhin auf das Märklin Digital System
 
eingegangen. Sollten Sie ein anderes System einsetzen, so können Sie die im folgenden beschriebenen Schritte
 
aber durchaus als Leitfaden sehen. Passende Software finden Sie sicherlich über die Suchmaschinen im Internet,
 
die hier vorgestellten Links können ebenfalls als Startpunkt für Ihre Suche dienen.
 
Wenn Sie bereits über eine Digital aufgerüstete Modellbahnanlage verfügen, so können Sie diese mit den im
 
folgenden vorgestellten Programmen aufwerten und über Ihren Computer steuern. Sollten Sie das System
 
jedoch noch im herkömlichen Betrieb fahren, so sind zunächst einige Hardwarekomponenten zu beschaffen.
 
22.3. Hardware
 
Für den digitalen Betrieb einer Modellbahnanlage sind zunächst einige Hardwarekomponenten anzuschaffen.
 
Eine digital gesteuerte Modellbahnanlage besteht aus einem Trafo und einer Bedieneinheit mit der der
 
Lokführer die Lokomotiven und Magnetartikel steuern kann. Bei größeren Anlagen kommen noch weitere
 
Komponenten wie Leistungsverstärker (Booster), weitere Bedieneinheiten (Central Unit oder Keyboard) hinzu.
 
Bei der hier beschriebenen Steuerung der Anlage durch ein GNU/Linux System kann komplett auf die
 
Bedienelemente und die Zentrale des Digitalsystems verzichtet werden. Die komplette Funktion der Zentrale
 
wird durch einen Serverprozess nachgebildet.Wie schon beschrieben benötigen Sie zunächst auf alle Fälle einen
 
Transformator, für die ersten Versuche ist ein vorhandener Transformator Ihrer alten Anlage meist ausreichend.
 
Weiterhin wird ein „Booster“ benötigt, welcher einerseits die Spannung an das Gleis liefert und andererseits
 
diese mit einem digitalen Steuerungssignal überlagert. Weiterhin muß dieser Booster mit einer seriellen
 
Schnittstelle ausgestattet sein über die der Computer verbunden werden kann. Märklin hat bzw. hatte
 
verschiedene Geräte auf dem Markt, die hierfür in Frage kommen. Neben dem recht preiswerten Delta Control
 
6604 können auch die Digital Booster 6015 und 6017 und andere eingesetzt werden.
 
Die Verbindung des Boosters oder des Interface erfolgt über ein serielles Kabel, dieses ist ggf. mit einigen
 
Bauteilen auszustatten. Wenn Sie über keinerlei Erfahrungen mit elektronischen Bauelementen verfügen und
 
nicht wissen auf welcher Seite ein Lötkolben heiss wird, so lassen Sie die Finger von Selbstbau eines solchen
 
Kabels und schreiben Sie lieber dem Autor dieser Zeilen eine nette E-Mail, vielleicht wird Ihnen geholfen...
 
Für den geübten Bastler stellt ein solches Kabel keine große Herausforderung dar, alle Bauteile lassen sich im
 
Gehäuse des DIN Steckers unterbringen. Hier das Schaltbild für das Kabel für den Betrieb mit dem Märklin
 
Booster 6015 oder 6017. Beachten Sie die unterschiedliche Belegung der Anschlüsse, je nachdem ob Sie den
 
Booster 6015 oder 6017 einsetzen. Auf der PC-Seite können bei älteren Systemen durchaus noch 25 polige
 
serielle Anschlüsse vorhanden sein. Neuere PC Modelle sind generell mit 9 poligen seriellen Anschlüssen
 
ausgestattet.
 
640
 
Kapitel 22. Modellbahnen
 
Abbildung 22-2. Digitale Steuerung - Kabel 6015/6017
 
Für das DELTA-Control 6604 ist ein anderes Kabel zum Anschluss an die serielle Schnittstelle notwendig.
 
Abbildung 22-3. Digitale Steuerung - Kabel 6604
 
Wenn Sie bereits ein etwas älteres Digitalsystem besitzen, so können Sie statt des Boosters auch die Central
 
Unit (6020 oder 6021) und das Interface (6050 oder 6051) einsetzen. Dabei ist zu beachten das ein anderen
 
641
 
Kapitel 22. Modellbahnen
 
Server eingesetzt werden muss, doch dazu finden Sie im Abschnitt über die Software genauere Informationen.
 
Das Kabel zum Anschluß des Interface (6050 oder 6051) ist sehr einfach herzustellen.
 
Interface 6050/6051 Computer
 
6 pol DIN Stecker 9 pol DSUB Buchse
 
1 3
 
4 2
 
5 8
 
3 5
 
Brücke: 4 - 6 - 1
 
22.3.1. Decoder
 
Zuletzt müssen noch die Lokomotiven mit einem Decoder ausgestattet werden, falls nicht schon Lokomotiven
 
vorhanden sind die von Hause aus mit Decodern für den Digitalbetrieb ausgeliefert werden. Es sind die
 
verschiedensten Arten von Dekodern am Markt verfügbar, eine Einbauanleitung wird mit jedem Decoder
 
mitgeliefert. Neuere Lokmodelle sind von Hause aus schon mit einem Decoder bestückt, Anfang 2002 sind im
 
Märklin Programm nur noch eine Handvoll Modelle enthalten die nicht für den Digitalbetrieb geeignet sind. Für
 
den Einsatz auf Märklin Digital Anlagen sind natürlich Decoder aus dem gleichen Hause bestens geeignet.
 
Preiswertere Varianten finden sich im Sortiment von Conrad Electronic.
 
Weitere Hardware wird für den Anfang nicht benötigt wenn Sie das System mit GNU/Linux steuern möchten.
 
Natürlich gibt es auch Decoder für Magnetartikel, doch dieser Abschnitt soll Sie nur neugierig auf das Thema
 
machen, am Ende finden Sie noch einige Links zu weiteren Seiten im Netz.
 
22.3.1.1. 6603 Delta Decoder
 
Dieser erste Delta Decoder ist mit einem 701.xxx Chip bestückt, xxx steht hierbei für eine weitere, mit dem
 
Produktzyklus aufsteigende, Zahlen und Buchstabenkombination, die neueste Version ist 701.17b. Wie allen
 
anderen Digitaldecoder erlaubt auch dieser Decoder den Betrieb auf Analogen Anlagen. Im Digitalbetrieb
 
stehen lediglich 15 Adressen und keine Funktionen zur Verfügung. Die Beleuchtung der Lokomotiven erfolgt
 
auf herkömmliche Art, je schneller die Lok fährt umso heller die Beleuchtung.
 
Tabelle 22-1. Delta Decoder - Dip-Schalter Einstellungen
 
Adresse 1 2 3 4
 
2 off on on on
 
6 on off on on
 
8 off off on on
 
18 on on off on
 
20 off on off on
 
24 on off off on
 
26 off off off on
 
54 on on on off
 
56 off on on off
 
60 on off on off
 
62 off off on off
 
72 on on off off
 
74 off on off off
 
78 on off off off
 
642
 
Kapitel 22. Modellbahnen
 
Adresse 1 2 3 4
 
80 on on on on
 
Alle Delta Decoder können mit einigem Geschick so umgebaut werden das alle 80 Adressen verwendbar sind.
 
Neuere Versionen dieses Decoders (701.17 und höher) können auch um eine bzw. vier Funktionen erweitert
 
werden.
 
22.3.1.2. 6080 Digital Decoder
 
Als Märklin Standard Digital Decoder unterstützt dieses Modell alle 80 möglichen Adressen. Dieser Decoder
 
basiert auf dem 701.13 Chip und unterstützt eine Funktion die normalerweise für die Beleuchtung genutzt wird.
 
Leider flackert die Beleuchtung bei Verwendung dieses Decoders. Dies kann mit einigen Bauteilen beseitigt
 
werden.
 
22.3.1.3. 6090 Digital Decoder
 
Der 6090 ist Märklins älterer High-End Decoder, somit ist die Nutzung von 80 Adressen und einer Funktion
 
möglich. Auch dieser Decoder nutzt den 701.13 Chip, somit kann (und sollte) auch bei diesem Decoder das
 
Flackern der Stirnbeleuchtung unterdrückt werden. Weiterhin ist der Decoder mit mit Potentiometer ausgestattet
 
um die minimale und maximale Geschwindigkeit, sowie die Anfahr- und Bremsverzögerung einzustellen.
 
Enthalten ist weiterhin ein neuer Permanentmagnet und ein neuer 5-poliger Motor, so das sich ein älteres
 
Modell mit sehr guten Fahreigenschaften umrüsten läßt.
 
22.3.1.4. 66031 Digital Decoder
 
Dieser neue Delta Decoder unterstützt alle Funktionen das älteren Modells, „spricht“ aber das Protokollformat
 
der neuen Generation, somit werden beispielsweise auch Telex Kupplungen oder Raucheinsätze unterstützt.
 
Weiterhin ist die Beleuchtung nun immer eingeschaltet und kann nicht ausgeschaltet werden. Die Beleuchtung
 
wechselt mit der Fahrtrichtung.
 
Die Aktivierung der Funktion wird ähnlich aktiviert wie von der Analogen Steuerung her bekannt: Ein
 
Fahrtrichtungswechsel aktiviert/deaktiviert auch die Funktion.
 
Tabelle 22-2. Technische Daten Delta Decoder 66031
 
Motorausgang: maximal 800 mA
 
Lichtausgang: maximal 100 mA
 
Funktionsausgang: maximal 250 mA
 
Gesamt: maximal 1,1 A
 
Motor- und Funktionsausgänge sind gegen Überlastung und Kurzschlüsse geschüzt.
 
22.3.1.5. „Wikinger“Lokomotiv Decoder
 
Echte Elektronik-Freaks können zum Selbstbau eines Lokdecoder schreiten, der sogenannte
 
„Wikinger“-Decoder ist hier das Modell der Wahl, aber Vorsicht: das ist wirklich etwas für Leute die sich damit
 
auskennen. Informationen hierzu finden sich unter http://www.frederiksson.dk/indexeng.html.
 
22.4. Software
 
Wie wir schon gesehen haben sind nur wenige Hardwarekomponenten für den Digitalbetrieb einer Modellbahn
 
notwendig. Mit der Software verhält es sich ähnlich. Die Software einer digital gesteuerten Modellbahnanlage
 
643
 
Kapitel 22. Modellbahnen
 
besteht aus zwei Komponenten; einem Serverprozess welche die Funktionalität einer Zentrale nachbildet sowie
 
verschiedenen Clientprogrammen die zur Steuerung der Anlage dienen.
 
Die hier nachfolgend vorgestellten Projekte stehen zum großen Teil als inoffizielle Debian Pakete zur
 
Verfügung. Tragen Sie folgende Zeile in die Datei /etc/apt/sources.list ein:
 
deb http://www.openoffice.de/debian/ stable main
 
und installieren Sie dann die gewünschten Pakete, beispielsweise mit apt-get.
 
Natürlich können Sie sich auch die Sourcen der Programme besorgen und die kompletten Pakete selbst
 
übersetzen.
 
22.4.1. Server
 
Die Auswahl der Software für den Server ist von der bereits vorhandenen Hardware abhängig. Beide hier
 
vorgestellten Server unterstützen das SRC Protokoll (Simple Railroad Command Protocol). Die aktuelle
 
Spezifikation dieses Protokolls findet sich unter http://srcpd.sourceforge.net/srcp/. Vorabversionen des
 
Protokollstandards finden sich unter http://members.tripod.de/mtrute/Modellbahn/srcp-maintain.html
 
SRCP ist ein plattformunabhängiges Internetprotokoll zum Steuern von Modelleisenbahnen, insbesondere
 
digital gesteuerter. Ein SRCP komformer Server stellt das Bindeglied zwischen der Modellbahn (Hardware) und
 
den Steuerprogrammen (Clients), über welche die Modellbahn gesteuert werden soll, dar. Das Protokoll
 
vermittelt eine Client-Server Struktur, wobei der Server die Schnittstelle zur Modellbahnanlage und die Clients
 
die Schnittstelle zu den(m) Modellbahner(n) darstellen. SRCP ist Multiuser fähig.
 
22.4.1.1. erddcd
 
Das Projekt DDL - Digital Direct for Linux http://www.vogt-it.com/OpenSource/DDL/ von Torsten Vogt stellt
 
mit dem Daemon „erddcd“ einen Serverprozess zur Verfügung, der mit dem Booster kommuniziert und somit
 
eine Digitalzentrale überflüssig macht. erddcd ist Bestandteil des Paketes DDL.
 
Dieser Server kann mit den Boostern 6604, 6015 oder 6017 der Firma Märklin, sowie mit verschiedenen
 
Selbstbauboostern verwendet werden.
 
Der Daemon erddcd sendet die Steuerdaten von unterschiedlichen Clients zum Booster, welcher über ein
 
serielles Kabel mit dem Rechner verbunden ist. Das Debian Paket wurde um das Init-Script
 
/etc/init.d/erddcd erweitert, ausserdem wird eine Konfigurationsdatei /etc/erddcd.conf ausgewertet.
 
In dieser ist ggf. die Bezeichnung der seriellen Schnittstelle anzupassen, falls der Booster nicht an /dev/ttyS0
 
angeschlossen ist.
 
22.4.1.2. srcpd
 
Mit srcpd von Matthias Trute (http://srcpd.sourceforge.net) steht ein weiterer Server zur Verfügung mit dem
 
die Märklin Central Unit 6020 oder 6021 zusammen mit den Märklin Interfaces 6050 oder 6051 angesprochen
 
werden können. Weiterhin unterstützt srcpd die Intellibox der Firma Uhlenbrock.
 
Das srcpd Projekt wurde im Sommer 2001 aus der Taufe gehoben und hat sich zum Ziel gesetzt einen einfach
 
zu benutzenden SRCP-konformen Server für die digitale Modellbahnsteuerung zu erstellen.
 
Der Urahn des srcpd ist der erddcd von Torsten Vogt. Dieser emuliert auf dem PC ein Interface und benötigt
 
zur Steuerung der Modelleisenbahn nur die Booster, Schaltdecoder, Rückmeldemodule etc., jedoch kein
 
Interface.
 
Auf dieser Basis wurde mit Beginn des Jahres 2000 die ersten SRCP Fassungen entwickelt und parallel dazu
 
begann Matthias Trute einen Dämon (m6051d) für das Märklin-Interface M6051 zu schreiben. Dieser benutzte
 
einige Routinen des erddcd, schlug aber schon früh einen anderen Weg ein. Diesen Dämon wiederum nahm
 
Frank Schmischke wiederum zusammen mit dem erddcdals Ausgangsbasis für einen Dämon für die Intellibox
 
von Uhlenbrock.
 
644
 
Kapitel 22. Modellbahnen
 
Da der überwiegende Teil der beiden Dämonen (für M6051 und Intellibox) identischen Code besitzt wurde von
 
Matthias Trute die Idee geboren, einen universellen SRCP-Server zu erstellen, der alle bekannten Interfaces
 
abdecken soll. Den größten und aufwendigsten Anteil am Server hat der SRCP-Teil, wo die eingehenden
 
Befehle auf ihre Korrektheit geprüft und anschließend dekodiert werden, und wo die Informationen für die
 
Clients zusammengestellt werden.
 
Aus diesem Grund wurde im Sommer 2001 das srcpd-Projekt vom Matthias Trute (Maintainer) und Frank
 
Schmischke aus der Taufe gehoben. Sie haben ihre beiden SRCP-Server zum neuen srcpd verschmolzen.
 
Änderungen die das SRCP betreffen (und da wird es einige sehr interessante geben!), brauchen jetzt nur noch
 
einmalig für alle intergrierten Interfaces durchgeführt zu werden. Hierdurch ist ein wesentlich besseres
 
weiterentwickeln möglich, da nun mehrere Leute am selben Code rumwerkeln und Fehler schneller und besser
 
aufgespürt und beseitigt werden können.
 
22.4.2. Clients
 
Während die SRCP Serversoftware ledigliche eine anfängliche Konfiguration benötigt und dann unbemerkt im
 
Hintergrund arbeitet, stellen die hier vorgestellten Client Programme die Verbindung zum Lokführer vor dem
 
Bildschirm her. Jeder SRCP Server kann Instruktionen von mehreren Clients gleichzeitig verarbeiten, es können
 
also die hier vorgestellten Programme bunt gemischt eingesetzt werden.
 
22.4.2.1. telnet
 
Zuerst zu einem etwas ungewöhnlichen Client, telnet. telnet wird sich sicherlich nicht zum bevorzugten
 
Werkzeug zur Modellbahnsteuerung entwickeln, für die Fehlersuche kann es jedoch sinnvoll sein auch dieses
 
Werkzeug zu kennen.
 
telnet stellt die einfachste Variante der Arbeit mit dem srcpd dar. Wenn der srcpd und telnet auf dem
 
gleichen Rechner laufen, kann man mittels
 
% telnet localhost 12345
 
den srcpd in Verbindung mit telnet betreiben. Wenn der srcpd auf einem anderen Rechner läuft, so ist bei
 
telnet der Parameter localhost durch den entsprechenden Rechnernamen zu ersetzten. Bei einer
 
abweichenden Portadresse ist der Parameter 12345 entsprechend anzupassen.
 
Nach dem Start von telnet wird eine Verbindung zum srcpd aufgebaut. Wenn dies erfolgreich durchgeführt
 
worden ist, wird vom srcpd eine Willkommensmeldung an telnet zurückgeschickt. Alle Ausgaben
 
erscheinen auf der aktuellen Console, es gibt keine weitere Benutzeroberfläche. Nun kann am Prompt ein
 
Befehl gemäß SRCP Standard eingegeben werden, Beispielsweise:
 
% SET GL PS 33 1 12 14 0 4 0 0 0 0
 
Dieser bewirkt, daß die Lok mit der Adresse 33 mit Fahrstufe 12 (von 14 möglichen) ohne Licht oder sonstige
 
Zusatzfunktionen (4) vorwärts fahren soll. Dies soll nur als Beispiel dienen, wenn telnet zur weiteren
 
Steuerung benutzt werden soll, so hilft ein Blick in die SRCP Spezifikation.
 
Zum Beenden können die Befehle:
 
% LOGOUT
 
oder
 
% SHUTDOWN
 
verwendet werden. Bei ersterem wird nur die Verbindung zum srcpd unterbrochen und telnet beendet sich,
 
während mit dem zweiten Befehl der srcpd angewiesen wird sich zu Beenden, telnet wird hierbei ebenfalls
 
beendet.
 
645
 
Kapitel 22. Modellbahnen
 
22.4.2.2. j-man
 
j-man ist ein in Java geschriebenes Programm zur Steuerung von Lokomotiven und Magnetartikeln und
 
Bestandteil des Paketes DDL. j-man bietet über ein Menü im Hauptfenster Zugriff auf alle weiteren Funktionen.
 
Ein Context Menü ist über die rechte Maustaste zu erreichen.
 
Abbildung 22-4. Digitale Steuerung - j-man Hauptfenster
 
Über folgenden Dialog können weitere Lokomotiven hinzugefügt werden, neben einem Namen ist natürlich die
 
Adresse des Decoders und der Typ festzulegen.
 
Abbildung 22-5. Digitale Steuerung - j-man Lok hinzufügen
 
Zur Steuerung steht neben dem Lok-Controler für einzelne Lokomotiven, auch der hier gezeigte
 
Mehrfachcontroler zur Auswahl.
 
646
 
Kapitel 22. Modellbahnen
 
Abbildung 22-6. Digitale Steuerung - j-man Mehrfachcontroler
 
Zur Steuerung des Digital Krans „Goliath“ steht ein spezieller Dialog zur Verfügung.
 
Abbildung 22-7. Digitale Steuerung - j-man Goliath
 
j-man verfügt noch über einige weitere Funktionen, beispielsweise zum Schalten von Weichen und ganzen
 
Fahrstraßen.
 
22.4.2.3. loco-panel
 
loco-panel, ebenfalls aus dem DDL Paket, dient zur Anzeige der von den Clients gesendeten Befehlen. Im
 
Normalbetrieb werden Sie dieses Programm nicht benötigen, zur Fehlersuche kann es aber unter Umständen
 
hilfreich sein.
 
647
 
Kapitel 22. Modellbahnen
 
Abbildung 22-8. Digitale Steuerung - loco-panel
 
22.4.2.4. monitor
 
Dieses Programm dient dem Test des Info- oder Feedbackports eines SRCP-Servers (srcpd, erddcd). Mit dem
 
Kommando:
 
% monitor localhost 12346
 
wird eine Verbindung zum Feedback-Port des srcpd hergestellt (bei Standardkonfiguration, sonst ggf.
 
Parameter anpassen). Die Portnummer ist hierbei der Basisport des srcpd plus eins. Für den Infoport muß diese
 
Portangabe nochmals um eins erhöht werden.
 
Anschließend schreibt das Programm alle vom srcpd eingehenden Meldungen auf den Bildschirm.Auf diese
 
Art und Weise läßt sich die korrekte Rückmeldung durch den srcpd testen.
 
22.4.2.5. keyboard
 
Um einfach die Magnetartikel zu schalten, gibt es Keyboard. Um einen Automatikbetrieb zu realisieren gibt es
 
Memory. Die gleichnamigen Produkte der Fa. Märklin sind zwar die geistigen Paten, aber haben nichts mit
 
diesem Programm gemein. Das Programm benutzt TCL/TK und läuft auch unter Windows.
 
Benutzung: ganz unten wird die aktuelle Basisadresse angezeigt Diese kann mit den Buttons um jeweils 16 nach
 
oben bzw. nach unten verändert werden. Zu dieser Basisadresse muß sodann die Zahl zwischen den Buttons
 
hinzugezählt werden, um die Adresse des Dekoders zu ermitteln, die letztendlich angesprochen wird.
 
Solange eine der Tasten gedrückt wird, wird der entsprechende Ausgang des Dekoders aktiviert. Vorsicht ist
 
also geboten, die Spulen können dabei durchbrennen.
 
22.4.2.6. recorder
 
Der Recorder ist für automatisierte Aktionen und für Makrofunktionen wie Weichenstraßensteuerung gedacht.
 
Gegenwärtig kann man 24 Aktionen auf Knopfdruck abrufen und auch von einem Feedbackereignis triggern
 
lassen. Daneben kann die Liste der SRCP Befehle editiert, gespeichert und auch wieder eingelesen werden.
 
Einzig der Record-Modus funktioniert noch nicht. Auch gibt es noch Probleme mit der Parallelverarbeitung.
 
Mehrere Trigger gleichzeitig funktionieren noch nicht.
 
Die Benutzung ist einfach: Programm starten und für die 24 "Tasten" die jeweiligen Aktionen einlesen. Sodann
 
kann mit einem Mausclick auf eine der Tasten die zugehörge Aktion ausgelöst werden. über die Radiobuttons
 
ganz oben wird die Wirkung des Mausklicks verändert: Jetzt wird die Liste editierbar (ein Editfenster klappt
 
auf), die Aktionsliste kann gespeichert und wieder eingelesen werden, oder eben das Programm lauscht am
 
SRCP Server und speichert die Ereignisse so, daß sie wieder ausgeführt werden können. Momentan werden alle
 
Befehle einer Taste auf einmal ausgeführt.
 
648
 
Kapitel 22. Modellbahnen
 
22.4.2.7. rcsh
 
rcsh ist eine Shell zur Steuerung von digitalen Modellbahnen. Eine einfach Scriptsprache erlaubt es
 
Lokomotiven direkt aus der Shell heraus zu steuern. Hier ein einfaches Beispiel:
 
l = locoN1(4)
 
# Licht an, langsam aus Bahnhof herausfahren
 
l.func(1)
 
l.speed(1)
 
l.send()
 
# Immer noch langsam im Bahnhofsbereich
 
l.speed(3)
 
l.send()
 
time.sleep(12)
 
# Beschleunigen auf freier Strecke
 
l.speed(7)
 
l.send()
 
time.sleep(20)
 
# langsam in Bahnhof
 
l.speed(2)
 
l.send()
 
time.sleep(5)
 
# Kriechen und Stillstand an alter Startposition
 
l.speed(1)
 
l.send()
 
time.sleep(3)
 
l.speed(0)
 
l.func(0)
 
l.send()
 
print l.speed()
 
In diesem Beispiel zur (zeitlichen) Steuerung eines Zuges aus dem Bahnhof auf die Strecke und wieder zurück
 
in den Bahnhof, sind die wichtigsten Funktionen benutzt worden. Eine etwas ausführlichere Dokumentation
 
finden Sie auf Ihrem Debian System in der Datei /usr/share/doc/rcsh/README.Debian.
 
22.4.2.8. rcman
 
rcman ist ein Client mit textueller Oberfläche zur Steuerung von Modellbahnen in Verbindung mit einem SRCP
 
konformen Server. rcman orientiert sich an j-man aus dem DDL Projekt.
 
Abbildung 22-9. Digitale Steuerung - rcman
 
649
 
Kapitel 22. Modellbahnen
 
rcman ist eine in Python geschriebene Anwendung. rcman wird nicht direkt aufgerufen, es ist zunächste eine
 
Scriptdatei zu erstellen. Diese importiert zunächst alle Funktionen von rcman, danach können mit einfachen
 
Kommandos die einzelnen Lokomotiven definiert werden. Dem Paket liegt ein Beispiel (rcmandemo.py) im
 
Verzeichnis /usr/share/doc/rcman/examples/ bei.
 
Da rcman auch ohne grafische Benutzeroberfläche auskommt läßt sich rcman auch auf älteren Systemen gut
 
einsetzen. Die Bedienung des Programmes kann über die Tastatur oder auch mit der Maus erfolgen. Wenn die
 
Maus über ein Scrollrad verfügt, so kann damit die Geschwindigkeit der Lok gesteuert werden. rcman kann
 
über eine Infrarot Fernbedienung gesteuert werden, hierzu muss das LIRC Paket installiert sein.
 
22.4.2.9. srcptt
 
HTML und HTTP bieten leider nur eingeschränkte Möglichkeiten zur Steuerung via Webbrowser. Die
 
Interaktion zwischen der Benutzeroberfläche und dem System ist dabei leider nicht immer so zeitnah möglich
 
wie es wünschenswert oder gar notwendig wäre. Trotzdem lassen sich mittels HTML, PHP oder auch Perl
 
interessante Anwendungenerstellen. Das Paket srcptt legt die entsprechenden Dateien im Verzeichnis
 
/var/www/srcptt/ ab. Mittels eines beliebigen Webbrowsers sind diese nun im Netz
 
(http://server.domain/srcptt/) oder auch lokal (http://localhost/srcptt/ erreichbar.
 
22.4.2.10. SpDrS60
 
SpDrS60 SpDrS60 ist das erste Programm zum nächsten Monaten noch starken Änderungen unterzogen wird.
 
Aber trotzdem komfortablen Steuern von Weichen und Signalen für die Benutzung mit SRCP-konformen
 
Servern. Es ist ausserdem das erste grafische ausgereifte Programm, um unter Linux seine Modellbahn zu
 
steuern. Es bietet schon jetzt viel Komfort, um seine Modellbahnanlage getreu den bei der Deutschen Bahn AG
 
immer noch verwendeten Spurplan-Drucktastenstellwerken (SpDr) zu steuern. Bei der Benutzung dieses
 
Programms muss man sich - sofern man es kennt - von einigen gewohnten Eigenschaften eines
 
Steuerprogramms verabschieden, da diese meistens zu sehr auf die Belange der Modellbahn abgestimmt sind.
 
22.4.2.11. JoyCtrl
 
JoyCtrl benutzt den Joystick zur Steuerung der Loks unter Linux und ist eine Alternative/Ergänzung zu Mausoder
 
Tastatursteuerungen.
 
Als Hardware dient mir ein billiger analoger Joystick mit einigen Feuerknöpfen.
 
Für die Umrechnung der Knüppelbewegungen in Lokkommandos habe ich ein Kennlinienkonzept verwirklicht.
 
Damit kann ich den Knüppelbewegungen unterschiedliche Lokaktionen zuordnen, je nach Situation. Ein
 
jederzeitiges Umschalten ermöglicht, etwa im Bahnhofsbereich rangieren zu können und auf der freien Strecke
 
entspannt die Lok laufen zu lassen.
 
22.4.2.12. dtcltiny
 
Ein weiterer Client ist mit dtcltiny von Markus Pfeiffer verfügbar, dieser Client basiert auf QT.
 
Auch dieses Paket wurde gegenüber dem urspünglichen Paket ein wenig angepasst, ein einfacher Aufruf von
 
dtcltiny startet das Programm mit sinnvollen Parametern und versucht im Homeverzeichnis des Benutzers
 
eine Konfigurationsdatei zu laden. Wenn Sie die Ursprungsversion benutzen möchten, so finden Sie das
 
Programm unter /usr/bin/dtcltiny.bin.
 
650
 
Kapitel 22. Modellbahnen
 
Abbildung 22-10. Digitale Steuerung - dtcltiny
 
Die Beispielkonfiguration unter /usr/share/doc/dtcltiny/SAMPLE.dtcltiny.data kann als
 
.dtcltiny.datain das Homeverzeichnis kopiert werden (cp
 
/usr/share/doc/dtcltiny/SAMPLE.dtcltiny.data ~/.dtcltiny.data). Diese
 
Beispielkonfiguration enthält zwei Einträge, mit der die beiden Decoder der Dampflokomotive „Big Boy“
 
(Märklin Nummer 37990) gesteuert werden können.
 
Über das Menü „File“ können andere Konfigurationsdateien geladen oder aber die aktuelle Konfiguration
 
gespeichert werden. Auch können über den Menüpunkt „New loco“ weitere Lokomotiven hinzugefügt werden.
 
651
 
Kapitel 22. Modellbahnen
 
Abbildung 22-11. Digitale Steuerung - dtcltiny New loco / General
 
Unter dem Menüpunkt „General“ kann neben dem Namen und einem Alias, also eine Bezeichnung für den
 
ganzen Zug beispielsweise, noch der verwendete Decoder, das Protokoll sowie natürlich die Adresse des
 
Decoders eingestellt werden.
 
Abbildung 22-12. Digitale Steuerung - dtcltiny New loco / Funcs
 
Im zweiten Abschnitt lassen sich die Funktionen des Decoders einstellen. Unter „Type“ finden sich die
 
Funktionen wie „light“, „smoke“, „coupling“, „sound“ und „shunting“. Dies verändert das angezeigte Symbol
 
für diese Funktion. In der Zeile „Activate as“ lässt sich das Verhalten der Schaltfläche als Taster oder Schalter
 
einstellen.
 
652
 
Kapitel 22. Modellbahnen
 
Abbildung 22-13. Digitale Steuerung - dtcltiny New loco / Speeds
 
Der letzte Abschnitt dient zur Parametrisierung des Fahrverhaltens der Lok. Zunächst kann die maximale
 
Geschwindigkeit der Lok in km/h oder mph eingestellt werden. Es lassen sich Werte für die Minimale und die
 
Durchschnittliche Geschwindigkeit einstellen. Diese drei Werte werden im Hauptfenster durch drei Balken
 
(grün, gelb, rot) dargestellt. Ein Mausklick auf einen der Balken beschleunigt sanft auf die eingestellte
 
Geschwindigkeit dieses Bereiches. Natürlich läßt sich die Lok durch einen Klick in einen langsameren Bereich
 
auch sanft abbremsen.
 
Im unteren Bereich lassen sich die Verzögerungen für das Anfahren und Bremsen einstellen.
 
22.5. Weitere Informationen
 
DER_MOBA - Digitalprojekt der Newsgroup de.rec.modelle.bahn. Ziel ist die Schaffung eines skalierbaren -
 
d.h. an die jeweiligen Anforderungen anpassbaren - Digitalsystems. http://www.der-moba.de/Digital/
 
DDL - Digital Direct for Linux, Multiprotokoll-Controler und Steuerungssoftware für digitale
 
Modelleisenbahnen. http://www.vogt-it.com/OpenSource/DDL/
 
SpDrS60 für Linux - Programm zum komfortablen Steuern von Weichen und Signalen.
 
http://www.linux-modellbahn.de/
 
Tips zur Modellbahnsteuerung mit SuSE und Scripte zur Steuerung via Webbrowser.
 
http://www.fingerlinge.de/bernd/Modellbahn/Digital-Seiten/
 
Viele Hardwarebasteleien, Lok- Weichendekoder, Controller, Booster usw. .
 
http://home.arcor.de/dr.koenig/digital/digital.htm
 
Netz Community für Märklin Fans. http://www.marklin-users.net/
 
Bauanleitungen für Lok- und Weichendekoder. http://www.frederiksson.dk/indexeng.html
 
Märklin Digital Seiten der c’t von Carsten Meyer. http://www.heise.de/ct/Redaktion/cm/digital.html
 
rcsh - Railroad Command Shell und rcman von Dr. Peer Griebel http://www.griebel-net.de/peer/rcsh/rcsh.html
 
und http://www.griebel-net.de/peer/rcsh/rcman.html
 
653
 
Kapitel 23. Weitere Infos
 
23.1. Abkürzungen / Begriffe
 
In einer technischen Dokumentation läßt es sich nur schwer vermeiden vollkommen auf englischsprachliche
 
Begriffe oder auf „Kunstwörter“ aus dem Wortschatz der „Community“ zu verzichten. Begriffe wie: „Hacker“,
 
„FAQ“ oder „AFAIK“ finden sich aber auch in HOWTOs oder auf Mailinglisten. Eine sehr umfangreiche Liste
 
von Begriffen mit ausführlichen Erklärungen ist von Eric S. Raymond als „Jargon-File“ zusammengestellt
 
worden und im Netz unter http://www.tuxedo.org/jargon/ in den verschiedensten Formaten verfügbar.
 
Hier einige Erläuterungen zu den gebräuchlisten Begriffen, insbesondere im Zusammenhang mit Debian GNU.
 
• AM Application Maintainer, eine Person die einen NM durch den NM Prozess geleitet.
 
• BTS Bug Tracking System
 
• DAM Debian Account Manager, ein Debian Entwickler der für das einrichten neuer Benutzeraccounts
 
zuständig ist.
 
• DDP Debian Documentation Project, in diesem Projekt wird die Dokumentation zu Debian GNU erstellt und
 
verwaltet.
 
• DMUP Debian Machine Use Policies, Richtlinien für die Benutzung der Debian Entwicklungsmaschinen.
 
• DPL Debian Project Leader, die Person die dem Projekt vorsteht und es nach aussen representiert.
 
• DWN Debian Weekly News, wöchentliche Neuigkeiten des Projektes
 
• ITA Intend to Adopt, ein Maintainer möchte ein Packet von einem anderen übernehmen. Sie auch wnpp.
 
• ITO Intend to Orphan, ein Maintainer möchte ein verwaistes Paket übernehmen. Sie auch wnpp.
 
• ITP Intend to Package, wenn ein Maintainer ein neues Paket erstellen möchte wird dies zunächst auf der
 
Mailingliste debian-devel angekündigt. Sie auch wnpp.
 
• KCD Kernel Cousin Debian, eine wöchentliche Zusammenstellung der wichtigsten Diskussionen aus der
 
Mailingliste debian-devel. Zu finden unter http://kt.zork.net/debian/.
 
• MIA Missing in Action, ein Maintainer der keine Bugs beseitigt oder nicht auf Mails antwortet.
 
• NM New Maintainer, jemand der Maintainer werden möchte oder grade geworden ist.
 
• NMU Non Maintainer Upload, eine andere Person als der Maintainer hat ein Paket auf einen Server gelegt.
 
• OPN - Ein Netzwerk von Rechnern die das IRC Netzwerk hosten.
 
• RFA - Ein Entwickler möchte ein Paket abgeben und bittet einen anderen Maintainer das Paket zu
 
übernehmen.
 
• RFP - Ein Entwickler möchte eine Software als Debian Paket zusammenstellen und auf dem Server ablegen.
 
• RL Real Life - Das Gegenteil des „Virtual Life“ welches sich im Netz, also in IRC-Channeln, Newsgroups
 
und auf Mailinglisten abspielt.
 
• RTFM Read the Fine Manual - weist freundlich darauf hin doch zunächst einen Blick in die Dokumentation
 
zu werfen. Häufig auch als Read the Fucking Manual anzutreffen.
 
• UTSL Use the Source, Luke - entnommen aus den Star Wars Filmen, es wird gebeten doch einen Blick in den
 
Quellcode zu werfen.
 
• wnpp Work-Needing and Prospective Packages - Liste von Pakete die zur Zeit ohne hinreichende Betrueung
 
sind.
 
654
 
Kapitel 23. Weitere Infos
 
23.2. Debian Mirror
 
Ein eigener Debian Mirror, also eine lokale Kopie aller benötigten Dateien vom Debian-FTP Server kann für
 
verschiedene Zwecke sinnvoll sein. Zunächst einmal hat man sofortigen Zugriff auf alle Dateien und kann diese
 
installieren ohne auf den Download der Dateien warten zu müssen. Natürlich ist auch die Aktualität der
 
Software um einiges besser als bei der Installation von CD-ROMs. Für die Installation von mehreren Rechnern
 
ist eine solche lokale Kopie ebenfalls die erste Wahl. Wenn, wie im nächsten Abschnitt beschrieben, eigene
 
Debian CDs erstellt werden sollen, ist ein Mirror unumgänglich.
 
Aufgrund des bereits großen Umfangs des Debian-Archives ist es nicht sinnvoll eine komplette Kopie aller
 
Dateien lokal vorzuhalten. Meist ist es ausreichend lediglich die Binarys für die verwendete Architetur
 
(beispielsweise i386) vorzuhalten. Die Sourcen der Pakete werden nur in seltenen Fällen benötigt und können
 
gezielt bei Bedarf besorgt werden. Informationen zum spiegeln eines Debian Servers finden sich auch unter
 
http://www.debian.org/mirror/ftpmirror.
 
23.2.1. absurd_debmirror
 
absurd_debmirror ist ein auf rsync basierendes Shellscript. Der Vorteil bei der Verwendung von rsync ist
 
der schonendere Umgang mit den Systemresourcen. absurd_debmirror überträgt neben den eigentlichen
 
Paketen auch die entsprechenden Bootdisketten der gewünschten Release, so das sich dieses Programm sehr gut
 
eignet um einen lokalen Mirror zu erzeugen aus dem bootfähige CD-ROMs generiert werden können.
 
absurd_debmirror enthält eine umfangreiche Dokumentation innerhalb des Scriptes. Als Parameter beim
 
Aufruf von absurd_debmirror ist zunächst das lokale Verzeichnis anzugeben in dem die Pakete abgelegt
 
werden sollen (ohne Angabe des Verzeichnisses debian). Zweiter Parameter ist der Server von dem die Pakete
 
geholt werden, gefolgt von dem Verzeichnis auf diesem Server. Als drittes folgt die gewünschte Release,
 
mehrere Releases sind dabei durch Anführungszeichen zusammenzufassen. Gleiches gilt für die Bereiche sowie
 
für die gewünschten Architekturen.
 
Ein Aufruf von absurd_debmirror kann demnach wie folgt aussehen:
 
absurd_debmirror /home/ftp ftp.debian.org debian "woody sid" "main contrib
 
non-free non-US/main non-US/contrib non-US/non-free" "i386"
 
Natürlich ist es auch möglich den Non-US Bereich eines Servers zu spiegeln. Dies kann mit folgendem Aufruf
 
geschehen:
 
/usr/local/bin/absurd_debmirror /home/ftp/debian non-us.debian.org
 
debian-non-US "woody sid" "non-US/main non-US/contrib non-US/non-free" "i386"
 
absurd_debmirror wird nicht mehr weiterentwickelt, stattdessen kann das im folgenden beschriebene
 
debmirror verwendet werden.
 
23.2.2. debmirror
 
Das Programm debmirror von Joey Hess bietet eine sehr einfach Möglichkeit einen Debian FTP Server, bei
 
Bedarf auch nur in Teilen, zu spiegeln. Das Programm steht leider nicht als offizielles Debian Paket zur
 
Verfügung, da es sich aber um ein Perl Script handelt ist dies keine große Katastrophe. Sie finden die aktuelle
 
Version unter http://cvs.kitenet.net/joey-cvs/bin/Attic/debmirror. Alternativ kann auf das nicht-offizielle Paket
 
unter http://www.openoffice.de/linux/debian/dists/woody/main/binary-i386/misc/ zurückgegriffen werden.
 
debmirror benutzt keine Konfigurationsdatei, alle benötigten Parameter können auf der Kommandozeile
 
angegeben werden. Sehr vorteilhaft ist bei diesem Script das es speziell auf die Bedürfnisse von Debian
 
angepasst wurde, so kann es beispielsweise mit Package-Pools problemlos umgehen. Das Packages-Pool
 
Konzept wurde mit der Entwicklung von „woody“ eingeführt und erlaubt es verschiedene Releases (testing,
 
stable, unstable...) auf Basis der Daten innerhalb des Verzeichnisses pool/ zu verwalten. Weiterhin werden die
 
655
 
Kapitel 23. Weitere Infos
 
benötigten Dateien auf Basis der Package-Dateien ermittelt, somit ist auch hier immer ein einheitlicher Stand
 
sichergestellt.
 
Die Verwendung von debmirror ist ziemlich simpel. Wenn das Programm ohne weitere Parameter aufgerufen
 
wird, bekommen Sie eine Übersicht der möglichen Parameter:
 
sushi:~# ./debmirror
 
mirrordir not specified
 
Usage: ./debmirror mirrordir [--debug] [--progress] [--source|--nosource]
 
[--md5sums|--nomd5sums] [--passive] [--host=remotehost]
 
[--user=remoteusername]
 
[--root=directory] [--dist=foo[,bar,..] ...]
 
[--section=foo[,bar,..] ...] [--arch=foo[,bar,..] ...]
 
[--cleanup|--nocleanup] [--skippackages] [--adddir=directory]
 
[--ignore=regex] [--getcontents] [--exclude=regex] [--help]
 
Als einziger Parameter ist „mirrordir“ zwingend erforderlich. Dieser beschreibt das lokale Verzeichnis in dem
 
der Debian Spiegel erzeugt werden soll. Wenn dieses Verzeichnis nicht vorhanden ist, so wird es erzeugt.
 
Folgendes Kommando erzeugt einen Debian Mirror für die Architektur „i386“ im Verzeichnis
 
/home/ftp/debian/, es werden die Versionen „potato“, „woody“ und „sid“ mit den Bereichen „main“,
 
„contrib“ und „non-free“ kopiert. Als Server dient „ftp.debianorg“ (hier sollte auf alle Fälle ein gut erreichbarer
 
Server benutzt werden), es werden keine Sourcen übertragen und das Verzeichnis „debian-non-US“ auf der
 
lokalen Platte wird nicht angetastet (dazu gleich mehr). Weiterhin wird Fortschritt laufend angezeigt.
 
debmirror -a i386 -s main -s contrib -s non-free \
 
-h ftp.debian.org \
 
-d woody -d potato -d sid \
 
/home/ftp/debian \
 
--nosource \
 
--ignore=debian-non-US/ --progress
 
Da auf dem offiziellen Debian FTP Server die Pakete aus dem non-US Bereich fehlen, können diese Pakete mit
 
einer zweiten Zeile auf den heimischen Rechner geholt werden:
 
debmirror -a i386 -h ftp.de.debian.org \
 
-r /debian-non-US -s non-US/main,non-US/contrib,non-US/non-free \
 
-d woody -d potato -d sid \
 
/home/ftp/debian/debian-non-US --progress
 
Je nach Bandbreite Ihrer Internetanbindung steht Ihnen nach einiger Zeit ein lokaler Debian Mirror zur
 
Verfügung.
 
23.2.3. debmirror-wrapper
 
debmirror-wrapper ist ein Script welches einige der Fehler in debmirror umschifft und einige Funktionen
 
implementiert die nur in seltenen Fällen gebraucht werden. Beispielsweise werden auf einem durchschnittlichen
 
Mirror keine Bootdisketten benötigt und diese werden auch von debmirror deshalb nicht berücksichtigt. Diese
 
können aber mittels debmirror-wrapper übertragen werden, beispielsweise wenn diese zur Herstellung von
 
eigenen Debian CD-ROMs benötigt werden.
 
Durch den Einsatz von debmirror-wrapper wird auch die Syntax beim Aufruf noch einfacher. Viele der
 
benötigten Optionen können direkt im Script fest verankert werden, lange Kommandozeilen Optionen entfallen
 
damit. debmirror-wrapper von Stephan A. Suerken ist auf seinen Webseiten zu finden.
 
656
 
Kapitel 23. Weitere Infos
 
23.2.4. mirror
 
mirror steht als Debian Paket zur Verfügung und wird seit vielen Jahren auch auf großen FTP Servern
 
(beispielsweise an Universitäten) benutzt um Inhalte anderer FTP Server lokal zu speichern. Für eine lokale
 
Kopie der Daten eines Debian FTP Servers wird neben dem eigentlichen Programm mirror vor allem viel
 
Festplattenplatz benötigt. Da mirror als universelles Programm zum spiegeln von FTP Servern entwickelt
 
wurde, kennt es natürlich keine Debian Besonderheiten wie Package-Pools. Um nicht unnötig Pakete zu
 
kopieren ist leider eine etwas aufwendige Konfiguration nötig.
 
Die Konfigurationsdateien für das Programm mirror finden sich nach der Installation im Verzeichnis
 
/etc/mirror/packages/. Hier kann für jeden gewünschten Mirror eine Datei angelegt werden. Das Program
 
selber wird dann mit der Konfigurationsdatei als Parameter aufgerufen. Zusätzlich kann die Option -d (auch
 
mehrfach) angegeben werden um mehr Informationen über den Vorgang zu bekommen.
 
Hier eine Konfigurationsdatei die die Architekturen i386 und powerpc vom Debian FTP Server kopiert.
 
package=Debian
 
#
 
comment=Mirror of parts of ftp.debian.org/pub/debian
 
#
 
# specify remote host, directory and ls-lR file
 
site=ftp.de.debian.org
 
remote_dir=/debian
 
store_remote_listing=/tmp/DEBIANREMOTE
 
ls_lR_file=ls-lR.gz
 
#
 
# specify the local directory
 
local_dir=/home/ftp/debian
 
#
 
# inform this user about results
 
mail_to=fr
 
#
 
# Compress these files.
 
#compress_patt=\.*(C|c)ontents(-i386)?
 
#compress_patt+|Packages(-Master)?|ls-lR|md5sums
 
#compress_patt+|Maintainers|msdos-names
 
#
 
# Exclude these files or directories
 
exclude_patt=private/|project/|ls-lR|ls-lR.gz|ls-lR.patch.gz|dsync.list
 
exclude_patt+|debian-(bugs|lists)/
 
exclude_patt+|\.*(hurd-i386|hppa|mipsel|mips|ia64|s390|arm|m68k|alpha|
 
hurd|mips|sparc).deb?
 
exclude_patt+|\.*(hurd-i386|hppa|mipsel|mips|ia64|s390|arm|m68k|alpha|
 
hurd|mips|sparc).udeb?
 
exclude_patt+|\.*(hurd-i386|hppa|mipsel|mips|ia64|s390|arm|m68k|alpha|
 
hurd|mips|sparc).gz?
 
exclude_patt+|\.*(hurd-i386|hppa|mipsel|mips|ia64|s390|arm|m68k|alpha|
 
hurd|mips|sparc).diff.gz?
 
exclude_patt+|\.*(hurd-i386|hppa|mipsel|mips|ia64|s390|arm|m68k|alpha|
 
hurd|mips|sparc).dsc?
 
exclude_patt+|\.*(hurd-i386|hppa|mipsel|mips|ia64|s390|arm|m68k|alpha|
 
hurd|mips|sparc).tar.gz?
 
exclude_patt+|\.tar.gz?
 
exclude_patt+|\.dsc?
 
exclude_patt+|\.changes?
 
exclude_patt+|\.diff.gz?
 
exclude_patt+|bo/
 
exclude_patt+|rex/
 
exclude_patt+|slink/
 
exclude_patt+|binary-arm/
 
exclude_patt+|binary-m68k/
 
exclude_patt+|binary-ia64/
 
exclude_patt+|binary-hppa/
 
exclude_patt+|binary-sparc/
 
657
 
Kapitel 23. Weitere Infos
 
exclude_patt+|binary-mipsel/
 
exclude_patt+|binary-mips/
 
exclude_patt+|binary-alpha/
 
exclude_patt+|disks-alpha/
 
exclude_patt+|disks-m68k/
 
exclude_patt+|disks-sparc/
 
exclude_patt+|upgrade-alpha/
 
exclude_patt+|upgrade-m68k/
 
exclude_patt+|upgrade-sparc/
 
exclude_patt+|binary-s390/
 
exclude_patt+|binary-hurd-i386/
 
exclude_patt+|md5sums
 
exclude_patt+|md5sums.gz
 
exclude_patt+|/potato/main/disks-arm/
 
exclude_patt+|/potato/main/binary-arm/
 
exclude_patt+|/potato/contrib/binary-arm/
 
exclude_patt+|/potato/non-free/binary-arm/
 
exclude_patt+|/potato/main/binary-sparc/
 
exclude_patt+|/potato/contrib/binary-sparc/
 
exclude_patt+|/potato/non-free/binary-sparc/
 
exclude_patt+|woody/non-free/binary-sparc/
 
exclude_patt+|woody/non-free/binary-alpha/
 
exclude_patt+|woody/main/binary-sparc/
 
exclude_patt+|woody/main/binary-alpha/
 
exclude_patt+|woody/contrib/binary-sparc/
 
exclude_patt+|woody/contrib/binary-alpha/
 
exclude_patt+|woody/main/binary-hurd/
 
exclude_patt+|woody/main/binary-hurd-i386/
 
exclude_patt+|woody/main/binary-arm/
 
exclude_patt+|woody/main/binary-mips/
 
exclude_patt+|woody/main/binary-mipsel/
 
exclude_patt+|binary-hppa/
 
exclude_patt+|binary-sh/
 
exclude_patt+|woody/main/binary-sparc/
 
exclude_patt+|woody/main/disks-sparc/
 
exclude_patt+|woody/main/binary-alpha/
 
exclude_patt+|woody/Contents-arm.gz
 
exclude_patt+|woody/Contents-hurd-i386.gz
 
exclude_patt+|woody/Contents-alpha.gz
 
exclude_patt+|woody/Contents-sparc.gz
 
exclude_patt+|woody/Contents-hppa.gz
 
exclude_patt+|woody/Contents-sh.gz
 
exclude_patt+|woody/Contents-mips.gz
 
exclude_patt+|woody/Contents-mipsel.gz
 
#
 
exclude_patt+|\.notar
 
#
 
# Don’t delete what is mirrored by the other mirror package below
 
#
 
# delete_excl=(local|debian-non-US|non-US|project)(/|$)
 
# Do not delete if more than 20% of all files would vanish
 
max_delete_files=20%
 
658
 
Kapitel 23. Weitere Infos
 
23.3. Erstellen von eigenen Debian GNU/Linux CD-ROMs
 
Debian GNU/Linux CD-ROMs sind im Handel, als Heft-CDs oder zum Download als Image erhältlich.
 
Natürlich bietet Debian Ihnen aber auch die Möglichkeit eigene, bootfähige CDs herzustellen und diese auf die
 
eigenen Bedürfnisse anzupassen. Hierzu steht das Paket debian-cd zu Verfügung.
 
Zunächst sollten Sie jedoch dafür sorgen das die benötigten Dateien für die CDs auf Ihrem System vorhanden
 
sind. Üblich ist es hierzu eine lokale Kopie (Mirror) der gewünschten Architektur(en) (z.B. i386) anzulegen.
 
Das Program mirror ist hierzu hervorragend geeignet.
 
Neben einigen gebräuchlichen Tools (wie zum Beispiel apt-get, perl, bash, make... ) die auf jedem System
 
vorhanden sein sollten, benötigt debian-cd die Programme mkisofs/mkhybrid, dpkg-multicd, das Perl
 
MD5 Modul, dpkg-dev und lynx. Natürlich benötigen Sie auch noch einigen freien Plattenplatz.
 
Nach der Installation dieses Paketes finden sich die notwendigen Dateien im Verzeichnis
 
/usr/share/debian-cd/. In der Datei CONF.sh müssen einige Zeilen angepasst werden.
 
23.3.1. Konfiguration
 
• export CODENAME=woody - Hier wird die Variable für die gewünschte Version gesetzt. Es sollte bei einem
 
kompletten Mirror einer stabilen Version jederzeit möglich sein die gewünschten CDs zu erstellen. Bei
 
Entwicklerversionen können dringend benötigte Pakete fehlen oder es sind noch keine angepassten
 
Bootdisketten verfügbar. In einem solchen Fall kann aber auch das Paket debian-cd in einem Zustand sein
 
der es nicht erlaubt CDs zu erstellen.
 
• export DEBVERSION="2.3 r0" - Versionsnummer und Releasestand der Distribution.
 
• export OFFICIAL="Unofficial" - Dieser Wert sollte nicht verändert werden. Die Bezeichnung
 
„Official“ ist nur für CD-Images erlaubt die vom Debian Projekt erstellt wurden. Für Vorabversionen kann
 
hier auch die Bezeichnung „Unofficial Beta“ benutzt werden.
 
• export ARCH=‘dpkg --print-installation-architecture‘ - Diese Variable beschreibt für welche
 
Architektur die CD-Images erstellt werden sollen. Häufig wird diese Architektur identisch mit der bereits
 
verwendeten Architektur sein, so das man beruhigt dem Programm dpkg die Aufgabe übertragen kann den
 
richtigen Wert zu ermitteln. Natürlich iste auch möglich CD-Images für eine andere Architektur zu erstellen.
 
In diesem Fall ist der Wert entsprechend anzupassen und natürlich müssen die benötigten Pakete für die
 
Zielarchitektur vorliegen. Je nach Zielarchitektur müssen ggf. noch weitere Pakete, beispielsweise aboot für
 
die Alpha-Architektur, installiert werden.
 
Die nächsten vier Variablen sollten auf Verzeichnisse auf der gleichen Partition und auf dem gleichen Device
 
zeigen. Wenn dies nicht möglich ist, kann die Variable COPYLINK auf 1 gesetzt werden. Dies benötigt einiges
 
an zusätzlichem Festplattenplatz da keine symbolischen Link verwendet werden können. Diese Option muß
 
auch gesetzt sein falls die Daten auf einem per NFS gemounteten Laufwerk liegen.
 
• export MIRROR=/home/ftp/debian - Pfad zum Debian Mirror. Das Verzeichnis unter dem sich die
 
Kopie des Debian FTP-Servers befindet.
 
• export NONUS=/home/ftp/debian/debian-non-US - Das Verzeichnis in dem sich die Dateien aus dem
 
non-US Bereich befinden. Wenn dieser Bereich nicht auf den CDs enthalten sein soll, kann diese Zeile
 
auskommentiert werden.
 
• export FORCENONUSONCD1=1 - Wenn diese Zeile, durch entfernen des Zeichens # aktiviert wird, werden
 
zwei Versionen der ersten CD erzeugt. Eine enthält alle Pakete aus non-US, die andere nicht. Diese Option ist
 
nur sinnvoll wenn tatsächlich beide CD-Images benötigt werden.
 
• export TDIR=/home/ftp/debian/.tmp - Pfad zu einem Verzeichnis in dem Dateien, die zur Erzeugung
 
der CDs benötigt werden, abgelegt werden können.
 
• export OUT=/home/ftp/CD-Images - Pfad in dem die CD-Images abgelegt werden. Dieser kann sich auf
 
einer anderen Partition befinden.
 
Die weiteren Optionen müssen nicht zwingend angepasst werden, trotzdem lohnt es sich mal einen Blick darauf
 
zu werfen.
 
659
 
Kapitel 23. Weitere Infos
 
• export APTTMP=/home/ftp/debian/.tmp/apt - Das Verzeichnis für temporäre Dateien die von apt
 
benötigt werden.
 
• export NONFREE=1 - Beschreibt ob auch die Non-Free Teile der Distribution auf den CDs enthalten sein
 
sollen.
 
• export EXTRANONFREE=1 - Hiermit werden die Non-Free Teile auf eine Extra CD geschrieben. Bitte
 
beachten Sie, es kann nur eine der Optionen NONFREE oder EXTRANONFREE benutzt werden.
 
• export LOCAL=1 - Wenn ein Verzeichnis $MIRROR/dists/$CODENAME/local/binary-$ARCH existiert,
 
und die Dateien aus diesem Verzeichnis auf die zu erstellende CD kopiert werden sollen, so ist bei dieser
 
Zeile der Kommentar zu entfernen.
 
• export LOCALDEBS=/home/fr/pakate/debian - Wenn die lokalen Pakete nicht in dem oben
 
beschriebenen Verzeichnis liegen, so kann mit dieser Variablen das gewünschte Verzeichnis angegeben
 
werden.
 
• export BOOTDIR=/boot - Diese Variable ist zu benutzen wenn die Dateien cd.b und second.b nicht an
 
der üblichen Stelle zu finden sind und CD-Images für die Sparc-Architektur erzeugt werden.
 
• export SYMLINK=1 - Mit dieser Option werden Symbolische Links zu den benötigten Paketen erzeugt.
 
• export COPYLINK=1 - Hiermit werden alle Dateien kopiert und keine Symbolischen Links angelegt.
 
• export MKISOFS=/usr/bin/mkhybrid - Hier kann der Pfad zum Programm mkhybrid, mit dem die
 
ISO-Dateien erzeugt werden, angegeben werden. Hier kann auch ein anderes Programm mit ähnlicher
 
Funktionalität, beispielsweise mkisofs benutzt werden.
 
• export MKISOFS_OPTS="-a -r -T" #For normal users oder export MKISOFS_OPTS="-a -r
 
-F . -T" #For symlink farmers - Optionen für das Programm mkhybrid.
 
• export VERBOSE_MAKE=1 - Gibt mehr Informationen während der Zusammenstellung der CD-Images aus.
 
• ATTEMPT_FALLBACK=yes - Mit dieser Option kann versucht werden eine einfachere CD zu erstellen, falls es
 
ohne diese Option fehlschlägt.
 
• export EXCLUDE="$BASEDIR"/tasks/exclude-potato - Liste einiger Dateien die nicht enthalten sein
 
sollen, in diesem Fall um auf der ersten CD etwas Platz zu sparen.
 
• export UNEXCLUDE2="$BASEDIR"/tasks/unexclude-CD2-potato - Hiermit werden die eben
 
ausgeschlossenen Dateien auf die CD Nummer 2 geschrieben.
 
• export SRCEXCLUDE="$BASEDIR"/tasks/exclude-src-potato - Liste einige Quellpakete die
 
ebenfalls nicht auf den CDs erscheinen sollen.
 
Hier ein Beispiel für eine bereits angepasste Konfiguration.
 
#
 
# This file will have to be sourced where needed
 
#
 
# The debian-cd dir
 
# Where I am (hoping I’m in the debian-cd dir)
 
export BASEDIR=‘pwd‘
 
# Building potato cd set ...
 
export CODENAME=woody
 
# Version number, "2.2 r0", "2.2 r1" etc.
 
export DEBVERSION="3.0 r0"
 
# Official or non-official set.
 
# NOTE: THE "OFFICIAL" DESIGNATION IS ONLY ALLOWED FOR IMAGES AVAILABLE
 
# ON THE OFFICIAL DEBIAN CD WEBSITE http://cdimage.debian.org
 
export OFFICIAL="Unofficial"
 
#export OFFICIAL="Official"
 
#export OFFICIAL="Official Beta"
 
# ... for arch
 
660
 
Kapitel 23. Weitere Infos
 
export ARCH=‘dpkg --print-installation-architecture‘
 
# IMPORTANT : The 4 following paths must be on the same partition/device.
 
# If they aren’t then you must set COPYLINK below to 1. This
 
# takes a lot of extra room to create the sandbox for the ISO
 
# images, however. Also, if you are using an NFS partition for
 
# some part of this, you must use this option.
 
# Paths to the mirrors
 
export MIRROR=/home/ftp/debian
 
# Comment the following line if you don’t have/want non-US
 
export NONUS=/home/ftp/debian/debian-non-US
 
# And this option will make you 2 copies of CD1 - one with all the
 
# non-US packages on it, one with none. Useful if you’re likely to
 
# need both.
 
#export FORCENONUSONCD1=1
 
# Path of the temporary directory
 
export TDIR=/home/ftp/debian/.tmp
 
# Path where the images will be written
 
export OUT=/home/fr/mp3/IMAGES
 
# Where we keep the temporary apt stuff.
 
# This cannot reside on an NFS mount.
 
export APTTMP=/home/ftp/debian/.tmp/apt
 
# Do I want to have NONFREE merged in the CD set
 
export NONFREE=1
 
# Do I want to have NONFREE on a separate CD (the last CD of the CD set)
 
# WARNING: Don’t use NONFREE and EXTRANONFREE at the same time !
 
# export EXTRANONFREE=1
 
# If you have a $MIRROR/dists/$CODENAME/local/binary-$ARCH dir with
 
# local packages that you want to put on the CD set then
 
# uncomment the following line
 
# export LOCAL=1
 
# If your local packages are not under $MIRROR, but somewhere else,
 
# you can uncomment this line and edit to to point to a directory
 
# containing dists/$CODENAME/local/binary-$ARCH
 
# export LOCALDEBS=/home/joey/debian/va/debian
 
# Sparc only : bootdir (location of cd.b and second.b)
 
# export BOOTDIR=/boot
 
# Symlink farmers should uncomment this line :
 
# export SYMLINK=1
 
# Use this to force copying the files instead of symlinking or hardlinking
 
# them. This is useful if your destination directories are on a different
 
# partition than your source files.
 
# export COPYLINK=1
 
# Options
 
# export MKISOFS=/usr/bin/mkhybrid
 
# export MKISOFS_OPTS="-a -r -T" #For normal users
 
# export MKISOFS_OPTS="-a -r -F . -T" #For symlink farmers
 
# uncomment this to if you want to see more of what the Makefile is doing
 
export VERBOSE_MAKE=1
 
661
 
Kapitel 23. Weitere Infos
 
# uncoment this to make build_all.sh try to build a simple CD image if
 
# the proper official CD run does not work
 
#ATTEMPT_FALLBACK=yes
 
# We don’t want certain packages to take up space on CD1...
 
export EXCLUDE="$BASEDIR"/tasks/exclude-potato
 
# ...but they’re okay on other CDs (UNEXCLUDEx == may be included on CD >= x)
 
export UNEXCLUDE2="$BASEDIR"/tasks/unexclude-CD2-potato
 
# Any packages listed in EXCLUDE but not in any UNEXCLUDE will be
 
# excluded completely.
 
# We also exclude some source packages
 
export SRCEXCLUDE="$BASEDIR"/tasks/exclude-src-potato
 
23.3.2. Erstellen der CD-Images
 
Für das eigentliche erstellen der CD-Images stehen zwei Shell-Scripte zur Verfügung. build.sh erstellt Imges
 
für eine einzelne Architektur. Die gewünschte Architektur wird über die Konfigurationsdatei ermittelt oder kann
 
auf der Kommandozeile übergeben werden.
 
build_all.sh erstellt CDs Images für alle Architekturen.
 
23.3.3. Aktualisieren von debian-cd
 
Wenn CD-Images für eine Entwicklungsversion von Debian erstellt werden sollen, so kann es passieren das das
 
Paket nicht auf dem allerneuesten Stand ist. In einem solchen Fall bietet sich ein Versuch mit einer
 
Entwicklungsversion von debian-cd aus dem CVS Baum an.
 
Eine komplette Kopie der CVS Version kann mit folgenden Befehlen erstellt werden:
 
cvs -d :pserver:anonymous@cvs.debian.org:/cvs/debian-boot login
 
cvs -d :pserver:anonymous@cvs.debian.org:/cvs/debian-boot -z3 checkout debian-cd
 
cvs -d :pserver:anonymous@cvs.debian.org:/cvs/debian-boot logout
 
Im aktuellen Verzeichnis wird ein Verzeichnis debian-cd erstellt in dem sich die neuesten Dateien befinden.
 
Wenn diese Version aktualisiert werden soll sind beim nächsten Aufruf folgende Kommandos notwendig:
 
cvs -d :pserver:anonymous@cvs.debian.org:/cvs/debian-boot login
 
cvs -d :pserver:anonymous@cvs.debian.org:/cvs/debian-boot -z3 update -d -P
 
cvs -d :pserver:anonymous@cvs.debian.org:/cvs/debian-boot logout
 
23.4. Programmfehler (bugs)
 
Debian GNU/Linux nimmt die Sicherheit sehr ernst. Der größte Teil der Probleme, die bekannt werden, ist
 
innerhalb von 48 Stunden korrigiert.
 
Die Erfahrung zeigt, daß „Sicherheit durch Verschleierung“ (englisch: security trough obscurity) nicht
 
funktioniert. Die öffentliche „Ent-Schleierung“ wird durch Freigabe des Source-Codes zu Programmen erreicht
 
und erlaubt es, bessere Lösungen für Sicherheits-Probleme schneller zu finden.
 
Mängel in der Sicherheit werden bei Debian GNU/Linux so lange verfolgt, bis eine korrigierte Version in die
 
Distribution eingefügt wird. Wenn Sie in einem stabilen Release eine höhere Versionsnummer finden, dann
 
benutzen Sie die neuere Version.
 
662
 
Kapitel 23. Weitere Infos
 
Wenn Sie selber einen Fehler in einem Programm in Ihrer Debian GNU/Linux-Distribution finden, sehen Sie
 
zunächst nach, ob dieses Problem bereits bekannt ist. Sollte dies nicht der Fall sein, so können Sie das
 
Programm bug benutzen, um diesen Fehler an die Debian-Entwickler zu melden.
 
Für allerneueste Sicherheitsinformationen über Debian tragen Sie sich in die debian-security-announce
 
Mailing-Liste ein. Informationen hierzu finden Sie auf den Webseiten des Debian-Projektes.
 
Die Debian GNU/Linux-Distribution verwendet ein Fehlerverfolgungssystem, in dem Details von Fehlern, die
 
von Benutzern oder Entwicklern gemeldet wurden, gespeichert werden. Jeder gefundene Fehler bekommt eine
 
Nummer zugewiesen und wird so lange gespeichert, bis der Fehler beseitigt ist.
 
Sie finden eine Liste aller bekannten Fehler unter: http://www.debian.org/Bugs/
 
23.5. Installations- und Rettungsdiskette
 
Sie können die Installationsdiskette oder die CD - falls Sie von dieser das System bei der Installation gestartet
 
haben - auch zur Reparatur Ihres Systems benutzen. Dies kann in seltenen Fällen passieren, z. B. falls Sie den
 
Rechner nicht ordnungsgemäß runtergefahren haben, was auch der Fall bei einem Stromausfall ist. Manchmal
 
kommt es auch vor, daß Sie etwas an den Dateien in /etc geändert haben oder daß ein neu erstellter Kernel
 
nicht startet. Aber auch wenn Sie das Paßwort für den Superuser vergessen haben, kann die Bootdiskette Sie vor
 
der Neuinstallation bewahren.
 
In einem Notfall legen Sie die Rescue-Diskette ein und starten das System neu. Statt wie bei der Installation
 
einfach die Eingabetaste zu drücken, können Sie nun am Prompt zusätzliche Parameter eingeben. Eine
 
umfangreiche Übersicht der Befehle befindet sich auf der Diskette. Diese können Sie sich mit den
 
Funktionstasten ansehen. Wir werden hier nur zwei gebräuchliche Fälle vorstellen.
 
Sollte zum Beispiel die lilo-Konfiguration fehlgeschlagen sein oder der neu übersetzte Kernel läßt sich nicht
 
mehr booten, so sind immer noch alle Daten auf der Root-Partition in einwandfreiem Zustand. Sie haben jetzt
 
die Möglichkeit, den auf der Rescue-Diskette befindlichen Kernel zu booten und das Dateisystem auf der
 
Root-Partition zu mounten. Geben Sie hierzu am Prompt folgendes ein: rescue root=/dev/hda1
 
Hierbei ist zu beachten, daß Sie - je nachdem auf welcher Partition sich Ihre Root-Partition befindet - das
 
passende device angeben. Nachdem der Kernel von Diskette geladen wurde, wird das System ganz normal
 
gestartet und Sie können sich danach am System anmelden und den Fehler beheben. Im Fall einer nicht
 
funktionierenden Konfiguration von lilo loggen Sie sich als Superuser ein, beheben die Fehler in der
 
Konfigurationsdatei und rufen anschließend das Kommando lilo auf.
 
Ein anderer Fall wäre ein Fehler im Dateisystem der Root-Partition, welches ein normales Booten des Systems
 
verhindert. In den meisten Fällen kommt man hierbei sogar ohne eine Rescue-Diskette aus. Meist hält das
 
System beim Start an und nach Eingabe des Root-Paßwortes können Sie das Dateisystem dann reparieren.
 
Dies läßt sich auch mit der Rescue-Diskette ausführen. Booten Sie hierzu ganz normal mit der Diskette, als
 
wenn Sie eine Installation durchführen wollen. Wählen Sie noch die gewünschte Tastatur aus und wechseln Sie
 
dann mit der Tastenkombination ALT+F3 auf die dritte Konsole. Nach Drücken der Eingabetaste steht dort eine
 
Shell zur Verfügung. Sie können von dort aus das defekte Dateisystem manuell reparieren. Benutzen Sie dazu
 
das Kommando: e2fsck /dev/hda1. Auch hier ist wieder das entsprechende Device anzugeben. Nach einem
 
Neustart des Systems sollte alles wieder wie gewohnt funktionieren.
 
23.6. Technische Informationen zu den Boot-Disketten
 
23.6.1. Quellcode
 
Das Paket boot-floppies enthält den gesamten Quellcode, um die Installations-Disketten herstellen zu
 
können. Dieser Text ist auch im Paket installmanual-de zu finden.
 
663
 
Kapitel 23. Weitere Infos
 
23.6.2. Die Notfalldiskette
 
Auf der Notfall-Diskette ist ein MS-DOS-Dateisystem enthalten, auf das von jedem System, das DOS-Disketten
 
mounten kann (sogar DOS oder Windows), zugegriffen werden kann. Der Linux-Kernel liegt in der Datei
 
linux. Die Datei root.bin ist ein mit dem Programm gzip komprimiertes Image eines 1.44 MB
 
Minix-Dateisystems. Dieses wird in die RAM-Disk im Hauptspeicher geladen und dort als Festplattenersatz für
 
das Root-Dateisystem verwendet.
 
23.6.3. Kernel ersetzen
 
Wenn der Kernel auf der Notfalldiskette ersetzt werden soll, muß der neue Linux-Kernel mit den folgenden
 
Eigenschaften (als fester Bestandteil, nicht als ladbare Module) konfiguriert werden:
 
• Initial RAM disk
 
• MSDOS, Minix und EXT2-Dateisystem
 
• Ausführbare Dateien als ELF executables
 
Danach wird der neu erzeugte Kernel (zImage oder bzImage) mit dem Dateinamen „linux“ auf die
 
Notfalldiskette kopiert. Anschließend rufen Sie das Shell-Skript rdev.sh auf, das ebenfalls auf der Diskette zu
 
finden ist. Dieses Programm nimmt noch ein paar kleine Einstellungen an dem neuen Linux-Kernel vor.
 
23.6.4. Die Basisdisketten
 
Die Disketten des Basis-Systems enthalten einen 512 Byte großen Kopf sowie jeweils einen Teil eines mit gzip
 
komprimierten tar-Archivs. Werden jeweils die Köpfe entfernt und danach die Inhalte der Disketten
 
zusammengefügt, so ergibt sich das vollständige komprimierte tar-Archiv.
 
Dieses Archiv enthält das Grundsystem, das während der Installation auf Ihr System kopiert wird. Es bietet die
 
Basis-Funktionalität eines Debian GNU/Linux-Systems, dem jedoch noch zahlreiche Anwendungen fehlen.
 
Wenn das Archiv installiert ist, muß das System zunächst mit dem Menüpunkt Configure the Base
 
System konfiguriert werden. Mit Hilfe von weiteren Menüeinträgen im Installationssystem werden die
 
Netzwerkanbindung, der Betriebssystemkern und seine Module installiert und konfiguriert. Erst danach kann
 
das System eingesetzt werden.
 
23.7. Deutsche Tastatur mit X11
 
Wir empfehlen Ihnen die Installation des Paketes user-de. Dies nimmt alle nötigen Einstellungen für Sie vor.
 
Wurde das Window-System X11 erfolgreich mit xf86config konfiguriert und startet die grafische Oberfläche
 
ohne Probleme, dann sollte die Tastaturbelegung unter X11 der Belegung auf der Textkonsole entsprechen.
 
Wenn auf der Konsole eine Deutsche Tastaturbelegung geladen wurde, unter X11 jedoch zum Beispiel die
 
Tasten ’Y’ und ’Z’ vertauscht sind und auf den Umlauttasten Semikolon und Doppelpunkt liegen, dann müssen
 
Sie für X11 die Tastaturbelegung ändern. Editieren Sie dazu die Datei /etc/X11/XF86Config wie folgt:
 
...
 
Section "Keyboard"
 
...
 
XkbLayout "de"
 
...
 
# XkbKeymap "xfree86(us)"
 
...
 
664
 
Kapitel 23. Weitere Infos
 
Die Zeile mit XkbLayout ist ursprünglich auskommentiert, das heißt, sie hat ein ‘#’-Zeichen am Anfang.
 
Möglicherweise ist die Zeile überhaupt nicht vorhanden. In diesem Fall fügen Sie die Zeile in der Section
 
Keyboard ein. Folgende Zeile
 
XkbKeymap "xfree86(us)"
 
kommentieren Sie aus, das heißt, Sie schreiben ein ‘#’-Zeichen in die erste Spalte. Alternativ zu obiger
 
Methode können Sie versuchen, die Zeile
 
XkbKeymap "xfree86(us)"
 
abzuändern in
 
XkbKeymap "xfree86(de)"
 
Für Schweizer Benutzer von Debian GNU/Linux könnten diese Einstellungen an derselben Stelle funktionieren:
 
...
 
XkbRules "xfree86"
 
XkbModel "pc102"
 
XkbLayout "de_CH"
 
XkbVariant "nodeadkeys"
 
XkbOptions ""
 
...
 
Auf jeden Fall müssen Sie nach diesen Änderungen die Datei abspeichern, X11 beenden und neu starten.
 
Achtung: Das Terminalprogramm xterm akzeptiert möglicherweise keine Umlaute. Zum Austesten der neuen
 
Tastaturbelegung starten Sie am besten einen Editor wie xedit.
 
23.7.1. Gerätedateien in /dev und ihre Bedeutung
 
Unter Linux befinden sich im Verzeichnis /dev/ verschiedene besondere Dateien, die sogenannten
 
Gerätedateien (device files). Unter Unix wird auf Hardware- und System-Komponenten jeweils über
 
Gerätedateien zugegriffen. Mit Hilfe einer solchen Datei kann vom jeweiligen Programm über einen speziellen
 
internen Treiber das zugehörige Gerät beziehungsweise eine Systemkomponente angesprochen werden. Die
 
Gerätedatei dient dafür als Schnittstelle. Aus Anwendersicht verhalten sich Gerätedateien oft anders als
 
gewöhnliche Dateien. Die Bedeutung der wichtigsten Gerätedateien ist im folgenden aufgeführt.
 
Es gibt sehr viele verschiedene CD-ROM-Laufwerke und Schnittstellen. Sollten Sie weder ein
 
SCSI-CD-ROM-Laufwerk haben noch eines mit IDE-Schnittstelle, dann gibt es für Ihr CD-ROM-Laufwerk
 
eine spezielle Gerätedatei, die bereits bei der Installation automatisch angelegt wurde. Der Name dieser
 
Gerätedatei ist üblicherweise ein Kürzel des Namens Ihres CD-ROM-Laufwerks. Um den Zugriff auf das
 
CD-ROM-Laufwerk zu vereinfachen, existiert der symbolische Link /dev/cdrom. Dieser Link wird bei der
 
Installation ebenfalls angelegt und verweist auf die eigentliche Gerätedatei. Mit dem Kommando ls -l
 
/dev/cdrom sehen Sie nach, auf welche Gerätedatei cdrom verweist.
 
fr@sushi:~$ ls -l /dev/cdrom
 
lrwxrwxrwx 1 root root 3 Sep 1 16:06 /dev/cdrom -> hdc
 
Hier die wichtigsten Gerätedateien im Verzeichnis /dev/:
 
fd0 1. Diskettenlaufwerk
 
fd1 2. Diskettenlaufwerk
 
hda IDE Festplatte / IDE CDROM am 1. Anschluß Master
 
hdb IDE Festplatte / IDE CDROM am 1. Anschluß Slave
 
hdc IDE Festplatte / IDE CDROM am 2. Anschluß Master
 
hdd IDE Festplatte / IDE CDROM am 2. Anschluß Slave
 
hda1 1. Partition der ersten IDE Platte
 
hda15 15. Partition der ersten IDE Platte
 
665
 
Kapitel 23. Weitere Infos
 
sda SCSI (Wechsel-) Platte, kleinste SCSI ID
 
sdb SCSI (Wechsel-) Platte, nächst größere SCSI ID
 
sdc SCSI (Wechsel-) Platte, nächst größere SCSI ID
 
sda1 1. Partition der ersten SCSI (Wechsel-) Platte
 
sda15 15. Partition der ersten SCSI (Wechsel-) Platte
 
scd0 1. SCSI CDROM Laufwerk
 
scd1 2. SCSI CDROM Laufwerk
 
cdrom Symbolischer Link auf cdrom Laufwerk
 
mouse Symbolischer Link auf Maus-Gerätedatei
 
ttyS0 1. Serielle Schnittstelle (COM1)
 
ttyS1 2. Serielle Schnittstelle (COM2)
 
lp0 1. Parallele Schnittstelle
 
lp1 2. Parallele Schnittstelle
 
null Hier können beliebig viel Daten reinkopiert werden
 
zero Hieraus können beliebig viel Nullen gelesen werden
 
Achtung: Die Daten bei DOS-formatierten Zip-Medien liegen auf Partition vier. Das heißt, daß Sie zum
 
Mounten eines DOS-formatierten ZIP-Mediums folgendes eingeben müssen: mount -t vfat /dev/sdc4
 
/zip. Dies gilt für den Fall, daß das Zip-Laufwerk das dritte SCSI-Plattengerät für Wechselmedien ist und daß
 
Sie das Zip-Medium auf das Verzeichnis /zip mounten möchten.
 
23.7.2. Warenzeichen
 
Warenzeichen, die nicht explizit angegeben wurden, gehören ihren jeweiligen Eigentümern. Linux ist
 
eingetragenes Warenzeichen von Linus Torvalds. 386, 386sx, 486, Pentium, Pentium Pro, Pentium II und
 
Pentium III sind Eigentum von Intel. Windows, Windows95, Windows98, WindowsNT und WinModem sind
 
Warenzeichen von Microsoft. ThinkPad und OS/2 sind Eigentum von IBM.
 
23.8. Debian – Gesellschaftsvertrag
 
„Gesellschaftsvertrag“ mit der Gemeinschaft für freie Software
 
Wir sind „Software In The Public Interest“-Hersteller des Debian GNU/Linux-Systems. Wir bieten diesen
 
„Gesellschaftsvertrag“ der Gemeinschaft für freie Software an. (Mit „Gemeinschaft für freie Software“ werden
 
alle Hersteller und Anwender freier Software bezeichnet.)
 
1. Debian wird 100% freie Software bleiben
 
Wir versprechen, daß die Debian GNU/Linux-Distribution auch weiterhin vollständig aus freier Software
 
bestehen wird. Da es viele verschiedene Auslegungen des Begriffs „freie Software“ gibt, haben wir weiter unten
 
die Richtlinien aufgeführt, nach denen wir freie Software identifizieren. Trotzdem werden wir Anwender
 
unterstützen, die nichtfreie Programme einsetzen oder entwickeln. Wir werden aber niemals das Gesamtsystem
 
von nichtfreier Software abhängig machen.
 
2. Unser Beitrag zur Gemeinschaft für freie Software
 
Wenn wir neue Komponenten des Debian-Systems schreiben, so werden wir sie als freie Software lizensieren.
 
Wir werden das bestmögliche System erstellen, so daß freie Software weit verbreitet und genutzt wird. Wir
 
werden Korrekturen, Verbesserungen, Anwenderwünsche usw. an die ursprünglichen („upstream“) Autoren
 
weiterleiten, deren Programme in unser System integriert wurden.
 
3. Wir werden Probleme nicht verbergen
 
666
 
Kapitel 23. Weitere Infos
 
Wir werden unsere Fehlerdatenbank für alle Zeiten öffentlich betreiben. Fehlermeldungen, die von Anwendern
 
online abgeschickt werden, werden augenblicklich für andere sichtbar.
 
4. Unsere Prioritäten sind unsere Anwender und freie Software
 
Wir orientieren uns an den Bedürfnissen unserer Anwender und der Gemeinschaft für freie Software. Ihre
 
Interessen stehen an erster Stelle. Wir werden unsere Nutzer bei Ihrer Arbeit mit den verschiedensten
 
Rechnerumgebungen unterstützen. Wir haben nichts dagegen, daß kommerzielle Software auf Debian-Systemen
 
eingesetzt wird. Außerdem erlauben wir anderen eine erweiterte („Value-Added“) Distribution zu erstellen, die
 
Debian und kommerzielle Software enthält, ohne dafür irgendwelche Gebühren zu erheben. Um diese Ziele zu
 
erreichen, werden wir ein integriertes System von hoher Qualität und 100% freier Software anbieten, die die
 
gerade beschriebene Nutzung nicht durch rechtliche Einschränkungen, wie z. B. durch Lizenzverträge,
 
verhindert.
 
5. Programme, die nicht unseren Standards für freie Software genügen
 
Wir wissen, daß einige unserer Anwender unbedingt Programme einsetzen müssen, die nicht den
 
Debian-Richtlinien für freie Software entsprechen. Für solche Programme haben wird die zusätzlichen Bereiche
 
„contrib“ und „non-free“ auf unserem FTP-Archiv eingerichtet. Die Software in diesen Verzeichnissen ist nicht
 
Bestandteil des Debian-Systems, wurde aber trotzdem für den Einsatz in einem Debian-System vorbereitet. Wir
 
empfehlen den CD-Herstellern, die jeweiligen Lizenzbestimmungen der Programmpakete in diesen
 
Verzeichnissen zu studieren und selbst zu entscheiden, ob Sie die Programme mit Ihren CDs verteilen dürfen.
 
Obwohl die Programme aus „non-free“ nicht Bestandteil der Debian-Distribution sind, unterstützen wir ihren
 
Einsatz und bieten Infrastruktur für diese nicht freien Programme an, z. B. unsere Fehlerdatenbank und die
 
Mailing-Listen.
 
23.9. Die Debian-Richtlinien für freie Software
 
(englisch: Debian Free Software Guidelines)
 
1. Unbeschränkte Weitergabe
 
Ein Bestandteil der Debian-Distribution darf durch seine Lizenz nicht verhindern, daß irgend jemand diese
 
Software als Bestandteil einer Software-Distribution, die Programme aus den verschiedensten Quellen enthält,
 
verkauft oder weitergibt. Die Lizenz darf keine Abgaben oder sonstige Leistungen für einen solchen Verkauf
 
fordern.
 
2. Quellcode
 
Das Programm muß im Quellcode vorliegen, und es muß die Weitergabe sowohl im Quellcode als auch in
 
compilierter Form erlaubt sein.
 
3. Weiterführende Arbeiten
 
Die Lizenz muß Veränderungen und weiterführende Arbeiten gestatten und es erlauben, daß diese unter den
 
gleichen Lizenzbedingungen weitergegeben werden dürfen wie die Original-Software.
 
4. Integrität des ursprünglichen Quellcodes
 
Die Lizenz darf die Weitergabe von verändertem Quellcode nur dann verbieten, wenn sie die Weitergabe von
 
sogenannten Patch-Dateien mit dem Quellcode erlaubt, die dazu dienen, das Programm vor seiner Herstellung
 
zu modifizieren. Die Lizenz muß ausdrücklich die Weitergabe der aus dem veränderten Quellcode erzeugten
 
Programme erlauben. Die Lizenz darf fordern, daß die veränderten Programme einen anderen Namen oder eine
 
andere Versionsnummer tragen müssen.
 
(Dies ist ein Kompromiß. Die Debian-Gruppe ermutigt alle Autoren, Veränderungen an Dateien sowohl im
 
Quellcode als auch in Binärform zu erlauben.)
 
5. Keine Diskriminierung von Personen oder Gruppen
 
Die Lizenz darf keine Person oder Gruppe von Personen diskriminieren.
 
6. Keine Diskriminierung von Einsatzbereichen
 
Die Lizenz darf keine Einschränkungen hinsichtlich des Einsatzbereichs vornehmen. Beispielsweise darf sie
 
nicht verhindern, daß das Programm geschäftlich oder für genetische Forschungen verwendet wird.
 
667
 
Kapitel 23. Weitere Infos
 
7. Weitergabe der Lizenz
 
Die mit einem Programm verbundenen Rechte müssen für alle gelten, die das Programm erhalten, ohne daß es
 
für sie notwendig ist, eine zusätzliche Lizenz zu erwerben.
 
8. Keine spezielle Lizenz für Debian
 
Die mit dem Programm verbundenen Rechte dürfen nicht davon abhängig sein, daß das Programm Teil des
 
Debian-Systems ist. Falls das Programm aus der Debian-Distribution herausgenommen wird und ohne Debian
 
genutzt oder vertrieben werden soll, ansonsten aber im Rahmen der Programmlizenz bleibt, so müssen alle
 
Parteien, die das Programm bekommen, die gleichen Rechte haben, wie sie im Zusammenhang mit dem
 
Debian-System gewährt wurden.
 
9. Keine Auswirkungen auf andere Programme
 
Die Lizenz darf keine Beschränkungen besitzen, die Auswirkungen auf andere Software hat, die mit diesem
 
Programm weitergegeben wird. Beispielsweise darf die Lizenz nicht vorschreiben, daß alle anderen Programme
 
auf dem gleichen Medium freie Software sein müssen.
 
10. Beispiellizenzen
 
Die „GPL“- „BSD“- und „Artistic“-Lizenzen sind Beispiele für Lizenzen, die wir als „frei“ betrachten.
 
Dies ist die deutsche Übersetzung von „Debian’s social contract with the free software community“. In
 
Zweifelsfällen ist das englische Original maßgeblich. Es ist beispielsweise unter
 
http://www.debian.org/social_contract.en.html verfügbar.
 
23.10. GNU Public License
 
Deutsche Übersetzung der GNU General Public License
 
Erstellt im Auftrag der S.u.S.E. GmbH [suse@suse.de] von Katja Lachmann Übersetzungen
 
[na194@fim.uni-erlangen.de], überarbeitet von Peter Gerwinski [peter.gerwinski@uni-essen.de] (31. Oktober
 
1996)
 
Diese Übersetzung wird mit der Absicht angeboten, das Verständnis der GNU General Public License
 
(GNU-GPL) zu erleichtern. Es handelt sich jedoch nicht um eine offizielle oder im rechtlichen Sinne anerkannte
 
Übersetzung.
 
Die Free Software Foundation (FSF) ist nicht der Herausgeber dieser Übersetzung, und sie hat diese
 
Übersetzung auch nicht als rechtskräftigen Ersatz für die Original-GNU-GPL anerkannt. Da die Übersetzung
 
nicht sorgfältig von Anwälten überprüft wurde, können die Übersetzer nicht garantieren, daß die Übersetzung
 
die rechtlichen Aussagen der GNU-GPL exakt wiedergibt. Wenn Sie sichergehen wollen, daß von Ihnen
 
geplante Aktivitäten im Sinne der GNU-GPL gestattet sind, halten Sie sich bitte an die englischsprachige
 
Originalversion.
 
Die Free Software Foundation möchte Sie darum bitten, diese Übersetzung nicht als offizielle
 
Lizenzbedingungen für von Ihnen geschriebene Programme zu verwenden. Bitte benutzen Sie hierfür statt
 
dessen die von der Free Software Foundation herausgegebene englischsprachige Originalversion.
 
This is a translation of the GNU General Public License into German. This translation is distributed in the hope
 
that it will facilitate understanding, but it is not an official or legally approved translation.
 
The Free Software Foundation is not the publisher of this translation and has not approved it as a legal substitute
 
for the authentic GNU General Public License. The translation has not been reviewed carefully by lawyers, and
 
therefore the translator cannot be sure that it exactly represents the legal meaning of the GNU General Public
 
License. If you wish to be sure whether your planned activities are permitted by the GNU General Public
 
License, please refer to the authentic English version.
 
The Free Software Foundation strongly urges you not to use this translation as the official distribution terms for
 
your programs; instead, please use the authentic English version published by the Free Software Foundation.
 
GNU General Public License
 
Deutsche Übersetzung der Version 2, Juni 1991
 
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
 
668
 
Kapitel 23. Weitere Infos
 
675 Mass Ave, Cambridge, MA 02139, USA
 
Jeder hat das Recht, diese Lizenzurkunde zu vervielfältigen und unveränderte Kopien zu verbreiten;
 
Änderungen sind jedoch nicht gestattet.
 
Diese Übersetzung ist kein rechtskräftiger Ersatz für die englischsprachige Originalversion!
 
Vorwort
 
Die meisten Softwarelizenzen sind daraufhin entworfen worden, Ihnen die Freiheit zu nehmen, die Software
 
weiterzugeben und zu verändern. Im Gegensatz dazu soll Ihnen die GNU General Public License, die
 
allgemeine öffentliche GNU-Lizenz, ebendiese Freiheit garantieren. Sie soll sicherstellen, daß die Software für
 
alle Benutzer frei ist. Diese Lizenz gilt für den Großteil der von der Free Software Foundation herausgegebenen
 
Software und für alle anderen Programme, deren Autoren Ihr Werk dieser Lizenz unterstellt haben. Auch Sie
 
können diese Möglichkeit der Lizenzierung für Ihre Programme anwenden. (Ein anderer Teil der Software der
 
Free Software Foundation unterliegt statt dessen der GNU Lesser General Public License, der allgemeinen
 
öffentlichen GNU-Lizenz für Bibliotheken.)
 
Die Bezeichnung „freie“ Software bezieht sich auf Freiheit, nicht auf den Preis. Unsere Lizenzen sollen Ihnen
 
die Freiheit garantieren, Kopien freier Software zu verbreiten (und etwas für diesen Service zu berechnen, wenn
 
Sie möchten), die Möglichkeit, die Software im Quelltext zu erhalten oder den Quelltext auf Wunsch zu
 
bekommen. Die Lizenzen sollen garantieren, daß Sie die Software ändern oder Teile davon in neuen freien
 
Programmen verwenden dürfen - und daß Sie wissen, daß Sie dies alles tun dürfen.
 
Um Ihre Rechte zu schützen, müssen wir Einschränkungen machen, die es jedem verbieten, Ihnen diese Rechte
 
zu verweigern oder Sie aufzufordern, auf diese Rechte zu verzichten. Aus diesen Einschränkungen folgen
 
bestimmte Verantwortlichkeiten für Sie, wenn Sie Kopien der Software verbreiten oder sie verändern.
 
Beispielsweise müssen Sie den Empfängern alle Rechte gewähren, die Sie selbst haben, wenn Sie - kostenlos
 
oder gegen Bezahlung - Kopien eines solchen Programms verbreiten. Sie müssen sicherstellen, daß auch Sie
 
den Quelltext erhalten beziehungsweise erhalten können. Und Sie müssen ihnen diese Bedingungen zeigen,
 
damit Sie Ihre Rechte kennen.
 
Wir schützen Ihre Rechte in zwei Schritten: (1) Wir stellen die Software unter ein Urheberrecht (Copyright),
 
und (2) wir bieten Ihnen diese Lizenz an, die Ihnen das Recht gibt, die Software zu vervielfältigen, zu verbreiten
 
und/oder zu verändern.
 
Um die Autoren und uns zu schützen, wollen wir darüberhinaus sicherstellen, daß jeder erfährt, daß für diese
 
freie Software keinerlei Garantie besteht. Wenn die Software von jemand anderem modifiziert und
 
weitergegeben wird, möchten wir, daß die Empfänger wissen, daß Sie nicht das Original erhalten haben, damit
 
von anderen verursachte Probleme nicht den Ruf des ursprünglichen Autors schädigen.
 
Schließlich und endlich ist jedes freie Programm permanent durch Software-Patente bedroht. Wir möchten die
 
Gefahr ausschließen, daß Distributoren eines freien Programms individuell Patente lizensieren - mit dem
 
Ergebnis, daß das Programm proprietär würde. Um dies zu verhindern, haben wir klargestellt, daß jedes Patent
 
entweder für freie Benutzung durch jedermann lizenziert werden muß oder überhaupt nicht lizenziert werden
 
darf.
 
Es folgen die genauen Bedingungen für die Vervielfältigung, Verbreitung und Bearbeitung:
 
Bedingungen für die Vervielfältigung, Verbreitung und Bearbeitung
 
Paragraph 0. Diese Lizenz gilt für jedes Programm und jedes andere Werk, in dem ein entsprechender Vermerk
 
des Copyright-Inhabers darauf hinweist, daß das Werk unter den Bestimmungen dieser General Public License
 
verbreitet werden darf. im Folgenden wird jedes derartige Programm oder Werk als „das Programm“
 
bezeichnet; die Formulierung „auf dem Programm basierendes Werk“ bezeichnet das Programm sowie jegliche
 
Bearbeitung des Programms im urheberrechtlichen Sinne, also ein Werk, welches das Programm, auch
 
auszugsweise, sei es unverändert oder verändert und/oder in eine andere Sprache übersetzt, enthält. (im
 
Folgenden wird die Übersetzung ohne Einschränkung als „Bearbeitung“ eingestuft.) Jeder Lizenznehmer wird
 
im folgenden als „Sie“ angesprochen.
 
Andere Handlungen als Vervielfältigung, Verbreitung und Bearbeitung werden von dieser Lizenz nicht berührt;
 
sie fallen nicht in Ihren Anwendungsbereich. Der Vorgang der Ausführung des Programms wird nicht
 
eingeschränkt, und die Ausgaben des Programms unterliegen dieser Lizenz nur, wenn der Inhalt ein auf dem
 
Programm basierendes Werk darstellt (unabhängig davon, daß die Ausgabe durch die Ausführung des
 
Programms erfolgte). Ob dies zutrifft, hängt von den Funktionen des Programms ab.
 
669
 
Kapitel 23. Weitere Infos
 
Paragraph 1. Sie dürfen auf beliebigen Medien unveränderte Kopien des Quelltextes des Programms, wie Sie
 
ihn erhalten haben, anfertigen und verbreiten. Voraussetzung hierfür ist, daß Sie mit jeder Kopie einen
 
entsprechenden Copyright-Vermerk sowie einen Haftungsausschluß veröffentlichen, alle Vermerke, die sich auf
 
diese Lizenz und das Fehlen einer Garantie beziehen, unverändert lassen und desweiteren allen anderen
 
Empfängern des Programms zusammen mit dem Programm eine Kopie dieser Lizenz zukommen lassen.
 
Sie dürfen für den eigentlichen Kopiervorgang eine Gebühr verlangen. Wenn Sie es wünschen, dürfen Sie auch
 
gegen Entgelt eine Garantie für das Programm anbieten.
 
Paragraph 2. Sie dürfen Ihre Kopie(n) des Programms oder eines Teils davon verändern, wodurch ein auf dem
 
Programm basierendes Werk entsteht; Sie dürfen derartige Bearbeitungen unter den Bestimmungen von
 
Paragraph 1 vervielfältigen und verbreiten, vorausgesetzt, daß zusätzlich alle folgenden Bedingungen erfüllt
 
werden:
 
(a)
 
Sie müssen die veränderten Dateien mit einem auffälligen Vermerk versehen, der auf die von Ihnen
 
vorgenommene Modifizierung und das Datum jeder Änderung hinweist.
 
(b)
 
Sie müssen dafür sorgen, daß jede von Ihnen verbreitete oder veröffentlichte Arbeit, die ganz oder teilweise von
 
dem Programm oder Teilen davon abgeleitet ist, Dritten gegenüber als Ganzes unter den Bedingungen dieser
 
Lizenz ohne Lizenzgebühren zur Verfügung gestellt wird.
 
(c)
 
Wenn das veränderte Programm normalerweise bei der Ausführung interaktiv Kommandos einliest, müssen Sie
 
dafür sorgen, daß es, wenn es auf dem üblichsten Wege für solche interaktive Nutzung gestartet wird, eine
 
Meldung ausgibt oder ausdruckt, die einen geeigneten Copyright-Vermerk enthält sowie einen Hinweis, daß es
 
keine Gewährleistung gibt (oder anderenfalls, daß Sie Garantie leisten), und daß die Benutzer das Programm
 
unter diesen Bedingungen weiter verbreiten dürfen. Auch muß der Benutzer darauf hingewiesen werden, wie er
 
eine Kopie dieser Lizenz ansehen kann. (Ausnahme: Wenn das Programm selbst interaktiv arbeitet, aber
 
normalerweise keine derartige Meldung ausgibt, muß Ihr auf dem Programm basierendes Werk auch keine
 
solche Meldung ausgeben).
 
Diese Anforderungen betreffen das veränderte Werk als Ganzes. Wenn identifizierbare Abschnitte des Werkes
 
nicht von dem Programm abgeleitet sind und vernünftigerweise selbst als unabhängige und eigenständige
 
Werke betrachtet werden können, dann erstrecken sich diese Lizenz und Ihre Bedingungen nicht auf diese
 
Abschnitte, wenn sie als eigenständige Werke verbreitet werden. Wenn Sie jedoch dieselben Abschnitte als Teil
 
eines Ganzen verbreiten, das ein auf dem Programm basierendes Werk darstellt, dann muß die Verbreitung des
 
Ganzen nach den Bedingungen dieser Lizenz erfolgen, deren Bedingungen für weitere Lizenznehmer somit auf
 
die Gesamtheit ausgedehnt werden - und damit auf jeden einzelnen Teil, unabhängig vom jeweiligen Autor.
 
Somit ist es nicht die Absicht dieses Abschnittes, Rechte für Werke in Anspruch zu nehmen oder zu
 
beschneiden, die komplett von Ihnen geschrieben wurden; vielmehr ist es die Absicht, die Rechte zur Kontrolle
 
der Verbreitung von Werken, die auf dem Programm basieren oder unter seiner auszugsweisen Verwendung
 
zusammengestellt worden sind, auszuüben.
 
Ferner bringt ein einfaches Zusammenstellen eines anderen Werkes, das nicht auf dem Programm basiert,
 
zusammen mit dem Programm oder einem auf dem Programm basierenden Werk auf ein- und demselben
 
Speicher- oder Vertriebsmedium das andere Werk nicht in den Anwendungsbereich dieser Lizenz.
 
Paragraph 3. Sie dürfen das Programm (oder ein darauf basierendes Werk gemäß Paragraph 2) als Objectcode
 
oder in ausführbarer Form unter den Bedingungen von Paragraph 1 und 2 vervielfältigen und verbreiten -
 
vorausgesetzt, daß Sie außerdem eine der folgenden Leistungen erbringen:
 
(a)
 
Liefern Sie das Programm zusammen mit dem vollständigen zugehörigen maschinenlesbaren Quelltext auf
 
einem für den Datenaustausch üblichen Medium aus, wobei die Verteilung unter den Bedingungen der
 
Paragraphen 1 und 2 erfolgen muß. Oder:
 
(b)
 
Liefern Sie das Programm zusammen mit einem mindestens drei Jahre lang gültigen schriftlichen Angebot aus,
 
jedem Dritten eine vollständige maschinenlesbare Kopie des Quelltextes zur Verfügung zu stellen - zu nicht
 
670
 
Kapitel 23. Weitere Infos
 
höheren Kosten als denen, die durch den physikalischen Kopiervorgang anfallen -, wobei der Quelltext unter
 
den Bedingungen der Paragraphen 1 und 2 auf einem für den Datenaustausch üblichen Medium weitergegeben
 
wird. Oder:
 
(c)
 
Liefern Sie das Programm zusammen mit dem schriftlichen Angebot der Zurverfügungstellung des Quelltextes
 
aus, das Sie selbst erhalten haben. (Diese Alternative ist nur für nicht-kommerzielle Verbreitung zulässig und
 
nur, wenn Sie das Programm als Objectcode oder in ausführbarer Form mit einem entsprechenden Angebot
 
gemäß Absatz b erhalten haben.)
 
Unter dem Quelltext eines Werkes wird diejenige Form des Werkes verstanden, die für Bearbeitungen
 
vorzugsweise verwendet wird. Für ein ausführbares Programm bedeutet „der komplette Quelltext“ Der Quelltext
 
aller im Programm enthaltenen Module einschließlich aller zugehörigen Modulschnittstellen-Definitionsdateien
 
sowie der zur Compilation und Installation verwendeten Skripte. Als besondere Ausnahme jedoch braucht der
 
verteilte Quelltext nichts von dem zu enthalten, was üblicherweise (entweder als Quelltext oder in binärer Form)
 
zusammen mit den Hauptkomponenten des Betriebssystems (Kernel, Compiler usw.) geliefert wird, unter dem
 
das Programm läuft - es sei denn, diese Komponente selbst gehört zum ausführbaren Programm.
 
Wenn die Verbreitung eines ausführbaren Programms oder des Objectcodes dadurch erfolgt, daß der
 
Kopierzugriff auf eine dafür vorgesehene Stelle gewährt wird, so gilt die Gewährung eines gleichwertigen
 
Zugriffs auf den Quelltext als Verbreitung des Quelltextes, auch wenn Dritte nicht dazu gezwungen sind, den
 
Quelltext zusammen mit dem Objectcode zu kopieren.
 
Paragraph 4. Sie dürfen das Programm nicht vervielfältigen, verändern, weiter lizenzieren oder verbreiten,
 
sofern es nicht durch diese Lizenz ausdrücklich gestattet ist. Jeder anderweitige Versuch der Vervielfältigung,
 
Modifizierung, Weiterlizenzierung und Verbreitung ist nichtig und beendet automatisch Ihre Rechte unter dieser
 
Lizenz. Jedoch werden die Lizenzen Dritter, die von Ihnen Kopien oder Rechte unter dieser Lizenz erhalten
 
haben, nicht beendet, solange diese die Lizenz voll anerkennen und befolgen.
 
Paragraph 5. Sie sind nicht verpflichtet, diese Lizenz anzunehmen, da Sie sie nicht unterzeichnet haben. Jedoch
 
gibt Ihnen nichts anderes die Erlaubnis, das Programm oder von ihm abgeleitete Werke zu verändern oder zu
 
verbreiten. Diese Handlungen sind gesetzlich verboten, wenn Sie diese Lizenz nicht anerkennen. Indem Sie das
 
Programm (oder ein darauf basierendes Werk) verändern oder verbreiten, erklären Sie Ihr Einverständnis mit
 
dieser Lizenz und mit allen Ihren Bedingungen bezüglich der Vervielfältigung, Verbreitung und Veränderung
 
des Programms oder eines darauf basierenden Werkes.
 
Paragraph 6. Jedesmal, wenn Sie das Programm (oder ein auf dem Programm basierendes Werk) weitergeben,
 
erhält der Empfänger automatisch vom ursprünglichen Lizenzgeber die Lizenz, das Programm entsprechend
 
den hier festgelegten Bestimmungen zu vervielfältigen, zu verbreiten und zu verändern. Sie dürfen keine
 
weiteren Einschränkungen der Durchsetzung der hierin zugestandenen Rechte des Empfängers vornehmen. Sie
 
sind nicht dafür verantwortlich, die Einhaltung dieser Lizenz durch Dritte durchzusetzen.
 
Paragraph 7. Sollten Ihnen infolge eines Gerichtsurteils, des Vorwurfs einer Patentverletzung oder aus einem
 
anderen Grunde (nicht auf Patentfragen begrenzt) Bedingungen (durch Gerichtsbeschluß, Vergleich oder
 
anderweitig) auferlegt werden, die den Bedingungen dieser Lizenz widersprechen, so befreien Sie diese
 
Umstände nicht von den Bestimmungen dieser Lizenz. Wenn es Ihnen nicht möglich ist, das Programm unter
 
gleichzeitiger Beachtung der Bedingungen in dieser Lizenz und Ihrer anderweitigen Verpflichtungen zu
 
verbreiten, dann dürfen Sie als Folge das Programm überhaupt nicht verbreiten. Wenn zum Beispiel ein Patent
 
nicht die gebührenfreie Weiterverbreitung des Programms durch diejenigen erlaubt, die das Programm direkt
 
oder indirekt von Ihnen erhalten haben, dann besteht der einzige Weg, sowohl das Patentrecht als auch diese
 
Lizenz zu befolgen, darin, ganz auf die Verbreitung des Programms zu verzichten.
 
Sollte sich ein Teil dieses Paragraphen als ungültig oder unter bestimmten Umständen nicht durchsetzbar
 
erweisen, so soll dieser Paragraph seinem Sinne nach angewandt werden; im übrigen soll dieser Paragraph als
 
Ganzes gelten.
 
Zweck dieses Paragraphen ist nicht, Sie dazu zu bringen, irgendwelche Patente oder andere
 
Eigentumsansprüche zu verletzen oder die Gültigkeit solcher Ansprüche zu bestreiten; dieser Paragraph hat
 
einzig den Zweck, die Integrität des Verbreitungssystems der freien Software zu schützen, das durch die Praxis
 
öffentlicher Lizenzen verwirklicht wird. Viele Leute haben großzügige Beiträge zu dem großen Angebot der mit
 
diesem System verbreiteten Software im Vertrauen auf die konsistente Anwendung dieses Systems geleistet; es
 
671
 
Kapitel 23. Weitere Infos
 
liegt am Autor/Geber, zu entscheiden, ob er die Software mittels irgendeines anderen Systems verbreiten will;
 
ein Lizenznehmer hat auf diese Entscheidung keinen Einfluß.
 
Dieser Paragraph ist dazu gedacht, deutlich klarzustellen, was als Konsequenz aus dem Rest dieser Lizenz
 
betrachtet wird.
 
Paragraph 8. Wenn die Verbreitung und/oder die Benutzung des Programms in bestimmten Staaten entweder
 
durch Patente oder durch urheberrechtlich geschützte Schnittstellen eingeschränkt ist, kann der
 
Urheberrechtsinhaber, der das Programm unter diese Lizenz gestellt hat, eine explizite geographische
 
Begrenzung der Verbreitung angeben, in der diese Staaten ausgeschlossen werden, so daß die Verbreitung nur
 
innerhalb und zwischen den Staaten erlaubt ist, die nicht ausgeschlossen sind. In einem solchen Fall beinhaltet
 
diese Lizenz die Beschränkung, als wäre sie in diesem Text niedergeschrieben.
 
Paragraph 9. Die Free Software Foundation kann von Zeit zu Zeit überarbeitete und/oder neue Versionen der
 
General Public License veröffentlichen. Solche neuen Versionen werden vom Grundprinzip her der
 
gegenwärtigen entsprechen, können aber im Detail abweichen, um neuen Problemen und Anforderungen
 
gerecht zu werden.
 
Jede Version dieser Lizenz hat eine eindeutige Versionsnummer. Wenn in einem Programm angegeben wird,
 
daß es dieser Lizenz in einer bestimmten Versionsnummer oder „jeder späteren Version“ („any later version“
 
unterliegt, so haben Sie die Wahl, entweder den Bestimmungen der genannten Version zu folgen oder denen
 
jeder beliebigen späteren Version, die von der Free Software Foundation veröffentlicht wurde. Wenn das
 
Programm keine Versionsnummer angibt, können Sie eine beliebige Version wählen, die je von der Free
 
Software Foundation veröffentlicht wurde.
 
Paragraph 10. Wenn Sie den Wunsch haben, Teile des Programms in anderen freien Programmen zu verwenden,
 
deren Bedingungen für die Verbreitung anders sind, schreiben Sie an den Autor, um ihn um die Erlaubnis zu
 
bitten. Für Software, die unter dem Copyright der Free Software Foundation steht, schreiben Sie an die Free
 
Software Foundation; wir machen zu diesem Zweck gelegentlich Ausnahmen. Unsere Entscheidung wird von
 
den beiden Zielen geleitet werden, zum einen den freien Status aller von unserer freien Software abgeleiteten
 
Werke zu erhalten und zum anderen das gemeinschaftliche Nutzen und Wiederverwenden von Software im
 
allgemeinen zu fördern.
 
Keine Gewährleistung
 
Paragraph 11. Da das Programm ohne jegliche Kosten lizenziert wird, besteht keinerlei Gewährleistung für das
 
Programm, soweit dies gesetzlich zulässig ist. Sofern nicht anderweitig schriftlich bestätigt, stellen die
 
Copyright-Inhaber und/oder Dritte das Programm so zur Verfügung, „wie es ist“ ohne irgendeine
 
Gewährleistung, weder ausdrücklich noch implizit, einschließlich - aber nicht begrenzt auf - Marktreife oder
 
Verwendbarkeit für einen bestimmten Zweck. Das volle Risiko bezüglich Qualität und Leistungsfähigkeit des
 
Programms liegt bei Ihnen. Sollte sich das Programm als fehlerhaft herausstellen, liegen die Kosten für
 
notwendigen Service, Reparatur oder Korrektur bei Ihnen.
 
Paragraph 12. In keinem Fall, außer wenn durch geltendes Recht gefordert oder schriftlich zugesichert, ist
 
irgendein Copyright-Inhaber oder irgendein Dritter, der das Programm wie oben erlaubt modifiziert oder
 
verbreitet hat, Ihnen gegenüber für irgendwelche Schäden haftbar, einschließlich jeglicher allgemeiner oder
 
spezieller Schäden, Schäden durch Seiteneffekte (Nebenwirkungen) oder Folgeschäden, die aus der Benutzung
 
des Programms oder der Unbenutzbarkeit des Programms folgen (einschließlich - aber nicht beschränkt auf -
 
Datenverluste, fehlerhafte Verarbeitung von Daten, Verluste, die von Ihnen oder anderen getragen werden
 
müssen, oder dem Unvermögen des Programms, mit irgendeinem anderen Programm zusammenzuarbeiten),
 
selbst wenn ein Copyright-Inhaber oder Dritter über die Möglichkeit solcher Schäden unterrichtet worden war.
 
Ende der Bedingungen
 
Anhang: Wie Sie diese Bedingungen auf Ihre neuen Programme anwendbar machen
 
Wenn Sie ein neues Programm entwickeln und wollen, daß es von größtmöglichem Nutzen für die
 
Allgemeinheit ist, dann erreichen Sie das am besten, indem Sie es zu freier Software machen, die jeder unter
 
diesen Bestimmungen weiterverbreiten und verändern kann.
 
Um dies zu erreichen, fügen Sie die folgenden Anmerkungen zu Ihrem Programm hinzu. Am sichersten ist es,
 
sie an den Anfang einer jeden Quelldatei zu stellen, um den Gewährleistungsausschluß möglichst deutlich
 
darzustellen; außerdem sollte jede Datei mindestens eine „Copyright“Zeile besitzen sowie einen kurzen
 
Hinweis darauf, wo die vollständige Lizenz gefunden werden kann.
 
672
 
Kapitel 23. Weitere Infos
 
[eine Zeile mit dem Programmnamen und einer kurzen Beschreibung] Copyright (C) 19[yy] [Name des Autors]
 
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General
 
Public License as published by the Free Software Foundation; either version 2 of the License, or (at your
 
option) any later version.
 
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even
 
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
 
General Public License for more details.
 
You should have received a copy of the GNU General Public License along with this program; if not, write to
 
the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 
Auf Deutsch: [eine Zeile mit dem Programmnamen und einer kurzen Beschreibung] Copyright (C) 19[jj]
 
[Name des Autors]
 
Dieses Programm ist freie Software. Sie können es unter den Bedingungen der GNU General Public License,
 
wie von der Free Software Foundation herausgegeben, weitergeben und/oder modifizieren, entweder unter
 
Version 2 der Lizenz oder (wenn Sie es wünschen) jeder späteren Version.
 
Die Veröffentlichung dieses Programms erfolgt in der Hoffnung, daß es Ihnen von Nutzen sein wird, aber
 
OHNE JEDE GEWÄHRLEISTUNG - sogar ohne die implizite Gewährleistung der MARKTREIFE oder der
 
EIGNUNG FÜR EINEN BESTIMMTEN ZWECK. Details finden Sie in der GNU General Public License.
 
Sie sollten eine Kopie der GNU General Public License zusammen mit diesem Programm erhalten haben. Falls
 
nicht, schreiben Sie an die Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 
Fügen Sie auch einen kurzen Hinweis hinzu, wie Sie elektronisch und per Brief erreichbar sind.
 
Wenn Ihr Programm interaktiv ist, sorgen Sie dafür, daß es nach dem Start einen kurzen Vermerk ausgibt:
 
Gnomovision version 69, Copyright (C) 19[yy] [Name des Autors] Gnomovision comes with ABSOLUTELY
 
NO WARRANTY; for details type ‘show w’. This is free software, and you are welcome to redistribute it under
 
certain conditions; type ‘show c’ for details.
 
Auf Deutsch:
 
Gnomovision Version 69, Copyright (C) 19[jj] [Name des Autors] Für Gnomovision besteht KEINERLEI
 
GARANTIE; geben Sie ‘show w’ für Details ein. Gnomovision ist freie Software, die Sie unter bestimmten
 
Bedingungen weitergeben dürfen; geben Sie ‘show c’ für Details ein.
 
Die hypothetischen Kommandos ‘show w’ und ‘show c’ sollten die entsprechenden Teile der GNU-GPL
 
anzeigen. Natürlich können die von Ihnen verwendeten Kommandos anders heißen als ‘show w’ und ‘show c’;
 
es könnten auch Mausklicks oder Menüpunkte sein - was immer am besten in Ihr Programm paßt.
 
Soweit vorhanden, sollten Sie auch Ihren Arbeitgeber (wenn Sie als Programmierer arbeiten) oder Ihre Schule
 
einen Copyright-Verzicht für das Programm unterschreiben lassen. Hier ein Beispiel; ändern Sie bitte die
 
Namen:
 
Yoyodyne, Inc., hereby disclaims all copyright interest in the program „Gnomovision“ (which makes passes at
 
compilers) written by James Hacker.
 
[Unterschrift von Ty Coon], 1 April 1989 Ty Coon, President of Vice
 
Auf Deutsch:
 
Die Yoyodyne GmbH erhebt keinerlei urheberrechtlichen Anspruch auf das Programm „Gnomovision“ (einem
 
Schrittmacher für Compiler), geschrieben von James Hacker.
 
[Unterschrift von Ty Coon], 1. April 1989 Ty Coon, Vizepräsident
 
Diese General Public License gestattet nicht die Einbindung des Programms in proprietäre Programme. Ist Ihr
 
Programm eine Funktionsbibliothek, so kann es sinnvoller sein, das Linken proprietärer Programme mit dieser
 
Bibliothek zu gestatten. Wenn Sie dies tun wollen, sollten Sie die GNU Library General Public License anstelle
 
dieser Lizenz verwenden.
 
673
 
Kapitel 23. Weitere Infos
 
23.11. Open Publication License
 
OPEN PUBLICATION LICENSE Draft v0.4, 8 June 1999
 
I. REQUIREMENTS ON BOTH UNMODIFIED AND MODIFIED VERSIONS
 
The Open Publication works may be reproduced and distributed in whole or in part, in any medium physical or
 
electronic, provided that the terms of this license are adhered to, and that this license or an incorporation of it by
 
reference (with any options elected by the author(s) and/or publisher) is displayed in the reproduction.
 
Proper form for an incorporation by reference is as follows:
 
Copyright (c) <year> by <author’s name or designee> This material may be distributed only subject to the terms
 
and conditions set forth in the Open Publication License, vX.Y or later (the latest version is presently available
 
at http://www.opencontent.org/openpub/).
 
The reference must be immediately followed with any options elected by the author(s) and/or publisher of the
 
document (see section VI).
 
Commercial redistribution of Open Publication-licensed material is permitted.
 
Any publication in standard (paper) book form shall require the citation of the original publisher and author. The
 
publisher and author’s names shall appear on all outer surfaces of the book. On all outer surfaces of the book the
 
original publisher’s name shall be as large as the title of the work and cited as possessive with respect to the title.
 
II. COPYRIGHT
 
The copyright to each Open Publication is owned by its author(s) or designee.
 
III. SCOPE OF LICENSE
 
The following license terms apply to all Open Publication works, unless otherwise explicitly stated in the
 
document.
 
Mere aggregation of Open Publication works or a portion of an Open Publication work with other works or
 
programs on the same media shall not cause this license to apply to those other works. The aggregate work shall
 
contain a notice specifying the inclusion of the Open Publication material and appropriate copyright notice.
 
SEVERABILITY. If any part of this license is found to be unenforceable in any jurisdiction, the remaining
 
portions of the license remain in force.
 
NO WARRANTY. Open Publication works are licensed and provided „as is“ without warranty of any kind,
 
express or implied, including, but not limited to, the implied warranties of merchantability and fitness for a
 
particular purpose or a warranty of non-infringement.
 
IV. REQUIREMENTS ON MODIFIED WORKS
 
All modified versions of documents covered by this license, including translations, anthologies, compilations
 
and partial documents, must meet the following requirements:
 
1) The modified version must be labeled as such. 2) The person making the modifications must be identified and
 
the modifications dated. 3) Acknowledgement of the original author and publisher if applicable must be retained
 
according to normal academic citation practices. 4) The location of the original unmodified document must be
 
identified. 5) The original author’s (or authors’) name(s) may not be used to assert or imply endorsement of the
 
resulting document without the original author’s (or authors’) permission.
 
V. GOOD-PRACTICE RECOMMENDATIONS
 
In addition to the requirements of this license, it is requested from and strongly recommended of redistributors
 
that:
 
1) If you are distributing Open Publication works on hardcopy or CD-ROM, you provide email notification to
 
the authors of your intent to redistribute at least thirty days before your manuscript or media freeze, to give the
 
authors time to provide updated documents. This notification should describe modifications, if any, made to the
 
document.
 
2) All substantive modifications (including deletions) be either clearly marked up in the document or else
 
described in an attachment to the document.
 
Finally, while it is not mandatory under this license, it is considered good form to offer a free copy of any
 
hardcopy and CD-ROM expression of an Open Publication-licensed work to its author(s).
 
674
 
Kapitel 23. Weitere Infos
 
VI. LICENSE OPTIONS
 
The author(s) and/or publisher of an Open Publication-licensed document may elect certain options by
 
appending language to the reference to or copy of the license. These options are considered part of the license
 
instance and must be included with the license (or its incorporation by reference) in derived works.
 
A. To prohibit distribution of substantively modified versions without the explicit permission of the author(s).
 
„Substantive modification“ is defined as a change to the semantic content of the document, and excludes mere
 
changes in format or typographical corrections.
 
To accomplish this, add the phrase ‘Distribution of substantively modified versions of this document is
 
prohibited without the explicit permission of the copyright holder.’ to the license reference or copy.
 
B. To prohibit any publication of this work or derivative works in whole or in part in standard (paper) book form
 
for commercial purposes is prohibited unless prior permission is obtained from the copyright holder.
 
To accomplish this, add the phrase ’Distribution of the work or derivative of the work in any standard (paper)
 
book form is prohibited unless prior permission is obtained from the copyright holder.’ to the license reference
 
or copy.
 
OPEN PUBLICATION POLICY APPENDIX:
 
(This is not considered part of the license.)
 
Open Publication works are available in source format via the Open Publication home page at
 
http://www.opencontent.org.
 
Open Publication authors who want to include their own license on Open Publication works may do so, as long
 
as their terms are not more restrictive than the Open Publication license.
 
If you have questions about the Open Publication License, please contact TBD, and/or the Open Publication
 
Authors’ List at opal@opencontent.org, via email.
 
23.12. GNU Free Document License 1.1 (GFDL)
 
Der Autor dieser Übersetzung ist Josef Spillner <dr_maux@maux.de>.
 
Dieser Text wurde von der spanischen Version übertragen.
 
Dies ist eine inoffizielle Übersetzung der GNU Free Documentation License (GFDL), Version 1.1, ins
 
Deutsche. Sie wurde nicht von der Free Software Foundation veröffentlicht, und legt nicht gesetzlich die
 
Verteilungsbedingungen für Dokumente fest die die GFDL nutzen -- nur der originale englische Text der GFDL
 
tut dies. Wie auch immer, ich hoffe daß sie Deutschsprachigen hilft die GFDL besser zu verstehen.
 
This is an unofficial translation of the GNU Free Documentation License (GFDL) into German. It was not
 
published by the Free Software Foundation, and does not legally state the distribution terms for works that uses
 
the GFDL --only the original English text of the GFDL does that. However, I hope that this translation will help
 
German speakers understand the GFDL better.
 
Die originale Version der GFDL gibt es unter: http://www.gnu.org/copyleft/fdl.html
 
GNU Freie Dokumentationslizenz
 
Version 1.1, März 2000
 
Copyright (C) 2000 Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Jeder
 
darf diese Lizenzurkunde kopieren und wortwörtliche Kopien davon verteilen, Änderungen daran sind jedoch nicht
 
gestattet.
 
.1. Päambel
 
Der Zweck dieser Lizenz ist es, eine Anleitung, ein Textbuch oder andere geschriebene Dokumente "frei" im
 
Sinne von Freiheit zu halten: jedem die effektive Freiheit zu sichern, es zu kopieren und weiterzuverteilen, mit
 
oder ohne es zu ändern, entweder kommerziell oder nichtkommerziell. Zweitens sichert diese Lizenz dem Autor
 
675
 
Kapitel 23. Weitere Infos
 
und Veröffentlicher einen Weg, Anerkennung für seine Arbeit zu bekommen, ohne dabei für Änderungen
 
anderer verantwortlich zu sein.
 
Diese Lizenz ist eine Art "copyleft", das heißt daß abgeleitete Arbeiten des Dokumentes selbst wieder im
 
gleichen Sinne frei sein müssen. Es ergänzt die GNU General Public License, die eine Copyleft-Lizenz für freie
 
Software darstellt.
 
Wir haben diese Lizenz gestaltet, um sie für Anleitungen von freier Software zu benutzen, weil freie Software
 
freie Dokumentation benötigt: Ein freies Programm sollte mit Anleitungen kommen die dieselbe Freiheit wie
 
die Software bieten. Aber diese Lizenz ist nicht auf Software-Anleitungen beschränkt; sie kann für alle
 
textlichen Arbeiten verwendet werden, unabhängig vom Thema oder ob es als gedrucktes Buch veröffentlicht
 
wird. Wir empfehlen diese Lizenz prinzipiell für Arbeiten deren Zweck Anleitungen oder Referenzen sind.
 
.2. Anwendbarkeit und Definitionen
 
Diese Lizenz betrifft jede Anleitung oder andere Arbeit die einen Hinweis des Copyright-Halters enthält,
 
welcher besagt, daß sie unter den Bedingungen dieser Lizenz verteilt werden kann. Das "Dokument", weiter
 
unten, bezieht sich auf jede dieser Anleitungen oder Arbeiten. Jedes Mitglied der Öffentlichkeit ist ein
 
Lizenznehmer, und wird mit "Sie" bezeichnet.
 
Eine "Modifizierte Version" von dem Dokument bezeichnet jegliche Arbeit, die das Dokument oder einen Teil
 
davon enthält, entweder wortwörtlich kopiert oder mit Modifikationen und/oder in eine andere Sprache
 
übersetzt.
 
Ein "Sekundärer Abschnitt" ist ein benannter Anhang oder ein wichtiger Abschnitt des Dokumentes der exklusiv
 
mit der Beziehung des Veröffentlichers zu dem Gesamtthema des Dokumentes (oder verwandten Themen)
 
handelt und nichts enthält was direkt unter das Gesamtthema fällt. (Wenn zum Beispiel das Dokument teilweise
 
ein Textbuch der Mathematik ist, erklärt ein "Sekundärer Abschnitt" keine Mathematik.) Die Beziehung könnte
 
eine Angelegenheit einer historischen Verbindung mit dem Thema oder einer verwandten Sache sein, oder einer
 
gesetzlichen, kommerziellen, philosophischen, ethnischen oder politischen Position ihr gegenüber.
 
"Unveränderliche Abschnitte" sind spezielle Sekundäre Abschnitte, deren Titel in dem Hinweis, der besagt, daß
 
das Dokument unter dieser Lizenz veröffentlicht ist, gekennzeichnet sind, Unveränderte Abschnitte zu sein.
 
Die "Covertexte" sind spezielle kurze Textpassagen, die, als Vorderseitentexte oder Rückseitentexte, in dem
 
Hinweis aufgeführt sind, der besagt, daß das Dokument unter dieser Lizenz veröffentlicht ist.
 
Eine "Transparente" Kopie des Dokumentes meint eine maschinenlesbare Kopie, die in einem der Allgemeinheit
 
zugänglichen Format repräsentiert ist, deren Inhalt direkt und einfach mit gebräuchlichen Texteditoren oder (bei
 
aus Pixeln bestehenden Bildern) gebräuchlichen Zeichenprogrammen oder (bei Bildern) weit verbreiteten
 
Bildverarbeitungsprogramm besehen und verändert werden kann, und das geeignet ist in Textformatierern
 
eingegeben werden zu können oder automatisch in eine Vielzahl von Formaten übersetzt werden kann die
 
geeignet sind in Textformatierern eingegeben werden zu können. Eine Kopie in einem anderen Transparenten
 
Dateiformat dessen Aufbau gestaltet wurde eine ständige Veränderung durch den Leser zu vereiteln oder
 
abzuwenden ist nicht Transparent. Eine Kopie die nicht "Transparent" ist nennt man "Undurchsichtig".
 
Beispiele von passenden Formaten für Transparente Kopien enthalten reines ASCII ohne Codierung, das
 
Texinfo-Eingabeformat, das LaTeX-Eingabeformat, SGML oder XML die eine öffentlich zugängliche DTD
 
nutzen, und dem Standard entsprechendes HTML das für die Veränderung durch Menschen gestaltet wurde.
 
Undurchsichtige Formate enthalten PostScript, PDF, proprietäre Formate die nur von proprietären
 
Textverarbeitungen gelesen und bearbeitet werden, SGML oder XML für die die DTD und/oder die
 
Verarbeitungswerkzeuge nicht allgemein erhältlich sind, und maschinengeneriertes HTML das von einigen
 
Textverarbeitungen nur zu Ausgabezwecken produziert wurde.
 
Die "Titelseite" meint bei einem gedruckten Buch die Titelseite selbst, und die folgenden Seiten die gebraucht
 
werden um leserlich das Material zu beinhalten das die Lizenz benötigt um auf der Titelseite zu erscheinen. Für
 
Arbeiten die als solche keine Titelseiten haben meint "Titelseite" den Text, der der wirkungsvollsten
 
Erscheinung des Arbeitstitels am nächsten kommt und den Textkörper einleitet.
 
676
 
Kapitel 23. Weitere Infos
 
.3. Wortwörtliche Kopien
 
Sie dürfen das Dokument auf jedem Medium kopieren und verteilen, entweder kommerziell oder
 
nichtkommerziell, vorausgesetzt daß die Lizenz, die Copyrighthinweise und der Lizenzhinweis, der besagt daß
 
die Lizenz für das Dokument gilt, in allen Kopien reproduziert werden, und daß sie keine wie auch immer
 
lautenden andere Bedingungen als die der Lizenz hinzufügen. Sie dürfen keine technischen Möglichkeiten
 
nutzen, die das Lesen oder Weiterkopieren der Kopien, die Sie machen oder weiterkopieren, kontrollieren oder
 
behindern. Wie auch immer, Sie dürfen im Gegenzug Vergütungen für Kopien akzeptieren. Wenn Sie eine
 
genügend große Anzahl von Kopien verteilen, müssen Sie auch den Bedingungen in Abschnitt 3 zustimmen.
 
Sie dürfen auch Kopien unter den oben genannten Bedingungen verleihen, und Sie dürfen Kopien öffentlich
 
zeigen.
 
.4. Kopieren in Mengen
 
Wenn Sie mehr als 100 gedruckte Kopien des Dokumentes veröffentlichen, und die Lizenz des Dokumentes
 
Cover-Texte verlangt, müssen Sie die Kopien in Verpackungen einschließen die, sauber und leserlich, all diese
 
Cover-Texte enthalten: Vorderseitentexte auf der Vorderseite, und Rückseitentexte auf der Rückseite. Beide
 
Seiten müssen auch sauber und leserlich Sie als den Veröffentlicher dieser Kopien identifizieren. Die
 
Vorderseite muß den vollen Titel mit allen Wörtern des Titels gleich auffällig und sichtbar darstellen. Sie dürfen
 
andere Materialien zusätzlich der Seite hinzufügen. Kopieren mit Veränderungen der Seiten, solange diese den
 
Titel des Dokumentes absichern und diese Bedingungen erfüllen, können in anderer Hinsicht als wortwörtliche
 
Kopien behandelt werden.
 
Wenn die geforderten Texte für jede Seite zu groß sind um leserlich darauf zu passen, sollten Sie die
 
erstgenannten (soviele wie vernünftig daraufpassen) auf die aktuelle Seite setzen, und mit dem Rest auf
 
angrenzenden Seiten fortfahren.
 
Wenn Sie mehr als 100 Undurchsichtige Kopien des Dokumentes veröffentlichen oder verteilen, müssen Sie
 
entweder zusammen mit jeder Undurchsichtigen Kopie eine Transparente Kopie einfügen, oder in oder mit
 
jeder Undurchsichtigen Kopie eine öffentlich zugängliche Computer-Netzwerk-Adresse angeben die eine
 
komplette Transparente Kopie des Dokumentes enthält, die frei von hinzugefügtem Material ist und die sich die
 
allgemeine netzwerknutzende Öffentlichkeit mit Standard-Netzwerkprotokollen unentgeltlich herunterladen
 
kann. Wenn Sie die letzte Option verwenden, müssen Sie, wenn Sie beginnen Undurchsichtige Kopien in
 
Mengen zu verteilen, vernünftige umsichtige Schritte unternehmen, die sicherstellen, daß die Transparente
 
Kopie unter der genannten Adresse mindestens ein Jahr, nachdem Sie das letzte Mal eine Undurchsichtige
 
Kopie dieser Edition (direkt oder über Ihre Vermittler oder Händler) an die Öffentlichkeit verteilt haben.
 
Es wird erbeten, aber nicht verlangt, daß Sie die Autoren des Dokumentes kontaktieren, bevor Sie eine große
 
Anzahl an Kopien weiterverteilen, um ihnen zu ermöglichen, Sie mit einer aktualisierten Version des
 
Dokumentes zu versorgen.
 
.5. Modifikationen
 
Sie dürfen eine Modifizierte Version eines Dokumentes unter den in den Abschnitten 2 und 3 obenstehenden
 
Bedingungen kopieren und verteilen, vorausgesetzt Sie veröffentlichen die Modifizierte Version unter genau
 
dieser Lizenz, so daß die modifizierte Version die Stelle des Dokumentes einnimmt, folglich auch das
 
Lizenzieren der Verteilung und Modifikation der Modifizierten Version an jeden der eine Kopie davon besitzt.
 
Zuätzlich müssen Sie diese Dinge in der Modifizierten Version tun:
 
A. Auf der Titelseite (und auf den Covern, falls vorhanden) einen Titel verwenden, der sich von dem des
 
Dokumentes unterscheidet, und von denen vorhergehender Versionen (die, falls vorhanden, in dem
 
History-Abschnitt des Dokumentes aufgeführt sein sollten). Sie dürfen denselben Titel wie in einer
 
vorhergehenden Version nutzen wenn der ursprüngliche Veröffentlicher sein Einverständnis gibt.
 
B. Auf der Titelseite, eine oder mehrere Personen als Autoren benennen die für das Einbringen von
 
Veränderungen in die Modifizierte Version verantwortlich sind, zusammen mit mindesten fünf eigentlichen
 
Autoren des Dokumentes (allen eigentlichen Autoren, wenn es weniger als fünf sind).
 
C. Auf der Titelseite den Namen des Veröffentlichers der Modifizierten Version als Veröffentlicher
 
kennzeichnen.
 
677
 
Kapitel 23. Weitere Infos
 
D. Alle Copyright-Hinweise des Dokumentes beibehalten.
 
E. Einen passenden Copyright-Hinweis für Ihre Modifikationen angrenzend an die anderen
 
Copyright-Hinweise hinzufügen.
 
F. Gleich hinter dem Copyright-Hinweis einen Lizenzhinweis einfügen, der die öffentliche Erlaubnis gibt die
 
Modifizierte Version unter den Bedingungen dieser Lizenz zu nutzen, in einer Form die weiter unten im
 
Anhang dargestellt ist.
 
G. In dem Lizenzhinweis die volle Liste der Unveränderlichen Abschnitte und benötigten Cover-Texte, die in
 
dem Lizenzhinweis des Dokumentes gegeben ist, beibehalten.
 
H. Eine unveränderte Kopie dieser Lizenz einfügen.
 
I. Den Abschnitt, der mit "History" (Geschichte) betitelt ist, und seinen Titel, beibehalten und ihn zu einem
 
Punkt hinzufügen der mindestens Titel, Jahr, neue Autoren, und Veröffentlicher der Modifizierten Version
 
wie auf der Titelseite gegeben, benennt. Wenn es keinen mit "History" betitelten Abschnitt gibt, erstellen
 
Sie einen, der den Titel, Jahr, Autoren, und Veröffentlicher des Dokumentes wie auf der Titelseite gegeben,
 
benennt, und fügen Sie dann einen Punkt hinzu der die Modifizierte Version beschreibt wie im
 
vorhergehenden Satz.
 
J. Die Netzwerk-Adresse, falls aufgeführt, beibehalten, die im Dokument aufgeführt ist um öffentlichen
 
Zugriff zu einer Transparenten Kopie des Dokumentes zu ermöglichen, und genauso die
 
Netzwerk-Adressen, die im Dokument für frühere Versionen, auf denen es basiert, aufgeführt sind. Diese
 
können in den "History"-Abschnitt gestellt werden. Sie können eine Netzwerk-Adresse für ein Werk
 
auslassen, das mindestens vier Jahre vor dem Dokument selbst veröffentlicht wurde, oder wenn der
 
ursprüngliche Autor, auf den sich die jeweilige Version bezieht, es erlaubt.
 
K. In jeglichem Abschnitt, der mit "Acknowledgements" (Anerkennungen) oder "Dedications" (Widmungen)
 
betitelt ist, den Titel des Abschnittes beibehalten, und in dem Abschnitt allen Inhalt und Ton von jeder
 
Anerkennung und/oder Widmung jedes Beitragenden beibehalten, der dort aufgeführt ist.
 
L. Alle Unveränderlichen Abschnitte des Dokumentes beibehalten, unverändert in ihrem Text und ihren
 
Titeln. Abschnittsnummern oder ähnliches werden nicht als Teil von Abschnittstiteln betrachtet.
 
M. Alle Abschnitte, die mit "Endorsements" (Billigungen) betitelt sind, löschen. Solche Abschnitte dürfen
 
nicht mit in die Modifizierte Version aufgenommen werden.
 
N. Betiteln Sie keine existierenden Abschnitte mit "Endorsements" oder so, daß sie im Widerspruch zu Titeln
 
von Unveränderlichen Abschnitten stehen.
 
Wenn die Modifizierte Version neue wichtige Abschnitte enthält oder Anhänge, die Sekundäre Abschnitte
 
darstellen, und kein Material enthalten das aus dem Dokument kopiert wurde, dürfen Sie nach Ihrer Wahl einige
 
oder alle diese Abschnitte als Unveränderlich bezeichnen. Um dies zu tun, fügen Sie ihre Titel der Liste der
 
Unveränderlichen Abschnitte in dem Lizenzhinweis der Modifizierten Version hinzu. Diese Titel müssen sich
 
von allen anderen Abschnittstiteln unterscheiden.
 
Sie dürfen einen Abschnitt "Endorsements" hinzufügen, vorausgesetzt er enthält nichts außer Bewilligungen
 
Ihrer Modifizierten Version von verschiedenen Seiten--zum Beispiel, Aussagen von Beurteilungen oder daß der
 
Text von einer Organisation als für die autoritäre Definition eines Standards befunden wurde.
 
Sie dürfen eine Passage aus bis zu fünf Wörtern als Vorderseitentext hinzufügen, und eine Passage von bis zu 25
 
Wörtern als Rückseitentext, ans Ende der Liste von Covertexten in der Modifizierten Version. Höchstens eine
 
Passage von Vorderseitentexten und eine von Rückseitentexten darf von (oder durch Abmachungen von)
 
irgendeinem Wesen hinzugefügt werden. Wenn das Dokument für die entsprechende Seite schon einen
 
Covertext hat, der vorher von Ihnen oder durch Abmachungen von demselben Wesen, in dessen Namen Sie
 
handeln, hinzugefügt wurde, dürfen Sie keinen anderen hinzufügen; aber Sie dürfen den alten, wenn es der
 
ursprüngliche Veröffentlicher, der den alten hinzugefügt hat, explizit erlaubt, ersetzen.
 
Der/die Autor(en) und Veröffentlicher des Dokumentes erteilen durch diese Lizenz nicht die Erlaubnis, ihre
 
Namen für Veröffentlichungen für Bewilligungen irgendeiner Modifizierten Version oder deren Durchsetzungen
 
oder Andeutungen zu nutzen.
 
678
 
Kapitel 23. Weitere Infos
 
.6. Dokumente kombinieren
 
Sie dürfen das Dokument mit anderen Dokumenten, die unter dieser Lizenz veröffentlicht wurden, unter den
 
Bedingungen in Abschnitt 4 für Modifizierte Versionen kombinieren, vorausgesetzt Sie beinhalten in der
 
Kombination alle Unveränderlichen Abschnitte aller ursprünglichen Dokumente, unverändert, und führen Sie
 
alle als Unveränderliche Abschnitte Ihrer kombinierten Arbeit in deren Lizenzhinweis auf.
 
Die kombinierte Arbeit braucht nur eine Kopie dieser Lizenz zu beinhalten, und mehrfache identische
 
Unveränderliche Abschnitte können durch eine einzige Kopie ersetzt werden. Wenn es mehrere
 
Unveränderliche Abschnitte mit demselben Titel, aber unterschiedlichem Inhalt gibt, machen Sie den Titel jedes
 
Abschnittes durch Hinzufügen (in Klammern) des Namens des ursprünglichen Autors oder Veröffentlichers
 
dieses Abschnittes, falls bekannt, unverwechselbar, oder ansonsten durch eine einzigartige Nummer. Führen Sie
 
dieselben Änderungen in der Liste der Unveränderlichen Abschnitte im Lizenzhinweis der kombinierten Arbeit
 
durch.
 
In der Kombination müssen Sie alle mit "History" betitelten Abschnitte aus den verschiedenen ursprünglichen
 
Dokumenten zusammenführen, und daraus einen Abschnitt "History" bilden; genauso kombinieren Sie jeden
 
mit "Acknowledgements" betitelten Abschnitt, und jeden mit "Dedications" betitelten Abschnitt. Sie müssen
 
jeden mit "Endorsements" betitelten Abschnitt löschen.
 
.7. Sammlungen von Dokumenten
 
Sie dürfen eine Sammlung erstellen, die aus dem Dokument und anderen, unter dieser Lizenz veröffentlichten
 
Dokumenten besteht, und die individuellen Kopien der Lizenz in den einzelnen Dokumenten durch eine einzige
 
Kopie ersetzen, die sich in der Sammlung befindet, vorausgesetzt Sie folgen den Regeln dieser Lizenz für
 
wortwörtliches Kopieren jedes dieser Dokumente in jeglicher Hinsicht.
 
Sie dürfen ein einzelnen Dokument aus einer solchen Sammlung heraustrennen, und es individuell unter dieser
 
Lizenz verteilen, vorausgesetzt Sie fügen eine Kopie dieser Lizenz in das herausgetrennte Dokument ein, und
 
folgen der Lizenz in jeglicher Hinsicht bezüglich dem wortwörtlichen Kopieren von dem Dokument.
 
.8. Aggregation mit unabhängigen Arbeiten
 
Eine Zusammenstellung dieses Dokumentes oder seinen Ableitungen mit anderen separaten und unabhängigen
 
Dokumenten oder Arbeiten, in oder auf einem Teil eines Speicher- oder Verteilungsmediums, zählt nicht als
 
Ganzes als Modifizierte Version des Dokumentes, vorausgesetzt kein Gesamt-Copyright wurde für die
 
Zusammenstellung festgelegt. Solch eine Zusammenstellung wird "Aggregat" (Mischung) genannt, und diese
 
Lizenz gilt nicht für die anderen selbstenthaltenen Arbeiten, die mit dem Dokument zusammengestellt wurden,
 
im Falle daß sie zusammengestellt wurden, wenn sie nicht selbst abgeleitete Arbeiten des Dokumentes sind.
 
Wenn die Covertext-Bedingung von Abschnitt 3 auf diese Kopien des Dokumentes anwendbar ist, dann können,
 
wenn das Dokument weniger als ein Viertel des gesamten Aggregates ist, die Covertexte des Dokumentes auf
 
Seiten platziert werden die nur das Dokument innerhalb des Aggregates umgeben. Ansonsten müssen sie auf
 
Seiten erscheinen, die das gesamte Aggregat umgeben.
 
.9. Übersetzung
 
Übersetzung wird als eine Art Modifikation angesehen, also dürfen Sie Übersetzungen des Dokumentes unter
 
den Bedingungen von Abschnitt 4 verteilen. Das Ersetzen von Unveränderlichen Abschnitten mit
 
Übersetzungen erfordert spezielle Einwilligung des Copyright-Halters, aber Sie dürfen Übersetzungen von
 
einigen oder allen Unveränderlichen Abschnitten zusätzlich zu den ursprünglichen Versionen dieser
 
Unveränderlichen Abschnitte einfügen. Sie dürfen eine Übersetzung dieser Lizenz hinzufügen, vorausgesetzt
 
Sie beinhalten auch die ursprüngliche englische Version dieser Lizenz. Im Falle einer Nichtübereinstimmung
 
zwischen der Übersetzung und der ursprünglichen englischen Version dieser Lizenz hat die ursprüngliche
 
englische Version Vorrang.
 
679
 
Kapitel 23. Weitere Infos
 
.10. Termination
 
Sie dürfen das Dokument nicht kopieren, modifizieren, sublizenzieren oder verteilen außer wie es diese Lizenz
 
ausdrücklich vorschreibt. Jegliche andere Absicht, das Dokument zu kopieren, modifizieren, sublizenzieren
 
oder verteilen ist nichtig, und beendet automatisch Ihre Rechte unter dieser Lizenz. Wie auch immer, Parteien,
 
die Kopien oder Rechte von Ihnen unter dieser Lizenz bekommen haben, wird nicht die Lizenz beendet, solange
 
diese Parteien in voller Zustimmung verbleiben.
 
.11. Zukünftige Revisionen dieser Lizenz
 
Die Free Software Foundation kann von Zeit zu Zeit neue, revidierte Versionen der GNU Free Documentation
 
License veröffentlichen. Solche neue Versionen werden vom Grundprinzip her der vorliegenden Version
 
gleichen, können sich aber im Detail unterscheiden, um neue Probleme oder Anliegen anzusprechen. Siehe auch
 
http://www.gnu.org/copyleft/.
 
Jeder Version dieser Lizenz wird eine unterscheidende Versionsnummer gegeben. Wenn das Dokument angibt,
 
daß eine spezielle Version dieser Lizenz "oder eine spätere Version" darauf zutrifft, haben Sie die Wahl den
 
Bestimmungen und Bedingungen von entweder der angegebenen Version oder einer beliebigen späteren
 
Version, die von der Free Software Foundation (nicht als Entwurf) veröffentlicht wurde, zu folgen. Wenn das
 
Dokument keine Versionsnummer angibt, können Sie irgendeine, jemals von der Free Software Foundation
 
(nicht als Entwurf) veröffentlichte Version wählen.
 
.12. Wie Sie diese Lizenz für Ihre Dokumente nutzen können
 
Um diese Lizenz in einem von Ihnen geschriebenen Dokument nutzen zu können, fügen Sie eine Kopie der
 
Lizenz in das Dokument ein und setzen Sie die folgenden Copyright- und Lizenzhinweise gleich hinter die
 
Titelseite:
 
Copyright (c) JAHR IHR NAME. Es wird die Erlaubnis gegeben dieses Dokument zu kopieren, verteilen und/oder zu
 
verändern unter den Bedingungen der GNU Free Documentation License, Version 1.1 oder einer späteren, von der Free
 
Software Foundation veröffentlichten Version; mit den Unveränderlichen Abschnitten DEREN TITEL AUFGEZÄHLT
 
sind, mit den Vorderseitentexten die AUFGEZÄHLT sind, und mit den Rückseitentexten die AUFGEZÄHLT sind.
 
Eine Kopie dieser Lizenz ist in dem Abschnitt enthalten, der mit "GNU Free Documentation License" betitelt ist.
 
Wenn Sie keine Unveränderlichen Abschnitte haben, schreiben Sie "mit keinen Unveränderlichen Abschnitten"
 
anstatt anzugeben welche Unveränderlich sind. Wenn Sie keine Vorderseitentexte haben, schreiben Sie "keine
 
Vorderseitentexte" anstatt "Vorderseitentexte die AUFGEZÄHLT sind"; genauso bei den Rückseitentexten.
 
Wenn Ihr Programm nicht-triviale Beispiele von Programmcode enthält, empfehlen wir, diese Beispiele parallel
 
unter einer freien Software-Lizenz, wie der GNU General Public License, zu veröffentlichen, um ihren
 
Gebrauch in freier Software zu erlauben.
 
.13. Begriffe
 
1. Begriff „copyleft“ ist ein neuer, von GNU eingeführter Begriff. Es ist ein Wortspiel eines englischen Wortes,
 
das aus "copyright" "copyleft" macht, und damit ausdrückt daß es kopieren nicht verbietet, sondern erlaubt
 
unbeschränkt unter vertraglichen Bedingungen zu kopieren. http://www.gnu.org/copyleft/copyleft.de.html
 
2. Begriff „Lizenznehmer“: An wen sich die Lizenz richtet.
 
Übersetzung: Josef Spillner dr_maux@maux.de
 
680
 
Stichwortverzeichnis
 
#, 95
 
$, 95
 
.deb, 135
 
.htaccess, 489, 489, 574
 
.shtml, 489
 
.Xdefaults, 316
 
/etc/, 106
 
/proc, 127
 
/usr/src/, 537
 
3Com, ii, 476, 513
 
404, 491
 
8139too, 476
 
8390, 476
 
;, 538
 
|, 117
 
öffentlichen Schlüssel, 358
 
A Package Tool, 141
 
a.out, 11
 
Abhängigkeiten, 135
 
AbiWord, 435
 
Access, ??
 
access.conf, 487
 
access_log, 487
 
Acrobat-Reader, 438
 
Actions Log, 543
 
Administration, 134
 
alien, ??, 515
 
AllowOverride, 489
 
Alpha, i, 12, 19, 133, 659
 
AM, 654
 
Amiga, 19
 
AmigaOS, 497
 
anmelden, 93
 
anXious, ??
 
Apache, 485
 
Apache Module, 571
 
Apache Webserver - MIME-Typen, 571
 
apacheconfig, 485, 487
 
Application Maintainer, 654
 
Applixware, 435
 
apsfilter, 364
 
apt, 132
 
apt-get, 140, 143
 
apt-get build-dep, 147
 
apt-get source, 147
 
apt-proxy, 155
 
apt-setup, 142
 
apt-show-source, 157
 
aptitude, 161
 
Architektur, ??
 
Arm, 12, 19
 
ASCII-Terminals, 187
 
async, 128
 
Atari, 19
 
Audio, 507
 
Authentifizierung, 574
 
auto, 128
 
AVI, 458, 459, 460
 
Base, 134
 
bash, 116
 
Ben Collins, 13
 
Benutzernamen, 94
 
Besitzer, 104
 
Betriebssystem, 10
 
Bezugsquellen, 31
 
Bildbearbeitung, 396
 
binutils, 535
 
Binärformat, 11
 
Bo, 12, 18
 
boot.bat, 43
 
Bootdisketten, 42
 
Bootloader, 523, 524, 540
 
BrowserMatch, 574
 
Bruce Perens, 12, 29
 
BSD, 364
 
BTS, 654
 
Buchhandlung Lehmanns, i
 
Bug Tracking System, 654
 
Buzz, 12, 18
 
bzip2, 537
 
C, 573
 
capt, 159
 
cd, 107
 
CD-Brenner, 470
 
CD-Image, 469
 
CD-Writing HOWTO, 469
 
CDC ACM, 507
 
cdda2wav, 474
 
cdlabelgen, 474
 
cdrecord, 469, 474
 
cfdisk, 50
 
CGI, 488, 573
 
CGI-Programm, 488
 
Chain-Bootloader, 524
 
CheckSpellig, 489
 
chmod, 105
 
CIFS, 497
 
Codename, 12
 
Codenamen, 18
 
Common Gateway Interface, 488, 573
 
Common Internet File System, 497
 
Common UNIX Printing System, 364
 
Communication, 134
 
Communicator, 314
 
Community, 654
 
conduit, 513
 
Config, ??
 
Console-Apt, 159
 
Contrib, 133
 
Core Dump, 573
 
CoreDumpDirectory, 573
 
cp, 107
 
681
 
CPiA, 507
 
Cradle, 513, 514
 
CUPS, 364, 364
 
DABUSB, 507
 
dahb-html, ii
 
dahb-html-content, ii
 
dahb-html-pics, ii
 
dahb-pdf, ii
 
dahb-txt, ii
 
DAM, 654
 
Datei- und Druckerserver, 497
 
Dateisystem, 124
 
DATE_GMT, 490
 
DATE_LOCAL, 490
 
Datum 2000-Problem, 39
 
DCF77, 534
 
DDP, 654
 
debfoster, 177
 
Debian, 10
 
Debian Account Manager, 654
 
Debian Beowulf, 20
 
Debian Documentation Project, 654
 
Debian Free Software Guidelines, 132
 
Debian Free Software Guidelines, 12
 
Debian GNU/Hurd, 88
 
Debian GNU/MiNT, 20
 
Debian GNU/NetBSD, 20
 
Debian Machine Use Policies, 654
 
Debian Mirror, 655
 
Debian Project Leader, 654
 
Debian Social Contract, 11, 12
 
Debian Weekly News, 654
 
Debian-Entwickler, 11
 
Debian-Paketformat, 135
 
deborphan, 175
 
DEC Alpha, 19
 
default route, 482
 
defaults, 128
 
dependency, 135
 
dev, 128
 
Development, 134
 
df, 127
 
DFSG, 132
 
DHCP, 494, 497
 
DHCP Server, 589
 
DHCP-Server, 494
 
Digital Kameras, 457
 
Digital Video, 458
 
Digitalkamera, 422
 
Distribution, ??
 
dlocate, ??
 
DMUP, 654
 
DNS, 483
 
dnsutils, 484
 
Documentation, 134
 
DOCUMENT_NAME, 490
 
DOCUMENT_URI, 490
 
Domain, 483
 
Domain Name, 483
 
Domain Name Service, 483
 
Downloadzeiten, 304
 
dpkg, 11, 172
 
dpkg --purge, 176
 
dpkg-reconfigure, 129
 
DPL, 654
 
dselect, 132, 135
 
DSL, 304
 
Dualprozessor, 539
 
dump, 128
 
DVD, 460
 
dvgrab, 458
 
DWN, 654
 
E-Mail, 325
 
E-Mail Filter, 347
 
echo, 490
 
editkeep, 176
 
Editors, 134
 
Electronics, 134
 
Elektronische Post, 325
 
ELF-Format, 12
 
elif, 490
 
Eric Raymond, 29
 
Eric S. Raymond, 654
 
error_log, 487
 
Evolution, 338
 
Excel, 440
 
exec, 128
 
exim, 326
 
eximconfig, 326
 
ExtendedStatus, 570
 
EZUSB, 507
 
fdisk, 125, 594
 
fetchmail, 340
 
file, 490
 
File Transfer Protocol, 349, 492
 
files, 483
 
finger, 535
 
fips.exe, 37
 
Firewire, 457
 
Free Software Foundation, ??, 3, 11, 45
 
FreeBSD, 318
 
FreeBSD-Lizenz, 3
 
Freie Software, 28
 
fsck, 128
 
FSF, 11, 45
 
FSF Europe, 3
 
fstab, 127
 
ftp, 349, 492
 
Funkuhr, 534
 
G3/G4 MAC, 457
 
Galeon, 318
 
Games, 134
 
Gateway, 482, 589
 
gcc, 535, 537
 
682
 
gcombust, 474
 
Gecko, 318
 
Ghostscript, 367
 
gmc, 185
 
gnomba, 500
 
GNOME Desktop, 318
 
gnome-apt, ??
 
gnosamba, 500
 
GNU, 1, 364
 
GNU C-Compiler, 537
 
GNU General Public License, 3, 31
 
GNU Hurd, 27
 
GNU Image Manipulation Programm, 396
 
GNU is not Unix, 1
 
GNU Lesser General Public License, 3
 
GNU Library General Public License, 3
 
GNU Projekt, 1, 11
 
GNU Projekte, 3
 
GNU’s Not Unix, 3
 
Gnumeric, 435, 440
 
GnuPG, 347
 
gPhoto, 422
 
GPL, 3, 31, 318
 
gpm, ??
 
gpmconfig, 182
 
Gqmpeg, 453
 
GRand Unified Bootloader, 524
 
Graphics, 134
 
Grip, 454
 
group, 104
 
GRUB, 524
 
GRUB - Kommandozeile, 526
 
GRUB Bootdiskette, 89
 
Gruppe, 104
 
Gruppen, ??
 
gzip, 537
 
Ham Radio, 134
 
Hamm, 12, 18
 
Hardware-Architekturen, 19
 
Hardware-Uhr, 532
 
HARD_SERVER_LIMIT, 569
 
hda, 125
 
hdb, 125
 
hdc, 125
 
hdd, 125
 
hdparm, 529
 
HID, 507
 
hisax, 300
 
Homepage, 352
 
hostname, 483
 
HotSync, 513, 514
 
HOWTOs, 654
 
hppa, 19
 
HTML, ii
 
HTTP, 485
 
HTTP Header, 573
 
httpd.conf, 487, 489
 
hurd-i386, 20
 
Hypertext Transfer Protocol, 485
 
i386, 12, 19
 
ia64, 19
 
Ian Jackson, 12
 
Ian Murdock, 11
 
IDE, 125
 
IDE-Parameter, 594
 
IDEA, 357
 
IEEE, 364
 
IEEE1394, 457
 
IETF, 364
 
if, 490
 
iLink, 457
 
iMAC DV, 457
 
IMAP, 331, 340
 
imps/2, 521
 
include, 490
 
IncludesNoExec, 490
 
initrd, 526, 540
 
Install, ??
 
Intel, 476
 
Intend to Adopt, 654
 
Intend to Orphan, 654
 
Intend to Package, 654
 
Internet, 11
 
Internet Engineering Task Force, 364
 
Internet Printing Protocol, 364
 
Internet Relay Chat, 35
 
Internet Service Provider, 294
 
Interpreters, 134
 
IP-Nummer, 589
 
IPP, 364, 364
 
IRC, 35
 
ISDN, 304
 
isdnconfig, 301
 
isdnutils, 301
 
ISO9660, 470
 
ISP, 294
 
ITA, 654
 
ITO, 654
 
ITP, 654
 
j-pilot, 516
 
Jargon-File, 654
 
Java, 573
 
Joel Klecker, 13
 
John Hall, 29
 
Kalenderfunktion, 348
 
Kanalbündelung, 304
 
KCD, 654
 
KDE, 280
 
KDE 2.2, 280
 
KDE 3.0, 286
 
KeepAliveTimeout, 570
 
Kern, 1
 
kernel, 1, 524
 
Kernel Cousin Debian, 654
 
683
 
Kernel-Konfiguration, 535
 
kernel-package, 535
 
Kernel-Server, 535
 
Kernel-Source, 537
 
Kernel-Sourcen, 537
 
Kodak DC-2xx, 507
 
LANG, 129
 
Larry Augustin, 29
 
LAST_MODIFIED, 490
 
Lehmanns, 32
 
LGPL, 3
 
Libraries, 134, 135
 
lilo, 523
 
LimitRequestFieldsize, 569
 
LimitRequestLine, 569
 
Links, ??
 
Linus Torvalds, 1, 3, 9
 
Linux Logo, 8
 
Linux Pinguine, 10
 
Linux-Distributionen, ??
 
Linux-Kernel, 11
 
LinuxLand International, 32
 
Listen, 570
 
ListenBacklog, 570
 
Lizenzen, 106
 
Lizenzen für Freie Software, 3
 
ln, 119
 
lo, 482
 
loadlin.exe, 43
 
localepurge, 129
 
locales, 129
 
LockFile, 573
 
login.app, ??
 
Loopback Device, 482
 
lpd, 364, 364
 
lpinfo, 367
 
LPRng, 364, 364
 
lynx, 324
 
m68k, 11, 19
 
MAC-Adresse, 494
 
MacOS, 496
 
magicfilter, 364
 
Mail, 134
 
Mailinglisten, 654
 
Mailserver, 342
 
Main, 133
 
Maintainer, 11, 536
 
make, 535
 
make -j, 538
 
make -s, 538
 
man, 98
 
Mandrake, ii
 
Martin Schulze, 11
 
Massenspeicher, 507
 
Master, 125
 
Mathematics, 134
 
MaxClients, 569
 
MaxKeepAliveRequests, 570
 
MaxRequestsPerChild, 569
 
MaxSpareServers, 569
 
mc, ??
 
Menüsystem, 188
 
MIA, 654
 
Mikro-Kernel, 27
 
MIME Types, 366, 572
 
Mime-Type, 489
 
MinSpareServers, 569
 
mips, 19
 
Miscellaneous, 134
 
Missing in Action, 654
 
mkdir, 107
 
mke2fs, 126
 
mkhybrid, 474
 
mkisofs, 469, 474
 
mkpasswd, 489
 
Modul, 444
 
mod_alias, 491
 
mod_include, 489
 
mod_php4, 571
 
mod_so, 571
 
more, 107
 
Motorola 68000, 19
 
mount, 124
 
Mozilla, 316
 
Mozilla PSM, 319
 
MP3, 460
 
MPEG-1, 460
 
MPEG-2, 460
 
mpg123, 453
 
MS-Outlook, 338
 
Multilink, 304
 
multitasking, 1, 93
 
multiuser, 1, 93
 
NameVirtualHost, 571
 
National Center for Supercomputing
 
Applications, 485
 
ncftp, 349
 
NCSA, 485
 
ne, 476
 
NE2000, 476
 
NE2000-kompatibel, 476
 
ne2k-pci, 476
 
NetBIOS, 497
 
NetBIOS-Namen, 497
 
Netscape, 314
 
netselect, 31
 
NetWare, 497
 
Network, 134
 
Network Basic Input Output System, 497
 
Netzmaske, 589
 
Netzwerkdrucker, 364
 
Netzwerkkarte, 476
 
New Maintainer, 654
 
Newsgroups, 135
 
684
 
nis, 483
 
NM, 654
 
NMU, 654
 
noauto, 128
 
nodev, 128
 
noexec, 128
 
Non Maintainer Upload, 654
 
Non-Free, 133
 
Non-profit-Organisation, 31
 
Non-US, 133
 
nosuid, 128
 
Notebook, 495
 
nouser, 128
 
nslookup, 484
 
nsswitch.conf, 483
 
offizielle GNU Projekte, 3
 
Ogg Vorbis, 460
 
OHCI-HCD, 506
 
Old Libraries, 135
 
Open Hardware Project, 12
 
Open Projects IRC Netzwerk, 35
 
Open Projects Network, 654
 
Open Source, 30
 
Open Source Definition, 29
 
Open Source Software, 28
 
OpenOffice, 32, 435
 
OpenPGP, 358
 
OPN, 654
 
orphaner, 176
 
OSI, 29
 
Other Operating Systems and File Systems, 135
 
OV511, 507
 
owner, 104
 
Paketgruppen, 178
 
Paketmanagement, 11
 
Paketsystem, 11
 
Palm Pilot, 514, 516
 
PalmOS, 513
 
PalmPilot, ii, 513
 
Paßwort, 94
 
PDA, ii, 513
 
PDC, 500
 
PDF, ii
 
PDF-Datei, 439
 
Perl, 488, 573
 
PGP, 347
 
Photo-CDs, 396
 
PHP, 488, 573
 
PidFile, 573
 
pilot-address, 515
 
pilot-link, 514, 516
 
pilot-xfer, 514
 
Pinguin, 9
 
Pipes, 117
 
poff, 299
 
pon, 299
 
POP, 340
 
POP3, 331
 
Port, 570
 
Port 80, 570
 
POSIX Standard, 364
 
Postfix, 576
 
Potato, 12, 18
 
PowerPC, 11, 19
 
PPD Dateien, 367
 
pppconfig, 294
 
PPPoE, 304
 
Pretty Good Privacy, 357
 
Primary Domain Controller, 500
 
Printer, 507
 
Printer Working Group, 364
 
privaten Schlüssel, 358
 
ProFTP, 492
 
Project Leader, 12
 
Provider, 342
 
ProzessID, 573
 
PS/2, 521
 
PTB, 535
 
pump, 495
 
PWG, 364
 
Python, 573
 
QT, 280
 
Quellcode, 537
 
Quelloffen, 30
 
Quelltexte, 537
 
Quicktime, 460
 
Quit, ??
 
r, w und x, 104
 
RAM-Disk, 540
 
rdate, 534
 
Read the Fine Manual, 654
 
Read the Fucking Manual, 654
 
Real Life, 654
 
RealTek, 476
 
reboot, 98
 
RedHat, ii
 
RedHat-Paket, 192
 
rekursiven Akronym, 3
 
Release Notes, 45
 
released, 133
 
Remove, ??
 
Request for Adoption, 654
 
Request for Comments, 364
 
Request for Packaging, 654
 
resolver, 483
 
restore, 128
 
rex, 18
 
RFA, 654
 
RFC, 364
 
RFP, 654
 
Richard Stallman, 1
 
RL, 654
 
ro, 128
 
Routing-Tabelle, 482
 
685
 
RPM, ii, 190
 
RSA, 357
 
RTFM, 654
 
rtl8139, 476
 
rw, 128
 
s390, 20
 
Samba, 365, 497
 
Samba Web Administration Tool, 499
 
SANE, 416
 
Sarge, 17, 18
 
Scanner, 507
 
scd0, 125
 
scd1, 125
 
Schnittstelle, 514
 
ScoreBoardFile, 573
 
screen, ??
 
ScriptLog, 574
 
ScriptLogBuffer, 574
 
ScriptLogLength, 574
 
Scrollmaus, 315
 
Scrollrad, 521
 
SCSI, 125
 
Select, ??
 
SendBufferSize, 571
 
Serial Converter, 507
 
Server Message Block, 497
 
Server Side Includes, 489
 
Server-Lockdatei, 573
 
ServerTokens, 573
 
ServerType, 573
 
SetEnvIf, 574
 
Shell-Script, 488
 
Shell-Skripte, 573
 
Shells, 135
 
shutdown, 98
 
sid, 18
 
Slave, 125
 
sleep, 533
 
Slink, 12, 18
 
slocate, 110
 
SMB, 497
 
SMP - Kernel 2.0, 539
 
SMP - Kernel 2.2 und höher, 540
 
Software in the Public Interest, 12
 
Sound, 135
 
Soundblaster, 444
 
Soundkarte, 444
 
Sparc, 12, 19
 
sparc64, 20
 
SPI, 12, 31
 
srm.conf, 487
 
ssh, ??
 
SSI, 489
 
SSL, 319
 
StarOffice, 435
 
StartServers, 569
 
startx, 247
 
su, 95
 
suid, 128
 
SuperProbe, 194
 
Superuser, 95
 
SuSE, ii
 
SWAT, 499
 
sync, 98, 128
 
System halted, 98
 
Systemadministrator, 95
 
Systembibliotheken, 135
 
Systemzeit, 532
 
T-DSL, 304
 
Tabellenkalkulation, 440
 
task, 132
 
task-Pakete, 178
 
tasksel, ??
 
TCP/IP, 497
 
Terminverwaltung, 348
 
TeX, 135
 
Text Processing, 135
 
text/html, 489
 
The Gimp, 396
 
time, 533
 
TimeOut, 571
 
touch, 104
 
Toy Story, 12, 18
 
Treppeneffekten, 261
 
Troll Tech, 280
 
True-Type-Schriften, 263
 
Tux, 10
 
TV-Karte, 459
 
TXT, ii
 
UHCI, 506
 
UltraSparc, 19
 
Update, ??
 
update-menus, 189
 
URL Zeile, 322
 
USB Device Filesystem, 507
 
USB Scanner, 416
 
USB-Diskettenlaufwerke, 513
 
Use the Source, Luke, 654
 
Usenet, 3
 
user, 128
 
USS720, 507
 
Utilities, 135
 
UTSL, 654
 
Verknüpfungen, 119
 
Verschlüsselung, 347
 
Version des Linux Kernels, 3
 
versteckten Dateien, 108
 
Verzeichnisbaum, 124
 
Video CD, 460
 
Video-Player, 460
 
Videotext, 460
 
virtual, 490
 
Virtual Memory, 5
 
virtuelle Konsolen, 97
 
686
 
VMS, 497
 
VT100, 120
 
WAV, 475
 
wc, 117
 
Web, 135
 
Webmin, 541
 
wget, 150
 
Wheel-Maus, 521
 
whoami, 95
 
Wichert Akkerman, 12
 
Windows NT Domain Control, 497
 
wnpp, 654
 
Woody, 15, 18
 
WordPerfect, 435
 
Work-Needing and Prospective Packages, 654
 
World Wide Web, 485
 
WWW, 485
 
X Multimedia Sound System, 445
 
X Window, 135
 
X-Window-System, 193, 226
 
x86, 1
 
xawtv, 460
 
xdm, ??
 
xf86setup, 194
 
XFree86, 193, 226
 
XFree86-Team, 193, 226
 
Ximian, 338
 
xine, 460
 
Xmms, 445
 
xpdf, 437
 
xrdb, 522
 
xviddetect, 193
 
Y2k-Bug, 39
 
ZAxisMapping, 521
 
Zeitsignal, 535
 
Zeitzone, 533
 
Zinf, 452
 
Zugriffsrechte, 104
 
687
 

Version vom 5. Februar 2006, 00:35 Uhr

Einstiegsinformationen des Karlsruher Stadtwiki
Das Stadtwiki
Richtlinien und Konventionen
FAQ

Häufige Fragen und ihre Antworten (FAQ):

Aufgaben und Arbeitshilfen
Aufgaben
Arbeitshilfen
Administratives


Stadtwiki Aktuell
Kommunikation
Öffentlichkeitsarbeit
Geschichte
Vernetzung mit anderen Wikis
Logbücher und Spezialseiten
Technische Informationen
Verein

Es gibt seit 12. Oktober 2005 einen Verein zur Förderung der Stadtwikis: Stadtwiki – Gesellschaft zur Förderung regionalen Freien Wissens.

Portale im Karlsruher Stadtwiki