debian-user-german FAQ ---------------------- Janto Trappe 14 Dezember 2004 ------------------------------------------------------------------------------- Copyright Hinweis ----------------- Copyright (C) 2002 Janto Trappe 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. ------------------------------------------------------------------------------- Inhalt ------ 1. Allgemeines zur FAQ 1.1. Einleitung 1.2. Aktuelle Version 1.3. Verschiedene Formate 1.4. Credits 1.5. Feedback 2. Allgemeines zur Mailingliste 2.1. Wie kann man sich anmelden/abmelden? 2.2. Gibt es ein Archiv der Liste? 2.3. Ich bekomme Antworten auf meine Mails immer doppelt: Einmal über die Liste und einmal per CC, warum? 2.4. Kann ich die Liste auch mit einem Newsreader lesen? 3. Aktuelle Fragen, Probleme und Bugs 3.1. Beim Aufruf von `foobar' bekomme ich die Warnung "perl: warning: Setting locale failed." 4. Rund um das Debian Projekt 4.1. Was ist Debian? 4.2. Warum gerade Debian? 4.3. Woher kommt der Name 'Debian' und wie wird er ausgesprochen? 4.4. Die Geschichte von Debian 4.5. Was ist der Unterschied zwischen woody, sid, sarge, stable, unstable und testing? 4.6. Was hat es mit den Verzeichnissen 'main', 'contrib', 'non-free' und 'non-US' auf den FTP-Servern auf sich? 4.7. Was ist das 'Debian Bug Tracking System'? 4.8. Wann wird testing zu stable? 5. Installation von Debian 5.1. Wo gibt es deutsche Installationsanleitungen? 5.2. Wo kann man CD-Images downloaden? 5.3. Wo kann man fertige CDs kaufen? 6. System Konfiguration 6.1. Wie funktionieren die Runlevel von Debian? 6.2. Ich möchte in der Shell deutsche Umlaute verwenden, wie geht das? 6.3. Nach einem Update oder einer Neuinstallation von Woody funktionieren die Umlaute nicht richtig, warum? 6.4. Wie kann ich das Euro-Zeichen unter Debian nutzen? 6.5. Wie funktionieren die symbolischen Links in `/etc/rcX.d'? 6.6. Ich möchte, dass sich mein Rechner nach einem `halt' oder `init 0' automatisch ausschaltet, wie geht das? 6.7. Wie kann ich normalen Benutzern das Herunterfahren des Systems erlauben? 6.8. Obwohl ich in die Gruppe für ein spezielles Device aufgenommen wurde habe ich keine Berechtigung darauf zu zugreifen, warum? 6.9. In einer Konfigurationsdatei rufe ich ein externes Programm auf, es wird aber nicht ausgeführt. 6.10. Wie baue ich eigene Sachen in ein Init-Skript ein, und in welches? 6.11. Ich kann nur als root auf die Soundkarte oder CD-ROM/RW zugreifen. 6.12. Welches ist die beste Stelle für den Aufruf von hdparm? 7. Update von Debian 7.1. Ich möchte mein System aktualisieren, woher bekomme ich eine Liste der Debian-Mirror? 7.2. Ich möchte mein System aktualisieren, weiß aber nicht was ich in die sources.list eintragen muss. Gibt's ein Beispiel? 7.3. Gibt es einen mirror von security.debian.org? 7.4. Wie wird das mit den Security-Updates für testing und unstable gehandhabt? 7.5. Was ist mit der `sources.list', wenn testing stable wird? 7.6. Wie kann ich mir vor dem Upgrade eine Liste der zu aktualisierenden Pakete anzeigen lassen? 7.7. Gibt es eine Liste von unoffiziellen Quellen für Apt? 8. Debian Paketmanagement 8.1. Wie installiert man ein Debian-Paket? 8.2. Zu welchem Paket gehört die Datei foobar? 8.3. Ich möchte einige Debian-Pakete, die auf meiner Festplatte liegen, in die sources.list einbinden, wie geht das? 8.4. Ich habe die Konfigurationsdatei von foobar gelöscht, wie bekomme ich sie wieder? 8.5. Beim Versuch eine neue Version von foobar für stable zu installieren bekomme ich die Fehlermeldung, dass meine libc6 nicht aktuell sei, warum? 8.6. Bei dem Versuch aus den Sourcen selber ein Debian-Paket zu erstellen, bekomme ich diese Fehlermeldung: `dh_testdir, make: dh_testdir...', warum? 8.7. Ich möchte foo-bar installieren, weiß aber nicht welche Pakete ich benötige. Wie kann ich das herausfinden? 8.8. Ich möchte mir selber ein Debian-Paket basteln, wie geht das? 8.9. Wie sind die Versionsnummern von Debian-Paketen aufgebaut? 8.10. Wie entfernt man Pakete, die von Apt zur Auflösung von Abhängigkeiten mitinstalliert wurden und jetzt nicht mehr benötigt werden? 8.11. Wie finde ich Dateileichen, die zu keinem Paket gehören? 8.12. Kann man aus einem installierten Paket wieder ein .deb erzeugen? 8.13. Kann ich die Paketauswahl eines Rechners sichern und 1:1 auf einen anderen übernehmen? 8.14. Wie kann ich verhindern, dass `dpkg -l' lange Paketnamen kürzt? 8.15. Wie entfernt man ein komplettes Task-Paket? 8.16. Debian-Distribution DOWNgraden (z.B. woody -> potato) 8.17. Mehrere Debian-Trees (testing, unstable, stable) gleichzeitig zum Installieren verwenden 9. X11, XFree86, Window-Manager 9.1. Wie kann ich foo-bar als standardmäßigen Window-Manager, beim Aufruf von `startx', starten? 9.2. Kann man den Pfad in einem xterm im xterm-Titel anzeigen lassen? 9.3. Wie erlaube ich anderen Benutzern (z.B. root) Zugriff auf meinen X Server? 9.4. Das Scrollrad meiner Maus funktioniert nicht, warum? 9.5. Wo finde ich das Konfigurationstool für XFree 4? 9.6. Mein X will einfach nicht starten, was brauche ich als Minimalausstattung? 10. Kernel 10.1. Wie kann ich unter Debian einen Kernel kompilieren und daraus ein Debian-Paket erzeugen? 10.2. Sind die Kernel-Source-Pakete von Debian gepatcht/modifiziert? 10.3. Lassen sich aus den Original Linux-Sourcen von kernel.org Debian-Kernel-Pakete erzeugen? 10.4. Vertragen sich die üblichen Kernel-Patches mit dem Debian-Kernel-Source? 10.5. Ich möchte das Paket (alsa|pcmcia|tpctl)-source für meinen selbstkompilierten Kernel kompilieren, wie geht das? 10.6. Mein selbstkompilierter Kernel meldet beim booten 'can't locate module char-major-foo', warum? 10.7. Wo finde ich den Treiber für 8139 Realtek Netzwerkkarten? 10.8. Wie kann ich Einstellungen im /proc-Dateisystem machen, sodass sie einen Reboot des Systems überstehen? 10.9. Wie kann ich verhindern, dass alle Kernel-Log-Meldungen auf der Konsole ausgegeben werden? Der Kernel ist zu geschwätzig. 10.10. Ich möchte das Module XYZ immer beim Booten laden. Wo trage ich modprobe XYZ ein? 10.11. Ich habe von Kernel 2.2.x auf Kernel 2.4.x gewechselt, beim booten bekomme ich die Meldung 'Kernel panic: VFS: Unable to mount root fs on 03:01' 10.12. Module selber bauen 11. Netzwerk (Konfiguration, Modem, ISDN, DSL etc.) 11.1. Wie kann ich die dynamische IP-Adresse meines Rechners herausfinden und sie in einer Variable speichern? 11.2. 5 oder 7 in `/proc/sys/net/ipv4/ip_dynaddr', was ist besser? 11.3. Ich erhalte ständig die Meldung 'Neighbour table overflow', was bedeutet das? 11.4. Beim Start von HiSax bekomme ich die Fehlermeldung 'Aproval certification failed because of unauthorized source code changes'? 11.5. PPPoE unter Debian, wie geht das? 11.6. Warum verursacht exim dauernd Einwählversuche ins Internet, selbst bei lokaler Mailzustellung oder mailq-Aufrufen? 12. E-Mail 12.1. Ich habe gerade Mutt installiert, komme aber überhaupt nicht mit der Konfiguration zurecht. Gibt es Beispiele für die `muttrc'? 12.2. Wie war das nochmal mit dem Spamkiller für Mutt und Procmail? 12.3. Wie kann man mit Mutt verschlüsselte/signierte Mails automatisch entschlüsseln/überprüfen wenn sie im alten 'inline' Format verschickt wurden? 12.4. Mail über GMX versenden/abrufen, wie? 12.5. Wie kann man gelesene Mails nach einem Monat ins Mail-Archiv verschieben? 12.6. Mutt zeigt die Umlaute nicht richtig an, sendet sie aber richtig. 13. Software (Konfiguration/Installation) 13.1. Gibt es noch irgendwo Debian Pakete von Glimpse? 13.2. Gibt es eine Liste von unoffiziellen Quellen für Apt? 14. Hardware (Installation/Konfiguration) 14.1. Wird meine Hardware von Linux/Debian unterstützt? 14.2. Ich habe x MB Arbeitsspeicher, es werden aber nur 64 MB erkannt, warum? 14.3. Wie aktiviert man DMA? 15. Dokumentation 15.1. Wo gibt es Dokumentation über Debian GNU/Linux? 15.2. Wo gibt es deutsche Informationen über Debian GNU/Linux? 15.3. Wo gibt es deutsche Installationsanleitungen? 15.4. Gibt es Bücher über Debian GNU/Linux? 15.5. Wo gibt es deutsche Dokumentation über foobar? 15.6. Ich möchte mein Debian System sicherer machen, gibt es empfehlenswerte Doku? 16. Verschiedenes 16.1. Was bedeutet die Abkürzung foobar? (z.B. IMHO, BTW, foobar) 17. Veraltete Fragen (Potato etc.) 17.1. 2.4er Kernel unter Potato, wie geht das? 17.2. Woher bekomme ich XFree 4.0/4.1 Debian-Pakete für potato? 17.3. Woher bekomme ich KDE Debian-Pakete für Potato? 17.4. Wie kann ich das '[Debian]' im Subject entfernen? 18. GNU GENERAL PUBLIC LICENSE ------------------------------------------------------------------------------- 1. Allgemeines zur FAQ ---------------------- 1.1. Einleitung --------------- 'debian-user-german' ist die einzige offiziell verzeichnete (http://www.debian.org/MailingLists/subscribe) deutsche Mailingliste (http://www.foldoc.org/foldoc/foldoc.cgi?query=mailing+list) die sich mit der Debian Distribution (http://www.debian.org/) beschäftigt. Sie dient der Diskussion und dem Erfahrungsaustausch rund um Debian GNU/Linux (http://www.debian.org/). Diese FAQ (Frequently Asked Questions) soll häufig gestellte Fragen beantworten um so den Traffic (http://lists.debian.org/stats/debian-user-german.png) auf der Liste zu reduzieren. Wenn Du eine Frage hast, die eventuell schon ein anderer vor Dir gehabt haben könnte, versuch sie bitte zuerst mit dieser FAQ oder dem Archiv der Liste (http://lists.debian.org/search.html) zu beantworten. 1.2. Aktuelle Version --------------------- Aktuelle Versionen dieser FAQ sind hier zu finden: * http://dugfaq.sylence.net/ * http://www.de.debian.org/debian-user-de-FAQ/ (mirror) 1.3. Verschiedene Formate ------------------------- Diese FAQ steht in folgenden Formaten zur Verfügung: * HTML (http://dugfaq.sylence.net/dug-faq.htm/) * HTML (http://dugfaq.sylence.net/dug-faq.htm.tar.gz) (tar,gzip) * HTML nicht unterteilt (http://dugfaq.sylence.net/dug-faq_onepage.htm) * HTML nicht unterteilt (http://dugfaq.sylence.net/dug-faq_onepage.htm) (gzip) * PDF (http://dugfaq.sylence.net/dug-faq.pdf) * PDF (http://dugfaq.sylence.net/dug-faq.pdf.gz) (gzip) * Text/ASCII (http://dugfaq.sylence.net/dug-faq.txt) * Text/ASCII (http://dugfaq.sylence.net/dug-faq.txt.gz) (gzip) * PostScript (http://dugfaq.sylence.net/dug-faq.ps) * PostScript (http://dugfaq.sylence.net/dug-faq.ps.gz) (gzip) * Info (http://dugfaq.sylence.net/dug-faq.info.tar.gz) (tar, gzip) * DebianDoc-SGML (http://dugfaq.sylence.net/dug-faq.sgml.tar.gz) (tar, gzip) 1.4. Credits ------------ Autor und Maintainer ist Janto Trappe. Mitgeholfen, Fragen/Antworten eingesandt und Fehler berichtigt haben (in zufälliger Reihenfolge): Eduard Bloch, Ulrich Wiederhold, Ralf Schmidt, Frank Küster, Andreas Metzler, Martin Teschner, Marko Schulz, Daniel Bayer, Serge Koenigsmann, Lothar Schweikle-Droll, Gerhard Schromm, Guido Hennecke, Adam Lackorzynski, Eckhard Hoeffner, Peter H. Ganten, Manuel Schoemburg, Ulrich Schenck, Waldemar Brodkorb, Uwe Kerstan, Stefan Klein, Joerg Jaspert, Klaus Duscher u.a. 1.5. Feedback ------------- Kommentare, Verbesserungen und Erweiterungen sind willkommen und können an dugfaq@sylence.net (mailto: dugfaq@sylence.net) geschickt werden. Umfangreiche Änderungen bitte als diff des DebianDoc-SGML Source (http://dugfaq.sylence.net/dug-faq.sgml.tar.gz) einschicken. ------------------------------------------------------------------------------- 2. Allgemeines zur Mailingliste ------------------------------- 2.1. Wie kann man sich anmelden/abmelden? ----------------------------------------- Um Dich bei der Mailingliste anzumelden, schicke bitte eine Mail an die im Subject 'subscribe ' enthält. Wenn Du Dich wieder abmelden möchtest, musst Du eine Mail mit dem Subject 'unsubscribe ' an die selbe Adresse schicken () Du kannst aber auch dieses Formular (http://www.debian.org/MailingLists/subscribe) verwenden. Bei technischen Problemen bitte eine Mail an: (englisch) 2.2. Gibt es ein Archiv der Liste? ---------------------------------- Ja, sogar mehrere: * Archiv bei debian.org (http://lists.debian.org/users.html) * Archiv bei debian.org durchsuchen (http://lists.debian.org/search.html) * Archiv bei Mail-Archive (http://www.mail-archive.com/debian-user-german@lists.debian.org/) * Archiv bei Infodrom Oldenburg (http://www.infodrom.org/Mail-Archive/) 2.3. Ich bekomme Antworten auf meine Mails immer doppelt: Einmal über die Liste und einmal per CC, warum? ---------------------------------------------------------------------------- Dies ist ein typisches Problem von mutt-Benutzern. Ersetze in der Konfigurationsdatei `~/.muttrc' oder `~/.mutt/muttrc' 'lists debian-user-german' durch 'subscribe debian-user-german'. Hintergrund des Problems: Früher gab es nur die Anweisung 'lists', weshalb viele diese noch in ihrer Einstellung haben. Seit einigen Versionen unterscheidet Mutt, ob man Mailinglisten abonniert hat oder nicht, und seitdem setzt Mutt auch, wenn man an eine Liste schreibt, bei jeder abgeschickten Mail einen Header 'Mail-Followup-To'. Wenn jemand auf Deine Mail über die Liste antwortet, so adressieren einige Mailer diese Antwort an die Adresse im 'Mail-Followup-To'-Header. Wenn Du dieses Problem hast, sieh Dir also mal die Mails an, wie sie von Dir über die Liste gegangen sind und Du findest dort vermutlich diesen Header. Hat man mutt eine Liste mit 'subscribe' bekanntgemacht, setzt er in den 'Mail-Followup-To'-Header nur die Adresse dieser Mailingliste. Wurde aber 'lists' benutzt, so meint mutt, man wäre auf der Liste nicht eingeschrieben und fügt auch die eigene Mailadresse noch zu dem 'Mail-Followup-To'-Header hinzu. Somit trifft das Problem vor allem Leute, die von einer älteren Version von mutt umsteigen ohne die Konfiguration anzupassen. In den meisten Fällen muss nur 'lists' durch 'subscribe' ersetzt werden. 2.4. Kann ich die Liste auch mit einem Newsreader lesen? -------------------------------------------------------- Ja, das ist problemlos möglich, es gibt mindestens zwei sogenannte Mail2News-Gateways: _linux.debian.user.german_: Die linux.debian.* Hierarchie ist auf sehr vielen Newsserver verfügbar, allerdings muss man beim Antworten vorsichtig sein, da das Gateway die Message-IDs der Artikel verändert. - Man darf _keinesfalls_ per Mail direkt an die Liste antworten, das würde das Threading zerstören (http://lists.debian.org/debian-user-german/2003/debian-user-german-200307/msg00547.html), sondern muss ein normales Followup-Posting absetzen. Dieses läuft dann durch ein News2Mail-Gateway, welchess die geänderten Message-IDs vor dem Weiterleiten an die Liste rückgängig macht. Damit das funktioniert muss man sich _einmalig_ beim Betreiber (http://lists.bofh.it/listinfo/linux-gate) freischalten. _gmane.linux.debian.user.german am Newsserver news.gmane.org:_ Ebenfalls ein bidirektionales Gateway, man könnte aber auch per Mail antworten, da die Message-IDs nicht verändert werden. Beim erstmaligen Posten erhält man eine Mail von gmane.org, die man beantworten muss, um die eigene Adresse zum Posten freizuschalten. ------------------------------------------------------------------------------- 3. Aktuelle Fragen, Probleme und Bugs ------------------------------------- 3.1. Beim Aufruf von `foobar' bekomme ich die Warnung "perl: warning: Setting locale failed." ---------------------------------------------------------------------------- Die komplette Fehlermeldung lautet z.B.: perl: warning: Setting locale failed. perl: warning: Please check that your locale settings: LANGUAGE = "de_DE@euro", LC_ALL = "de_DE@euro", LANG = "de_DE@euro" are supported and installed on your system. perl: warning: Falling back to the standard locale ("C"). Eine Erklärung gibt es in der #debian.de FAQ (http://channel.debian.de/faq/ch-bugs.html#s-perllocale). ------------------------------------------------------------------------------- 4. Rund um das Debian Projekt ----------------------------- 4.1. Was ist Debian? -------------------- Debian (http://www.debian.org/) ist ein freies (http://www.debian.org/intro/free.de.html) Betriebssystem (OS - Operating System) für Deinen Rechner. Ein Betriebssystem ist eine Menge von grundlegenden Programmen, die der Rechner zum Arbeiten benötigt. Der wichtigste Teil eines Betriebssystems ist der Kern (Kernel). Der Kern ist das Programm, das für alle Basisaufgaben und das Starten von anderen Programmen zuständig ist. Debian ist Kernel-unabhängig. Zur Zeit wird der, von Linus Torvalds ins Leben gerufene, Linux-Kernel (http://www.kernel.org) verwendet, doch es wird daran gearbeitet, Debian mit anderen Kernel anzubieten, z.B. unter Verwendung des Hurd (http://www.gnu.org/software/hurd/hurd.html). Das Besondere an Debian gegenüber anderen großen, kommerziellen Distributionen ist, dass Debian GNU/Linux ein Projekt von Freiwilligen auf der ganzen Welt ist, hinter dem keine kommerziellen Interessen stehen. (Fast) alle Debian-Developer arbeiten in ihrer Freizeit und unbezahlt an diesem Projekt. Die Kommunikation der Entwickler findet hauptsächlich über das Internet bzw. über diverse Mailinglisten (http://www.debian.org/MailingLists/) statt. 4.2. Warum gerade Debian? ------------------------- Ein Paar Gründe, die für Debian sprechen: _Paketmangement und Upgradefähigkeit_ Das komplette System (oder Teile davon) kann zu jeder Zeit aktualisiert bzw. auf den neuesten Stand gebracht werden, ohne eine Neuinstallation durchführen zu müssen, ohne den Verlust von (eigenen/modifizierten) Konfigurationsdateien und meistens ohne den Computer neustarten zu müssen. Das Upgrade kann entweder per CD-ROM oder per Netzwerk von einem der über 150 Debian-FTP-Mirror (http://www.debian.org/misc/README.mirrors) erfolgen. _Entwickelt von freien Programmierern_ Während andere Distributionen meistens von kommerziellen Unternehmen oder kleinen geschlossenen Gruppen entwickelt werden, ist Debian die einzige Linux-Distribution die über das Internet entwickelt wird. Debian GNU/Linux wird ausschliesslich von freiwilligen (meist unbezahlten) Menschen auf der ganzen Welt zusammengestellt und gepflegt. Dies hat u.a. den Vorteil, dass keine Release-Daten eingehalten werden müssen bzw. dass es sie gar nicht erst gibt. Ein Debian System wird erst als stabil (stable) deklariert, wenn alle kritischen Fehler behoben sind und das System ausführlich getestet wurde. _System-Sicherheit_ Das Debian Security Team reagiert sehr schnell auf Sicherheitslücken. Normalerweise werden sie innerhalb von wenigen Tagen geschlossen und die korrigierten Pakete sofort verfügbar gemacht. Die Geschichte hat gezeigt, dass das Prinzip 'security through obscurity' ('Sicherheit durch Undurchschaubarkeit') nicht funktioniert. Die Verfügbarkeit des Quell-Codes aller Debian-Pakete und des Linux-Kernels erlaubt es, dass die Sicherheit von Debian GNU/Linux in einer offenen Umgebung, die schlechte Sicherheits-Modelle verhindert, beurteilt werden kann. Ebenso garantiert es, dass die Software von tausenden Menschen auf der ganzen Welt untersucht wird und nicht nur von einem einzigen Unternehmen oder einer geschlossenen Gruppe von Entwicklern. Als Anwender oder Administrator muss man nicht auf den Hersteller warten, bis dieser einen Patch für eine Sicherheitslücke zur Verfügung stellt. _Das Bug Tracking System_ Für Debian gibt es ein öffentliches Bug Tracking System (http://www.debian.org/Bugs/) (Fehlerdatenbank). D.h. jeder, der einen Fehler (Bug) in einem Paket findet, kann ihn in diesem System melden. Der Betreuer (Maintainer) des Pakets ist dann dafür zuständig den Fehler zu beseitigen. In den meisten Fällen werden Fehler in wenigen Tagen beseitigt. Das Bug Tracking System garantiert ausserdem, dass kein Bug unter den Tisch gekehrt oder vergessen wird. Alle Bugs werden dokumentiert und archiviert. _Hohe Qualität_ Das Debian Projekt legt sehr viel mehr Wert auf hohe Qualität und Stabilität der Pakete bzw. der gesamten Distribution als auf häufige Neuerscheinungen und Updates. Wenn ein neues Release erscheint sind in jedem Fall alle schwerwiegenden Fehler beseitigt und alle Pakete umfangreich getestet worden. Die Betreuer (Maintainer) der Pakete haben meistens ein hohes Interesse an der Qualität des von ihnen betreuten Paket, u.a. weil sie es selber einsetzen. Das Ergebnis sind Pakete von hoher Qualität, die von motivierten und technisch versierten Personen erstellt und gepflegt werden. Insgesamt führt dies zu einer hochqualitativen Distribution. _Verfügbarkeit_ Debian ist für die verschiedensten Hardwarearchitekturen verfügbar: * Intel x86 (i386) * Motorola 68k (m68k) * Sun SPARC (sparc) * Alpha (alpha) * Motorola/IBM PowerPC (powerpc) * ARM (arm) * MIPS (mips (Big endian)) * MIPS (mipsel (Little endian)) * Intel Itanium (ia64) * HP PA-RISC (hppa) * S/390 (s390) Viele andere Architekturen (z.B. sh und hurd-i386) befinden sich zur Zeit noch in der Entwicklung. Ausserdem gibt es noch zwei weitere Projekte: Debian-Beowulf (http://www.debian.org/ports/beowulf/) und Debian for Laptops (http://www.debian.org/ports/laptops/). Neben dem Linux-Kernel wird beispielsweise auch der Hurd-Kernel von Debian unterstützt. 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. _Die Debian Policy_ Die Debian Policy (http://www.debian.org/doc/debian-policy/) beschreibt die Mindestanforderungen und Standards für die Debian Distribution. Dieses beinhaltet die Struktur und den Inhalt des Debian-Archivs, verschiedene Designentscheidungen des Betriebssystems sowie technische Anforderungen, die jedes Paket erfüllen muß, um in die Distribution aufgenommen zu werden. Dieses Regelwerk wird auf den Entwicklermailinglisten diskutiert und Änderungen werden in Abstimmungen beschlossen. Natürlich ist dieses Verfahren langsamer als der Beschluss einer Geschäftsführung, jedoch kann davon ausgegangen werden, dass in die Entscheidung wesentlich mehr Meinungen fliessen als sonst üblich. _Sehr viele Pakete_ Debian beinhaltet über 3950 verschiedene Software-Pakete. Jedes einzelne Stück ist freie (http://www.debian.org/intro/free.de.html) Software. _Support_ Es gibt kostenlosen Online-Support über die mehr als 100 verschieden sprachigen Mailinglisten (http://www.debian.org/MailingLists/subscribe), auf denen fast jede Frage innerhalb von wenigen Stunden beantwortet wird sowie eine öffentlich zugängliche Fehlerdatenbank (http://www.debian.org/Bugs/). _(Vor)Konfiguration_ Jedes Debian Paket ist bereits sinnvoll vorkonfiguriert und sofort nach der Installation einsatzbereit. Die an den Konfigurationsdateien vorgenommenen Änderungen werden bei einem Update beibehalten und nicht überschrieben, gelöscht oder verändert. _Argumente gegen Debian_ sind meistens subjektiver Natur. Oft wird die Abwesenheit eines zentralen Konfigurations-Tools wie Yast (von SuSE) und die angeblich schwierige Installation bemängelt. Einer der wenigen echten Nachteile ist die relativ lange Zeit, die vergeht, bis neue Programm-Versionen ausreichend getestet wurden und in die stabile Version (stable) aufgenommen werden. Dies wiederum garantiert allerdings eine hohe Qualität der Pakete und da man die Pakete von stable, testing und unstable mischen kann, ist dieser 'Nachteil' für die meisten Leute nicht besonders schwerwiegend. 4.3. Woher kommt der Name 'Debian' und wie wird er ausgesprochen? ----------------------------------------------------------------- Debian GNU/Linux wurde von Ian Murdock gegründet. Der Name setzt sich aus seinem Vornamen und dem seiner Frau Debra zusammen. Debian wird 'deb ian' (mit kurzem 'e') ausgesprochen. 4.4. Die Geschichte von Debian ------------------------------ Das Debian Projekt wurde offiziell am 16. August 1993 von Ian Murdock gegründet. Er hat dieses Projekt als offenes Entwicklungsprojekt, ganz im Sinne des GNU oder auch des Linux-Kernel Projektes begonnen. Vom November 1994 an wurde das Debian Projekt für ein Jahr vom GNU Projekt der FSF (Freie Software Foundation) gesponsort. Das erste Debian Release trug die Versionsnummer '0.01'. Ab Version 0.91 gab es ein einfaches Paketsystem. Debian 1.1 wurde im Juni 1996 fertig und trug zum erstenmal einen sogenannten Codenamen: 'Buzz'. Der Name sowie alle späteren Codenamen stammen aus dem Film 'Toy Story'. Die Idee dazu hatte Bruce Perens, der zu dieser Zeit 'Project Leader' war. Debian 1.2 hiess 'Rex' und war im Dezember 1996 fertig. 1.3 (Bo), 2.0 (Hamm), 2.1 (Slink), 2.2 (Potato), 3.0 (Woody) und "sid" folgten. Frank Ronneburg hat die Geschichte etwas ausführlicher in seinem Debian GNU/Linux Anwenderhandbuch (http://www.openoffice.de/linux/buch/index.html) beschrieben. 4.5. Was ist der Unterschied zwischen woody, sid, sarge, stable, unstable und testing? ---------------------------------------------------------------------------- Woody, sid und sarge sind 'Codenamen' für Versionen der Debian-Distribution. Woody ist die stabile (stable) Version und hat die Versionsnummer 3.0 (derzeit Release 1, 3.0r1 (Stand Dezember 2002)). An sarge (testing) und sid (unstable) wird gerade gearbeitet, wobei sarge als nächstes stable werden soll. Wenn Du nicht gerade experimentieren willst, solltest Du bei woody, also bei stable bleiben. Auf Debian-FTP-Servern ist jeweils 'stable' ein Link auf woody, 'unstable' ein Link auf sid und 'testing' ein Link auf sarge. Wer unstable verwendet, sollte auch debian-devel (http://www.debian.org/MailingLists/subscribe#debian-devel) lesen. 4.6. Was hat es mit den Verzeichnissen 'main', 'contrib', 'non-free' und 'non-US' auf den FTP-Servern auf sich? ---------------------------------------------------------------------------- Die Debian-Server sind in folgende Bereiche unterteilt: _main:_ Hier befindet sich der Hauptteil des Release, Software die zu 100% den DFSG (Debian Free Software Guidelines) entspricht. _contrib:_ freie (http://www.debian.org/intro/free.de.html) Software, die aber abhängig von "nicht-freien" Paketen ist. _non-free:_ Software mit Lizenzen, die nicht den DFSG entsprechen. _non-US:_ Kryptographische und andere Software, die nicht aus den USA exportiert werden darf. 4.7. Was ist das 'Debian Bug Tracking System'? ---------------------------------------------- Das Debian Projekt verwendet ein Fehlerverfolgungssystem (BTS) in dem alle Fehler, die von Benutzern oder Entwicklern gemeldet wurden, gespeichert werden. Jeder Fehler bekommt eine Nummer zugewiesen und wird so lange gespeichert, bis er beseitigt ist. Ausserdem haben Bugs verschiedene 'severity levels': wishlist, normal, important, grave, critical und fixed. Eine Anleitung zur Benutzung des Bug Tracking Systems gibt es hier (http://www.debian.org/Bugs/). 4.8. Wann wird testing zu stable? --------------------------------- Testing wird erst als stable deklariert, wenn es fertig ist, sprich wenn alle kritischen Fehler behoben sind. Einer der Vorteile von Debian gegenüber kommerziellen Distributionen ist, dass keine Release-Daten eingehalten werden müssen bzw. dass es sie gar nicht erst gibt. ------------------------------------------------------------------------------- 5. Installation von Debian -------------------------- 5.1. Wo gibt es deutsche Installationsanleitungen? -------------------------------------------------- Siehe Abschnitt 15.3, `Wo gibt es deutsche Installationsanleitungen?'. 5.2. Wo kann man CD-Images downloaden? -------------------------------------- Bitte guck Dir die Debian GNU/Linux on CDs - Seiten (http://www.debian.org/CD/) und die FAQ (http://www.debian.org/CD/faq/) an. Fertige ISOs gibt es bei linuxiso.org (http://www.linuxiso.org/distro.php?distro=4). 5.3. Wo kann man fertige CDs kaufen? ------------------------------------ Guck Dir bitte die CD vendors Liste (http://www.debian.org/CD/vendors/#de) von Debian an. ------------------------------------------------------------------------------- 6. System Konfiguration ----------------------- 6.1. Wie funktionieren die Runlevel von Debian? ----------------------------------------------- Lies bitte das Manual von `init' (`init(8)'). Eine nette Alternative ist `file-rc'! Installieren mit `apt-get install file-rc' und dann `man runlevel.conf'. 6.2. Ich möchte in der Shell deutsche Umlaute verwenden, wie geht das? ---------------------------------------------------------------------- Du musst `export LC_CTYPE=de_DE' in Deine `~/.bashrc' oder `/etc/profile' eintragen. Einige Programme lesen die Variablen aus der Datei `/etc/environment', es ist also eine gute Idee, obiges auch dort einzutragen. Ab woody musst Du noch die gewünschten Locales in `/etc/locale.gen' eintragen und danach (als root) `locale-gen' ausführen, `dpkg-reconfigure locales' vereint beide Schritte und bietet menügesteuerte Konfiguration. 6.3. Nach einem Update oder einer Neuinstallation von Woody funktionieren die Umlaute nicht richtig, warum? ---------------------------------------------------------------------------- In `/etc/environment' steht defaultmäßig `LANG=C'. Diese Zeile muss man in `LANG=de_DE' (oder z.B. `de_CH' für die Schweiz) ändern. Ausserdem sollte man `export LC_CTYPE=de_DE' in die `~/.bashrc' eintragen. 6.4. Wie kann ich das Euro-Zeichen unter Debian nutzen? ------------------------------------------------------- Folgende Dokumente Beschreiben die nötigen Schritte sehr ausführlich: * Debian Euro HOWTO (http://www.debian.org/doc/manuals/debian-euro-support/) * Debian für das Euro-Zeichen einrichten, wie? (http://channel.debian.de/faq/ch-config.html#s-Euro) * Fitmachen der Linux-Konsole für das Eurozeichen (http://home.t-online.de/home/b.greiner/console-euro.html) Ausserdem gibt es noch das Paket `euro-support'. 6.5. Wie funktionieren die symbolischen Links in `/etc/rcX.d'? -------------------------------------------------------------- In dem Verzeichnis `/etc/init.d' liegen Skripte die beim Systemstart von `init' ausgeführt werden, wenn in ein bestimmtes runlevel gewechselt wird (`init(8))'). Die symbolischen Links in `/etc/rcX.d' verweisen auf diese Skripte. Die Zahlen der Links geben die Reihenfolge an, in der die Skripte ausgeführt werden. Beim Wechseln des runlevels werden zuerst die Stoppskripte von K00 bis K99 und danach die Startskripte von S00 bis S99 ausgeführt. Die Links können entweder von Hand durch einfaches Löschen und Hinzufügen oder mit `update-rc.d' verwaltet werden. Siehe auch Kapitel 10.3 System run levels and init.d scripts (http://www.debian.org/doc/debian-policy/ch-opersys.html#s-sysvinit) der Debian Policy (http://www.debian.org/doc/debian-policy/). 6.6. Ich möchte, dass sich mein Rechner nach einem `halt' oder `init 0' automatisch ausschaltet, wie geht das? ---------------------------------------------------------------------------- Du musst Deinen Kernel mit 'Advanced Power Managemant BIOS Support' kompilieren, das war es eigentlich schon. Mit grep APM /boot/config-kernelversion lässt sich leicht herausfinden ob Du schon einen Kernel mit APM Support verwendest. Wenn `CONFIG_APM=y' gesetzt ist, ist alles OK ansonsten muss Du Dir einen neuen Kernel kompilieren. Wenn der Kernel zusätzlich mit `CONFIG_APM_DISABLE_BY_DEFAULT=y' kompiliert wurde, musst Du das APM erst mit `apm=on' am Kernelprompt oder `append="apm=on"' in der `/etc/lilo.conf' einschalten. Wenn sich Dein Rechner jetzt immer noch nicht automatisch ausschaltet, solltest Du überprüfen ob die Shutdown-Skripte `halt' ohne '-p' aufrufen. Eventuell hast Du auch ein kaputtes BIOS das vor dem Abschalten in den 16bit Real Mode will. 6.7. Wie kann ich normalen Benutzern das Herunterfahren des Systems erlauben? ---------------------------------------------------------------------------- Am einfachsten ist das Problem mit den Programmen `super' oder `sudo' zu lösen. Ein passender Eintrag für die Konfigurationsdatei von `super' (`super.tab') sieht z.B. so aus: shutdown /sbin/shutdown username 6.8. Obwohl ich in die Gruppe für ein spezielles Device aufgenommen wurde habe ich keine Berechtigung darauf zu zugreifen, warum? ---------------------------------------------------------------------------- Nachdem Du in eine bestimmte Gruppe aufgenommen wurdest, musst Du Dich erst aus- und wieder einloggen, erst dann werden die Änderungen wirksam. Solltest Du dies nicht getan haben, ist das wahrscheinlich der Fehler. 6.9. In einer Konfigurationsdatei rufe ich ein externes Programm auf, es wird aber nicht ausgeführt. ---------------------------------------------------------------------------- Wahrscheinlich wird das Programm gar nicht erst gefunden. Setze den kompletten Pfad zum Programm ein (z.B. `/usr/bin/sed' und versuche es dann erneut. 6.10. Wie baue ich eigene Sachen in ein Init-Skript ein, und in welches? ------------------------------------------------------------------------ cd /etc/init.d cp skeleton mein_skript Entweder alles ordentlich anpassen, oder, für Kleinigkeiten, alles bis auf die erste Zeile löschen danach das eigentliche Skript einfügen. Skript installieren: `update-rc.d mein_skript defaults' Wieder entfernen: `update-rc.d mein_skript remove' Siehe `update-rc.d(8)'. 6.11. Ich kann nur als root auf die Soundkarte oder CD-ROM/RW zugreifen. ------------------------------------------------------------------------ Nimm alle Benutzer, die auf die Soundkarte zugreifen dürfen, in die Gruppe _audio_, indem du als root `adduser Benutzer audio' aufrufst. Für das CD-Laufwerk verwendest du analog die Gruppe _cdrom_, zusätzlich musst du noch das entsprechende Device der Gruppe cdrom schenken, `chgrp cdrom /dev/hdd' (wenn /dev/hdd das richtige Device ist), für den CD-Brenner ist eines der /dev/sg* Devices das richtige. Siehe Abschnitt 6.8, `Obwohl ich in die Gruppe für ein spezielles Device aufgenommen wurde habe ich keine Berechtigung darauf zu zugreifen, warum?'! 6.12. Welches ist die beste Stelle für den Aufruf von hdparm? ------------------------------------------------------------- `apt-get install hwtools' und dann `/etc/rcS.d/S60hwtools' anpassen. Oder man erstellt sich eine eigenes Skript und ruft dann `update-rc.d my-hdparm.sh start 50 S' auf. ------------------------------------------------------------------------------- 7. Update von Debian -------------------- 7.1. Ich möchte mein System aktualisieren, woher bekomme ich eine Liste der Debian-Mirror? ---------------------------------------------------------------------------- Auf http://www.debian.org/misc/README.mirrors.html gibt es eine solche Liste. Du kannst die Mirror aber auch mit dem Programm `apt-setup' aus dem Paket `base-config' auswählen. Das Tool `netselect' hilft bei der Auswahl des schnellsten Mirrors (http://www.openoffice.de/linux/buch/x5858.html). 7.2. Ich möchte mein System aktualisieren, weiß aber nicht was ich in die sources.list eintragen muss. Gibt's ein Beispiel? ---------------------------------------------------------------------------- Um Dein Debian-Woody auf dem aktuellsten Stand zu halten genügen folgende drei Zeilen: deb http://security.debian.org/ woody/updates main contrib non-free deb http://ftp.de.debian.org/debian woody main contrib non-free deb http://ftp.de.debian.org/debian-non-US woody/non-US main contrib non-free Für die Source Pakete (optional): deb-src http://security.debian.org/ woody/updates main contrib non-free deb-src http://ftp.de.debian.org/debian woody main contrib non-free deb-src http://ftp.de.debian.org/debian-non-US woody/non-US main contrib non-free Es gibt auch noch ein Verzeichnis für 'proposed-Updates' (empfohlene/ vorgeschlagende Updates). Aber Vorsicht (!) die dort liegenden Pakete sind _nicht_ als 'stable' deklariert und _nicht_ immer stabil da sie nicht komplett getestet wurden: deb http://ftp.de.debian.org/debian/ woody-proposed-updates main contrib non-free deb-src http://ftp.de.debian.org/debian/ woody-proposed-updates main contrib non-free Neben dem zentralen deutschen Server ftp.de.debian.org gibt es noch weitere Spiegel-Server in Deutschland und Europa, die oft besser erreichbar sind. Du kannst sie mit dem Programm `apt-setup' (aus dem Paket base-config) bequem auswählen. 7.3. Gibt es einen mirror von security.debian.org? -------------------------------------------------- Nein. Bis alle mirror 'up to date' sind, dauert es relativ lange. Du möchtest sicher nicht, dass bei einem `apt-get dist-upgrade' die Security-Updates nicht geholt werden können, weil der mirror noch nicht aktuell ist. 7.4. Wie wird das mit den Security-Updates für testing und unstable gehandhabt? ---------------------------------------------------------------------------- Die Antwort lautet: Gar nicht. Testing und unstable sind starken Änderungen unterworfen und das Security Team hat nicht die Resourcen, die benötigt würden, um diese entsprechend zu unterstützen. Wenn Du einen sicheren und stabilen Server benötigst, solltest Du bei stable bleiben. 7.5. Was ist mit der `sources.list', wenn testing stable wird? -------------------------------------------------------------- Wenn Du zur Zeit `testing' in Deiner `/etc/apt/sources.list' stehen hast und bei dieser Distributionsgeneration bleiben willst, musst Du, sobald testing 'stable' ist, `stable' in die sources.list eintragen. Es ist also besser schon jetzt den Codenamen für das zukünftige 'stable' zu verwenden. Im klar Text: Wer 'stable' will nimmt den Codenamen für (das zukünftige) stable, wer 'testing' will nimmt `testing'. Wer zur Zeit 'testing' hat und nicht weiter weiss, nimmt den Codenamen für das zukünftige stable. Oder: stable/frozen/testing/unstable wenn man eine Entwicklungstufe wünscht und slink/potato/woody/sid/sarge wenn man eine Distributionsgeneration wählt. 7.6. Wie kann ich mir vor dem Upgrade eine Liste der zu aktualisierenden Pakete anzeigen lassen? ---------------------------------------------------------------------------- Du kannst entweder die Option '-u' bzw. '--show-upgraded' (`apt-get -u dist-upgrade') verwenden oder APT::GET::Show-Upgraded "yes"; in Deine `/etc/apt/apt.conf' eintragen. 7.7. Gibt es eine Liste von unoffiziellen Quellen für Apt? ---------------------------------------------------------- Siehe Abschnitt 13.2, `Gibt es eine Liste von unoffiziellen Quellen für Apt?'. ------------------------------------------------------------------------------- 8. Debian Paketmanagement ------------------------- 8.1. Wie installiert man ein Debian-Paket? ------------------------------------------ Die einfache Antwort lautet: `apt-get install paketname' Wenn das Paket nur lokal und nicht auf den Debian-Servern vorliegt, kannst Du folgenden Befehl verwenden: `dpkg -i /pfad/zum/paket' 8.2. Zu welchem Paket gehört die Datei foobar? ---------------------------------------------- Das lässt sich ziemlich einfach mit `dpkg -S foobar' beantworten. Das Paket muss dazu installiert sein! Suchst Du eine Datei, die noch nicht installiert ist, kannst Du Dir die Datei `debian/dists/$DIST/Contents-$ARCH.gz' von einem Debian-FTP-Server holen und darin suchen: zgrep etc/init.d/networking Contents-$ARCH.gz etc/init.d/networking base/netbase <$DISTS> steht für den Codenamen der Debian-Version (potato, woody oder sid bzw. stable, testing oder unstable). <$ARCH> steht für die Architektur (i386, sparc, alpha etc.). Gelegentlich lässt sich mit den oben angegebenen Methoden das zugehörige Paket nicht finden. In diesem Fall kann das Formular unter der Adresse http://www.debian.org/distrib/packages verwendet werden. ("Search the Contents of the Latest Release"). Eine weitere (bessere) Methode ist `apt-file': apt-get install apt-file apt-file update apt-file search DATEINAME 8.3. Ich möchte einige Debian-Pakete, die auf meiner Festplatte liegen, in die sources.list einbinden, wie geht das? ---------------------------------------------------------------------------- Zunächst legst Du die Pakete am besten alle in ein (oder wenige) Verzeichniss auf Deiner Platte. Dann brauchst Du für jedes Verzeichnis eine Datei `Packages.gz', diese enthält Informationen darüber, welche Pakete sich in diesem Verzeichnis befinden. Erstellt wird sie mit: cd /der/pfad/zu/den/debs dpkg-scanpackages ./ /dev/null |gzip > Packages.gz Natürlich muß diese Datei jedesmal neu erzeugt werden, wenn Du neue Pakete in dem Verzeichnis ablegst. In die `/etc/apt/sources.list' musst Du noch den Pfad zu den Paketen eintragen: `deb file:/der/pfad/zu/den/debs ./' und anschliessend `apt-get update' aufrufen. Jetzt können die Paket mit dem Befehl `apt-get install paketname' installiert werden. 8.4. Ich habe die Konfigurationsdatei von foobar gelöscht, wie bekomme ich sie wieder? ---------------------------------------------------------------------------- Du hast folgende Möglichkeiten Konfigurationsdatei _aus paket.deb raussuchen_: $ cd /tmp $ ar -x /var/cache/apt/archives/paket.deb $ tar zxvf data.tar.gz $ cd etc/ [Datei suchen und heraus kopieren] oder: * `mc` starten * mit dem Cursor die deb-Datei markieren, drücken * mit lassen sich Dateien aus dem Paket herauskopieren Die '_kill-em-all_' Methode. Komplettes Paket samt Konfigurationsdateien entfernen und neuinstallieren: $ dpkg --purge paketname # entfernt alles samt conffiles $ apt-get install paketname Alle Konfigurationsdateien mit dem _default überschreiben_: $ apt-get -d install paketname $ dpkg -i --force-confnew /var/cache/apt/archives/paket.deb _dpkg --fsys-tarfile_: dpkg --fsys-tarfile paket.deb | tar x /etc/paket.conf -C / 8.5. Beim Versuch eine neue Version von foobar für stable zu installieren bekomme ich die Fehlermeldung, dass meine libc6 nicht aktuell sei, warum? ---------------------------------------------------------------------------- Du hast offenbar ein Paket für testing oder unstable erwischt, das unter anderem gegen eine neuere libc gelinkt ist. Du hast folgende Lösungsmöglichkeiten: 1. Wenn Deine deb-src-Einträge in der `/etc/apt/sources.list' auf testing/unstable verweisen, genügt: `fakeroot apt-get -b source foo' 2. Du nimmst den Quelltext des Paketes für testing/unstable und kompilierst es selbst: $ mkdir /tmp/build-foobar $ cd /tmp/build-foobar $ dpkg-source -x foo_0.8-15.dsc $ cd foo-0.8 $ dpkg-buildpackage -uc -us -rfakeroot -b Das fertige Pakete liegt dann in `/tmp' und du kannst es als root installieren. Im letzten Fall musst du evtl. die zum Kompilieren benötigten Pakete nachinstallieren. Diese sind in der Datei `foo-0.8/debian/control' in der Zeile 'Build-Depends:' aufgelistet. 2. Jemand anders hat sich schon die Arbeit gemacht. In der Liste Various UNOFFICIAL sources for APT (http://www.internatif.org/bortzmeyer/debian/apt-sources/index.html) sind einige Quellen aufgelistet. _Vorsicht!_ Diese Pakete sind _kein_ offizieller Bestandteil von Debian und deshalb auch nicht so gut ausgetestet. Wenn Du einen Fehler findest, gehört der Bugreport daher auch nicht ins offizielle Bug Tracking System. Beachte den Abschnitt Important warning (http://www.internatif.org/bortzmeyer/debian/apt-sources/index.html#1) und lies die README-Dateien! 8.6. Bei dem Versuch aus den Sourcen selber ein Debian-Paket zu erstellen, bekomme ich diese Fehlermeldung: `dh_testdir, make: dh_testdir...', warum? ---------------------------------------------------------------------------- Die komplette Fehlermeldung lautet: dh_testdir make: dh_testdir: Kommando nicht gefunden. make: {*}{*}{*} {[}clean{]} Fehler 127 Dir fehlt das Paket 'debhelper', es enthält die nötigen Tools um das packen von Debian Binär-Paketen zu automatisieren. Du kannst es mit `apt-get install debhelper' installieren. Damit die Erstellung von Binär-Paketen aus Quellcodepaketen funktioniert müssen außerdem eine Reihe weiterer Pakete installiert sein. Am einfachsten ist es, dazu das Paket 'build-essential' zu installieren, das Abhängigkeiten zu den benötigten Paketen enthält. Neuere Quellcodepakete geben in den Paketinformationen außerdem so genannte 'Build-Dependencies' an, das sind Pakete, die neben 'build-essentials' ebenfalls installiert werden müssen. Neuere Versionen von 'apt-get' installieren die benötigten Pakete automatisch mit, wenn `apt-get' zur Installation eines Quellcodepakets folgendermaßen aufgerufen wird: `apt-get build-dep Paketname' Wobei 'Paketname' natürlich durch den Namen des zu installierenden Quellcodepakets zu ersetzen ist. 8.7. Ich möchte foo-bar installieren, weiß aber nicht welche Pakete ich benötige. Wie kann ich das herausfinden? ---------------------------------------------------------------------------- Es gibt sogenannte task-Pakete die alle zu einem 'Thema' benötigten Pakete automatisch auswählen und installieren. Zum Beispiel gibt es task-Pakete für X, Gnome, KDE, eine C Programmierumgebung, ein chinesisches System usw. Mit dem Programm 'tasksel' kannst Du Dir eine Liste der verfügbaren task-Pakete anzeigen lassen und sie zur Installation auswählen. Ansonsten hilft eine manuelle Suche mit `apt-cache search foo | grep bar' oder mit den Suchfunktionen von `dselect' oder `stormpkg' (grafischer Paket-Manager ab Woody). Gelegentlich ist lediglich der Name einer zu installierenden Datei bekannt und das zugehörige Paket lässt sich, mit den oben angegebenen Methoden, nicht finden. In diesem Fall kann das Formular unter der Adresse http://www.debian.org/distrib/packages verwendet werden. ("Search the Contents of the Latest Release"). 8.8. Ich möchte mir selber ein Debian-Paket basteln, wie geht das? ------------------------------------------------------------------ Diese Frage lässt sich natürlich nicht so pauschal beantworten. Du wirst ein paar Dokumente und Manpages lesen müssen. Gute Startpunkte sind: * Debian Packaging Manual (http://www.guides.sk/Debian%20Packaging%20Manual.pdf) (oder hier (http://www.sylence.net/stuff/Debian_Packaging_Manual.pdf)) * Gut verpackt ist halb gewonnen (http://www.schlittermann.de/deb-intern/dpkg/) * Debian New Maintainers Guide (http://www.debian.org/doc/maint-guide/) oder `apt-get install task-debian-devel' und offline lesen (file:/usr/share/doc/maint-guide/maint-guide.html/index.html). Es gibt auch eine deutsche Übersetzung (http://www.debian.org/doc/maint-guide/) oder (ab woody) `apt-get install maint-guide-de' * Die Manuals von debhelper, dh_make und dpkg-buildpackage 8.9. Wie sind die Versionsnummern von Debian-Paketen aufgebaut? --------------------------------------------------------------- Die Versionsnummern entsprechen dem Format: [epoch:]upstream_version[-debian_revision] 'epoch' ist eine einstellige Zahl die es erlaubt Fehler in Versionsnummern von älteren Paketen auszubessern und das Nummerierungsformat zu ändern. 'upstream_version' ist die Versionsnummer des eigentlichen Programmes aus dem das Debian-Paket erzeugt wurde. 'debian_revision' ist die Versionsnummer des Debian-Pakets. Beispiel an `fetchmail 5.3.3-1.2': `5.3.3' ist die Versionsnummer von `fetchmail' die der fetchmail-Autor vergeben hat. `-1.2' ist die Versionsnummer des fetchmail-Debian-Pakets, die der Maintainer des fetchmail-Pakets für Debian vergeben hat. Siehe auch Chapter 4 'Version numbering' (http://www.debian.org/doc/debian-policy/ch-versions.html) der Debian Policy (http://www.debian.org/doc/debian-policy/) 8.10. Wie entfernt man Pakete, die von Apt zur Auflösung von Abhängigkeiten mitinstalliert wurden und jetzt nicht mehr benötigt werden? ---------------------------------------------------------------------------- Seit Debian 3.0 (woody) gibt es dafür die Programme `debfoster' und `deborphan'. Lies bitte die Manuals. (Irgendwann soll diese Funktion wohl auch in `apt' integriert werden.) 8.11. Wie finde ich Dateileichen, die zu keinem Paket gehören? -------------------------------------------------------------- Wirf einen Blick auf die Programme `cruft' und `tiger', beide können dir dabei hilfreich zur Seite stehen. Sei aber _sehr_ vorsichtig und prüfe dreimal, ehe du wirklich etwas löscht, beide Programme liefern falsche Treffer. 8.12. Kann man aus einem installierten Paket wieder ein .deb erzeugen? ---------------------------------------------------------------------- Ja, das geht tatsächlich. Du brauchst dazu das Paket `dpkg-repack', mit `apt-get install dpkg-repack' kannst Du es installieren. Lies bitte das Manual. 8.13. Kann ich die Paketauswahl eines Rechners sichern und 1:1 auf einen anderen übernehmen? ---------------------------------------------------------------------------- Ja, mit `dpkg --get-selections "*" > packetlist' wird die Paketliste in der Datei `packetlist' gespeichert. `"*"' ist nötig, damit auch die Informationen über deinstallierte Pakete mit ausgegeben werden.) Diese Liste kannst Du dann mit dem Befehl `dpkg --set-selections < packetlist' auf ein anderes System übertragen. Anschliessend musst Du noch `dselect install' ausführen. 8.14. Wie kann ich verhindern, dass `dpkg -l' lange Paketnamen kürzt? --------------------------------------------------------------------- Am einfachsten, indem du der Umgebungsvariable , temporär einen höheren Wert zuweist oder `dpkg' in einem genügend breiten (X-)Terminal aufrufst. env COLUMNS=200 dpkg -l Wenn du öfters `dpkg -l' oder `dpkg -S' verwendest, solltest du einen Blick auf das Paket `dlocate' werfen, das diese Aufgaben wesentlich schneller erledigt, da es nicht die originale Paketdatenbank sondern eine täglich aktualisierte locate-Datenbank befragt. (Dadurch sind diese Informationen aber natürlich auch nicht immer auf dem allerneuesten Stand.) 8.15. Wie entfernt man ein komplettes Task-Paket? ------------------------------------------------- Credits: Heiko Schlittermann heiko@schlittermann.de Die folgende Antwort wurde mit der Erlaubnis von Jens Benecke (http://www.jensbenecke.de/) aus der Linux User FAQ (http://www.linuxfaq.de/) übernommen. Vielen Dank! Problem: Du hast ein "task" Paket unter Debian installiert. Task-Pakete sind Zusammenstellungen von anderen Paketen, die im Prinzip nur Abhängigkeiten definieren und selbst keine Dateien enthalten. z.B. wird beim Paket `task-tex' unter anderem `bibtool', `psutils', `tetex', `tetex-bin', `tetex-doc', `hyperlatex' usw. installiert. Es gibt allerdings keine Möglichkeit, zu sagen "Lösche alles, was durch die Installation von task-tex mitinstalliert wurde". Bisher jedenfalls nicht :-) denn diese Zeile tut es: dpkg -r $(apt-cache show task-tex | sed -n '/Depends:/s/^.*://;s/,//gp') 8.16. Debian-Distribution DOWNgraden (z.B. woody -> potato) ----------------------------------------------------------- Credits: Volker Hartwig volker@informatik.uni-rostock.de Die folgende Antwort wurde mit der Erlaubnis von Jens Benecke (http://www.jensbenecke.de/) aus der Linux User FAQ (http://www.linuxfaq.de/) übernommen. Vielen Dank! > Problem: Du möchtest von einer instabilen Distributionsversion (z.B. > eine aktuelle Debian) auf den letzten stabilen Tree zurück. Dies geht > offiziell mit "APT" erst mit Woody, es gibt aber eine inoffiziellere > Variante. hast Du eine potato-CD oder die *.debs irgendwo gemounted rumliegen? Dann könnte dpkg die Arbeit erledigen: dpkg -i -E -O -R --force-downgrade pfad-zu-potato-binary-i386 Ich übernehme allerdings keinerlei Gewähr :-) 8.17. Mehrere Debian-Trees (testing, unstable, stable) gleichzeitig zum Installieren verwenden ---------------------------------------------------------------------------- Die folgende Antwort wurde mit der Erlaubnis von Jens Benecke (http://www.jensbenecke.de/) aus der Linux User FAQ (http://www.linuxfaq.de/) übernommen. Vielen Dank! Debian ist auf Stabilität bedacht und daher kommt in den "stable" Tree (momentan Woody, aka Debian 3.0) nur das, was auch sicher läuft. Im "testing" Tree ist das, was keine kritischen Fehler mehr besitzt, im "unstable" Tree das, was für die Entwickler funktioniert und von anderen getestet werden soll, und im "experimental" Tree werden z.B. neue Versionen des Paketmanagements und größere Änderungen am Gesamtsystem getestet, und Beta-Versionen von bekannten Anwendungen zur Verfügung gestellt. Man möchte manchmal eine Version eines Paketes aus "testing" oder "unstable" haben, ohne gleich das ganze System zu aktualisieren - das würde aber passieren, wenn man seine `/etc/apt/sources.list' auf "unstable" zeigen ließe. Alternativ kann man sich den Krempel natürlich mit `apt-get -b source install $PAKETNAME' selbst kompiliern lassen, aber dafür fehlen fast immer -zig Entwicklerbibliotheken, die für nix anderes benötigt werden. Für sowas gibt es das pinning feature vom `APT' Paketmanager, welches sinnigerweise aber erst ab der in "testing" vorhandenen APT-Version unterstützt wird :-) Das funktioniert z.B. so: Angenommen, man installiert normalerweise aus "testing", aber will _ein_ Paket aus "unstable" haben (z.B. weil man ein bestimmtes Feature braucht). Man schreibt in seine `/etc/apt/preferences' Package: * Pin: release a=testing Pin-Priority: 900 Package: * Pin: release o=Debian Pin-Priority: -10 _Beim Copy & Paste die Leerzeichen am Zeilenanfang löschen!_ trägt eine passende Zeile für "unstable" in seine `/etc/apt/sources.list' ein, und kann dann mittels `apt-get -t unstable install $PAKETNAME' ein Paket aus "unstable" installieren, während aber bei "normalem Betrieb" alles aus "testing" geholt wird. Abhängigkeiten werden dabei selbstverfreilich automatisch beachtet, wie immer. Ja, so einfach ist das. Debian ist halt genial. :-) ------------------------------------------------------------------------------- 9. X11, XFree86, Window-Manager ------------------------------- 9.1. Wie kann ich foo-bar als standardmäßigen Window-Manager, beim Aufruf von `startx', starten? ---------------------------------------------------------------------------- Normalerweise wird beim Start einer X-Session das Programm `x-window-manager' ausgeführt. Dabei handelt sich allerdings gar nicht um ein Programm sondern um einen symbolischen Link auf den eigentlich zu startenden Window-Manager. Dieser Link wird mit Hilfe von 'update-alternatives' verwaltet. Um aus den bereits installieren Window-Managern einen Standard auszuwählen, kannst Du update-alternatives --config x-window-manager verwenden. Es erscheint ein Menü und der gewünschte Window-Manager kann ausgewählt werden. Wenn in der Datei `~/.xsession' ein anderer Window-Manager eingetragen ist, wird der standardmäßige ignoriert. In `~/.xsession' sollte das letzte zu startende Programm der Window-Manager sein. Bei Debian Woody und höher kommt noch ein anderer Mechanismus ins Spiel. Da KDE und GNOME ihre eigenen Session-Manager installieren und darunter verschiedene Window-Manager benutzen können, wurde analog zu WMs der 'alternatives'-Eintrag 'x-session-manager' eingeführt. Wenn kde2 oder gnome-session installiert ist, wird dieses Programm (also der vom 'x-session-manager'-Link referenzierter Session-Manager) in der Standard-Konfiguration anstelle von 'x-window-manager' ausgeführt. Beachte also, dass Du beide 'alternatives'-Einträge anpasst. 9.2. Kann man den Pfad in einem xterm im xterm-Titel anzeigen lassen? --------------------------------------------------------------------- Ja. Je nachdem welche Shell Du verwendest, muss Du folgendes in die entsprechende Konfigurationsdatei eintragen: _Bash_ (`~/.bashrc'): if [ "$TERM" = "rxvt" -o "$TERM" = "xterm" ] then export PROMPT_COMMAND='echo -ne "\033]2;$LOGNAME@$HOSTNAME $PWD\007"' PS1='\u:\W > ' else PS1='\u@\h:\w\$ ' fi _Tcsh_ (`~/.tcshrc' oder `~/.cshrc'): alias precmd 'echo -n "\033]2;$LOGNAME@$HOST Directory: $PWD\007\033]1;$LOGNAME@$HOST\007"' _Zsh_ (`~/.zshrc'): precmd(){ if [[ "$TERM" == "xterm-debian" || "$TERM" == "rxvt" || "$TERM" == "xterm" ]] then echo -n "\033]2;$LOGNAME@$HOST `date --rfc` Directory: $PWD\007\033]1;$LOGNAME@$HOST\007" fi } 9.3. Wie erlaube ich anderen Benutzern (z.B. root) Zugriff auf meinen X Server? ---------------------------------------------------------------------------- Der Abschnitt 'Zugriff auf den X-Server' aus dem Dokument Alle Macht dem User (http://groups.google.com/groups?q=alle+macht+dem+user+group:de.comp.os.unix.linux.infos) von Jo Moskalewski behandelt dieses Thema sehr ausführlich. Der Artikel wird wöchentlich in de.comp.os.unix.linux.infos gepostet, Du kannst ihn dort oder über groups.google (http://groups.google.com/groups?q=alle+macht+dem+user+group:de.comp.os.unix.linux.infos) lesen. 9.4. Das Scrollrad meiner Maus funktioniert nicht, warum? --------------------------------------------------------- Scrollräder werden von XFree ab der Version 3.3.2 unterstützt. In dem Abschnitt 'Pointer' der `/etc/X11/XF86Config' musst Du die Zeile `ZAxisMapping 4 5' einfügen. Wenn Du `gpm' verwendest, musst Du in der `/etc/gpm.conf' als Repeater-Protokoll `raw' angeben: `/etc/gpm.conf': device=/dev/psaux responsiveness= repeat_type=raw type=imps2 append="" `/etc/X11/XF86Config': Section "Pointer" Protocol "imps/2" Device "/dev/gpmdata" ZAxisMapping 4 5 EndSection Du kannst alle Deine bisherigen Einstellungen beibehalten, obiges ist nur ein Beispiel. Eventuell musst Du noch das Maus-Protokoll anpassen: `imps/2' für eine PS/2 oder USB Wheel-Maus, `intellimouse' für eine Maus am seriellen Anschluß. Nach dem Anpassen der `/etc/X11/XF86Config' muss der X-Server neu gestartet werden! Für XFree 4 gilt das Selbe, die Kofigurationsdatei hat aber einen neuen Namen bekommen (`XF86Config-4'). Mit gtk- und qt-Anwendungen sollte das Rad damit schon funktionieren, imwheel wird in den meisten Fällen nicht mehr benötigt. Für `Netscape', `xterm', `Nedit' und Co. brauchst Du noch spezielle Konfigurationsdateien, wobei Potato die für den `xterm' schon mitbringt. Die Konfigurationsdatei ('application defaults') für Netscape gibt es auf der Seite Making Netscape scroll with a Wheel Mouse (http://www.kalamazoolinux.org/tech/ns-wheel.html), diese Datei muss in das Verzeichnis `/usr/lib/X11/app-defaults/Netscape' kopiert werden. Anleitungen die die Konfiguration für andere Programme beschreiben, gibt es auf Colas Nahaboo X mouse wheel scroll page (http://www-sop.inria.fr/koala/colas/mouse-wheel-scroll/). Die auf dieser Seite beschriebene Methode für Netscape ist aber nicht zu empfehlen, sie ist veraltet. 9.5. Wo finde ich das Konfigurationstool für XFree 4? ----------------------------------------------------- Es heisst `xf86cfg' und befindet sich in `/usr/bin/X11'. Wenn X noch nicht läuft, kannst Du `xf86cfg -textmode' oder `dpkg-reconfigure xserver-xfree86' verwenden. 9.6. Mein X will einfach nicht starten, was brauche ich als Minimalausstattung? ---------------------------------------------------------------------------- Installiere das Metapaket `x-window-system-core' und - sofern du ISO-8850-15 locales (Euro) verwenden willst - `xfonts-75dpi-transcoded' und `xfonts-100dpi-transcoded'. Ausserdem brauchst du noch einen Windowmanager (z.B. Windowmaker, twm oder den, der bei KDE dabei ist) und eine Terminalemulation (beispielsweise xterm, rxvt oder konsole von KDE). Wenn du Platz sparen willst, desinstalliere das Metapaket `x-window-system-core' gleich wieder und entferne die unnoetigen Fontpakete, du brauchst nur 75- _oder_ 100-dpi Fonts je nach deiner lokalen Konfiguration. ------------------------------------------------------------------------------- 10. Kernel ---------- 10.1. Wie kann ich unter Debian einen Kernel kompilieren und daraus ein Debian-Paket erzeugen? ---------------------------------------------------------------------------- Dazu gibt es das Paket `kernel-package', dass alle Schritte von der Übersetzung des Quellcodes bis zu Erstellung eines Debian-Pakets mit dem angepassten Kernel für Dich übernimmt. Du installierst den Kernel-Quellcode, entweder aus einem Debian-Paket oder von einem Server Deiner Wahl in das Verzeichnis `/usr/src'. Dort packst Du den Code aus und konfigurierst ihn, so wie üblich, z.B. mit `make menuconfig'. (Um schreibenden Zugriff auf `/usr/src' zu haben, musst Du Dich in der Gruppe `src' befinden. Danach führst Du im Kernel-Quellcodeverzeichnis den folgenden Befehl aus: `fakeroot make-kpkg kernel_image --revision=Konfigurationsname.Version' Wobei für 'Konfigurationsname' ein beliebiger Name für Deine neue Konfiguration und für 'Version' eine Versionsnummer für diese Konfiguration zu wählen ist, also z.B. `--revision=mailserver.3'. Nachdem `make-kpkg' seine Arbeit getan hat, findest Du im übergeordneten Verzeichnis dann u.a. ein Debian-Paket mit der Bezeichnung 'kernel-image-Kernel-Version', das Du wie gewohnt mit `dpkg' installieren kannst. 10.2. Sind die Kernel-Source-Pakete von Debian gepatcht/modifiziert? -------------------------------------------------------------------- Ja, sind sie. Die Änderungen kannst Du in `/usr/share/doc/kernel-source-VERSION/README.Debian.1st.gz' nachlesen. 10.3. Lassen sich aus den Original Linux-Sourcen von kernel.org Debian-Kernel-Pakete erzeugen? ---------------------------------------------------------------------------- Ja, dies sollte problemlos möglich sein. 10.4. Vertragen sich die üblichen Kernel-Patches mit dem Debian-Kernel-Source? ---------------------------------------------------------------------------- Prinzipiell kann es immer zu Problemen kommen, die gängigen Patches funktionieren aber eigentlich alle. Eine Suche mit Google (http://www.google.com/) nach 'patchname debian' hilft dir eventuell weiter. Ausserdem sind einige patches als Debian-Paket verfügbar und können mittels `make-kpkg' eingespielt werden. z.b. der freeswan patch: apt-get install kernel-patch-freeswan cd /usr/src/kernel-source- make-kpkg clean export PATCH_THE_KERNEL=YES make-kpkg --added-patches=freeswan --revision=revision.1 kernel_image 10.5. Ich möchte das Paket (alsa|pcmcia|tpctl)-source für meinen selbstkompilierten Kernel kompilieren, wie geht das? ---------------------------------------------------------------------------- Das ist dank `make-kpkg' ganz einfach, es soll hier mal an dem Paket `pcmcia-source' gezeigt werden: apt-get install pcmcia-source cd /usr/src/ tar -xvzf pcmcia-cs.tar.gz cd make-kpkg modules_image `Make-kpkg' kompiliert daraufhin alle module die im Verzeichnis `/usr/src/modules' für den (konfigurierten) Kernel liegen, danach findest Du in `/usr/src/' Debian Pakete der Module für deine Kernelversion. 10.6. Mein selbstkompilierter Kernel meldet beim booten 'can't locate module char-major-foo', warum? ---------------------------------------------------------------------------- Wahrscheinlich hast Du die Unterstützung für ein bestimmtes Kernel-device gar nicht oder fest in den Kernel kompiliert, versuchst aber trotzdem das entsprechende Modul zu laden. Um heraus zu bekommen welches device bzw. Modul es ist, sind die Zahlen hinter `char-major' wichtig, `char-major-10-135' ist z.B. für den 'Real Time Clock (RTC) Support'. Eine Liste der device-Nummern findest Du in `/usr/src/linux/Documentation/devices.txt'. Um den Fehler zu beheben kannst Du entweder den Kernel neu kompilieren und diesmal die ensprechende Option anwählen oder das laden des Moduls unterbinden `(man 8 update-modules)'. 10.7. Wo finde ich den Treiber für 8139 Realtek Netzwerkkarten? --------------------------------------------------------------- Du musst die Option 'Prompt for development and/or incomplete code/drivers' in dem Menü 'Code maturity level options' aktivieren, danach steht der Treiber zur Verfügung und kann ausgewählt werden. 10.8. Wie kann ich Einstellungen im /proc-Dateisystem machen, sodass sie einen Reboot des Systems überstehen? ---------------------------------------------------------------------------- Verwende das Paket `procps' und trage die Einstellungen in `/etc/sysctl.conf' ein. Um beispielsweise `/proc/sys/net/ipv4/ip_dynaddr' immer auf `5' zu setzen, verwendest du einfach net.ipv4.ip.ip_dynaddr=5 Die dort getätigten Einstellungen werden nach einem Reboot oder durch `/etc/init.d/procps.sh reload' aktiviert. Siehe `sysctl.conf(5)' und `sysctl(8)'. 10.9. Wie kann ich verhindern, dass alle Kernel-Log-Meldungen auf der Konsole ausgegeben werden? Der Kernel ist zu geschwätzig. ---------------------------------------------------------------------------- Setze `$KLOGD="-c 3"' in `/etc/init.d/sysklogd' (potato) bzw. `/etc/init.d/klogd' (woody/sid). `-c 3' setzt den Log-Level der Konsole auf 2 (crit), d.h. nur Meldungen vom Grad emerg(0), alert(1) und crit(2) werden auch auf der Konsole ausgegeben. Wenn der Log-Level auf 2 steht werden nur Meldungen vom Grad emerg(0) und alert(1) ausgegeben usw. Siehe `klogd(8)' und `/usr/include/sys/syslog.h'. Alternativ kann man in `/proc/sys/kernel/printk' '2 4 1 7' eintragen, der Eintrag für `/etc/sysctl.conf' wäre also kernel.printk="2 4 1 7" Siehe `Kernel-Quelltext/Documentation/filesystems/proc.txt' und Abschnitt 10.8, `Wie kann ich Einstellungen im /proc-Dateisystem machen, sodass sie einen Reboot des Systems überstehen?'! 10.10. Ich möchte das Module XYZ immer beim Booten laden. Wo trage ich modprobe XYZ ein? ---------------------------------------------------------------------------- Bei Debian geht es einfacher, ein zuständiges Skript ist bereits installiert. Die gewünschten Module werden in die Datei `/etc/modules' eingetragen. Siehe auch `update-modules(8)'. 10.11. Ich habe von Kernel 2.2.x auf Kernel 2.4.x gewechselt, beim booten bekomme ich die Meldung 'Kernel panic: VFS: Unable to mount root fs on 03:01' ---------------------------------------------------------------------------- Bei den neuen Kernel-paketen ist kein Dateisystem mehr fest einkompiliert, das Modul für das Dateisystem muss also beim booten per `initrd' geladen werden bevor `root' gemountet werden kann. Bei der Installation des Kernels sollte eine Meldung angezeigt worden sein die Dich darauf hingewiesen hat, führe einmal dpkg-reconfigure kernel-image-2.4.18-irgendwas aus und achte auf die Meldung die sich auf initrd bezieht. 10.12. Module selber bauen -------------------------- Beispiel an "Compex RL100 ATX-PCI": (Dies ist nur eine Kurzfassung, eine ausführliche Version gibt es hier (http://home.debitel.net/user/hannes.lau/Linux/Module.htm).) _Vorbereitung:_ 1. Zunächst benötigen wir installierte Kernel- Header. Wir stellen dieses z.B. nach einem Selbstbau des Kernels her. Unter Debian verwenden wir dazu das Kommando make-kpkg kernel_headers 2. Wir downloaden die Pakete `pci-scan.c', `pci-scan.h' und `kern_compat.h' vom ftp- server bei Scyld Computing Corporation, sowie das gewünschte treiber- file aus der source. Die Files legen wir am besten unterhalb von `/usr/src/modules' ab. _Modul kompilieren:_ In Treiber- file finden wir am Ende den Eintrag, wie das Modul zu kompilieren ist. Zum Beispiel: gcc -DMODULE -Wall -Wstrict-prototypes -O6 -c TREIBER-FILE.c Das Ergebins ist ein TREIBER-FILE.o Eventuell muessen wir noch angeben, wo der Kompiler die include- Dateien der Kernel- Header findet. Das sieht dann so aus: gcc -DMODULE -Wall -Wstrict-prototypes -O6 -c TREIBER-FILE.c -I /usr/src/kernel-headers-2.2.XX/include -v Eventuell müssen Betreiber von Kernels der Reihe 2.4.x dies anhängen: -I /usr/src/linux/include -include /usr/src/linux/include/linux/modversions.h Das Modul `pci-scan' kompilieren: Dies kompilieren wir z.B. wie es im File `pci-scan.c' am Ende beschrieben steht. Auch hier hängen wir wieder den o.g. Aufruf für die include- Dateien wie bereits beschrieben (individuell je nach Kernel- Version anzupassen!) an z.B. (hier am Bsp. Kernel-Reihe 2.2.XX): gcc -DMODULE -D__KERNEL__ -DEXPORT_SYMTAB -Wall -Wstrict-prototypes -O6 -c pci-scan.c -I /usr/src/kernel-headers-2.2.XX/include -v _Installation:_ Nach erfolgreichem Kompilieren ist das Netzwerk mit ifconfig eth0 down herunter zufahren. Alle geladenen Module werden angezeigt mit dem Befehl `lsmod'. Danach sind geladene Netzwerk- Module zu entladen z.B. modprobe -r [Modul] Wir testen das Laden der Module (alternativ `modprobe'): insmod pci-scan.o insmod driver.o Mit `lsmod' wird der Ladevorgang geprüft. Eine Überprüfung mit `depmod -a' sollte keine Probleme anzeigen. Danach installieren wir die Module mit: install -m 644 pci-scan.o driver.o /lib/modules/uname -r/net/ Der Aufruf von `uname -r' expandiert zur installierten Version des Kernels. Im allgemeinen muß nun noch in `/etc/modules' der Eintrag für das ständige Laden des Netzwerk- Modul nachgetragen werden (siehe auch die Dokumentation zu `modconf', `update-modules', `depmod'). Das Netzwerk kann dann mit... ifconfig eth0 192.168.0.xyz netmask 255.255.255.0 up aktiviert werden. ------------------------------------------------------------------------------- 11. Netzwerk (Konfiguration, Modem, ISDN, DSL etc.) --------------------------------------------------- 11.1. Wie kann ich die dynamische IP-Adresse meines Rechners herausfinden und sie in einer Variable speichern? ---------------------------------------------------------------------------- Hier sind 4 Beispiele, such Dir eins aus: IP_PPP="$(/sbin/ifconfig devicename | grep 'inet addr:' | sed 's/.*inet addr:\([0-9.]*\).*/\1/g')" IP_PPP="$(/sbin/ifconfig devicename | awk '/addr:/ {print $2}' | sed s/addr://)" IP_PPP="$(/sbin/ifconfig devicename | perl -ne '/addr:([\d.]+)/ && print $1')" IP_PPP="$(/sbin/ifconfig devicename | perl -ne 'print /addr:([\d.]+)/')" Bei einer Modemverbindung musst Du 'devicename' durch 'ppp0', beim ersten ISDN-SyncPPP-Device durch 'ippp0' und bei ISDN-rawIP durch isdn0 ersetzen. Eventuell muss vor der Benutzung die 'LANG'-Variable auf C oder POSIX gesetzt werden, damit die Ausgabe auf englisch erscheint und die obigen Ausdrücke richtig funktionieren. Die IP wird aber auch den ip-up Skripten übergeben (<$PPP_LOCAL>). Wenn Du sie nur dort brauchst, kannst Du Dir obiges sparen. 11.2. 5 oder 7 in `/proc/sys/net/ipv4/ip_dynaddr', was ist besser? ------------------------------------------------------------------ '7' schaltet zusätzlich zum 'RST-provoking' 'verbosity' ein. Das bedeutet, dass die Änderung der IP Adresse in die Logfiles geschrieben werden. Näheres steht in `/usr/src/linux/Documentation/networking/ip_dynaddr.txt'. 11.3. Ich erhalte ständig die Meldung 'Neighbour table overflow', was bedeutet das? ---------------------------------------------------------------------------- Es bedeutet das dein loopback Interface nicht (richtig) konfiguriert ist. Wahrscheinlich fehlt einfach nur die Zeile `auto lo' in der Konfigurationsdatei für die Interfaces. Wenn du folgendes in `/etc/network/interfaces' einträgst sollte das Problem behoben sein: auto lo iface lo inet loopback 11.4. Beim Start von HiSax bekomme ich die Fehlermeldung 'Aproval certification failed because of unauthorized source code changes'? ---------------------------------------------------------------------------- Hier die Antwort (http://www.isdn4linux.de/faq/i4lfaq-7.html#ss7.26) aus der ISDN 4 Linux - FAQ (http://www.isdn4linux.de/faq/): "Since the certification of the HiSax driver is only valid for unchanged source code, the source code is protected by a checksum. When you get this message, then either you have changed the source code yourself, or the author did not update the checksum when changing the source code (reason could be that the complete certification tests have not yet been run on the changed code)." 11.5. PPPoE unter Debian, wie geht das? --------------------------------------- Bitte lies die Beschreibung (http://channel.debian.de/faq/ch-confignet.html#s-pppoe) in der #debian FAQ (http://channel.debian.de/faq/) 11.6. Warum verursacht exim dauernd Einwählversuche ins Internet, selbst bei lokaler Mailzustellung oder mailq-Aufrufen? ---------------------------------------------------------------------------- exim versucht zu seinem eigenen hostname die IP-Adresse zu ermitteln, und zwar auch die IPv6-Adresse. Um dafür die DNS-lookups zu unterbinden musst Du in deiner `/etc/hosts' einen Eintrag für deinen host haben. Die IPv6-lookups kannst du exim abgewöhnen, wenn du `exim.conf' um folgenden Eintrag erweiterst: `dns_ipv4_lookup = yes' ------------------------------------------------------------------------------- 12. E-Mail ---------- 12.1. Ich habe gerade Mutt installiert, komme aber überhaupt nicht mit der Konfiguration zurecht. Gibt es Beispiele für die `muttrc'? ---------------------------------------------------------------------------- Ja, auf mutt.org (http://www.mutt.org/) gibt es eine Liste (http://www.mutt.org/links.html#config) mit gut kommentierten Konfigurationsdateien. Weitere Hilfsquellen sind: * `man muttrc' * Mutt Manual (http://www.mutt.org/doc/manual/) * Deutsche Übersetzung des Mutt Manuals (ftp://ftp.mutt.org/mutt/doc/de/) 12.2. Wie war das nochmal mit dem Spamkiller für Mutt und Procmail? ------------------------------------------------------------------- Für Mutt brauchst Du ein Makro, dass die Adresse des Spammers in eine Datei schreibt: macro index "|grep "^^From:" | sed -e 's/ *(.*)//; s/>.*//; s/.*[:<] *//' \ >> $HOME/.spam && echo Add sender to killfile\n" "kill sender" macro pager "|grep "^^From:" | sed -e 's/ *(.*)//; s/>.*//; s/.*[:<] *//' \ >> $HOME/.spam && echo Add sender to killfile\n" "kill sender" Damit die Mails von diesen Adressen automatisch in die Mailbox 'spam' einsortiert werden, musst Du folgendes in Deine `.procmailrc' eintragen: FROM=`formail -xFrom: | sed -e 's/ *(.*)//; s/>.*//; s/.*[:<] *//'` :0 * ? fgrep -qxis "$FROM" $HOME/.spam { LOG="Spam from $FROM" :0: spam } 12.3. Wie kann man mit Mutt verschlüsselte/signierte Mails automatisch entschlüsseln/überprüfen wenn sie im alten 'inline' Format verschickt wurden? ---------------------------------------------------------------------------- Ab Mutt 1.3 gibt es die 'check-trditional-pgp' Funktion (`P') mit der man den 'content-type' ändern kann. Wenn Du die Mails gleich bei der Einlieferung dauerhaft umschreiben möchtest, kannst Du dieses Perl Skript (http://dugfaq.sylence.net/scripts/sct/pgpmailfilter) und das folgendes Procmail-Recipe verwenden: MAILFILTER_PGP=$HOME/bin/pgpmailfilter :0 * !^Content-Type: message/ * !^Content-Type: multipart/ * !^Content-Type: application/pgp { :0 fBw * ^(=2D|-)----BEGIN PGP MESSAGE----- * ^(=2D|-)----END PGP MESSAGE----- | formail -i "Content-Type: application/pgp; format=text; x-action=encrypt" :0 fBw * ^(=2D|-)----BEGIN PGP SIGNED MESSAGE----- * ^(=2D|-)----BEGIN PGP SIGNATURE----- * ^(=2D|-)----END PGP SIGNATURE----- | formail -i "Content-Type: application/pgp; format=text; x-action=sign" } :0 fBw * ^(=2D|-)----BEGIN PGP PUBLIC KEY BLOCK----- * ^(=2D|-)----END PGP PUBLIC KEY BLOCK----- | formail -i "Content-Type: application/pgp-keys; format=text;" :0 * ^Content-Type: multipart/ { :0 fBw * ^(=2D|-)----BEGIN PGP MESSAGE----- * ^(=2D|-)----END PGP MESSAGE----- | $MAILFILTER_PGP - } 12.4. Mail über GMX versenden/abrufen, wie? ------------------------------------------- Bitte lies die Mailhandling mit GMX FAQ (http://www.linuxer.onlinehome.de/apps/exim.htm) von Uwe Kerstan. Dort sollten alle Fragen beantwortet werden. 12.5. Wie kann man gelesene Mails nach einem Monat ins Mail-Archiv verschieben? ---------------------------------------------------------------------------- z.B.: macro index "T~r>1m !~F\n" \ "Mark all mails older than a month and not flagged" Dadurch werden Mails zunächst nur markiert und man kann sich dann überlegen, was man damit machen will: ;d -> gelöscht ;s -> In eine Datei speichern 12.6. Mutt zeigt die Umlaute nicht richtig an, sendet sie aber richtig. ----------------------------------------------------------------------- Folgende Einstellungen sind für die Umlaut-Behandlung verantwortlich: _Zum Anzeigen:_ Die locale Variable . Diese muss auf `de_DE' oder `de_DE@euro' zeigen. Siehe auch Abschnitt 6.4, `Wie kann ich das Euro-Zeichen unter Debian nutzen?'. Einige Mail-Programme (vornehmlich amerikanischer Herkunft) deklarieren den Zeichensatz nicht oder falsch (immer us-ascii, auch wenn der Text Umlaute und Sonderzeichen (Euro) enthält). Dies führt dazu, dass die Umlaute falsch oder nicht dekodiert werden (Fragezeichen, \Escape-Sequenzen etc.). Da ISO-8859-1/15 sowieso komplettes us-ascii beinhalten, kann es für alle us-ascii-Mails verwendet werden, und wird mit folgender Anweisung in `~/.muttrc' automatisch umgeschaltet: charset-hook us-ascii ISO-8859-15 _Zum Senden:_ In der Standard-Einstellung wird von dem gleichen Zeichensatz wie in ausgegangen (siehe oben). Man kann mutt's Verhalten BEIM SENDEN auch mit folgenden Variablen in `~/.muttrc' beeinflussen: # Charset set charset="iso-8859-15" Dieser Zeichensatz wird zuerst versucht. set send_charset="us-ascii:iso-8859-15:iso-8859-1:koi8-r:utf-8" Eine Liste der Zeichensätze, die Mutt durchprobiert bis die Nachricht fehlerfrei konvertieren/kodiert werden konnte. Für ascii/latin9/latin1-Mails wahrscheinlich uninteressant, aber bei abwechselnder Verwendung von verschiedenen Zeichensätzen sehr nützlich, vor allem in Unicode-Umgebung. Mit dieser Anweisung kann man die Probe-Reihenfolge festlegen, was a) mutt schneller macht (muss nicht alles ausprobieren) und b) man kann latin9 Vorrang geben (ob es Sinn macht, ist eine andere Sache). ------------------------------------------------------------------------------- 13. Software (Konfiguration/Installation) ----------------------------------------- 13.1. Gibt es noch irgendwo Debian Pakete von Glimpse? ------------------------------------------------------ Ja, für i386 und Sparc findest Du die original Sourcen der letzten Version auf http://ftp.fifi.org/debian-local/potato/backported-from-woody/glimpse/. Alternativen zu Glimpse sind eventuell htdig, swish-e oder swish++. 13.2. Gibt es eine Liste von unoffiziellen Quellen für Apt? ----------------------------------------------------------- Unofficial APT repositories: * www.apt-get.org/ (http://www.apt-get.org/) ------------------------------------------------------------------------------- 14. Hardware (Installation/Konfiguration) ----------------------------------------- 14.1. Wird meine Hardware von Linux/Debian unterstützt? ------------------------------------------------------- Unter Linux kann inzwischen ein Großteil der PC-Hardware (i386) verwendet werden. Informationen über die Unterstützung verschiedener Geräte werden im Hardware-HOWTO gesammelt: * Deutsches Linux HOWTO Projekt (http://www.linuxhaven.de/dlhp/) * Linux Documentation Project (http://www.tldp.org/) Es erweist sich oft als sinnvoll, nicht nach den Handelsbezeichnungen zu suchen, sondern nach den Bezeichnungen der zentralen Komponenten, also z.B. der Chips auf den Grafikkarten. Einige Komponenten werden von Linux noch nicht unterstützt, weil die Zusammenarbeit mit den Herstellern nicht klappt oder die Funktionsweise der Hardware den Betrieb in einer Multitasking-Umgebung nicht zuläßt. Dazu gehören fast alle PCI- und 'billige' ISA-Modems (sog. Soft-/Win-Modems), viele GDI-Drucker und einige USB- und Parallelport-Scanner. Auch hier gilt: Ausnahmen bestätigen die Regel, es wird immer wieder an 'Bastellösungen' gearbeitet. 14.2. Ich habe x MB Arbeitsspeicher, es werden aber nur 64 MB erkannt, warum? ---------------------------------------------------------------------------- Das Problem liegt in dem Zusammenspiel von Linux und Deinem BIOS. Bestimmte BIOS-Versionen übergeben dem Kernel nicht die gesamte Speichergrösse sondern nur 64 MB. Du kannst dem Kernel die richtige Speichergrösse aber auch manuell mitteilen, in dem Du am Lilo-Bootprompt (bzw. in der `/etc/lilo.conf') den mem-Parameter angibst, z.B. `mem=128M'. 14.3. Wie aktiviert man DMA? ---------------------------- Bitte lies den Artikel in der #debian.de FAQ (http://channel.debian.de/faq/ch-confighw.html#s-udmaactivate). ------------------------------------------------------------------------------- 15. Dokumentation ----------------- 15.1. Wo gibt es Dokumentation über Debian GNU/Linux? ----------------------------------------------------- * The Debian GNU/Linux FAQ (http://www.debian.org/doc/FAQ/) * Debian GNU/Linux Anwenderhandbuch (http://www.openoffice.de/linux/buch/) oder Download Seite (http://www.openoffice.de/linux/packages/) * Documentation von debian.org (http://www.debian.org/doc/) * Gut verpackt ist halb gewonnen (Debian-Paketmanagement (http://www.schlittermann.de/deb-intern/dpkg/) * Debian Policy Manual (http://www.debian.org/doc/debian-policy/index.html) * Debian Packaging Manual von Ian Jackson (http://www.osxfaq.com/Documentation/Administration/Commands/dpkg/packaging/) * Eddie's Debian Configuration Site (http://sites.inka.de/sites/zombie/edecosi/) 15.2. Wo gibt es deutsche Informationen über Debian GNU/Linux? -------------------------------------------------------------- * debian.org - über Debian (http://www.debian.de/intro/about.de.html) * Informationen für Debian-Interessierte (http://www.dcoul.de/infos/informationen_fuer_debian-interessierte.html) * Sicherheits-Informationen (http://www.debian.de/security/index.de.html) 15.3. Wo gibt es deutsche Installationsanleitungen? --------------------------------------------------- * Debian GNU/Linux 3.0 -- Installationanleitung (http://www.debian.de/releases/stable/installmanual.de.html) * Debian GNU/Linux Anwenderhandbuch, Kapitel 2 (http://www.openoffice.de/linux/buch/debianinstallation.html) 15.4. Gibt es Bücher über Debian GNU/Linux? ------------------------------------------- Ja, eine Suche bei Lehmanns (http://www.lehmanns.de/) ergibt u.a. das hier: _Ganten, Peter H._ Debian GNU/Linux; Grundlagen, Installation, Administration und Anwendung; 2000, 792 Seiten; Springer, Berlin; 3-540-65841-6 _Ganten, Peter H._ Debian GNU/Linux PowerPack; Grundlagen, Installation, Administration und Anwendung; Die komplette offizielle Debian Distribution auf CD; 2000, 792 Seiten; Springer; 3-540-66384-3 _Ronneburg, Frank_ Debian GNU/Linux-Anwenderhandbuch; Lehmanns Sonderausgabe (Originalverlag Addison Wesley); 2001, 600 Seiten; Lehmanns Fachbuchhandlung; 3-931253-73-2 _Ronneburg, Frank_ Debian GNU/Linux-Anwenderhandbuch; Bundle - Buch mit 6 CD-ROMs, Release 2.2; Lehmanns Sonderausgabe (Originalverlag Addison Wesley); 2001, 600 Seiten; Lehmanns Fachbuchhandlung; 3-931253-75-9 15.5. Wo gibt es deutsche Dokumentation über foobar? ---------------------------------------------------- Eventuell hier: * Deutsches Linux HOWTO Projekt (http://www.linuxhaven.de/dlhp/) * http://www.sylence.net/doc/useful-docu.html * http://www.linuxdoc.de/ 15.6. Ich möchte mein Debian System sicherer machen, gibt es empfehlenswerte Doku? ---------------------------------------------------------------------------- * Securing Debian HOWTO (http://www.debian.org/doc/manuals/securing-debian-howto/index.html) * Linux Security HOWTO (http://www.linuxdoc.org/HOWTO/Security-HOWTO.html) * Linux Security Quick Reference Guide (http://www.linuxsecurity.com/docs/QuickRefCard.pdf) * Linux Security Administrator's Guide HTML (http://www.linuxsecurity.com/docs/SecurityAdminGuide/SecurityAdminGuide.html) ASCII (http://www.linuxsecurity.com/docs/SecurityAdminGuide/SecurityAdminGuide.txt) * Linux Administrator's Security Guide (http://www.seifried.org/lasg/) ------------------------------------------------------------------------------- 16. Verschiedenes ----------------- 16.1. Was bedeutet die Abkürzung foobar? (z.B. IMHO, BTW, foobar) ----------------------------------------------------------------- * _IMHO:_ In My Humble Opinion (meiner bescheidenen Meinung nach) * _BTW:_ By The Way (übrigens...) * _IIRC:_ If I Remember Correctly (wenn ich mich richtig erinnere) * _SCNR:_ Sorry, Could Not Resist ('tschuldigung, konnte nicht widerstehen) * _ROTFL:_ Rolling On The Floor Laughing (sich vor Lachen auf dem Boden wälzen) * _foobar:_ Eine Variable für alles mögliche/irgendwas. Du willst noch mehr? Kein Problem, installiere einfach die Debian Pakete `jargon' und `vera': $ jargon AFAIK File: jargon.info, Node: AFAIK, Next: AFJ, Prev: ADVENT, Up: = A = :AFAIK: // /n./ [Usenet] Abbrev. for "As Far As I Know". ------------------------------------------------------------------------------- 17. Veraltete Fragen (Potato etc.) ---------------------------------- 17.1. 2.4er Kernel unter Potato, wie geht das? ---------------------------------------------- Du musst ein paar Pakete upgraden. Du findest sie auf den Seiten von Adrian Bunk (http://people.debian.org/~bunk/debian/). In Deine `/etc/apt/sources.list' kannst Du deb http://people.debian.org/~bunk/debian potato main eintragen. Ansonsten lies bitte die Anleitung von Adrian Bunk (http://www.fs.tum.de/~bunk/kernel-24.html). Dort gibt es auch eine Liste der neuen bzw. aktualisierten Pakete. 17.2. Woher bekomme ich XFree 4.0/4.1 Debian-Pakete für potato? --------------------------------------------------------------- Debian-Pakete von XFree 4.0 und 4.1 gibt es bei Charl P. Botha (http://people.debian.org/~cpbotha/). Hier ist ein Beispiel für Deine `sources.list' (4.1): deb http://people.debian.org/~cpbotha/ xf410_potato/all/ deb http://people.debian.org/~cpbotha/ xf410_potato/i386/ Vorsicht! Diese Pakete sind kein offizieller Bestandteil von Debian und deshalb auch nicht so gut ausgetestet. Wenn Du einen Fehler findest, gehört der Bugreport daher auch nicht ins offizielle Bug Tracking System. Lies bitte die README-Dateien. 17.3. Woher bekomme ich KDE Debian-Pakete für Potato? ----------------------------------------------------- deb http://kde.debian.net potato main crypto optional oder deb ftp://kde.debian.net/pub/kde potato main crypto optional Es gibt aber viele Mirror. Bitte guck Dir die Liste auf den Debian-KDE Seiten (http://kde.debian.net/) an. 17.4. Wie kann ich das '[Debian]' im Subject entfernen? ------------------------------------------------------- Das kann man z.B. mit `procmail', `formail' und `sed' machen. Hier ein Beispiel: :0 * ^X-Mailing-List: { SUBJECT=`formail -xSubject: | \ sed -e 's/\(\[\|=5B\)Debian\(\]\|=5D\)\(:\|=3A\)\?[ _]\?//g'` :0 fw | formail -I"Subject:$SUBJECT" :0: debian-user-de } '[Debian]' wird entfernt und die Mail in `debian-user-de' gespeichert. ------------------------------------------------------------------------------- 18. GNU GENERAL PUBLIC LICENSE ------------------------------ _Preamble_ The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. _TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION_ _0._ This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. _1._ You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. _2._ You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: _a)_ You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. _b)_ You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. _c)_ If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. _3._ You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: _a)_ Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, _b)_ Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, _c)_ Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. _4._ You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. _5._ You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. _6._ Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. _7._ If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. _8._ If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. _9._ The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. _10._ If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. _NO WARRANTY_ _11._ BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. _12._ IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. ------------------------------------------------------------------------------- debian-user-german FAQ Janto Trappe 14 Dezember 2004