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

プロセスは、実行中のコンピュータプログラムのインスタンスです。


1
サービスを再起動するときに「不明なインスタンス」とはどういう意味ですか?
vsftpdUbuntu 13.10でファイルサーバーを実行しようとしていますが、別のネットワークからサーバーに接続できませんが、この別のネットワークはサーバーのネットワークに接続されており、動作していますping。vsftpd再起動について疑わしい点がありますが、設定vsftpd時に次を使用して再起動するよう求められます。 service vsftpd restart 出力には、「Stop:unknown instance」と表示されます。それが何を意味するのか分かりませんか?

1
子プロセスのPGIDが親のPIDではないのはなぜですか?
だから私はこのコマンドが親プロセスのすべての子プロセスを終了することをどこでも読み続けます: kill -- -$$ killコマンドでネガティブIDを使用するとPGIDが参照され、私が見た例では、子プロセスのPGIDは親のPIDであるはずですが、システムではそうではありません。 私のシステムでは、子のPGIDは親スクリプトのPGIDと同じであり、bashであることがわかりました。 何が起きてる?例は間違っていましたか、または私のシステムは異なって設定されていますか? 私が達成する必要があるのは、親が終了することなく子プロセスを終了することです。そのため、親がいるPGIDにkillシグナルを送信したくありません。

2
「自動スタック拡張」とは何ですか?
getrlimit(2)のマニュアルページには次の定義があります。 RLIMIT_AS プロセスの仮想メモリ(アドレス空間)の最大サイズ(バイト単位)。この制限はbrk(2)、mmap(2)およびmremap(2)の呼び出しに影響し、この制限を超えるとエラーENOMEMで失敗します。また、自動スタック拡張は失敗します(また、sigaltstack(2)で代替スタックが使用可能にされていない場合、プロセスを強制終了するSIGSEGVを生成します)。値は長いため、32ビット長のマシンでは、この制限は最大2 GiBであるか、このリソースは無制限です。 ここで「自動スタック拡張」とはどういう意味ですか?Linux / UNIX環境のスタックは必要に応じて成長しますか?はいの場合、正確なメカニズムは何ですか?
13 linux  process  memory  limit 


4
Bashスクリプトはプロセスを待機して戻りコードを取得します
多くのバックグラウンドコマンドを開始するスクリプトを作成しようとしています。バックグラウンドコマンドごとに、リターンコードを取得する必要があります。 私は次のスクリプトを試しています: #!/bin/bash set -x pid=() return=() for i in 1 2 do echo start $i ssh mysql "/root/test$i.sh" & pid[$i]=$! done for i in ${#pid[@]} do echo ${pid[$i]} wait ${pid[$i]} return[$i]=$? if [ ${return[$i]} -ne 0 ] then echo mail error fi done echo ${return[1]} echo ${return[2]} 私の問題は待機ループ中にあり、2番目のPIDが最初のPIDの前に終了すると、戻りコードを取得できません。 wait …
13 linux  bash  process  array 

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

2
サブシェルのPIDを取得するにはどうすればよいですか?
サブシェルのPIDを取得するにはどうすればよいですか? 例えば: $ echo $$ 16808 元のシェルが展開するため、これは機能しません$$。 $ ( echo $$ ) 16808 単一引用符が機能しないのはなぜですか?元のシェルが単一引用符を削除した後、サブシェル$$自体は展開しませんか? $ ( echo '$$' ) $$ なぜうまくいかevalないのですか?さevalサブシェルで実行?なぜ元のシェルのPIDが表示されるのですか? $ ( eval echo '$$' ) 16808 ありがとう。
13 bash  process  subshell 

1
Unixのプロセス、カーネルスレッド、軽量プロセス、ユーザースレッドの関係は何ですか?[閉まっている]
閉じた。この質問はより集中する必要があります。現在、回答を受け付けていません。 この質問を改善したいですか?この投稿を編集するだけで1つの問題に焦点を当てるように質問を更新します。 2年前に閉店。 VahaliaのUnix Internalには、プロセス、カーネルスレッド、軽量プロセス、ユーザースレッドの関係を示す図があります。この本はSVR4.2に最も注意を向けており、4.4BSD、Solaris 2.x、Mach、およびDigital UNIXについても詳しく探っています。Linuxについては聞いていないことに注意してください。 プロセスごとに、プロセスの基礎となる1つ以上の軽量プロセスが常にありますか?図3.4はイエスと言っているようです。 なぜ図3.5(a)は、CPUの上に直接プロセスを表示し、その間に軽量プロセスを表示しないのですか? 軽量プロセスごとに、軽量プロセスの基礎となるカーネルスレッドは常に1つだけですか?図3.4はイエスと言っているようです。 図3.5(b)は、カーネルスレッドを介さずにプロセスの上に軽量プロセスを直接表示するのはなぜですか? カーネルスレッドだけがスケジュール可能なエンティティですか? 軽量プロセスは、基になるカーネルスレッドをスケジュールすることによって間接的にのみスケジュールされますか? プロセスは、基礎となる軽量プロセスのスケジューリングを介して間接的にのみスケジューリングされますか? 更新: Linuxについても同様の質問をしました。Linux のカーネルスレッドに軽量プロセスが接続されていますか? 「オペレーティングシステムの概念」という本が暗黙的にUnixを使用する概念を紹介し、UnixとLinuxが異なる可能性があるため、Unixカーネルについて読んだためだと思います。 現在の返信に感謝していますが、他の返信を受け入れることができるように、投稿を再開することを望んでいます。

4
lsof -p PID vs lsof | grep PID
lsofコマンドの出力がわかりません。 私が書くとき lsof -p PID 私は4行を得て、書くとき lsof | grep PID 何百行もあります。 同じ結果を返すべきではないでしょうか? ご回答ありがとうございます。出力は次のとおりです。それはサブプロセスのように見えますか、このタスクの意味は何ですか? lsof -p 29076 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME java 29076 pr cwd unknown /proc/29076/cwd (readlink: Permission denied) java 29076 pr rtd unknown /proc/29076/root (readlink: Permission denied) java 29076 pr txt unknown /proc/29076/exe (readlink: …
12 process  lsof 

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

1
pmapの出力の意味
私はmain.cLinuxで書いた: int main() { while (1){} } コンパイルして起動すると、次のことができpmapます。 # pmap 28578 28578: ./a.out 0000000000400000 4K r-x-- /root/a.out 0000000000600000 4K r---- /root/a.out 0000000000601000 4K rw--- /root/a.out 00007f87c16c2000 1524K r-x-- /lib/libc-2.11.1.so 00007f87c183f000 2044K ----- /lib/libc-2.11.1.so 00007f87c1a3e000 16K r---- /lib/libc-2.11.1.so 00007f87c1a42000 4K rw--- /lib/libc-2.11.1.so 00007f87c1a43000 20K rw--- [ anon ] 00007f87c1a48000 128K r-x-- …


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

3
実行中のプログラムのインスタンスを100個維持する
現在、supervisordを使用して、一度に実行されるスクリプトの100個のインスタンスを維持しています。ダイがあれば、新しいダイが起動します。 しかし、より多くの数(300以上のプロセス)を維持するのに苦労しているようで、代替品を探しています。Monitは、個々のスクリプトを監視し、同じスクリプトの100個のインスタンスを簡単に監視できないため、私が望んでいることを実行していないようです。 私が使用できる別のツールに関する提案はありますか?

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