Noch vor weg, ich bin ein leidenschaftlicher Friggler. 😉
Flo hat das Problem, dass der NetworkManager seine UMTS Karte nicht akzeptiert. Auch hat der NetworkManager das Problem, dass er die UMTS Empfangstärke nicht anzeigen kann. Es gibt nun den umtsmon eine sehr geniale GUI für ppp.
Natürlich geht es mit wvdail wie ich schon berichtete.
Das Ziel ist nun:
- WLAN und LAN über NetworkManager (geht out off the box, nur sollte dies so bleiben)
- UMTSmon geht als nicht root und danach sollte auch DNS
- Die tägliche Benutzung beschränkt sich auf:
- WLAN Key eingeben/freischalten (geht weiterhin)
- UMTSmon starten PIN eingeben und verbinden
- Dabei ist noch wichtig, dass Tools wie der Firefox nicht denken sie wären offline.
Okay eine Aufgabe die mich nicht so schnell los ließ, aber kommt Zeit kommt Rat oder in meinem Fall die Idee.
Ich weiß nicht recht wo ich beginnen soll, also beschreibe ich erstmal die Probleme:
- Der UMTSMon benötigt ein grafisches “su”
- Der NetworkManager überschreibt immer die /etc/resolv.conf
- Das UMTS Modem ist unter /dev/ttyACM0 und somit nur von root oder den Usern der Gruppe uucp nutzbar.
NC10
[root@netbook ~]# ll /dev/ttyACM0
crw-rw—- 1 root uucp 166, 0 21. Jan 17:41 /dev/ttyACM0
eeepc901go:
[root@eeepc ~]# ll /dev/ttyUSB0
crw-rw—- 1 root uucp 188, 0 21. Jan 18:33 ttyUSB0
zu den Lösungen:
Zu 3.:
Ich beginne mit dem leichtesten also den dritten:
Ich habe es gelöst in dem ich alle User in die Gruppe “uucp” hinzugefügt habe:
usermod -a -G uucp $USERNAME
wichtig ist das “-a” da sonst alle vorherigen Gruppen gelöscht werden und er user nur noch in uucp ist.
Sehr wichtig ist das ab und anmelden, da sowas von Xserver bei der Anmeldung geerbt wird und dieser das an alle Programme weiter gibt. Aber das ist bei jedem Betriebssystem so. Ohne wird die neue Gruppenzugehörigkeit nicht wirksam. Wer es überprüfen will nutze einfach “id” dort sollte als sekundäre Gruppe auch “uucp” auftauchen.
Zu 2.:
Hier muss ich etwas weiter ausholen, da es noch User gibt die nicht wie hier beschrieben, SELinux ausgeschalten und/oder deinstalliert haben.
Also das Problem 2 lässt sich leichter lösen als gedacht. Zum Verständnis noch mal die Abläufe nur auf den Bezug DNS bzw. /etc/resolv.conf:
- NetworkManager
- beim start ersetzen der /etc/resolv.conf mit einem leeren dummy
- beim verbinden mit irgendeinem Netz, wird erst eine /etc/resolv.conf.tmp angelegt und diese ersetzt dann per move die /etc/resolv.conf (laut Fehler ins SELinux)
darin befinden sich die per DHCP empfangenen DNS Daten.
- UMTSmon
- ändert bis zum klicken auf verbinden garnix
- beim verbinden und wenn im Profil “use external DNS” aktiviert ist, legt der vom umtsmon gestartete ppp (noch bekannt aus Modem Zeiten) eine Datei /var/run/ppp/resolve.conf an.
- die /etc/resolv.conf bleibt dabei unangetastet, was jede DNS Auflösung verhindert.
Firefox und Co. haben die letzte bzw. Homepage Seite noch gecacht, aber jeder weitere Klick endet in einer Fehlerseite.
- nscd
- NameService Caching Deamon eigentlich im mobilen Internet keine dumme Erfindung,. muss hier eher beendet oder nach dem eigentlichen Verbinden neu gestartet werden.
- Dieser Dienst arbeite so, dass er DNS und andere Anfragen speichert und bei Bedarf aus dem Cache versorgt. Deshalb sind weniger DNS Anfragen notwendig => weniger Bandbreitenverbrauch => schnelleres Internet. 😉
- Ich habe ihn laufen, aber das ist Geschmackssache. Wer ihn will, der denke nach dem Verbinden an den “service nscd restart”.
Wie also sieht die Lösung aus? EInfacher als ich mir denken konnte, den auch ich musste per RTFM auf “man ppp” hingewiesen werden. Also da der ppp die DNS Daten des Providers in die /var/run/ppp/resolv.conf schreibt, machen wir einen Link:
ln -s /etc/resolv.conf /var/run/ppp/resolv.conf
für die mit SELinux (also die Sicherheitsbewußten):
restorecon -vF /etc/resolv.conf /var/run/ppp/resolv.conf
Als Ergebnis überschreibt der Service, der gerade mit Verbinden beauftragt ist diese Datei. Man sollten beides nicht unbedingt gleichzeitig testen, aber wer will schon UMTS und WLAN gleichzeitig? 😀
zu 1:
Zum schwersten und letzten Thema:
Dazu muss man wissen, dass Fedora kein grafisches su mehr benötigt, weil es das PolicyKit hat. Das wiederum kennt umtsmon nicht. Also das einzige su das noch für F10 zu finden war ist das kdesu aus kdebase3-3.5.10-2.fc10.i386.
Wenn das installiert ist, kann man umtsmon als user starten (siehe ändern der Gruppen oben) und ein “reparieren” mit anschließend eingegebenen root Passwort behebt die letzten Unebenheiten. Sollte er noch nach “pcmciactl” fragen einfach “ignorieren”. Danach sollte beim ersten Start des umtsmons nach dem booten oder dem suspend die Pin abgefragt werden.
Ein Klick auf Verbinden und “bin ich schon drin?”
Bleibt das letzte Ziel mit den tools die denken der Rechner wäre offline, dazu gibt es folgende Abhilfe. Aber hier zickt danach der NetworkManager, also weiter nach Lösung(en) suchen.
update:
Im Profil von umtsmon bitte “noauth” deaktivieren, dass darf wirklich nur root. Bei Eplus geht die Authentifikation mit eplus und internet, für alle anderen Tante Google fragen.
Alle Ziele erreicht, viel Spass mit dem mobilen Internet. 😉
Neues Problem gefunden… Scheinbar stützt sich nicht nur der FF auf den Offline-ConnectionManager sondern auch Pidgin.