以下のプロセスを強制終了しようとしています:
pi@raspberrypi ~ $ ps aux | grep raspi
pi 4647 0.0 0.5 3520 1392 pts/2 S+ 12:05 0:00 grep --color=auto raspi
root 8148 0.0 0.5 10744 1372 ? Sl 06:25 0:00 raspivid -w 800 -h 600 -t 15000 -o /home/pi/media/2015-02-01-06-25-03.177474.h264 -n -rot 270
pi 30099 0.0 0.6 11400 1748 pts/1 Sl+ 11:57 0:00 raspistill -o test.jpg
以下に示すようにいくつかのコマンドを試しましたが、成功しませんでした:
pi@raspberrypi ~ $ Sudo pkill -f raspivid
pi@raspberrypi ~ $ Sudo pkill -f raspistill
pi@raspberrypi ~ $ Sudo kill 8148
pi@raspberrypi ~ $ Sudo kill 30099
SSH経由で「pi」ユーザーとしてログインしていますが、それが問題の原因ですか?はいの場合、なぜ自分のプロセスを終了できないのですか(30099)?
ここで何か不足していますか?
kill
コマンドファミリーの名前は誤解を招きやすい-それらは実際には何も殺さず、プロセスにシグナルを送信するだけです。デフォルトではSIGTERM
シグナルが送信されます。これはプロセスにやめるよう穏やかに要求するだけですが、プロセスはそれを無視するか、別の方法で処理するかを選択できます。 ( kill
)のmanページを参照 )。
プロセスを強制終了するには、SIGKILL
シグナルを送信する必要があります。 SIGKILL
はプロセスによって無視できず、ほとんどの場合、進行中のタスクを終了することなく、即座に終了します。
SIGKILL
を送信する構文はいくつかありますが、これらはすべて完全に同等です。
kill -9 <pid>
kill -kill <pid>
kill -s SIGKILL <pid>
SIGKILL
および 再起動が必要になります を使用してもプロセスが強制終了できない可能性があります。
次のコマンドでrc.localを介して開始されたpython3スクリプトを終了しました。
Sudo killall python3
最初に次のコマンドを使用して、実行中のすべてのプロセスをリストしました:ps -ef
お役に立てれば、
ビル