hupシグナルはいつ親プロセスに影響しますか? [コピー]
この質問にはすでに答えがあります。: ...
驚くべきことに、少なくともBash 4.4.19以降、Interactive Bashは別々のセッションでコマンドを実行します。実行後、次のプロセスのリストを参照してくださいsleep 8888。 PGID PID PPID 3150071 3150071 252603 -bash 3194323 3194323 3150071 sleep 8888 ofはbashと同じではありませんが、PPIDは同じであることPGIDがわかります。sleep 試験はUbuntu Bionicで実施した。 この動作の変更に関するドキ...
想像する: $ cat t0.txt t1.txt $ cat t1.txt xxx $ sed -n 1p t0.txt | xargs less # OK $ sed -n 1p t0.txt | xargs nano Received SIGHUP or SIGTERM dvl-linux64 $ nano --version GNU nano, version 2.5.3 ファイルを開く方法nano?そうでない場合はxargsどうですか? UPD。 SVKについて: $ sed -n 1p t0.txt | xargs less # OK...
このトピックについてのみ、次の質問を見つけました。 SIGHUPまたはSIGTERMの受信:nanoは空のファイルを編集できません。 Web サーバーを構成しています。以前は問題はありませんでしたが、このエラーの原因が正確に何であるか疑問に思います。サンバとPHPをインストールしました。以前のコメントで提案したようにstraceとauditdを試しましたが、この問題は発生しませんでした。 @unity:/var/www/html $ sudo nano info.php Received SIGHUP or SIGTERM @unity:/var/ww...
Bashのマニュアルによると huponexitシェルオプションがshoptを使用して設定されている場合(62ページのセクション4.3.2 [組み込みShopt]を参照)、Bashは対話型ログインシェルが終了したときにすべてのジョブにSIGHUPを送信します。 次の状況では、なぜhuponexitが機能しないのですか? インタラクティブシェルから $ shopt -s huponexit $ sleep 4321 & [1] 13816 $ exit その後、他のシェルから $ ps -j 13816 PID PGID ...
lxterminalターミナルエミュレータウィンドウのbashシェルで、次のコマンドを実行します。 $ trap "echo hello" SIGHUP $ kill -s HUP $$ hello $ その後、端末エミュレータウィンドウを閉じます。 ターミナルエミュレータウィンドウを閉じると、SIGHUPは制御プロセス(bashプロセスなど)にのみ送信されますか? SIGHUPトラップはbashプロセスを終了しないため、bashプロセスは終了しないと予想しましたが、実際にbashプロセスが終了したのはなぜですか? トラップを(無視)に変更して...
APUEと言う 親プロセスが終了すると、プロセスグループは孤立し、プロセスグループには停止したプロセスが含まれているため、POSIX.1では、新しく孤立したプロセスグループの各プロセスに停止信号(SIGHUP)を送信する必要があります。 続いて継続信号(SIGCONT)。 カーネルはSIGHUPの後にSIGCONTを送信しますが、プロセスはSIGHUPを実行する前にSIGCONTによって起動されます。それでは、LinuxカーネルがSIGHUPの前にSIGCONTを送信しないのはなぜですか? ありがとうございます。 関連していますが、答えは...
これUNIX環境の高度なプログラミングBOOK("APUE") と 子プロセスに分岐してから終了するプロセスを考えてみましょう。これは奇妙なことではありませんが(常に発生します)、親プロセスが終了したときに子プロセスが停止した場合(ジョブ制御を使用)、どうなりますか?その子はどのように生き残り、その子は自分が孤児になったことを知っていますか? ... プロセスグループが分離されていない場合は、別のプロセスグループにあるが同じセッション内の親プロセスの1つが、分離されていないプロセスグループで停止したプロセスを再開できます。 ...
Bashで実行すると、サブシェルが終了した( sleep 123 &)ときsleep 123にプロセスが実行され続けます。sleep 123親シェルとサブシェルが終了する前にプロセスを停止するにはどうすればよいですか? 合計を受け取り、sleep 123プロセスが終了することを確認しようとしています。はいを探しています。SIGHUPSIGCONTSIGHUPは孤児プロセスに転送されますが、なぜ終了しないのですか?そしてデフォルトでは、カーネルは孤立して停止したプロセスを含むプロセスグループにSIGHUPを送信してすべてのプロセスを終了しますか? ...
Linuxプログラミングインターフェースから 孤立したプロセスグループが重要な理由を理解するには、シェルジョブ制御の観点から物事を調べる必要があります。図 34-3 に基づいて、次のシナリオを検討します。 親プロセスが終了する前に子プロセスが停止します(おそらく親プロセスが停止信号を送信したため)。 親プロセスが終了すると、シェルはタスクリストから親プロセスのプロセスグループを削除します。子プロセスはinitによって採用され、端末のバックグラウンドプロセスになります。子プロセスを含むプロセスグループは隔離されます。 この時点で...
nohupは外部プログラムです。シェルプロセスの子プロセスに対するSIGHUPアクションを「無視」に変更するにはどうすればよいですか? (nohup以降のサブプロセスfork()および/またはexecve()プログラムから呼び出されたときにいくつかのパラメータに関して?) nohupはシェルプロセスの子プロセスでのみ機能し、非シェルプロセスの子プロセスでは機能しませんか? ありがとうございます。 ...
存在するLinuxプログラミングインターフェース: SIGHUP は、プロセスグループが孤立プロセスになると生成されます。 インタラクティブbash中 $ ( sleep 123 &) まず、サブシェルが分岐され、次にそのサブシェルが実行のために分岐されますsleep 123 &。サブシェルはsleep 123完了を待たずにすぐに終了します&。 プロセスはsleep孤児プロセスですか? (そう思います、図34.3) sleepプロセスが切り離されたため、SIGHUPは送信されていますか? (引用によるとそうだと思...
端末の接続が切断されると、オペレーティング・システムのカーネルは端末の制御プロセスに SIGHUP を送信します。 ターミナルエミュレータが終了すると、誰がターミナルエミュレータの基盤となる疑似ターミナル(オペレーティングシステムカーネルまたはターミナルエミュレータ)の制御プロセスにSIGHUPを送信しますか? ありがとうございます。 ...
kill -HUP を使用してシステムロギングを表示します。 /var/log/cron /var/log/maillog /var/log/messages /var/log/secure /var/log/spooler { sharedscripts postrotate /bin/kill -HUP `cat /var/run/syslogd.pid 2> /dev/null` 2> /dev/null || true endscript } -HUPを使用することは、syslogのようなデー...
このbashスクリプトがあります。 https://gist.github.com/ORESoftware/06dbb26a48d2ddf48a5a2166834e0836 ql_acquire_lockシェルを呼び出すときにmkdirディレクトリを呼び出せる場合は、ロックを取得します。私がそれを呼び出すと、ディレクトリql_release_lock、単純な内容が削除されます。 これql_acquire_lockで呼び出されると、次のものが呼び出されます。 トラップ ql_on_trap 終了 トラップ ql_on_trap SIGHUP トラップ q...