总结来说,这篇文档放入tools吧。
原因
最近手上有一块nvidia jetson的板子,在调程序时需要不断的开关机,但是呢总忘记风扇的开启, 对我来说,板子稍微发热我就难受,但是每次开机后手动enable风扇太low,总搜集整理这个文档。
systemd
systemd也是大名鼎鼎,目前据说在最新的Ubuntu中已经使用它代替了initd. initd我之前用的比较多了, 但是具体原理没有太多的涉及,这篇文档也是这样的思路,在原理上、技术上不做太多的纠结,直接拿来使用。
/etc/systemd/system/r-local.service
可以先看一下这个目录下有很多service后缀的文件,而且大部分是系统文件。例如syslog.service
.
此时,我们可以在目录下新建一个文件: rc-local.service,其实这里自定义的名字是无所谓的。其内容可以比着葫芦
画瓢:
上面的字面意思也不用太多解释(之所以能够开机自启动在那个 forking)。当然,要记得修改文件权限:
/etc/rc.local
这个文件就是开机后具体执行的脚本,我的如下:
当然, 需要同样赋予权限:sudo chmod 755 /etc/rc.local
.
测试
下面的命令,就是基于rc-local.service文件。
启动服务并检查状态
提醒
在使用这个脚本一段时间过后,我才发现这里有一个问题就是:不建议使用forking作为启动脚本的hook,很容易引起因为系统资源的问题导致的host hang问题。