タグ付けされた質問 「kill」

kill-指定されたシグナルをプロセスまたはプロセスグループに送信します。


2
SIGQUITはSIGTERMと同じですか?
私はCentOS / RHELを学び、現在、プロセス管理についていくつかのことをしています。 私が読んでいるRHCSAの本はkill 1234、SIGQUITの送信としての実行について説明しています。私はいつも、シグナルタイプのスイッチを追加せずにkillコマンドをデフォルトにすべきだと思っていましたkill -15 SIGTERMはkill -15SIGKILLはkill -9そうですか? CentOS / RHELはわずかに異なる方法を使用しkill -15ていますか、それとも間違えただけですか? 編集:kill -lSIGQUITを提供kill -3し、キーボードを使用してプロセスを終了することに関連付けられているようです。man 7 signalまた、SIGQUITがkill -3であると述べているので、SIGQUITがkill -15デフォルトであると述べるのは私の本が間違っているとしか思いません。

3
特定のポートで実行されているサービスを強制終了します
特定のポートで実行されているサービスを強制終了するスクリプトを記述しようとしています。これは私のスクリプトです: a=$(ps ax | grep 4990 | grep java | awk '{print $1}') kill -9 $a これはJavaプログラムです。このスクリプトは時々機能しますが、ほとんどの場合、不思議なことに失敗します。 ポートで実行されているサービスを強制終了する他の方法はありますか?私のポートは4990です。
13 process  kill  tcp 


4
産卵プロセスのソースを見つける方法?
RedHat LinuxインスタンスでJavaプロセスを実行しています。 問題は、私がそれを殺した後、それが再び現れ続けることです。どこを見ればいいのか分かりません。私はすでにcrontabに行きましたが、運はありません。 PPIDを確認しましたが、init(1)を指します。 どのようにしてソースを見つけることができますか?
12 process  kill 

3
ターミナルエミュレータは、SIGKILLを受信した後、どのようにして子供を殺すことができますか?
私が理解していることから、SIGKILLは捕まえられません。これは、OSがプロセスを破壊する前に、プロセスがその子を殺す時間がないことを意味します。これは、シェルスクリプトで実証できます。 #! /bin/bash trap : SIGTERM SIGINT SIGKILL # SIGKILL is pointless. mplayer video.avi SIGKILLで削除すると、mplayerが実行されたままになります。 $ kill -9 $pid しかし、ターミナルエミュレータ(xterm、Terminalなど)を使用すると、子供が一緒に殺されてしまいます。これはどのように可能ですか? $ mplayer そしてそれを殺します: $ kill -9 $terminal_pid そして、mplayerは船に搭載されます。ターミナルエミュレータは何らかの理由でSIGKILLをキャッチしていますか?

