如何设置 Linux 机器开机时启动的程序?

如何设置 Linux 机器开机时启动的程序?

可能重复:
Linux 中的启动程序

我有一台 Linux 机器一直在运行一个程序,如果电源被切断,程序将不会重新启动,直到我打开 SSH 会话并输入“。/GPIOServer.sh”这只是为了防止机器断电,我希望程序在启动时自动启动。

谢谢!

答案1

您正在使用哪个版本的操作系统?

根据情况,你基本上有两个选择:

/etc/rc.local

您可以将可执行文件添加到位于 Redhat 发行版的 rc.local 文件中:/etc/rc.local。您可以简单地将其添加./GPIOServer.sh到此文件的末尾。

/etc/init.d/

如果您希望将其作为服务,则需要添加类似于 中的脚本/etc/init.d/。在基于 Redhat 的发行版中,还有一个工具可帮助管理这些脚本,称为chkconfig。请参阅手册页以获取更多信息,并查看 中的其他脚本/etc/init.d以获取有关如何处理此问题的想法。

以下是一个可帮助您入门的示例:

#! /bin/sh
# Basic support for IRIX style chkconfig
###
# chkconfig: 235 98 55
# description: Manages the services you are controlling with the chkconfig command
###

case "$1" in
  start)
        echo -n "Starting new-service"
        #To run it as root:
        /path/to/command/to/start/new-service
        #Or to run it as some other user:
        /bin/su - username -c /path/to/command/to/start/new-service
        echo "."
        ;;
  stop)
        echo -n "Stopping new-service"
        #To run it as root:
        /path/to/command/to/stop/new-service
        #Or to run it as some other user:
        /bin/su - username -c /path/to/command/to/stop/new-service
        echo "."
        ;;

  *)
        echo "Usage: /sbin/service new-service {start|stop}"
        exit 1
esac

exit 0

答案2

对于 raspberry-pi,最简单的方法就是在文件中添加一行包含脚本完整路径的内容/etc/rc.local

相关内容