启动我的服务时出现问题

时间:2016-11-13 13:44:53

标签: bash perl service centos systemd

Centos 7

问题是:如果我在控制台中写道:

/opt/dklab_realplexor/dklab_realplexor.int start

一切正常,服务已启动。如果您创建服务文件并执行此操作:

systemctl start realplexor

该服务属于错误(在这种情况下不写入或由于某种原因)并且不创建PID文件。告诉我,因为它可能是什么?在dklab_realplexor.int里面运行带参数的perl脚本。

cd $CWD && $BIN $CONF -p $PIDFILE 2>&1 | logger -p `eval" echo $LOGPRI "` -t `eval" echo $LOGTAG "` &

完整服务档案:

[Unit]
Description=realplexor

[Service]
Type=forking
PIDFile=/var/run/dklab_realplexor_dklab_realplexor.conf.pid
WorkingDirectory=/opt/dklab_realplexor

User=root
Group=root

Environment=RACK_ENV=production

OOMScoreAdjust=-1000

ExecStart=/opt/dklab_realplexor/dklab_realplexor.int start
ExecStop=/opt/dklab_realplexor/dklab_realplexor.int stop
ExecReload=/opt/dklab_realplexor/dklab_realplexor.int reload
TimeoutSec=5000

[Install]
WantedBy=multi-user.target 

请告诉我,在哪一方挖掘?

1 个答案:

答案 0 :(得分:0)

您的脚本看起来像是使用了未在服务文件中定义的环境变量。 要查看列表可用的环境变量,请添加到脚本中(dklab_realplexor.int):

env | sort