Скрипт запуска Linux не выполняет скрипт в домашнем каталоге пользователя

Скрипт запуска Linux не выполняет скрипт в домашнем каталоге пользователя

Я хочу, чтобы скрипт на моем Raspberry Pi запускался при загрузке системы. Вот почему я создал скрипт внутри /etc/init.d, который связан с /etc/rc2.d

Это скрипт внутри init.d:


#! /bin/sh
### BEGIN INIT INFO
# Provides:          Scriptname
# Required-Start:
# Required-Stop:
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Kurze Beschreibung
# Description:       Bechreibung
### END INIT INFO



#Switch case fuer den ersten Parameter
case "$1" in
    start)
        #Aktion wenn start aufgerufen wird
        /home/thomas/applications/autostart/autostart.sh
        ;;

    stop)
        #Aktion wenn stop aufgerufen wird
        echo "nope"
        ;;

    restart)
        #Aktion wenn restart aufgerufen wird
        echo "nope"
        ;;
        *)
        #Default Aktion wenn start|stop|restart nicht passen
        echo "(start|stop|restart)"
        ;;
esac

exit 0

А вот содержание /home/thomas/applications/autostart/autostart.sh:


#! /bin/sh
touch /home/thomas/kater

когда я изменяю команду запуска внутри скрипта в /etc/init.d на следующие строки, команда touch выполняется:


    start)
        #Aktion wenn start aufgerufen wird
        touch /home/thomas/kater
        ;;

Так почему же он не выполняет отдельный скрипт?

Спасибо заранее, Макфарлейн

решение1

Если предположить, что то, что вы показали, это именно то, что у вас есть, скрипт не будет работать, потому что у вас ошибка форматирования. Между !#и /bin/shв строке shebang не должно быть пробела:

#!/bin/sh
touch /home/thomas/kater

Связанный контент