家伙们,我有一个问题在使用xinetd,错误信息是'xinetd[20126]: execv(/home/fulu/download/mysqlchk_status2.sh)失败:Exec格式错误(errno = 8)'
- 系统操作为CentOS 6.2版本;
- 我安装xinetd命令'sudo yum install xinetd'
- 我编辑了/etc/services,为我的服务'mysqlchk'添加了端口6033
-
/etc/xinetd. .中的mysqlchk服务d/mysqlchk是
mysqlchk服务{禁用=否flags = REUSESocket_type = stream端口= 6033等待=不用户= fulluServer =/home/fulu/download/mysqlchk_status2.shlog_on_failure += USERID}
-
shell文件/home/fulu/download/mysqlchk_status2.sh内容为
回声"测试"
6。我可以直接运行命令/home/fulu/download/mysqlchk_status2.sh,得到结果'test'
-
当我telnet 127.0.0.1 6033时,我得到输出
尝试127.0.0.1……连接到127.0.0.1。转义字符为'^]'。连接被外部主机关闭
然后我跟踪日志文件/var/log/messages,它显示
Apr 22 22:01:47 AY1304111122016 xinetd[20001]: START: mysqlchk pid=20126 from=127.0.0.1
Apr 22 22:01:47 AY1304111122016 xinetd[20126]: execv( /home/fulu/download/mysqlchk_status2.sh ) failed: Exec format error (errno = 8)
Apr 22 22:01:47 AY1304111122016 xinetd[20001]: EXIT: mysqlchk status=0 pid=20126 duration=0(sec)
我不知道为什么,有人能帮帮我吗?
我很抱歉,在问了它之后我突然找到了答案。如果您希望shell在其他程序中运行,您需要添加"#!"/bin/echo'在shell文件的第一行(当然echo是可以改变的)