Installationsanweisung für Psion / Linux Verbindung
von Thomas Gaertner
Daß die
Installation der plptools (Psion Link Protocol) bei mir nicht sofort
funktionierte, lag an meinem alten, selbstgebastelten Kernel. Irgendeine
Option fehlte darin. Es ist also auf jeden Fall zu empfehlen, bei der
Installation einen Standardkernel zu verwenden und diesen erst nach erfolgreicher
Installation anzupassen, wenn eine Anpassung überhaupt noch erforderlich
ist.
Als
weiteres Problem stellte sich heraus, daß alle notwendigen Pakete
aus einem RedHat Linux System stammen. Für andere Distributionen
können individuelle Anpassungen erforderlich sein. Meine Installation
basiert auf der SuSE 6.3 Distribution.
Hier nun meine Vorgehensweise ausführlich zum Nachmachen:
Zuerst habe ich mir folgende RedHat RPM Pakete aus dem Internet heruntergeladen:
ftp://rpmfind.net/linux/redhat/redhat-6.0/i386/RedHat/RPMS/chkconfig-1.0.6-1.i386.rpm
ftp://rpmfind.net/linux/redhat/redhat-6.0/i386/RedHat/RPMS/readline-2.2.1-5.i386.rpm
ftp://ftp.to.com/pub/psion/RPMS/plptools-0.6-1.i386.rpm
Die
Pakete habe ich mit Hilfe von kpackage installiert. Bei der Installation
von »readline« wurde eine nicht aufgelöste Abhängigkeit festgestellt.
Nachdem ich mich davon überzeugt hatte, daß install-info
doch existierte, habe ich diesen Fehler ignoriert und die Installation
ohne Abhängigkeitsprüfung fortgesetzt. Alle anderen Abhängigkeiten
sollten mit der SuSE Distribution aufgelöst werden können.
Im
nächsten Schritt habe ich unter SuSE 6.3 einen Standardkernel installiert.
Der vorkonfigurierte Kernel »Pentium optimiert« enthält bis auf ISDN
alles was ein gutes Netzwerksystem ausmacht. Nach dem Neustart folgten
auf die Meldung »Starting Psion Support« Fehlernachrichten, die darauf
schließen ließen, daß das Startscript nicht systemkonform
ist.
Dieses
Script /etc/rc.d/psion ist auf RedHat Linux abgestimmt und muß
auf anderen Distributionen umgeschrieben werden. Für SuSE habe ich
dies anhand des Startscriptes für den Druckerdaemon lpd getan. So
habe ich den RH Befehl daemon durch den äquivalenten SuSE
Befehl startproc ersetzt. Außerdem habe ich die Variable
START_NCPD=yes in die Datei /etc/rc.config eingebaut. In
dieser Systemkonfigurationsdatei legt SuSE fest, welche der Dienste (Daemon)
beim Bootvorgang gestartet werden sollen. Der große Vorteil von
plptools ist die Möglichkeit, die Daemon schon beim Booten
zu starten, ohne daß der Psion bereits angeschlossen sein muß.
Der
Daemon ncpd stellt die Verbindung zum Psion über COM Port
her. Standardmäßig wird /dev/modem als serielle Schnittstelle
verwendet. Das kann zu Konflikten führen, wenn man gleichzeitg ein
Modem angeschlossen hat. Bei mir ist das Device /dev/modem auf
/dev/ttyS1 den 25-poligen COM2 Port gelinkt, da /dev/ttyS0
mein 9-poliger COM Anschluss für den Psion ist. Durch eine Option
beim Aufruf von ncpd kann man den Standard Anschluß ändern:
startproc /usr/sbin/ncpd -s /dev/ttyS0
Der
Daemon plpnfsd mounted dann die Laufwerke des Psion über NFS
in das Filesystem. Standardmäßig wird der Mount Point /mnt/psion
benutzt. Da ich den Mount Point /mnt auch für andere Mounts
verwende, habe ich einen eigenen Mount Point /Psion im Wurzelverzeichnis
erzeugt, um Konflikte auszuschließen. Diesen kann man dann beim
Aufruf des Daemon ebenfalls mitgeben:
startproc /usr/sbin/plpnfsd -d /Psion
Das so modifizierte Startscript für die SuSE Distribution lautet:
#!/bin/sh # # psion Starts ncpd/plpnfsd. # # chkconfig: 2345 30 70 # description: This facility enables connectivity to a Psion series 5. . /etc/rc.config base=${0##*/} link=${base#*[SK][0-9][0-9]} test $link = $base && START_NCPD=yes test "$START_NCPD" = "yes" || exit 0 return=$rc_done case "$1" in start) echo -n "Starting Psion support: " startproc /usr/sbin/ncpd -s /dev/ttyS0 startproc /usr/sbin/plpnfsd -d /Psion sleep 1 echo touch /var/lock/subsys/psion ;; stop) echo -n "Shutting down Psion support: " killproc /usr/sbin/plpnfsd -HUP sleep 10 # allow plpnfsd flushing it's cache killproc /usr/sbin/ncpd echo rm -f /var/lock/subsys/psion ;; restart|reload) $0 stop && $0 start || return=$rc_failed ;; status) checkproc /usr/sbin/plpnfsd && echo OK || echo No proces checkproc /usr/sbin/ncpd && echo OK || echo No proces ;; *) echo "Usage: psion {start|stop|status|restart}" exit 1 esac test "$return" = "$rc_done" || exit 1 exit 0
Ja
und wenn alles richtig gemacht ist, sollten nach dem Neustart keine Fehlermeldungen
mehr erscheinen:
Starting Psion Support:
Nachdem
der Psion am COM Port angeschlossen worden ist und auf dem Psion die Kommunikation
auf »Kabel / 115200« eingestellt ist, nimmt der ncpd Daemon bei
der ersten Anforderung die Verbindung automatisch auf. Die
Laufwerke des Psion erscheinen dann im KDE Filemanager wie folgt:
Die
Daten können dann per Drag und Drop kopiert werden. Eine Konvertierung
der Daten wie unter PsiWin ist nicht möglich. Auch schien mir der
KDE Filemanager noch nicht stabil genug mit dieser NFS Verbindung über
COM Port zu arbeiten. Ich mußte die Daemon des öfteren neu
starten:
#>/sbin/init.d/psion restart
Für
eine komplette Sicherung der Daten auf eine LS120 Diskette oder ein ZIP-Laufwerk
bieten sich die Programme Kbackup und Taper an. Beide Programme
habe ich kurz getestet, sowohl das Backup als auch den Restore.
Eine
weitere, stabilere Methode die Daten zu kopieren ist das Tool plpftp
, bei dem man mit Hilfe von FTP bekannten Befehlen arbeiten kann.
Probleme:
Mir
ist aufgefallen, daß z.B. die SIS Dateien auf der CD ROM des Streetplaners
unter Linux alle schreibgeschützt sind. Das heißt nach dem
Kopieren muß der Schreibschutz auf dem Psion noch aufgehoben werden,
bevor man die SIS Datei installieren kann. Das Problem gab es allerdings
nicht, wenn ich die SIS Dateien mit plpftp kopiert habe.
Schaltet
sich der Psion auf Grund seiner Einstellung automatisch ab, während
der KDE Filemanager gerade eine Operation auf dem Psion Laufwerke ausführt,
so hängt sich der KDE Filemanager auf. Ein Neustart des X Servers
ist meist notwendig.