moxa NPort 5100 Linux real tty驱动安装
翻译自驱动自带redme.txt文件
驱动地址:NPort 5100 系列 - 通用设备联网服务器 | Moxa
========================================================================
MOXA Linux Real TTY 驱动程序
README 文件
日期:2024-04-07
版权所有 (C) 2004, MOXA Inc. 保留所有权利。
========================================================================
内容
1. 简介
2. 操作系统支持
3. 系统要求
4. 操作步骤
5. 硬件安装
6. 安装驱动文件
7. 映射 TTY 端口
8. 安全真实 COM 模式设置
9. 移除映射的 TTY 端口
10. TTY 命名规则
11. 移除驱动程序
12. 修改"npreal2d.cf"
13. 修改初始化脚本
14. 启用后台轮询功能
15. 故障排除
16. 限制
17. 技术支持
------------------------------------------------------------------------
1. 简介
此驱动程序的目的是将 NPort 串口映射到主机 tty
端口。使用这个驱动程序,你可以将 NPort 串口用作本地端口
串口端口。
真实 TTY 仅支持通过构建内核模块进行安装。用户
应该熟悉 Linux 内核。对于发行版用户,
需要内核源代码、头文件或镜像,它们通常是
由分发网站提供。用户可参考分发
手册来准备构建内核模块。
2. 操作系统支持
该驱动程序可在以下系统上运行。
a. 主要的 Linux 发行版(内核 3.0 或更高版本)
(支持 IPV4 和 IPV6)
发布时测试了以下发行版。
a. Centos 7.6 x64 (3.10.0)
b. Fedora 18 x64 (3.6.10-4)
c. SUSE 13.1 x86 (3.11.6-4)
d. Centos 7.4 x64 (3.10.0)
e. Ubuntu 12.10 x86 (3.5.0-17)
f. Debian 7.8.0 x64 (3.2.0)
g. Fedora 21 x86 (3.17.4-301)
h. Ubuntu 14.04 x64 (3.13.0)
i. Ubuntu 11.0 x86 (3.0.0)
j. SUSE 12.1 x86 (3.1.0)
k. Fedora 19 x64 (3.9.5)
l. SUSE 12.3 x86 (3.7.10)
3. 系统需求
要安装此驱动程序,您需要 NPort Server 和其中一个
遵循该系统。
- 内核 3.0 或更高版本以及内核源代码包
- gcc-2.7.2.1 或更高版本
- ld.so-1.7.14 或更高版本
- libc.so-5 或更高版本
- binutils-2.7.0 或更高版本
- make-3.74 或更高版本
- gunzip-1.2.4 或更高版本
- gawk-3.1.1.9 或更高版本
- openssl-1.0.0 或更高版本(仅适用于安全真实 COM 模式)
- libssl-dev-1.0.0 或更高版本(仅适用于安全真实 COM 模式)
4. 程序
要将 NPort 串口映射到主机 tty 端口,您需要:
1. 设置 NPort。
确保 IP 配置正确,并且您可以访问
NPort(ping、telnet 等)成功并配置
将 NPort 串口设置为真实 COM 模式。
2. 将驱动文件安装到主机。
详细信息请参考下文“6. 安装驱动文件”。
3. 将 NPort 串口映射到主机的 tty 端口。
详细信息请参阅下文“7. 映射 TTY 端口”。
5. 硬件安装
在进行软件安装之前,请确保您
已经完成了硬件安装,正如描述中所说,
本手册的早期章节。
NPort 服务器默认的 IP 地址是 192.168.127.254。
对于 NPort 无线系列,以太网的默认 IP 地址
接口是 192.168.126.254,无线局域网的默认 IP 地址是
192.168.127.254。
!!!!!!!!!!!!!!!!!!!!!!!!!!!! 注意 !!!!!!!!!!!!!!!!!!!!!!!!!!!!
安装硬件后,你必须配置
NPort 工作模式切换至真实 COM 模式。如果您想
与安全通信,请启用安全模式
在 NPort 和 Real TTY 配置中都适用。
!!!!!!!!!!!!!!!!!!!!!!!!!!!! 注意 !!!!!!!!!!!!!!!!!!!!!!!!!!!!
6. 安装驱动文件
a. 从网站的产品页面复制驱动文件。
b. 以超级用户(root)身份登录控制台。
c. 执行"cd "命令切换到 home 目录。
d. 将驱动文件 npreal2xx.tgz 复制到主目录。
e. 执行 "tar xvfz npreal2xx.tgz" 将所有文件复制到系统中。
f. 切换到 moxa 目录。
# cd moxa
g. 执行 "./mxinst"
!!!!!!!!!!!!!!!!!!!!!!!!!!!! 注意 1 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!
对于 Red Hat AS/ES/WS 和 Fedora Core1,需要额外的参数:
# ./mxinst SP1
!!!!!!!!!!!!!!!!!!!!!!!!!!!! 注意事项 1 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!! 注意事项 2 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!
如果你使用 64 位环境中的驱动程序,你可以使用额外的
参数 m64、SP1_m64 或 mppc64。(SP1_m64 是用于 Red Hat
AS/ES/WS 和 Fedora Core1 64 位环境;The mppc64
仅适用于 PowerPC64。)例如。
# ./mxinst m64
!!!!!!!!!!!!!!!!!!!!!!!!!!!! 注意 2 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!
h. 命令行脚本将自动安装驱动程序文件。
安装驱动程序后,您将能够在 "/usr/lib/npreal2/driver" 文件夹中看到几个
文件,包括:
- mxaddsvr (添加服务器,映射 tty 端口)
- mxsetsec (设置安全通信模式)
- mxdelsvr (删除服务器,解除映射 tty 端口)
- mxloadsvr (重新加载服务器)
- mxuninst (移除 tty 端口和驱动文件)
此时,您将准备好将 NPort 串口映射到
系统 TTY 端口。详细内容请参见下文“7. 映射 TTY 端口”。
说明。
7. 映射 TTY 端口
7.1 真实 COM 模式
在映射 tty 端口之前,你必须将你的
NPort 设置为真实 COM 模式。我们提供两种映射 tty 端口的方法。
a. 自动映射 tty 端口
以超级用户登录后,进入目录
"/usr/lib/npreal2/driver" 然后执行 "mxaddsvr" 来映射
将目标 NPort 串口连接到主机的 tty 端口。
"mxaddsvr"的语法是:
mxaddsvr [NPort IP 地址] [总端口] ([数据端口] [命令端口])
示例 1:
# cd /usr/lib/npreal2/driver
# ./mxaddsvr 192.168.3.4 16
示例 2:
# cd /usr/lib/npreal2/driver
# ./mxaddsvr 192.168.3.4 16 4001 966
在示例 1 中,将添加 16 个 tty 端口,所有端口都使用 IP 地址 192.168.3.4,
但数据端口等于(950, 951, ..., 965),命令端口
等于(966, 967, 968, ..., 981)。
在示例 2 中,将添加 16 个 tty 端口,所有端口 IP 为 192.168.3.4,
但数据端口等于(4001, 4002, ..., 4016),命令
端口等于(966, 967, 968, ..., 981)。
b. 手动映射 tty 端口
进入目录"/usr/lib/npreal2/driver"后,可以修改
"npreal2d.cf"以将 NPort 串行端口映射到 tty 端口,然后执行
"mxloadsvr" 来激活修改。
将执行以下任务:
- 修改 npreal2d.cf
- 在目录 "/dev" 中创建带有主设备号和次设备号的 tty 端口
配置在 "npreal2d.cf" 中
- 停止然后重新启动驱动程序。
7.2 冗余 COM 模式
在映射 tty 端口之前,你必须设置你的操作模式。
将 NPORT 切换到冗余 COM 模式,并确保您的设备是 CN2600
系列。
我们提供一个新的命令,用于将 tty 端口映射为冗余 COM 模式。
a. 映射 tty 端口
mxaddsvr -r [NPort IP1 地址] [NPort IP2 地址] [总端口数]
示例 :
# cd /usr/lib/npreal2/driver
# ./mxaddsvr -r 192.168.32.134 192.168.126.123 16
在示例中,将添加 16 个 tty 端口,所有端口都为
IP1 192.168.32.134 和 IP2 192.168.32.126,但数据端口
等于(950,951,...,965),以及命令端口
等于(966,967,968,...,981)。
8. 安全真实 COM 模式的设置
a. 检查安全真实 COM 模式所需的库
用户应访问 https://www.openssl.org 或 Linux 发行版的官方网站
安装 openssl 库 libssl.so。
检查是否安装了 libssl.so 的简单方法,请输入 'ldconfig -p'
命令,结果应与以下示例类似。
# ldconfig -p | grep libssl.so
libssl.so (libc6) => /usr/lib/i386-linux-gnu/libssl.so
b. 启用或禁用安全模式
使用脚本 mxsetsec 设置安全模式启用/禁用。
!!!!!!!!!!!!!!!!!!!!!!!!!!!! 注意 !!!!!!!!!!!!!!!!!!!!!!!!!!!!
此功能仅支持 NPort 6000 系列。
如果你的模型不是 NPort 6000 系列,你可以忽略这一章。
!!!!!!!!!!!!!!!!!!!!!!!!!!!! 注意 !!!!!!!!!!!!!!!!!!!!!!!!!!!!
"mxsetsec"的语法是:
mxsetsec
示例:
# cd /usr/lib/npreal2/driver
# ./mxsetsec
9. 删除映射的 TTY 端口
和 "8. 映射 TTY 端口" 任务一样,我们提供两种方法来移除
映射的 TTY 端口:
a. 自动移除映射的 TTY 端口
以 root 用户登录后,进入目录 "/usr/lib/npreal2/driver"
然后执行 "mxdelsvr" 来删除一个服务器。
"mxdelsvr" 的语法是:
mxdelsvr [IP] ; 对于真实 COM 模式。
mxdelsvr [IP1] ; 对于冗余 COM 模式。
示例:
# cd /usr/lib/npreal2/driver
# ./mxdelsvr 192.168.3.4
如果你不在命令行中包含 IP 地址,将会出现一个
当前已安装服务器的 IP 地址列表,以及
每个服务器的端口总数将显示在屏幕上。
要移除特定服务器的 tty 端口,输入其旁边的数字
输入服务器的 IP 地址,然后按 Enter 键。接下来的任务
将执行以下操作:
- 修改 npreal2d.cf 文件
- 删除目录 "/dev" 中的相关串口
- 停止并重启驱动程序。
b. 手动删除映射的 tty 端口
进入目录"/usr/lib/npreal2/driver"后,可以
修改"npreal2d.cf"手动删除服务器和端口,然后
执行"mxloadsvr"以激活修改。
10. TTY 命名规则
真实 TTY 驱动程序的 tty 名称配置在 npreal2d.cf 中。
预定义的 tty 名称是 ttyrXX,调用名称是 curXX。
命名规则如下所示:
Nport Server TTY Name Callout Name
1st(4port) ttyr00 - ttyr03 cur00 - cur03
2nd(8port) ttyr04 - ttyr0b cur04 - cur0b
3rd(16port) ttyr0c - ttyr1b cur0c - cur1b
4th(8 口) ttyr1c - ttyr23 cur1c - cur23
...(等等...)
!!!!!!!!!!!!!!!!!!!!!!!!!!!! 注意 !!!!!!!!!!!!!!!!!!!!!!!!!!!!
1. 在 Linux 2.6 中,Callout 设备已经过时。也就是说,你
在 Linux 2.6 上无法打开呼叫设备
2. ttyr0 - ttyr9 或一些用十进制表示的 tty 名称
number 是为内核兼容性而创建的。用户
必须使用 tty 端口号与十六进制数字组合
为确保正确运行。
!!!!!!!!!!!!!!!!!!!!!!!!!!!! 注意 !!!!!!!!!!!!!!!!!!!!!!!!!!!!
11. 移除驱动程序
移除驱动程序将删除所有驱动程序文件、映射的 tty 端口,
并卸载驱动程序。为此,请进入目录
"/usr/lib/npreal2/driver",然后执行"mxuninst"来卸载
驱动程序。此程序将执行以下任务:
- 卸载驱动程序。
- 删除 "/usr/lib/npreal2" 中的所有文件和目录
- 删除 "/usr/lib/npreal2" 目录
- 修改系统初始化脚本文件
12. 修改 "npreal2d.cf"
!!!!!!!!!!!!!!!!!!!!!!!!!!!! 注意 !!!!!!!!!!!!!!!!!!!!!!!!!!!!
"npreal2d.cf"是驱动配置文件。请
在做出任何修改前备份此文件。
!!!!!!!!!!!!!!!!!!!!!!!!!!!! 注意 !!!!!!!!!!!!!!!!!!!!!!!!!!!!
配置文件名为 "npreal2d.cf",位于目录中
"/usr/lib/npreal2/driver", 所有相关信息关于
映射的 tty 端口将被追加到这个文件中。你
如果你想要修改设置,允许你修改这个文件
手动。
我们说明一些您可能会遇到的情况
下一节。请在阅读注意事项部分之前
阅读 a 部分和 b 部分。
[警告]:
在修改 "npreal2d.cf" 时,
1. 请不要在之间输入任何空格或[TAB]字符
ttymajor 和 '=' 和数字。
2. 请不要在 calloutmajor 和 '=' 以及数字之间输入任何空格或 [TAB] 字符。
请不要在 calloutmajor 和 '=' 以及数字之间输入任何空格或 [TAB] 字符。
3. 请仅输入一个 [TAB] 字符来分隔设置中的列。
请仅输入一个 [TAB] 字符来分隔设置中的列。
a. 主设备号
真实 TTY 驱动程序允许您手动更改主设备号
因此您可以在 "npreal2d.cf" 中修改主设备号
然后执行程序 "mxloadsvr" 并
参数 "module"。例如:
# cd /usr/lib/npreal2/driver
# ./mxloadsvr module
驱动程序将移除该模块并重新加载驱动程序。
在 "npreal2d.cf" 中配置了新的主版本号。连接
在新驱动加载后将关闭。
将执行以下操作。
- 卸载驱动。
- 重新创建"npreal2d.cf"中配置的所有设备文件
并使用新的主设备号。
- 加载驱动程序。
b. TTY 名称 & 呼叫名称
与上一节类似,修改 tty 名称和
执行"mxloadsvr"后,callout 名称将被激活。
由于我们不修改主版本号,因此驱动程序将不会
需要重新加载。我们只需执行"mxloadsvr"即可重新加载
无任何参数的设置。
将执行以下操作。
- 关闭连接。
- 重新创建在 "nperal2d.cf" 中配置的所有设备文件。
- 打开连接。
13. 修改初始化脚本
a. 对于 Red Hat
当 Linux 启动时,脚本文件 "/etc/rc.d/rc.local" 将被执行
启动。因此,驱动程序将附加指令。
用于在脚本文件中加载 Real TTY 驱动程序。
b. 对于 Debian
目录"/etc/init.d/"中的所有脚本文件将被
在 Linux 启动时执行。真实 TTY 驱动程序将复制
将该初始化脚本文件复制到该目录并更新
将脚本的可符号链接,以便如果系统启动
下一次,系统将执行相关操作
哪些在脚本中描述。
注意:
如果 Debian 系统在没有加载 nport 驱动的情况下启动,请
以 root 管理员身份执行以下命令来解决这个问题。
问题:
# update-rc.d npreals defaults
从 Debian 6.0 开始,使用以下指令代替 insserv 命令:
如下说明。
# insserv /etc/init.d/npreals
c. 对于 SuSE
SuSE 中的初始化脚本文件是 "/etc/rc.d/boot.local".
驱动程序将追加用于加载的指令
脚本文件中的真实 TTY 驱动。
d. 对于 Gentoo
Gentoo 中的初始化脚本文件是 "/etc/conf.d/local.start"。
驱动将追加用于加载的指令
脚本文件中的真实 TTY 驱动程序。
14. 启用后台轮询功能
如果你不希望你的程序在用 NPort 打开 tty 端口时被阻塞
不存在,你应该启用这个功能。这个功能将轮询 NPort。
在后台设备中消除您的程序被阻塞的时间。
以下步骤展示了如何启用此功能
a. 从网站的产品页面复制驱动文件。
b. 以超级用户(root)身份登录控制台。
c. 执行"cd "切换到主目录。
d. 将驱动文件 npreal2xx.tgz 复制到主目录。
e. 执行"tar xvfz npreal2xx.tgz"将所有文件复制到系统中。
f. 执行"./moxa/mxinst polling"。
15. 故障排除
1. 在安全模式下同时打开多个 tty
自从 openssl 在打开多个时会导致内部系统调用错误
同时打开 tty,可能会失败。如果应用程序需要
要并发打开 tty,请使用"concurrent_open"重新安装驱动程序
参数。例如 "./moxa/mxinst concurrent_open"
驾驶员将需要更长的时间来检测网络断开连接
设置。
2. 在 Ubuntu 11.0 和 12.10 中,打开 SSL 连接可能会失败。这
这是一个由于升级安全库而导致的已知问题。为避免这个问题,
你可以将内核升级到 4.x 版本,或者降低 NPort 6000 的固件版本
V1.17 之前的系列。
16. 限制
1. 冗余 COM 模式
NPort 驱动程序在与 NPort 设备同步时最多需要一分钟
在 LAN 端口恢复连接后。
因此,在最大的一个分钟同步期间,如果任何
网络连接再次丢失,可能会发生数据丢失。
17. 技术支持
如果你有任何技术问题,请将你的问题发送
以下方式包含症状的详细描述。
邮箱:support@moxa.com.tw
-End-

浙公网安备 33010602011771号