给linux添加服务的步骤:
第一:编写服务脚本,命名为:testService
start()
{
echo "start testService"
/usr/local/bin/testService & #可执行文件路径
exit 0;
}
stop()
{
echo -n "stop testService"
if pkill testService
then
echo " [ok]"
else
echo " [failed]"
fi
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
*)
echo "usage: $0 start|stop|restart"
exit 0;
esac
第二:把文件testService拷贝到/etc/init.d/目录下面
第三:就可以执行service testService start (stop 、 restart)来操作文件了。
但是今天遇到意见郁闷的事,
第一:检查文件是否在/usr/init.d/目录下面,文件确确实实存在
第二:执行service testService start ,报错,未识别的服务,
第三:检查脚本文件,是否正确,确确实实正确,执行其他服务都能执行
检查了下/usr/init.d/testServic的权限,如下:
[root@~]# service testService start
uapd: 未被识别的服务
[root@~]# ll /etc/init.d/testService #检查权限
---------- 1 root root 1025 08-30 17:47 /etc/init.d/testService #文件权限
[root@~]#
[root@~]# chmod 033 /etc/init.d/testService #设置文件权限
[root@~]# service uapd start
start testService [确定]
[root@~]#
解决:
1、先检查了文件的权限,此时即使文件在/etc/init.d/testService目录下,仍然不能使用服务
2、设置了文件权限后,服务能够正常识别了