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

デーモンは、バックグラウンドで実行されるプロセスまたはプログラムです(つまり、ユーザーの操作は必要ありません)。

26
node.jsアプリをバックグラウンドサービスとして実行するにはどうすればよいですか?
この投稿は何年にもわたって多くの注目を集めてきたので、この投稿の下部にプラットフォームごとの上位ソリューションをリストしました。 元の投稿: node.jsサーバーをバックグラウンドで実行したいのです。つまり、ターミナルを閉じたときにサーバーを実行し続けたいです。私はこれをググってこのチュートリアルを思いつきましたが、意図したとおりに動作しません。そのため、そのデーモンスクリプトを使用する代わりに、出力リダイレクト(2>&1 >> file一部)を使用しただけだと思いましたが、これも終了しません。出力/エラーを待機しているように、ターミナルに空白行が表示されます。 また、プロセスをバックグラウンドで実行しようとしましたが、ターミナルを閉じるとすぐに、プロセスも強制終了されます。 では、ローカルコンピュータをシャットダウンするときに、どのように実行したままにできますか? トップソリューション: Systemd(Linux) 発売(Mac) ノードウィンドウ(Windows) PM2(Node.js)


7
Pythonでバックグラウンドプロセスを開始する方法
シェルスクリプトをより読みやすいpythonバージョンに移植しようとしています。元のシェルスクリプトは、「&」でバックグラウンドでいくつかのプロセス(ユーティリティ、モニターなど)を開始します。Pythonで同じ効果を得るにはどうすればよいですか?Pythonスクリプトが完了したときに、これらのプロセスが停止しないようにしてください。どういうわけかデーモンの概念に関連していると思いますが、簡単にこれを行う方法を見つけることができませんでした。
295 python  process  daemon 

23
DockerコマンドはDockerデーモンに接続できません
Dockerに移行したいので、いじり始めました。VirtualBox Ubuntu 15.10(Wily Werewolf)のインストールにDockerをインストールしました。ここで提案されているように、基本的なnginx Dockerイメージを実行してみました。 $ docker run --name mynginx1 -P -d nginx Cannot connect to the Docker daemon. Is the docker daemon running on this host? そこで、Dockerが実行されているかどうかを確認しました。 $ sudo service docker status ● docker.service - Docker Application Container Engine Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled) Active: active (running) …
246 linux  ubuntu  docker  daemon 

16
Pythonでデーモンをどのように作成しますか?
Googleで検索すると、 x2コードスニペットが表示されます。最初の結果はこのコードレシピです、多くのドキュメンテーションと説明があり、その下にいくつかの有用な議論があるです。 ただし、他のコードサンプルには、それほど多くのドキュメントは含まれていませんが、start、stop、restartなどのコマンドを渡すためのサンプルコードが含まれています。また、デーモンがすでに実行されているかどうかなどを確認するのに便利なPIDファイルも作成します。 これらのサンプルはどちらもデーモンの作成方法を説明しています。考慮する必要がある追加の事項はありますか?1つのサンプルが他のサンプルよりも優れているのはなぜですか?
244 python  daemon 

7
デーモンスレッドの説明
ではPythonドキュメント 、それは言います: スレッドは「デーモンスレッド」としてフラグを立てることができます。このフラグの重要性は、デーモンスレッドだけが残されると、Pythonプログラム全体が終了することです。初期値は作成スレッドから継承されます。 誰かがそれが何を意味するのかを明確に説明したり、スレッドをdaemonicどこに設定するかを示す実際的な例を持っていますか? 明確にしてください。つまり、スレッドをdaemonicに設定しない唯一の状況は、メインスレッドが終了した後もスレッドを実行し続けたい場合です。

7
SIGTERMシグナルを正常に処理する方法は?
Pythonで書かれたそのような簡単なデーモンがあるとしましょう: def mainloop(): while True: # 1. do # 2. some # 3. important # 4. job # 5. sleep mainloop() そしてstart-stop-daemon、デフォルトでSIGTERM(TERM)シグナルを送信するを使用してデーモン化します--stop。 現在実行されているステップがであるとしましょう#2。そして、この瞬間にTERM信号を送信しています。 実行はすぐに終了します。 を使用してシグナルイベントを処理できることがわかりましたsignal.signal(signal.SIGTERM, handler)が、それでも現在の実行が中断され、コントロールがに渡されhandlerます。 だから、私の質問は-現在の実行を中断せずTERMに、別のスレッド(?)でシグナルを処理shutdown_flag = Trueしmainloop()て、正常に停止するように設定できるようにすることは可能ですか?

16
Node.jsアプリケーションを独自のプロセスとして実行するにはどうすればよいですか?
Node.jsをデプロイする最良の方法は何ですか? 私はDreamhost VPS(これがVMと呼ばれています)を使用しており、Node.jsをインストールしてプロキシを設定できました。ノードを開いた状態で開始したSSH接続を維持している限り、これはうまく機能します。

9
デーモンを作成するときにダブルフォークを実行する理由は何ですか?
私はpythonでデーモンを作成しようとしています。私が現在フォローしているいくつかの良いリソースを持っている次の質問を見つけましたが、なぜダブルフォークが必要なのか知りたいです。私はグーグルをひっくり返しました、そしてそれが必要であると宣言する多くのリソースを見つけました、しかし理由はではありません。 デーモンが制御端末を取得できないようにするためだと言う人もいます。2番目のフォークなしでこれをどのように実行しますか?反響とは何ですか?
165 python  unix  daemon 

