起動時にサービスの自動実行後にログインできません。 [Debian]

起動時にサービスの自動実行後にログインできません。 [Debian]

正常に起動すると、ログインした場所にログインプロンプトが表示されます。ただし、自動的に移動を開始した後は、動きが大きすぎてログインしたり、GUIを開くことはできません。コマンドラインの使用録画状態を表示します。

Linuxでは、Motionを使用してビデオストリームを録画しています。フォルダに

\etc\init.d

起動時にアクションを実行するスクリプトが作成されました。

case $1 

    start)
        echo "Starting Motion..."
        sudo motion
    ;;    

    stop)
        # when the init daemon performs a shutdown the motion is terminated 
        kill $(pidof motion)
    ;;

    *)

    ;;

esac

exit 0

スクリプトは実行可能になり、起動順序に追加されます。私のランレベルは3(コマンドライン)です。

答え1

motionデーモンで始めるには、または同様のものを使用する必要がありますstart-stop-daemon。最も簡単な解決策は、次を使用することです。motionDebian のパッケージそしてその初期化スクリプトmotion次のように始まります。

start-stop-daemon --start --oknodo --exec $DAEMON -b --chuid motion

DAEMONはい/usr/bin/motion)。デーモンを自動的に起動するには、を編集する必要があります/etc/default/motion

答え2

initscriptの起動操作が終了しないため、問題が発生する可能性が高くなります。通常、initスクリプトはデーモンプロセスを開始し、プロセスの開始後に終了する必要があります(またはファイルシステムのマウントなどのワンタイムタスクを実行します)。

移動を「デーモン化」するには、start-stop-daemonを適切に使用する必要があります。

Debian initscript テンプレートはシステムの /etc/init.d/sculpture になければならず、/etc/init.d/motion にコピーして必要に応じて編集できます。

initscriptも利用できますデイブ氏スポーツフォークですが、ここでは少し調整が必要な場合があります(スポーツユーザーを使用する場所など)。これらすべてを念頭に置いて、スポーツはすでに包装Debian:素晴らしい初期化スクリプトがあります。なぜそれを使用しないのですか?

関連情報