init.d中的Shell脚本无法在启动时启动

时间:2020-04-21 11:35:39

标签: bash ubuntu init.d runlevel

我必须创建一个在启动时启动的魔鬼。它当前位于/etc/init.d中,并且由于我的运行级别是5,所以我已经在/etc/rc5.d中创建了一个符号链接,但是脚本的“启动”情况在启动期间不会启动。我究竟做错了什么?我可以尝试与init.d不同的东西吗? 预先感谢

#!/bin/bash
case "$1" in
    start)
        cato=$$
        if [ -e devil.pid ]
        then
            echo "Already running"
            sleep 3
        else
            sleep 1
            echo $$ > devil.pid
            echo "$datee Running service with PID: $cato" >> devil.log
            while true
            do
                datee=$(date +"[%Y-%m-%d %H:%M:%S]")
                echo "$datee I'm alive" >> devil.log
                sleep 3
            done
        fi
        ;;
    stop)
        if [ -e devil.pid ]
        then
            cato=$( cat devil.pid )
            echo "$datee Stopping service with PID: $cato" >> devil.log
            sleep 1
            kill -9 $cato
            rm -rf devil.pid
        else
            echo "I'm dead"
            sleep 2
        fi
        ;; 
    restart)
        if [ -e devil.pid ]
        then
            cato=$( cat devil.pid )
            kill -9 $cato
            rm -rf devil.pid
            echo $$ > devil.pid
            while true
            do
                echo "Restarting with PID $cato" >> devil.log
                sleep 2
            done
        else
            echo "I'm dead"
            sleep 2
        fi
        ;;
esac

0 个答案:

没有答案