Linux树莓派中/etc/rc.local不执行的问题

最近研究在树莓派中嵌入式开发java程序,并打算和Salesforce进行通信。需要开发一个java的web server,不想弄那么复杂,于是打算在linux系统中/etc/rc.local写想要执行的语句,比如java –jar /root/test.jar。但是在开机的时候,发现/etc/rc.local里面的命令并没有执行,这是个头疼的事情。第一次我考虑到的是,可能在里面的某些语句,比如service isc-dhcp-server start。这类开启服务的语句,如果dhcp服务在hostapd服务开启前开启,会不会因为先后顺序而导致失败呢。于是我把该语句后面加上>/etc/sys.log 把失败原因输出到log文件中,但是开机后发现根本没有此文件,而语句的确是没有执行的,看来这个猜想是不正确的。网上搜了资料。/etc/rc.local的执行顺序是最后面的,也就是说在所有基础服务开启后,才执行rc.local文件,再然后便是登陆程序,因此不存在因为某个服务的开启失败导致我的语句执行失败。

  如果你的程序也有这样的情况,估计和我遇到的是相近的。

执行如下:

[root@raspberrypi~]# ls –l /etc/rc.local

-rw-r--r--. 1 root root 477 6月  10 13:35 /etc/rc.local

发现原来是文件没有执行权限,于是按说明的内容执行

chmod +x /etc/rc.local

重启后发现/etc/rc.local能够执行了,妈妈再也不用担心我开机任务无法执行了

原文地址:https://www.cnblogs.com/xmfdsh/p/4469577.html