Das K Desktop Environment

Kapitel 7. Fragen und Antworten

7.1. Häufig gestellte Fragen

7.1.1. Ich kann Kppp nicht zum laufen bringen. Kppp erzählt mir, dass pppd beendet wurde oder dass eine Zeitüberschreitung eingetreten ist!

Haben Sie dieses Handbuch sorgfältig gelesen? Hier sind nochmal die häufigsten Fallen.

  • Klicken Sie auf den Details-Knopf. Kppp zeigt Ihnen dann einen Auszug aus dem PPP-Log (funktioniert evtl. nicht auf nicht-Linux-System oder sogar mit einigen Distributionen). Diese Meldungen können Ihnen Helfen, den Fehler zu finden.

  • Stellen Sie sicher, dass pppd wirklich das pppd-Programm ist, und kein Skript!

  • Stellen Sie sicher, das pppd mit root-Rechten ausgeführt wird. Sie können das als root mit dem Kommando chmod u+s pppd einstellen.

  • Stellen Sie sicher, das die Datei /etc/ppp/options existiert und keine widersprüchlichen Einträge enthält. Falls Sie sich nicht sicher sind, lassen Sie diese Datei leer.

  • Stellen Sie sicher, dass Sie NICHT den Parameter ``lock'' für pppd angegeben haben (Kppp kümmert sich bereit um die Gerätesperrung)!

  • Entfernen Sie den ``lock''-Parameter aus den Dateien /etc/ppp/options und ˜/.ppprc!

  • Wenn Sie den symbolischen Link /dev/modem benutzen, kann das zu Konflikten führen. Verhindern Sie diese Art Ärger, indem Sie das reale Gerät verwenden, z.B. /dev/cuaX oder /dev/ttySX. Hinweis: COM1 ist ttyS0, COM2 ist ttyS1 usw.

  • Stellen Sie sicher, dass Sie die richtigen Berechtigungen eingestellt haben. Im Fall von Problemen sollten Sie es vielleicht zuerst als root ausführen, und dann, wenn alles gut funktioniert, weniger gefährliche Berechtigungen nehmen, wenn Sie es sich nicht leisten können Kppp mit root-Rechten laufen zu lassen. Die richtige Vorgehensweise wäre vermutlich die Erzeugung einer eigenen ``modem''-Gruppe.

  • Eventuell starten Sie pppd zu früh, z.B. bevor der entfernte Server bereit ist, eine PPP-Verbindung aufzubauen. Wenn Sie ein Login-Skript benutzen, sollten Sie das eingebaute Terminal benutzen, um Ihre Login-Prozedur zu überprüfen. Manche Provider erwarten von Ihnen ein einfaches "Send" oder "Send ppp", um PPP zu starten. Einige Benutzer berichteten, dass Sie "Pause 1" oder "Pause 2" an Ihr Skript anhängen mussten, um Timing-Probleme zu lösen.

Wenn gar nichts hilft, sollten Sie evtl. Debug-Informationen aus Ihrem Systemlog erhalten, indem Sie folgendes eingeben:
 # tail /var/log/messages

7.1.2. Kppp sagt mir ``Tut mir leid, kann auf Modem nicht zugreifen''.

Das bedeutet, dass Kppp keine Berechtigung hat, das Modemgerät zu öffnen, oder dass Sie ein ungültiges Modemgerät auf der Modem-Karteikarte gewählt haben. Stellen Sie zunächst sicher, dass Sie das richtige Modemgerät gewählt haben. Wenn Sie sicher sind, dass dies der Fall ist, müssen Sie Kppp die richtige Berechtigung geben, um auf das Modemgerät zugreifen zu können, und in der Lage zu sein, /etc/resolv.conf zu ändern, im Fall, dass Sie möchten, dass Kppp den DNS richtig für Sie einstellt. Falls Sie in der Lage sind, Kppp als SETUID root auszuführen, würde das alle Zugriffsprobleme für Sie lösen, wenn nicht, müssen Sie herausfinden, was die richtigen Berechtigungen für Ihre Zwecke sind. Um Kppp SETUID root-Berechtigung zu geben, machen Sie Folgendes:

 % su root
 % chown root:root $(KDEDIR)/bin/kppp
 % chmod +s $(KDEDIR)/bin/kppp
 % exit