5
プロセスを強制終了する優雅な方法
bashスクリプトがseleniumサーバーで処理された後、スクリプトは次のようにそれを強制終了します。 kill `ps -ef | grep selenium | awk '{ print $2 }'` これは機能し、セレンスクリプトを強制終了しますが、grep seleniumプロセス番号をkillコマンドに戻すまでにプロセスを強制終了しようとするため、プロセスは終了するため、エラーメッセージが生成されます。(つまり、最終的に2つのプロセスを強制終了します。1つは実際のセレンサーバーであり、もう1つは一時的なプロセスであり、このコマンドの実行方法の副作用です。) プロセスを強制終了するより優雅な方法はありますか?この意図しない副作用はありませんか? (FWIW私が持っていた1つのアイデア:この同じスクリプトは、スクリプトの早い段階でセレンを起動します。問題は、そのPIDを取得する方法、変数を使用してそれを保持する方法、およびスクリプト内で後で参照する方法がわからないことです。
12 process  search  kill 

1
コマンドpkill -USR1 -n -x ddは正確にはどういう意味ですか?
ddBeagleBoneのsdカードへのディスクイメージのネットワーク転送に使用しています。 pkill -USR1 -n -x ddこのBeagleBoneへのssh接続で使用すると、転送プロセスのステータスが更新されます。これは素晴らしいことです。それが実際にどのように機能するか知りたいので、将来的にそれを効果的に使用できます。 読んman pkillだ後でも、pkill -USR1 -n -x ddこの非常に便利なステータスの更新をどのように機能させているのかはまだ完全には説明されていませんでした。
12 kill  dd  signals 

4
top / htopでプロセスのツリーを殺す
htopを使用すると、シェル内のプロセスのツリーをうまく表示できます。プロセスを強制終了するには、を押してF9 (KILL)から、強制終了15 SIGTERMするジョブに送信する信号(例)を選択します。 ただし、これにより、一度に1つのプロセスのみを強制終了できます。を使用してプロセスのツリー全体を強制終了する方法はありhtopますか?
12 kill  top  htop 

4
バックグラウンドで実行されているシェルスクリプトを強制終了する
inotifyt-toolsのinotifywaitユーティリティを使用してディレクトリを監視するシェルスクリプトを作成しました。このスクリプトをバックグラウンドで継続的に実行したいのですが、必要に応じてスクリプトを停止できるようにしたいと思っています。 継続的に実行させるために、私はwhile true; このような: while true; do #a set of commands that use the inotifywait utility end でファイルに保存し/binて実行可能にしました。バックグラウンドで実行するためにnohup <script-name> &、ターミナルを使用して閉じました。 このスクリプトを停止する方法がわかりません。私はここでの回答と非常に密接に関連した質問をここで見てきました。 更新1: 以下の@InfectedRootの回答に基づいて、私は次の戦略を使用して問題を解決することができました。最初の使用 ps -aux | grep script_name sudo kill -9 <pid>プロセスを強制終了するために使用します。次に、返されたIDに再度pgrep inotifywait使用する必要sudo kill -9 <pid>がありました。 これは機能しますが、これは厄介なアプローチだと思います。より良い答えを探しています。 更新2: 答えは、2つのプロセスの強制終了で構成されています。コマンドラインでスクリプトを実行すると、2つのプロセスが開始されます。1つはスクリプト自体、もう 1 つはinotifyプロセスです。
12 bash  shell  kill  inotify 

3
プロセスを強制終了せずに一時停止します
そのため、私は永続的なプログラムをバックグラウンドで実行しています。強制終了すると、別のPIDで再起動するだけです。一時停止したい(実際に殺さずにスリープ状態にする)。kill -9はこれを行いますか?そうでない場合、これはどのように行う必要がありますか?
11 process  kill 

2
プロセスがOOMキラー/ cgroupによって強制終了される前に信号を受信します
このクラスターでは、メモリーなどのプロセスリソースを制限しています(memory.limit_in_bytes)。 結局のところ、これもLinuxカーネルのOOMキラーを介して処理されると思います(ソースコードを読むと、そのように見えます)。 プロセスが終了する前にシグナルを取得する方法はありますか?(SGEの-notifyオプションと同様に、プロセスが強制終了さqsubSIGUSR1れる前に送信されます。) 私は/dev/mem_notify ここについて読みましたが、それを持っていません-最近他に何かありますか?私もこれを読んで、ある程度関連性があるようです。 少なくとも小さなスタックトレースと他の有用なデバッグ情報をダンプできるようにしたいのですが、メモリを解放することで回復できるかもしれません。 私が現在使用している回避策の1つは、この小さなスクリプトです。このスクリプトは、上限(95%)に近いかどうかを頻繁にチェックし、上限に近い場合、プロセスにを送信しますSIGUSR1。Bashでは、このスクリプトをバックグラウンド(cgroup-mem-limit-watcher.py &)で開始しているため、同じcgroup内の他のprocを監視し、親Bashプロセスが停止すると自動的に終了します。

2
「kill -p」は本当に機能しますか?
そのmanページにkillは以下のように書かれています あらすじ kill [ -s signal | -p ] [ -a ] [ -- ] pid ... kill -l [ signal ] -p Specify that kill should only print the process id (pid) of the named processes, and not send any signals. しかし、RHとRHELの両方で何度も試したので、コマンドが機能しkill -s SIGHUP |-p 123ないことがあり、エラーが常に報告されます bash:-p:コマンドが見つかりません 私は間違いをしましたか?

4
再起動しないと強制終了できないプロセスを強制終了するにはどうすればよいですか?
強制終了できない5つのプロセスがありkill -9 $PID、実行するcat /proc/$PID/cmdlineと現在のセッションがハングします。多分それらはゾンビプロセスです。 実行ps -ef or htopすると、現在のセッションもハングします。しかしtop、ps -e正常に動作しています。 したがって、ファイルシステムが応答しないという2つの問題があるようです。 これは仮想マシンを実行する本番マシンであるため、再起動することはできません。 次のプロセスIDが機能していません:16181 16765 5985 7427 7547 これらのプロセスの親はinitです ├─collectd(16765)─┬─{collectd}(16776) │ ├─{collectd}(16777) │ ├─{collectd}(16778) │ ├─{collectd}(16779) │ ├─{collectd}(16780) │ └─{collectd}(16781) ├─collectd(28642)───{collectd}(28650) ├─collectd(29868)─┬─{collectd}(29873) │ ├─{collectd}(29874) │ ├─{collectd}(29875) │ └─{collectd}(29876) そしてqemuプロセスの1つが機能していません |-qemu-system-x86(16181)-+-{qemu-system-x86}(16232) | |-{qemu-system-x86}(16238) | |-{qemu-system-x86}(16803) | |-{qemu-system-x86}(17990) | |-{qemu-system-x86}(17991) | |-{qemu-system-x86}(17992) | |-{qemu-system-x86}(18062) …


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.