配置机自启脚本地址/etc/rc.local ,在关机卡死 a stop job running for /etc/rc.local Compatibility (*s / no limit)
给自己的程序添加开机自启
写了个脚本添加,并把执行脚本命令添加到了卡机启动中/etc/rc.local
(不是一个设置开机启动的好办法)
开机的时候存在失败,因为依赖的服务可能还没启动脚本就启动了
只能在脚本最上面sleep一会了(全靠命)
接着就是令人头疼的问题,关机的时候界面卡死在a stop job running for /etc/rc.local Compatibility (*s / no limit)
各种写关机脚本关闭开启启动的程序,但是都没执行。(这个失败的方案参考https://my.oschina.net/bobchow/blog/812132)
无奈放弃这个方式
正确的解决方式是在rc-local.service 的配置里面作文章
vim /lib/systemd/system/rc-local.service
# This file is part of systemd. # # systemd is free software; you can redistribute it and/or modify it # under the terms of the GNU Lesser General Public License as published by # the Free Software Foundation; either version 2.1 of the License, or # (at your option) any later version. # This unit gets pulled automatically into multi-user.target by # systemd-rc-local-generator if /etc/rc.local is executable. [Unit] Description=/etc/rc.local Compatibility ConditionFileIsExecutable=/etc/rc.local After=network.target [Service] Type=forking ExecStart=/etc/rc.local start TimeoutSec=0 RemainAfterExit=yes
设置里面的TimeoutSec=30
这样关机就没啥问题了
当然正确的做法应该是
ExecStop = /**/** stop
配置一个stop的脚本,在stop 脚本中关闭自己启动的程序