7.1.3. Kppp sagt mir, dass es keine Modemsperrung erzeugen kann.

In den meisten Fällen bedeutet das, dass Sie Kppp mit gesetztem SETUID-Bit installiert haben, während Sie, die Person, die Kppp ausführt, keine Schreiberechtigung für das Sperrdateiverzeichnis haben, das standardmäßig /var/lock ist. Das ist zum Beispiel der Fall auf RedHat-Systemen. Überprüfen Sie den Modem-Dialog nach der genauen Position der Sperrdatei. Die Lösung ist einfach, entweder Kppp SETUID laufen zu lassen, falls Sie können, oder normalen Benutzern Schreibzugriff auf /var/lock zu gewähren oder eine modem-Gruppe zu erstellen, die Zugriff auf die /var/lock-Datei hat.

7.1.4. Warum wird Kppp mit gesetztem SETUID-Bit installiert?

Das SETUID-Bit muss nicht gesetzt sein, wenn Sie sich ein bisschen mit Unix-Systemadministration auskennen. Erstellen Sie einfach eine Modemgruppe, fügen Sie alle Benutzer, denen Sie Zugriff auf das Modem gewähren wollen, dieser Gruppe hinzu und machen Sie das Modemgerät les- und schreibbar für diese Gruppe. Wenn Sie auch DNS-Konfiguration mit Kppp benutzen wollen, muss /etc/resolv.conf les- und schreibbar von den Mitgliedern dieser Gruppe sein. Das gleiche gilt für /etc/ppp/pap-secrets und /etc/ppp/chap-secrets, wenn Sie die eingebaute PAP- und CHAP-Unterstützung benutzen wollen.

Bitte kritisieren Sie mich nicht dafür, Kppp mit gesetztem SETUID-Bit zu installieren, ich kann einfach nicht länger die Masse an E-Mail behandeln, die ich vorher von verzweifelten Benutzern bekommen habe, die Probleme hatten, Kppp zum laufen zu bringen, weil sie nicht genug über Unix und Geräte-Berechtigungen wussten.

Das Kppp-Team hat in letzter Zeit sehr viel daran gearbeitet, um Kppp SETUID-Sicher zu machen. Aber es liegt an Ihnen, ob und wie Sie es installieren.

Eventuell wollen Sie dazu auch das Kapitel Kppp und die Sicherheit lesen.

7.1.5. Kppp ist einfach da und wartet: ``erwarte OK''

  • Haben Sie an der CR/LF-Einstellung herumgespielt? Probieren Sie CR, LF oder CR/LF.

  • Ihr Modem braucht vielleicht einige Zeit, um auf seine Initialisierung zu antworten. Öffnen Sie den Modembefehle-Dialog auf der Modem-Karteikarte und stellen Sie die Verzögerungen Pre-Init und Post-Init ein. Probieren Sie, ob Sie erfolgreich sind, wenn Sie die Werte drastisch senken und stellen Sie sie dann später genauer ein.

7.1.6. Der Verbindungsaufbau funktioniert gut, aber ich kann keine Programme starten.

Sie haben vielleicht die Option "Konfiguriere Hostname automatisch von dieser IP" aktiviert und der X-Server hat Probleme zum neu eingestellten Hostnamen zu verbinden. Falls Sie diese Option wirklich benötigen (wahrscheinlich eher nicht), müssen Sie auf eigene Faust die nötigen Authorisationen einstellen.

