日常系统维护时,如果想把自己的脚本自定义成服务,并设置自定义的参数时,可使用如下方法,已在 CentOS 7.3 中验证通过。
首先要注意的是服务文件名称的格式,格式一定要是 filename@.service
这种格式。
当自定义脚本 test.sh 参数是一个的时候,服务文件内容如下:
[Unit]
Description=wdroot
[Service]
Type=forking
ExecStart=/usr/bin/test.sh %i
[Install]
WantedBy=multi-user.target
服务启动方式:
# systemctl start filename@"arg1".service
其中的 arg1 传到自定义脚本 test.sh 的位置参数 $1。
当自定义脚本 test.sh 参数是两个的时候,服务文件内容如下:
[Unit]
Description=wdroot
[Service]
Type=forking
Environment="SCRIPT_ARGS=%I"
ExecStart=/usr/bin/test.sh $SCRIPT_ARGS
[Install]
WantedBy=multi-user.target
服务启动方式:
# systemctl start autontfsfix@"arg1 arg2".service
其中的 arg1,arg2 分别传到自定义脚本 test.sh 的位置参数 $1,$2。
原文:https://blog.51cto.com/liubin0505star/2703976