在启动 Linux 机器时添加脚本

在启动 Linux 机器时添加脚本

我有一个脚本可以在我的 ubuntu 上启动服务。我使用“# update-rc.d projeto defaults”将其添加到启动机器上。但它仍然无法随启动机器启动。我想是因为我使用其他用户来启动脚本“su - www-data -c ...”。但我不确定,因为我以 root 身份运行 update-rc.d 命令。当我从终端执行脚本时,它会询问用户 www-data 的密码。

有人知道发生了什么吗?非常感谢! Felipe

#!/bin/bash
# /var/www/boinc/projeto/bin/start

function action {
        su - www-data -c "/var/www/boinc/projeto/bin/$1"
}

case $1 in
        start|stop|status)
        action $1
        ;;
        *)
        echo "ERRO: usar $0 (start|stop|status)"
        exit 1
        ;;
esac

答案1

我编写了一个在命令之间带有睡眠功能的脚本并且它起作用了......

#!/bin/bash
# /var/www/boinc/projeto/bin/start

su - www-data -c "/var/www/boinc/projeto/bin/stop"
sleep 20
su - www-data -c "/var/www/boinc/projeto/bin/start"

相关内容