2. 连接到 PC

在 Linux 下运行您的 PDA 的第一步是将其连接到您的 PC。直到最近,所有 PalmOS 设备都通过串行电缆连接。最新的设备使用 USB,有些还可以通过红外线连接。

另一项发展允许 PDA 物理连接到网络上的一台机器,并与另一台机器远程同步。

2.1. 串行连接

串行连接是目前将您的 PDA 连接到 PC 的最简单方法。只需将底座连接到串行端口,然后在您使用 coldsync 或 pilot-link 套件时引用该端口。串行连接速度较慢,但具有久经考验的优势。它应该适用于任何可使用串行电缆的 Palm OS 设备。串行底座和电缆可作为 Palm PDA 的配件提供,包括那些标配 USB 底座的设备。

为了方便起见,您可能希望创建一个名为/dev/pilot的设备作为到串行端口的链接。 pilot-link 套件默认使用此设备,因此如果链接存在,它将省去您每次调用程序时都必须指定它的麻烦。

要创建链接,请以 root 身份登录并输入以下命令

ln -s /dev/ttyS0 /dev/pilot

替换/dev/ttyS0为您已连接 PDA 的串行端口。设备名称/dev/ttyS0对应于 DOS/Windows 术语中的 COM1,/dev/ttyS1是 COM2,依此类推。

您还需要确保您具有写入串行端口的权限。在独立工作站上,您可以更改权限以允许全局访问该端口。以 root 身份,输入以下命令

chmod a+rw /dev/ttyS0

可以使用组权限实现更高的安全性。将权限设置为组的读/写,并将所需用户添加到组的用户列表中(请参阅man group)。 (TODO:更多细节)。

2.2. Devfs 设备命名

最新的 Linux 发行版可能使用 devfs 进行设备命名。在这种情况下/dev/ttyS0可能不存在,或者可能是指向/dev/tts/0的符号链接。这是 2.4 内核引入的新命名方案。只需替换所有对/dev/ttyS0的引用为/dev/tts/0.

如果您将符号链接与 devfs 一起使用,您可能会发现链接在您重新启动后无法正确持久存在。/etc/devfsd.conf文件控制着到动态创建设备的符号链接的创建。

与往常一样,操作在不同的发行版下似乎设置不同。

2.3. USB 连接

通过 USB 访问 Palm 设备是相对较新的。 Handspring Visor 似乎得到了很好的支持,并且可以与 pilot-link 套件一起使用。目前,Palm m500 系列仅适用于 coldsync,尽管 pilot-link 支持正在积极开发中。 更新: pilot-link 的当前开发版本 0.10.x 已经支持 USB 设备。有关此版本的更多信息,请参阅 pilot-link 部分。

要在 Linux 下使用任何 USB 设备,您需要在内核中启用 USB 支持。您还需要提供相关的模块。大多数(TODO:检查哪些发行版开箱即用)最新的 Linux 发行版默认都启用了 USB 支持。要检查您的系统,请以 root 身份尝试以下命令

modprobe visor

如果您从此命令没有获得任何输出,则表示该模块可用,您无需重新编译内核。如果这不起作用,请尝试备用 usbserial 模块

modprobe usbserial

某些发行版(例如 Redhat 7.0)使用此模块。

如果您需要在内核中设置 USB 支持,Handspring Visor with Linux mini-HOWTO 提供了说明。 (TODO:合并到此 HOWTO 中?)

设置 USB 支持后,您应该使用设备/dev/ttyUSB1与您的 PDA 通信。请注意,此设备名称仅在您按下底座上的热同步按钮之后才存在。您必须在运行连接软件之前按下按钮。

如果您通过 USB 同步时遇到问题,请尝试更新的内核。USB 驱动程序可能存在一些时序问题。例如,我发现 stock Mandrake 8.1 在一台 PC 上无法工作,但在速度更快的 PC 上首次工作。升级到 stock 2.4.17 内核解决了问题,并且在两台 PC 上都能正常工作。

2.4. IR 连接

最新的 Palm 设备具有红外 (IrDA) 端口。如果您拥有其中之一以及带有红外端口的 PC,则可以通过 IrDA 同步并完全摆脱电缆。

David A. Desrosiers 撰写了一篇关于该主题的综合 HOWTO。 (TODO:内联包含此内容?)

2.5. 网络连接

可以将您的 PDA 物理连接到一台 PC,并将其与网络上其他地方的另一台 PC 同步。如果您需要与您无法物理连接 PDA 的 PC 同步,这可能是一个有用的功能。

David A. Desrosiers 再次撰写了一篇(不太全面的)关于该主题的 HOWTO。 (TODO:内联包含此内容?不确定此方法的价值 - 有人愿意评论吗?)