Im folgenden möchte ich beschreiben, wie man einen palm-pilot an einem Linux-Rechner per serieller Verbindung zur Nutzung aller gängigen Internetdienste betreibt. Zu Thema Datensynchronisation gibt es das Paket "plink" in der SuSE-Serie "ap1". Diese Programmsammlung hat bei mir recht problemlos funktioniert, um Daten zu sichern, Programme auf dem Palm zu installieren etc.
Palm IIIe mit original "cradle"
"uralt" Toshiba-Laptop mit 486DX-33 und 20 MB ram
bzw. PC mit IBM M2MX200 und 32 MB ram
der serielle Stecker der Palm-Anschlußstation wird an die normale serielle Schnittstelle
angeschlossen. Dabei muss aber - falls gewünscht - der Anschluß der Maus beachtet
werden.
Rein theoretisch nichts weiter, das tcp/ip Protokoll und ppp sind im PalmOS (hier V3.3) schon vorhanden. Zum Nutzen der Verbindung benötigt man aber natürlich noch Anwendungen. Dazu später mehr.
Ich habe getestet:
SuSE-Linux 5.3 mit kernel 2.0.35 und pppd 2.2.0
SuSE-Linux 6.4 mit kernel 2.2.14 und pppd 2.3.11
Unter Einstellen/Serial/IR stellen wir auf "Cradle" - obwohl das glaube ich nicht wichtig ist.
Unter Einstellen/Verbindung erstelle ich eine neue Verbindung "seriell 38,4". Diese bearbeiten wir und stellen auf Verbindungstyp "Seriell an PC". Unter Details wird die Geschwindigkeit - hier mal 38400 - eingestellt. Flußkontrolle automatisch.
Nun zu Einstellen/Netzwerk. Aus Sicherheitsgründen kopieren wir den vorhandenen Dienst "unix". Ich habe den neuen Dienst "laptop" getauft. Zum Benutzernamen kommen wir später. Erstmal freilassen. Ebenso Kennwort. Bei Verbindung selektieren wir die soeben Konfigurierte "seriell 38,4". Unter Details wird als Verbindungstyp PPP ausgwählt, Zeitabschaltung aus. DNS und IP-Adresse Häckchen aktivieren. Dann klicken wir auf Script, tippen die erste Zeile "warten" an und wählen aus der Liste "ende" aus. Damit verschwindet die gesamte Script-Liste. Dies sollte vorerst genuegen.
mein Linux-Laptop hört auf die (private) IP 192.168.168.2 der Palm bekommt die IP 192.168.168.4 - dies muss in /etc/hosts eingetragen sein.
An welcher seriellen Schnittstelle hängt unser Palm? Bei mir ist es die erste, also COM1 unter DOS, unter Linux heißt diese /dev/ttyS0, die zweite dann logischerweise /dev/ttyS1 usw.
Wir benotigen eine options-Datei fuer den pppd. Bei SuSE liegt diese unter
/etc/ppp. Vorsicht: bei sämtlichen gängigen Modem, ISDN und DSL-Verbindungen
wird die options-Datei benutzt, sie ist für den Betrieb von allen ppp-Verbindungen
noetig. Man kann aber Dateien fuer die unterschiedlichen Schnittstellen anlegen
also options.ttyS0 oder z.B. options.ippp1. Dann stehen in diesen Dateien Parameter
nur fuer die jeweilige Schnittstelle und in options die default-Werte, die für
alle gelten.
Also legen wir erstmal eine Sicherheitskopie an: cp /etc/ppp/options /etc/ppp/options.save
Nun editieren wir /etc/ppp/options. Ich benutze fuer derartige Dinge den mc.
In unserer Datei könnte für den ersten, einfachsten Versuch ohne Passwortabfrage
folgendes stehen (- die kommentare nur als hilfe):
## begin /etc/ppp/options lock # schnittstelle wird blockiert
/dev/ttyS0 # das ist die o.g. serielle Schnittstelle
38400 # geschwindigkeit
local # direkte kabelverbindung ohne modem
:192.168.168.4 # ip-adresse für den Palm, doppelpunkt ist wichtig
debug # schreibt viele infos in /var/log/messages
## end /etc/ppp/options
Desweiteren brauchen wir die Datei pap-secrets im gleichen Verzeichnis wie
options. Diese Datei muss nicht zwingend sicherheitskopiert werden, auch wenn
das an sich keine schlechte Idee ist.
Wir erstellen eine Zeile * * "" in dieser Datei.
Nun können wir als root mit pppd -detach den ppp-Dämon starten. Die Option dahinter sorgt dafür, das sich der Dämon nicht in den Hintergrund verabschiedet, sodaß man ihn bei Bedarf mit Crtl+C beenden kann. Am Palm drücken wir unter Einstellen/Netzwerk auf "verbinden".
Tip: wenn das folgende Fenster "meldet an" erscheint, sorgt ein Druck auf Cursor nach unten (die Wippe am Palm) für genauere Hinweise, was gerade passiert. Aber im Idealfall sollte nach max. 10 sec kurz "hergestellt" erscheinen und die Verbindung bestehen. Eine bestehende Verbindung erkennt man an einem kleinen senkrechten Strich, der am oberen rechten Display-Rand des Palm blinkt.
Im logfile /var/log/messages sollten ein paar Zeilen erschienen sein, als letztes die Bestätigung der beiden IP-Adressen.
Wenn das so funktioniert empfiehlt es sich, den Zugang mit einem Login abzusichern. Außerdem ist es sicherlich lästig, jedesmal den pppd von Hand zu starten. Als erstes erweitern wir die options Datei des pppd.
## begin /etc/ppp/options (neuere pppd - Versionen siehe dns-zeile!)
lock
/dev/ttyS0
38400 # geschwindigkeit
local
auth # clients müssen sich anmelden
+pap # dabei muss pap benutzt werden
login # die nutzernamen und paßwörter werden mit der linux-system-passwortdatenbank
verglichen
:192.168.168.4
dns-addr=(dns-ip) # in neuen pppd-versionen heißt diese option ms-dns!!
silent # wartet still auf eingehende verbindungen
persist # wenn die verbindung getrennt wird, bleibt der pppd weiter aktiv
#debug # wenn etwas nicht geht, die raute weg, dann in /var/log/messages nachschauen
## end /etc/ppp/options
Außerdem kann man natürlich eine höhere Geschwindigkeit als 38400 wählen. Nur empfiehlt es sich anfangs mit der Niedrigeren zu testen, da es mit 115200 wohl eher zu Problemen kommen kann. Einfach überall anstelle 38400 115200 angeben und schauen, ob es noch läuft - bei mir jedenfalls problemlos.
folgende Fehlerquellen fallen mir ein, unabhängig von der Reihenfolge
Palm bleibt beim Verbindungsaufbau hängen. Die "nach unten - Wippe" drücken, um zu sehen, wobei er stehen bleibt. Wenn z.B. dort steht: "wartet..." ist wahrscheinlich das Verbindungsscript noch aktiv. Wir benötigen aber kein Scriup auf dem palm, die Authentifizierung funktioniert "von allein".
Firewall blockt Pakete ab. Da der palm über ein Netzwerkinterface am Linux-Rechner hängt, wird eine Firewall höchstwahrscheinlich auch den Paketverkehr auf diesem Interface behindern. Falls also eine Verbindung nicht läuft, sollte man einen Blick in /var/log/firewall werfen, ob Pakete vom palm-Interface (ppp0) abgewiesen werden (DENY)
palm-Organizer von 3com
SuSE-Linux
palm-Client Software, die bei mir läuft:
TGssh 1.3 beta
- Supergenial, endlich habe ich auch einen SSH-Client gefunden!
pTelnet 0.6 - ein Telnet-Client
palmVNC
1.4 - ein VNC-Viewer
für den Palm - geniale Idee, nur leider habe ich häufig Verbindungsabbrüche,
und auf Dauer nervt es doch...
MultiMail 1.0 - IMAP
und POP3 - Client; das im PalmOS vorhandene "mail" kann nicht direkt
mit Mailservern arbeiten!
PalmScape
5.0 - WWW Browser, recht putzig sieht das schon aus...
WAPman 1.73 - WAP-Browser,
stellt aber auch html-Seiten dar.
Viel Spaß!
Christian Güssmer 2000-04