14
phpスクリプトをデーモンプロセスとして実行する
私は、phpスクリプトをデーモンプロセスとして実行する必要があります(指示を待って何かを行う)。命令が到着したらすぐにアクションを実行する必要があるため、cronジョブはそれを行いません。メモリ管理の問題により、PHPがデーモンプロセスに最適なオプションではないことはわかっていますが、この場合、PHPを使用する必要があるさまざまな理由があります。デーモン(http://libslack.org/daemon)と呼ばれるlibslackのツールに出会いました。デーモンプロセスを管理するのに役立つようですが、過去5年間更新されていないので、いくつか知っていますか私の場合に適した他の選択肢。どんな情報でも大歓迎です。
154 php  linux  unix  daemon 

6
ps -ef | grepキーワードからPIDを取得
ps -ef | grep "keyword"デーモンプロセスのpidを決定するために使用したいと思います(ps -efの出力に一意の文字列があります)。 私はプロセスを殺すことができpkill keywordますpidを殺す代わりにpidを返すコマンドはありますか?(pidofまたはpgrepは機能しません)
111 linux  shell  daemon 

9
Linuxでデーモンを作成する
Linuxでは、停止できない、ファイルシステムの変更を監視するデーモンを追加したいと思います。変更が検出された場合は、開始されたコンソールへのパスと改行を書き込みます。 ファイルシステムを変更するコードはほぼ準備ができていますが、デーモンの作成方法がわかりません。 私のコードはここからです:http : //www.yolinux.com/TUTORIALS/ForkExecProcesses.html フォークの後に何をしますか? int main (int argc, char **argv) { pid_t pID = fork(); if (pID == 0) { // child // Code only executed by child process sIdentifier = "Child Process: "; } else if (pID < 0) { cerr << "Failed to fork" << endl; …
110 c  linux  daemon 

19
Pythonスクリプトが実行されているかどうかを確認します
Webアプリの一部としてPythonデーモンを実行しています/デーモンが実行されているかどうかを(Pythonを使用して)すばやく確認し、実行されていない場合は起動するにはどうすればよいですか? デーモンのクラッシュを修正するためにそのようにしたいので、スクリプトを手動で実行する必要はありません。呼び出されるとすぐに自動的に実行され、実行を続けます。 スクリプトが実行されているかどうかを(Pythonを使用して)確認するにはどうすればよいですか?
100 python  process  daemon 

12
UNIXで任意のスクリプトをデーモン化するにはどうすればよいですか?
私は、任意に、汎用スクリプトやコマンドを有効にすることができますdaemonizerたいデーモンを。 対処したい2つの一般的なケースがあります。 永久に実行する必要があるスクリプトがあります。停止した場合(または再起動時)、再起動します。同時に2つのコピーが実行されないようにしてください(コピーが既に実行されているかどうかを検出し、その場合は起動しないでください)。 単純なスクリプトまたはコマンドラインコマンドがあり、それを永久に繰り返し実行し続けたいと思っています(実行と実行の間に少し間を置いて)。この場合も、スクリプトの2つのコピーが同時に実行されないようにしてください。 もちろん、ケース2のスクリプトの周りに「while(true)」ループを記述して、ケース1のソリューションを適用するのは簡単ですが、より一般的なソリューションは、ケース1のスクリプトに適用されるため、ケース2を直接解決するだけです。ウェル(スクリプトがスクリプトが本当にあれば、これまで当然のことながら(死ぬために意図されていない場合、あなただけの短い、あるいはまったく一時停止をすることができず、一時停止が実際に問題ではない、その後死ぬことはありません))。 ソリューションには、たとえば、既存のスクリプトにファイルロックコードやPID記録を追加する必要がないことに注意してください。 より具体的には、次のように実行できるプログラム「デーモン化」が欲しい % daemonize myscript arg1 arg2 または、例えば、 % daemonize 'echo `date` >> /tmp/times.txt' これにより、times.txtに追加される日付のリストが増え続けます。(daemonizeの引数が上記のケース1のように永久に実行されるスクリプトである場合、daemonizeは引き続き正しく機能し、必要に応じて再起動します。)次に、上記のようなコマンドを.loginに追加できます。および/またはそれを1時間ごとまたは1分ごとにcronする(私がそれが予期せず死ぬことについてどれほど心配していたかによる)。 注意:デーモン化スクリプトは、デーモン化しているコマンド文字列を覚えておく必要があります。これにより、同じコマンド文字列が再度デーモン化されても、2番目のコピーは起動されません。 また、このソリューションはOS XとLinuxの両方で理想的に機能するはずですが、どちらか一方のソリューションは歓迎されます。 編集:で呼び出す必要がある場合は問題ありませんsudo daemonize myscript myargs。 (私がこれをすべて間違っていると思っている場合、または迅速で汚い部分的な解決策がある場合は、それも聞きたいです。) PS:それは便利だ場合は、ここにあるのpythonに似た質問特定。 そして、同様の質問に対するこの回答には、任意のスクリプトを素早く汚い悪魔化するための有用なイディオムがあるようです。

8
Mac Snow LeopardにインストールされているJenkinsを停止する方法は?
OSXにJenkins実行可能ファイルをインストールしましたが、実行を停止したいと思います。私がそれを殺したときはいつでも、それがどんなに関係なく、ただすぐに再開します。 私はジェンキンスのURLでexitコマンドを使ってみました: http://localhost:8080/exit コマンドを投稿するように求められ、要求に応じてサーバーがシャットダウンします。しかし、それは再起動します。 を使用してプロセスIDを検索し、ps強制終了(kill -9 pid)しようとしましたが、サーバーは要求に応じてすぐにシャットダウンします。しかし、それは再起動します。 GUIを使用してシャットダウンしようとしましたが、残念ながらそれを行う方法がないようです。 デーモンがどこかにある必要があるため、これは一般的なOSXの質問になります。
92 macos  jenkins  daemon 

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