Eingabe von "xhost +" löst das Problem, aber seien Sie gewarnt vor Sicherheitsrisiken, die sich daraus ergeben, da dann jeder Zugang zu Ihrem X-Server hat.

7.1.7. Kppp meldet einen erfolgreichen Verbindungsaufbau, aber Netscape sagt nur "The server does not have a DNS entry"

Versuchen Sie, mit ping einen anderen Server über seine IP-Adresse, zu erreichen, ping 195.0.254.76. Wenn das funktioniert, sollten Sie

  • prüfen, ob Sie mindestens eine DNS-Adresse angegeben haben.

  • den Inhalt von /etc/host.conf prüfen. Es sollte eine Zeile vorhanden sein, in der etwas ähnliches wie order hosts, bind steht. Der bind-Schlüsselbegriff sagt der resolver-Bibliothek, dass sie einen Nameserver einbinden soll, wenn Sie eine Adresse sucht.

7.1.8. Wie bringe ich Kppp dazu, ein \n oder ein \r zu senden?

Schicken Sie einfach eine leere Zeichenfolge, so wie im folgenden Skript:
 Send                   # eine leere Zeichenfolge senden
 Expect      ID:
 Send        itsme
 Expect      word:
 Send        forgot
 Expect      granted
 Send        ppp

7.1.9. Kppp beschwert sich: ``kann keine Modemsperrung erzeugen''

Das bedeutet, dass Sie keine Berechtigung haben, eine Sperrdatei zu erzeugen. Wenn Sie eine Sperrdatei benutzen wollen, müssen Sie Schreibrechte in dem Verzeichnis haben, indem die Datei erzeugt werden soll (typischerweise /var/lock). Das ist natürlich kein Problem, wenn Sie Kppp SETUID-Berechtigung gegeben haben. Lesen Sie bitte den Abschnitt über die Modem-Sperrdatei.

7.1.10. Mein Modem macht beim Wählen großen Lärm!

Klicken Sie auf Einstellungen/Modem Sie können die Lautstärke des Modems hier in drei Schritten einstellen: aus, mittel, groß. Bei den meisten Modems bekommen Sie die gleiche Lautstärke für "mittel" und "groß". Falls das nicht funktioniert, stellen Sie sicher, dass Sie die richtigen Einstellungen in Einstellungen/Modem/Modembefehle eingestellt haben"

7.1.11. Ich habe die Modemlautstärke ausgeschaltet und die Modembefehle überprüft, aber ich höre immer noch Wählgeräusche!

Der Lautstärke-Befehl kann verloren gehen, wenn Ihr Modem nicht mit der Geschwindigkeit zurechtkommt, in der es die Befehle von Kppp erhält. Verringern Sie den Wert der "Post-Init Verzögerung" in Einstellungen/Modem/Modembefehle.

7.1.12. Kppp meldet ungewöhnliche Modemgeschwindigkeiten, wie 115200, 57600 oder ähnliches

Viele Modems melden standardmäßig nur die Geschwindigkeit der seriellen Schnittstelle und nicht die Geschwindigkeit über die Telefonleitung. Sie müssen diese Modem erst so einstellen, dass Sie die wirkliche Datenübertragungsgeschwindigkeit melden (fügen Sie dies dem Init- oder Wählstring bei). Bei vielen Modems ist der Befehl ATW2. Wenn Sie dies dem Wählstring (typischerweise ATD) beifügen wollen, wäre der neue Wählstring ATW2D.

7.1.13. Kppp meldet "Unbekannte Geschwindigkeit"

Neue Modems haben oft komplizierte Verbindungsmeldungen wie "CONNECT LAP.M/V42.bis/115000:RX/31200:TX", und Kppp kann die Nachrichten nicht korrekt behandeln. Schalten Sie Zeige Log-Fenster ein, und Sie werden die Verbindungsgeschwindigkeit sehen. Ich arbeite gerade an einer Lösung dieses Problems, und der Parser ist schon viel besser, aber immer noch nicht perfekt.

