web-dev-qa-db-ja.com

Raspbianでのプロセスの強制終了

以下のプロセスを強制終了しようとしています:

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)?

ここで何か不足していますか?

3
user414196

killコマンドファミリーの名前は誤解を招きやすい-それらは実際には何も殺さず、プロセスにシグナルを送信するだけです。デフォルトではSIGTERMシグナルが送信されます。これはプロセスにやめるよう穏やかに要求するだけですが、プロセスはそれを無視するか、別の方法で処理するかを選択できます。 ( kill)のmanページを参照 )。

プロセスを強制終了するには、SIGKILLシグナルを送信する必要があります。 SIGKILLはプロセスによって無視できず、ほとんどの場合、進行中のタスクを終了することなく、即座に終了します。

SIGKILLを送信する構文はいくつかありますが、これらはすべて完全に同等です。

kill -9 <pid>
kill -kill <pid>
kill -s SIGKILL <pid>

SIGKILLおよび 再起動が必要になります を使用してもプロセスが強制終了できない可能性があります。

6
gronostaj

次のコマンドでrc.localを介して開始されたpython3スクリプトを終了しました。

Sudo killall python3

最初に次のコマンドを使用して、実行中のすべてのプロセスをリストしました:ps -ef

お役に立てれば、

ビル

0
user756433