2

对于客户,我编写了一个中间件,让他使用以太网适配器访问串行端口或网络串行端口,并使用 Web 服务读取数据。

他最近要求添加对从条形码扫描仪读取数据的支持,我已经实现了直接从设备(/dev/input/eventX 或 /dev/input/by-id/xyz)读取事件的东西。

条形码扫描仪直接连接到服务器,并且正在通过我的网络服务器公开的网络服务读取数据。

一切正常,除了条形码由 linux 控制台接收!

我如何“阻止”(停止)系统向控制台发送内容?

注意:没有 X11/Xorg 或其他任何东西,服务器只是控制台机器!条形码由在 Android 平板电脑上执行的 javascript (jsonp) 读取

4

3 回答 3

1

检查/etc/inittabagetty是否在该串行端口上运行。#如果是,则通过插入 a作为第一个字符来注释掉该行。

于 2012-04-04T22:09:38.300 回答
0

可能是因为您正在从启动脚本运行服务器进程并且它正在输出到 stdout/stderr,所以条形码正在进入控制台,或者它们是某种系统日志或内核消息。

假设它们是标准输出,在启动脚本中找到服务器运行的位置,并将输出重定向到文件或 /dev/null,例如:

noisy-server-cmd >/dev/null 2>&1 &
于 2012-04-05T00:51:49.003 回答
0

这取决于您的 Linux 发行版。在 Redhat/Centos 上,您可以通过编辑 /etc/syslog.conf 和 /etc/sysconfig/syslog 来关闭或过滤控制台消息。

于 2012-04-04T22:08:55.670 回答