最近研究在树莓派中嵌入式开发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文件,再而后即是登录程序,所以不存在由于某个服务的开启失败致使个人语句执行失败。java
若是你的程序也有这样的状况,估计和我遇到的是相近的。linux
执行以下:web
[root@raspberrypi~]
# ls –l /etc/rc.local
spa
-rw-r--r--. 1 root root 477 6月 10 13:35
/etc
/rc
.
local
code
发现原来是文件没有执行权限
,因而按说明的内容执行server
chmod
+x
/etc
/rc
.
local
开发
重启后发现/etc/rc.local可以执行了,妈妈不再用担忧我开机任务没法执行了test