Palm
本指南旨在帮助 Arch 用户解决 2011 年前制造的 Palm OS 设备。请勿将其与 2018 年后制造的 Palm 品牌设备混淆,它们与原始 Palm 设备无关。虽然在 Arch 中安装很简单,但对于新手来说可能会感到困惑。
安装
您需要安装各种个人信息管理(PIM)软件套件之一。
- J-Pilot — Palm Pilot 的桌面组织软件。
- KDE PIM — 一套用于管理个人信息的应用程序。
查找您的设备
您可以通过两种方式同步,一种是使用 libusb(推荐),另一种是访问 ttyUSB*/ttyS*。
检查硬件
如果您有 USB 连接,可以使用 lsusb 进行测试,它会列出所有连接到端口的设备。
如果您的设备未显示,它可能是那些仅在实际传输时才“出现”在系统上的 Palm Pilot(如 Zire 71)。在这种情况下,请按下底座上的传输按钮或从 Palm 菜单中选择“Hotsync”,然后再次键入 lsusb,您应该会看到类似以下的显示。
$ lsusb
Bus 002 Device 001: ID 0000:0000 Bus 005 Device 001: ID 0000:0000 Bus 003 Device 003: ID 055f:0006 Mustek Systems, Inc. ScanExpress 1200 UB Bus 003 Device 002: ID 04e8:3242 Samsung Electronics Co., Ltd Bus 003 Device 001: ID 0000:0000 Bus 004 Device 001: ID 0000:0000 Bus 001 Device 005: ID 0830:0060 Palm, Inc. Palm Tungsten T / Zire 71 Bus 001 Device 004: ID 06d6:0025 Aashima Technology B.V. Bus 001 Device 001: ID 0000:0000
然后取消 Palm 上的 Hotsync。
如果您有串行 Zire,可以通过将 Palm 置于 hotsync 模式并键入 cat </dev/ttyS0 来测试,这应该会显示一串不可读的字符。
测试网络连接很困难;最简单的方法是查看您的 Palm 是否与您的计算机连接到同一个 WiFi 系统。
基于 tty* 的同步
现在,将您的设备插入底座,然后插入计算机(例如 Palm T3),或直接使用 USB 数据线(例如 Tungsten E、TX),然后尝试 hotsync。
运行 dmesg,最后几行将与您的 palm 相关。对于熟悉 Arch 的用户,您知道要查找什么。对于其他人,请查找任何后面带有数字的文本,例如 sr0、sg0。请记下这些,您可能需要也可能不需要它们。
查看示例输出
usb 3-2: Handspring Visor / Palm OS converter now attached to ttyUSB0 usb 3-2: Handspring Visor / Palm OS converter now attached to ttyUSB1
/dev/ 中应该有一个名为“palm”或“pilot”的项目。同样,请记下列出的项目。
基于 libusb 的同步
默认情况下,J-Pilot 使用 usb: 伪设备,请勿更改它。
此设置利用了 /dev/bus/usb/ 文件系统。如果您的用户属于拥有此文件系统中*文件*的组,那么您只需要进行此配置。
只需在 J-Pilot 中按 Sync 按钮,然后在您的 Palm 上进行 hotsync。
最麻烦的 Palm T|X 每次都能成功。
设置软件
打开设置菜单。在 JPilot 中,它是 File > Preferences > Settings。在 KPilot 或 Kontact 中,它是 Settings > Configure KPilot > Device。
设备设置应为 /dev/palm 或 /dev/pilot,如上所述。
接下来,在 JPilot 中转到 File > Install User 并输入您的 palm 上的用户名。在 KPilot 中,只需在 Device 区域设置 Pilot User。
现在,首先在您的 palm 上启动 hotsync,然后单击 JPilot 或 KPilot 中的 hotsync 按钮。如果一切顺利,它将连接并开始同步。这将很快,因为它只处理联系人、地址等标准内容。标准的 Jpilot 中没有像 Documents-To-Go 这样的特殊 conduits,所以要么在互联网上找到它们(如果存在),要么自己制作。
接下来,做同样的事情,但单击下面的按钮进行备份。首次运行时,这将花费很长时间,但非常值得。
就是这样!您已成功在 Arch Linux 上设置了您的 palm 设备。
通过蓝牙进行 Hotsync
Palm 设备带有内置的网络功能以及蓝牙。如果您也拥有笔记本电脑,或有 USB 蓝牙适配器,那么通过蓝牙同步虽然速度较慢,但可能比随身携带同步线更方便。
首先,当然,您必须设置好蓝牙。Bluetooth 提供了 Arch 上的相关指南,目前内容很短,但我按照它没有遇到问题。当然,您也可以在论坛上寻求帮助。
接下来是实际的同步设置。基本上,这包括设置一个小的蓝牙连接局域网。我是按照 [2] 中的指南完成的,该指南的作者遵循了 [3] 中的指南。总之,进入实际信息。
首先我们需要配对 Palm 和您的 PC。如果您使用的是 Bluez,则使用 blueman-manager 搜索您的 Palm(确保蓝牙已开启且未隐藏),然后配对(按钮标为“bond”,不知何故)。您需要输入一个验证密钥。或者,从 Palm 端搜索您 PC 的蓝牙并将其设置为受信任设备。
接下来,在您的 Palm 上,转到 Preferences->Connection 并创建一个新连接,命名为“Laptop Bluetooth”或您喜欢的任何名称,将其设置为通过蓝牙连接到 PC,然后从下方列表中选择您的 PC。接下来,您必须实际设置网络,通过 Preferences->Network,创建一个新网络,再次命名为任意名称(我使用“Linux”),选择您刚刚创建的连接,并将用户名和密码留空(您也可以在这里填写一些内容,但需要相应地更改后续步骤)。
要设置您的 PC,首先创建文件 /etc/ppp/peers/dun,包含以下内容:
115200 10.0.1.8:10.0.1.40 local ms-dns <enter your dns server address here> noauth debug
以 root 身份编辑文件 /etc/ppp/pap-secrets,并添加以下行:
mylogin * mypassword *
在终端中,以 root 身份运行 dund(如果您未以 root 登录,则在前面加上 sudo)。您需要确保此时蓝牙守护程序已启动。
dund --nodetach --listen --persist --msdun call dun
在您的 Palm 上,单击 Preferences->Networking 下的“Connect”按钮。在终端中,应该会开始滚动一些文本,指示新的连接、使用的通道以及各种数据包的发送和接收。此时,您的连接已正常工作。
对于 Hotsync 特定设置,在您的 Palm 上导航到“Hotsync”,选择“Modem”而不是“local”。转到菜单,并更改以下首选项:
Modem Sync Preferences -> set Network instead of Direct to modem LANSync Preferences -> set LANSync instead of Local HotSync Primary PC Setup -> Set the Primary PC Name and Address to 10.0.1.8, according to the settings previously in /etc/ppp/peers/dun Connection Setup -> select the connection you previously created (Laptop Bluetooth, for example)
在 Hotsync 按钮下,如果之前分配给您网络的名称未显示(在此示例中为“Linux”),请选择该区域,它应该会自动显示“Linux”。现在您已准备好进行 HotSync。确保 dund 正在运行,使用 net:any 接口运行您喜欢的同步程序(我使用 JPilot,在 File->Preferences->Settings->Serial Port 中选择“other”并指定“net:any”),然后单击 Palm 上的 HotSync 图标。享受无线同步。
Palm T|X
除了 USB 和蓝牙,Palm T|X 型号还包含以太网连接。要使用直接以太网连接通过 jpilotAUR 同步设备,只需在 *Preferences* 对话框中将串行设备设置为 net:any,然后进行 hotsync。在 Palm 上,您需要选择运行 jpilotAUR 的计算机的名称/IP 地址,然后启动 hotsync。享受高速无线 hotsync。
Palm Centro
visor 模块目前不适用于 Palm Centro。它也不是必需的,因为较新软件通过 libusb 访问 Centro。要使 Palm 在 Arch 下工作,请将 visor 模块列入黑名单。您可能需要重新启动才能使此更改生效。
当 udev 为 Centro 创建设备节点时,它默认将其所有者和组分配给 root。您需要创建一个非 root 组供 udev 使用此设备,并确保您是该组的成员。
# groupadd palm # usermod -a -G palm username
您需要注销并重新登录才能使新的组分配生效。之后,当您运行 groups 命令时,应该会在组列表中看到 palm。
现在您需要告诉 udev 如何在连接 Centro 时将其分配给 palm 组。创建以下文件:
/etc/udev/rules.d/55-palm-centro.rules
ACTION=="add", SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", \
ATTR{idVendor}=="0830", ATTR{idProduct}=="0061", \
NAME="bus/usb/$env{BUSNUM}/$env{DEVNUM}", MODE="0664", GROUP="palm"
现在插入设备。验证是否已添加一个组为 palm 的设备。
$ find /dev -group palm
设备名称并不重要,因为 libusb 在需要时会找到它。
要同步设备,如果您使用 jpilotAUR,只需在首选项中指定 usb: 作为串行端口。
故障排除
如果您收到类似权限不足的消息,您可能需要将您的用户添加到具有适当权限的组中。这可能是“usb”或“uucp”。
# gpasswd -a username usb
或者
# gpasswd -a username uucp
另外,您的软件可能难以找到设备。
$ ls -l /dev/pilot
或者
$ ls -l /dev/palm
可以帮助您发现设备的另一个名称。输出可能看起来像这样:
lrwxrwxrwx 1 root root 8 2002-01-03 16:13 /dev/pilot -> tts/USB1
现在将设备设置(如上)更改为 /dev/tts/USB1 或 /dev/tts/USB0。