gpt4 book ai didi

c - 在 Raspberry PI 上自动运行 C 程序

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:39:18 26 4
gpt4 key购买 nike

如何让我的 C 代码在我的 Raspberry PI 上自动运行?我看过一个教程来实现这一点,但我真的不知道我还缺少什么。我的初始化脚本如下所示:

#! /bin/sh
# /etc/init.d/my_settings
#
# Something that could run always can be written here
### BEGIN INIT INFO
# Provides: my_settings
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# X-Interactive: true
# Short-Description: Script to start C program at boot time
# Description: Enable service provided by my_settings
### END INIT INFO

# Carry out different functions when asked to by the system
case "$1" in
start)
echo "Starting RPi Data Collector Program"
# run application you want to start
sudo /home/pi/Documents/C_Projects/cfor_RPi/charlie &
;;
stop)
echo "Killing RPi Data Collector Program"
# kills the application you want to stop
sudo killall charlie
;;
*)
echo "Usage: /etc/init.d/my_settings {start | stop}"
exit 1
;;
esac
exit 0

问题是我的程序没有在启动时运行,我真的不知道为什么。我会错过什么?这个“killall”语句是否在执行期间“杀死”了一些有用的进程?我正在使这段代码作为后台应用程序运行,但我知道几秒钟后,当 RPi 初始化时,它会要求输入用户名和密码以初始化 session 。有没有可能是因为我没有提供日志信息,所以我的树莓派没有执行这段代码?我没有显示器,所以我的程序必须在我插入 Rpi 后运行。非常感谢!

最佳答案

您必须在适当的 /etc/rcX.d 文件夹中创建指向该初始化脚本的链接。在 raspbian 上,这是通过以下方式完成的:

sudo update-rc.d YOUR_INIT_SCRIPT_NAME defaults

你可以阅读这个 debian how-to了解更多信息。您还应该阅读更多关于 run levels in Debian 的信息.

关于c - 在 Raspberry PI 上自动运行 C 程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18197252/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com