【发布时间】:2017-03-11 01:28:03
【问题描述】:
在 Debian 中运行良好:
#!/bin/sh
time /usr/libexec/postfix/smtp $@
在 CentOS 的邮件日志中出现错误:
warning: process /usr/libexec/postfix/smtp_time pid 28456 exit status 1
warning: /usr/libexec/postfix/smtp_time: bad command startup -- throttling
调试错误exec 2>>/tmp/smtp.log; set -x; time /usr/libexec/postfix/smtp "$@"
+ time /usr/libexec/postfix/smtp -n smtptime -t unix -u -c
which: no /usr/libexec/postfix/smtp in ((null))
ERROR: /usr/libexec/postfix/smtp cannot be found.
但是文件存在并且有 r+x 权限。
【问题讨论】:
-
不是你的直接问题,但
$@有问题——它会拆分和扩展你的论点。请改用"$@"。 -
感谢@CharlesDuffy 的回答,它不会进行任何更改。
-
无论如何,“错误的命令启动”在这里并没有真正告诉我们任何有用的信息——它表示命令快速退出,所以 postfix 决定不再(非常频繁地)运行它,但是没有任何有用的信息可以告诉我们为什么它会迅速退出。
-
是的,我知道这不会改变你的直接行为,这就是为什么我说“不是你的直接问题”,并将其添加为评论而不是答案。不过,如果您尝试使用空格传递命令行参数,它肯定会有所作为。
-
哦,是的,@CharlesDuffy 对!问题不是脚本..错误在某个完全不同的地方
fatal: unknown service: smtp/tcp
标签: bash centos postfix-mta