app_path="$PWD/agent" # 添加需要设置自启动的服务文件绝对路径,可多个
for a in $app_path; do
if [ ! -x $a ]; then
chmod +x $a
fi
sh_name=${a##*/}
app_sh="$PWD/bin/$sh_name"
if [ -f $app_sh ]; then
rm $app_sh
echo "rm $app_sh"
fi
echo "#! /bin/bash" >> $app_sh
echo "cd ${a%/*}" >> $app_sh
echo "$a >$PWD/log/${sh_name}_log.txt 2>&1" >> $app_sh
chmod +x $app_sh
service_sh="/lib/systemd/system/${sh_name}.service"
if [ -f $service_sh ]; then
systemctl disable $service_sh
rm $service_sh
systemctl daemon-reload
fi
echo "[Unit]" >> $service_sh
echo "Description = $sh_name" >> $service_sh
echo "[Service]" >> $service_sh
echo "User=root" >> $service_sh
echo "Type=simple" >> $service_sh
echo "PIDFile=/run/${sh_name}.pid" >> $service_sh
echo "ExecStart=$app_sh" >> $service_sh
echo "ExecReload=/bin/kill -SIGHUP $MAINPID" >> $service_sh
echo "ExecStop=/bin/kill -SIGINT $MAINPID" >> $service_sh
echo "Restart=on-failure" >> $service_sh
echo "RestartSec=30" >> $service_sh
echo "[Install]" >> $service_sh
echo "WantedBy = multi-user.target" >> $service_sh
systemctl daemon-reload
systemctl enable $service_sh
systemctl start $sh_name
done
因篇幅问题不能全部显示,请点此查看更多更全内容