在我之前的关于交叉编译的文章中,讨论了如何使用Linaro工具链在Ubuntu主机上编译能在Pluto SDR的arm核上运行的可执行程序,但仅仅这样还不足,因为想要让Pluto SDR执行某个特定任务,首先需要在主机交叉编译,然后通过scp
命令传送到Pluto SDR上,然后通过ssh进入到Pluto SDR的Linux系统中手动执行,才完成了一次(半)脱机运行,这并不优雅。
本文讲解一种可以让Pluto SDR完全独立于主机,自行运行程序的方法,无需重新编译固件,只需要一次设置,之后每次上电,自动执行。
A hook in init.d
根据官方固件repo的#74 issue,自v0.36起,Pluto SDR固件自带自启运行脚本的能力,在/etc/init.d/
下有一个S98autorun
文件,其内容如下:
#!/bin/sh
#
# Script to check for and run user-supplied /mnt/jffs2/autorun.sh