zaa*_*deh 5 bash signals shell-script ppp pppd
我正在尝试通过连接 GSM 调制解调器的串行端口连接到 GPRS 网络。
当我/usr/sbin/pppd call <peer_name>
从命令行调用时,它会正确接收并处理来自键盘的Ctrl+ C。
但是当我将完全相同的命令放在一个空的 shell 脚本中时(#!
顶部有或没有 shebang ),chmod +x
它并从 shell 提示符运行它,然后pppd
开始运行 - 但它完全忽略了Ctrl+C组合键。Ctrl+Z工作正常。
这是pppd
对等文件的内容
nodetach
dump
connect "connect_script"
disconnect "disconnect_script"
/dev/ttyS0
noauth
Run Code Online (Sandbox Code Playgroud)
我测试了另一个我为连接到 PPTP VPN 服务器而创建的对等文件 - 具有相同的结果。PPTP 不需要聊天脚本,所以我排除了chat
命令或串行端口链接属性的问题。
操作系统是 debian 7。
任何想法这里发生了什么?
我猜这个问题是 2.4.5 版本特有的错误pppd
,这是 Debian 7 附带的版本。我在同一台机器和其他机器上测试了版本 2.4.4 和 2.4.6(这是目前最新的),他们按预期工作。pppd
包中似乎有很多信号处理程序操作代码,我猜这可能会导致此类错误。我很高兴它现在已经修复了。