我想在Beaglebone黑色中运行一些代码,而不需要在执行电源时执行ssh。
我尝试使用一些命令来运行~/.bashrc
文件中的代码,但只有在我使用ssh
登录时才有效。我在/etc/rc.local
文件中尝试过同样的事情,但即使在ssh之后也没有用。
我还在@reboot my_command
中尝试了crontab -e
,但它也要求我使用ssh登录
有什么建议??
编辑:
root@beaglebone:~# lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux 8.6 (jessie)
Release: 8.6
Codename: jessie
root@beaglebone:~# ps aux | grep cron | grep -v grep
root 295 0.0 0.3 4428 1988 ? Ss 15:03 0:00 /usr/sbin/cron -f
crontab -e
的输出:最后几行
root@beaglebone:~# crontab -e
# For more information see the manual pages of crontab(5) and cron(8)
#
# m h dom mon dow command
#@reboot /root/wiringBone-master/library/main not working
#*/5 * * * * /root/wiringBone-master/library/main works
main
是我想要运行的脚本
答案 0 :(得分:0)
对beagle bone一无所知,但在正常的Linux系统上,您可能会使用init脚本,或者更容易在设置为在引导时运行的cron脚本中执行此操作。
您必须检查您的环境是否支持其中任何一种。即使它没有cron,它也可能正在运行某种init(可能是启动时启动SSH的东西,但是YMMV)。
希望它有所帮助!
答案 1 :(得分:0)
/etc/rc.local
是一种快捷方式。确保启动到后台并且不要阻止脚本完成。
编写合适的systemd服务文件会更好。
答案 2 :(得分:0)
crontab -e
方法工作!!我的脚本需要两个叠加来执行我没有加载的代码,这就是为什么我的@reboot command
不起作用。我通过添加所需的叠加层解决了我的问题。
@reboot config-pin overlay cape-universaln
@reboot config-pin overlay BB-ADC
@reboot /root/wiringBone-master/library/main
现在我的代码可以重启了。