1 linux service是什么
linux service是后台运行的程序,它的输出到自己的log中,关闭了stdin、stdout和stderr。
2 编写自己的service
两个组件:service可执行程序本身和init script
init script放在/etc/init.d目录下。
init script的主要逻辑如下:
# Main logic
case "$1" in
start)
start
;;
stop)
stop
;;
status)
status
;;
restart|reload)
stop
start
;;
*)
echo $"Usage: $0 {start|stop|status|restart|reload}"
exit 1
esac
3 设置linux开机启动服务
建立XXX/rc[run level].d/xxx到/etc/init.d/xxx的软链接。
K开头的脚本文件代表运行级别加载时需要关闭的,S开头的代表需要执行
这样,当系统以某个level启动时,就会自动启动rc[run level].d下的以S开头的服务。
但是,并不是手动去修改K到S,也不是ln -s target linkname去创建这个软链接。
因为,这个开机启动服务是有systemd来管理的,因此需要向它注册。
使用update-rc.d命令来enable/disable这个开机服务。
update-rc.d ssh enable/disable。
4 操作linux的service
service [script] [command]