7.1.14. Langsame Übertragungsgeschwindigkeiten

Wenn Sie mit der Modemgeschwindigkeit nicht zufrieden sind, stellen Sie sicher, dass die Verbindungsgeschwindigkeit (Einstellungen/Gerät/Geschwindigkeit) auf 57600 oder höher eingestellt ist. Stellen Sie sicher, dass Ihre serielle Schnittstelle höhere Geschwindigkeiten unterstützt. Viele auf i486 basierende Systeme arbeiten nicht korrekt, wenn die Geschwindigkeit auf 115200 eingestellt ist. Wenn Sie einen 8250 UART Chip haben, wird es nicht funktionieren. Wenn Sie einen 16550 oder 16550A haben, sollte es problemlos funktionieren.

Schauen Sie zusätzlich in Ihrem Modem-Handbuch nach Init-Strings, die den Hochgeschwindigkeit-Modus aktivieren.

7.1.15. SEHR langsame Übertragungsgeschwindigkeiten

Wenn die Datenübertragungsrate nur ein paar Byte pro Minute beträgt, sollten Sie Ihre Hardware-Einstellungen überprüfen. Falls Bewegungen der Maus die Datenübertragung beschleunigen, ist das auf jeden Fall ein Hardwareproblem.

Sie erhalten Informationen über Ihre serielle Schnittstelle mit setserial -a /dev/ttySx. Schauen Sie nach Interrupt-Konflikten mit anderen Komponenten Ihres Systems.

7.1.16. Meine Telefonleitung benutzt das Impuls- anstatt das Tonwahlverfahren (oder umgekehrt)

Sie müssen den Modem-Wählstring verändern. Fast alle Modems unterstützen die folgenden AT-Befehle:

  • ATDT - aktiviert das Tonwahlverfahren

  • ATDP - aktiviert das Impulswahlverfahren

7.1.17. Kppp macht sehr komische Dinge (was auch immer)

Haben Sie Kppp oder die Bibliotheken mit gcc-2.8 kompiliert? Diese Version des gcc hat ein paar Fehler und arbeitet nicht wie erwartet.

7.1.18. Wie schreibe ich eine Telefongebühren-Regel?

Sehen Sie sich die TEMPLATE-Regeldatei, die bei Kppp dabei ist, an. Sie sollten eine Kopie davon in $KDEDIR/doc/HTML/en/kppp finden. Benutzen Sie den Kommandozeilen-Parameter -r von Kppp, um die Syntax Ihrer Gebührenregel-Datei zu überprüfen.

7.1.19. Ich habe eine Gebührenregel-Datei für meine Region geschrieben. Wem kann ich sie schicken, so dass auch andere sie nutzen können?

Ich nehme gerne jegliche geschriebene Regeldatei. Ich mache Sie verfügbar auf meiner Kppp- Webseite. Bevor Sie mir eine neue Regeldatei senden, stellen Sie sicher, dass sie nicht bereits auf der Kppp-Webseite verfügbar ist. Dann senden Sie die neue Regeldatei an mich.

7.1.20. Kann meine Telefongebühren-Regeldatei Bruchteile einer Zeiteinheit enthalten, z.B. "(0.17,45.5)"?

Ja, das ist möglich. Aber Sie sollten kein ungewöhnlich kleinen Bruchteile benutzen (unter einer 1/10 Sekunde), da dies in einer höheren CPU-Belastung resultieren würde. (Obwohl ich nicht glaube, dass Sie das bei einer modernen CPU bemerken würden.:-)

7.1.21. Mein Land hat außer Ostern noch einen verschiebbaren Feiertag.

In diesem Fall müssen Sie neuen Code schreiben, der Ihnen die Berechnung dieses Feiertags ermöglicht. Sehen Sie in ruleset.cpp nach und imitieren Sie das ``easter''-Beispiel. Dann senden Sie mir die Patches.