.\" dpkg manual page - start-stop-daemon(8) .\" .\" Copyright 息 1999 Klee Dienes .\" Copyright 息 1999 Ben Collins .\" Copyright 息 2000-2001 Wichert Akkerman .\" Copyright 息 2002-2003 Adam Heath .\" Copyright 息 2004 Scott James Remnant .\" Copyright 息 2008-2012 Guillem Jover .\" .\" This is free software; you can redistribute it and/or modify .\" it under the terms of the GNU General Public License as published by .\" the Free Software Foundation; either version 2 of the License, or .\" (at your option) any later version. .\" .\" This is distributed in the hope that it will be useful, .\" but WITHOUT ANY WARRANTY; without even the implied warranty of .\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the .\" GNU General Public License for more details. .\" .\" You should have received a copy of the GNU General Public License .\" along with this program. If not, see . . .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH start\-stop\-daemon 8 2012\-06\-17 "Debian Project" "dpkg ユーティリティ" .SH 名前 start\-stop\-daemon \- システムデーモンプログラムの起動、停止 . .SH 書式 \fBstart\-stop\-daemon\fP [\fIoption\fP...] \fIcommand\fP . .SH 説明 \fBstart\-stop\-daemon\fP はシステムレベルのプロセスの生成や停止を制御するために使用される。また、 適切なオプションを指定することで、実行中のプロセスを確認することができる。 .PP 注記: \fB\-\-pidfile\fP を指定しない場合、\fBstart\-stop\-daemon\fP は \fBkillall\fP(1) と類似の動作を行う。\fBstart\-stop\-daemon\fP は、(指定されていれば) プロセス名、uid、および gid にマッチするプロセスをプロセステーブルから検索する。\fB\-\-start\fP が指定されている場合にマッチするプロセスがあれば、デーモンは起動されない。\fB\-\-stop\fP が指定されていれば、マッチするプロセスすべてに TERM シグナル (もしくは \fB\-\-signal\fP や \fB\-\-retry\fP により指定されたシグナル) が送られる。そのため、\fB\-\-stop\fP を指定されても動作しつづける必要があるような、長寿命の子プロセスを持つデーモンには、 pidfile を指定しなければならない。 . .SH コマンド .TP \fB\-S\fP, \fB\-\-start\fP [\fB\-\-\fP] \fIarguments\fP 指定されたプロセスの存在を確認する。該当するプロセスが存在する場合、 \fBstart\-stop\-daemon\fP は何もせず、エラーステータス 1 を返して終了する (\fB\-\-oknodo\fP が指定された場合は、0 を返す)。該当するプロセスが存在しない場合、 \fB\-\-exec\fP により、もしくは \fB\-\-startas\fP が指定された場合はこれにより指定される実行ファイルを起動する。コマンドライン上で \fB\-\-\fP 以降に与えられた任意の引数は起動されるプログラムにそのまま引き渡される。 .TP \fB\-K\fP, \fB\-\-stop\fP 指定されたプロセスの存在を確認する。該当するプロセスが存在する場合、 \fBstart\-stop\-daemon\fP は \fB\-\-signal\fP により指定されたシグナルをそのプロセスに送り、エラーステータス 0 を返して終了する。該当するプロセスが存在しない場合、 \fBstart\-stop\-daemon\fP はエラーステータス 1 を返して終了する( \fB\-\-oknodo\fP が指定された場合は 0 を返す)。\fB\-\-retry\fP を指定した場合、\fBstart\-stop\-daemon\fP はそのプロセスが終了したことを確認する。 .TP \fB\-T\fP, \fB\-\-status\fP 指定されたプロセスの存在を確認し、LSB の Init Script Action に基づいた終了ステータスを返却する。 .TP \fB\-H\fP, \fB\-\-help\fP 使用方法に関する情報を表示し、終了する。 .TP \fB\-V\fP, \fB\-\-version\fP バージョンと著作権に関する情報を表示し、終了する。 . .SH マッチ用オプション .TP \fB\-p\fP, \fB\-\-pidfile\fP \fIpid\-file\fP プロセスが \fIpid\-file\fP を作成したかどうかをチェックする。このオプションを単体で使用した場合、以前のプロセスが \fIpid\-file\fP を削除できないまま終了してしまった際に、意図しないプロセスが動作中であると判断される場合があるため留意すること。 .TP \fB\-x\fP, \fB\-\-exec\fP \fIexecutable\fP プロセスが指定した \fIexecutable\fP のインスタンスであるかどうかをチェックする。\fIexecutable\fP 引数は絶対パス名であること。インタプリタ型のスクリプトに対して指定した場合、executable はインタプリタ自体を指してしまうため、期待する動作とならない点に留意すること。chroot 内で動作しているプロセスもマッチしてしまうため、これ以外の制約との組み合わせが必要となる点に注意すること。 .TP \fB\-n\fP, \fB\-\-name\fP \fIprocess\-name\fP プロセスが \fIprocess\-name\fP であるかどうかをチェックする。\fIprocess\-name\fP は通常プロセスのファイル名であるが、プロセス自身によって変更することも可能である。大半のシステムにおいて、この情報はカーネル内の process comm name から取得されるため、比較的短い名称である必要がある (15 文字を超える名称は移植性がないと判断される)点に留意すること。 .TP \fB\-u\fP, \fB\-\-user\fP \fIusername\fP|\fIuid\fP プロセスが \fIusername\fP もしくは \fIuid\fP で指定されたユーザの所有となっているかをチェックする。このオプションを単体で用いた場合、指定されたユーザの所有するすべてのプロセスが合致するかをチェックする点に留意すること。 . .SH オプション .TP \fB\-g\fP, \fB\-\-group\fP \fIgroup\fP|\fIgid\fP プロセスを開始する時点で、\fIgroup\fP や \fIgid\fP を変更する。 .TP \fB\-s\fP, \fB\-\-signal\fP \fIsignal\fP \fB\-\-stop\fP と同時に指定することで、プロセスを停止するために送信するシグナルを指定する (デフォルトは TERM)。 .TP \fB\-R\fP, \fB\-\-retry\fP \fItimeout\fP|\fIschedule\fP \fB\-\-stop\fP と同時に指定することで、\fBstart\-stop\-daemon\fP にプロセスの終了を確認させる。これにより、マッチした実行中のプロセスが全て終了するまで繰り返し確認が行われる。プロセスが終了しなければ、スケジュールにより指定されたアクションが実行される。 \fIschedule\fP のかわりに \fItimeout\fP が指定されている場合、 \fIsignal\fP\fB/\fP\fItimeout\fP\fB/KILL/\fP\fItimeout\fP スケジュールが使われる。ここで \fIsignal\fP は \fB\-\-signal\fP で指定されるシグナルである。 スケジュール \fIschedule\fP は、スラッシュ (\fB/\fP) で区切られた少なくとも 2 つの要素からなるリストである。それぞれの要素は、\fB\-\fP\fIsignal\-number\fP もしくは [\fB\-\fP]\fIsignal\-name\fP の場合は送るべきシグナル、 \fItimeout\fP の場合はプロセスが終了するのを待つ秒数、 \fBforever\fP の場合は必要な限り、残りの \fIschedule\fP を繰り返し適用することを意味する。 \fIschedule\fP が終了し、\fBforever\fP が指定されていない場合、 \fBstart\-stop\-daemon\fP はエラー状態 2 で終了する。schedule が指定されている場合、\fB\-\-signal\fP で指定したシグナルは無視される。 .TP \fB\-a\fP, \fB\-\-startas\fP \fIpathname\fP \fB\-\-start\fP と同時に指定することで、\fIpathname\fP により指定されるプロセスを起動する。このオプションが指定されない場合、 \fB\-\-exec\fP に与えられる引数がデフォルトになる。 .TP \fB\-t\fP, \fB\-\-test\fP 実行しようとする処理内容を出力し,それに伴い適切な返り値が設定されるが、実際の処理は行わない。 .TP \fB\-o\fP, \fB\-\-oknodo\fP 処理が何も行われない (又は、行なわれないと想定される) 場合、終了ステータス 1 のかわりに 0 を返す。 .TP \fB\-q\fP, \fB\-\-quiet\fP 情報メッセージを出力しない。エラーメッセージのみ出力する。 .TP \fB\-c\fP, \fB\-\-chuid\fP \fIusername\fP|\fIuid\fP[\fB:\fP\fIgroup\fP|\fIgid\fP] プロセスを起動する前に指定されたユーザ名やユーザ ID に変更する。 \fB:\fP に続いてグループ名またはグループ ID を与えることによりグループも指定できる。これは `chown' コマンドと同じ書式 (\fIuser\fP\fB:\fP\fIgroup\fP) である。ユーザ名のみを指定した場合、そのユーザのプライマリグループの GID が用いられる。このオプション ( \fB:\fP 書式) を使用した時には、 \fB\-\-group\fP オプションが指定されていない場合であっても、指定された場合と同様にプライマリグループと補助グループが設定されることを認識しておく必要がある。\fB\-\-group\fP オプションは、(あるプロセスについて \fBnobody\fP のような汎用のユーザをグループに追加するといった) ユーザが通常メンバとなっていないグループを指定する場合にのみ使用する。 .TP \fB\-r\fP, \fB\-\-chroot\fP \fIroot\fP プロセスを起動する前に、\fIroot\fP に対して chdir と chroot を実行する。pidfile は chroot 後に、書き出されることに注意すること。 .TP \fB\-d\fP, \fB\-\-chdir\fP \fIpath\fP プロセスを起動する前に、\fIpath\fP に chdir する。\fB\-r\fP|\fB\-\-chroot\fP オプションを同時に指定した場合は、chroot の後に chdir する。そうでない場合、start\-stop\-daemon は、プロセスを起動する前に root ディレクトリに chdir する。 .TP \fB\-b\fP, \fB\-\-background\fP 通常、自身をデタッチできないプログラムで使用される。このオプションを指定した場合、 \fBstart\-stop\-daemon\fP は自身を対象プロセスの起動前に fork し、以後バックグラウンドで実行させる。 \fB警告: start\-stop\-daemon\fP は \fBいかなる\fP理由によってプロセスの起動に失敗した場合であっても、その終了ステータスをチェックできなくなる。このオプションは最終手段であり、自身の fork に意味のないプログラムや、fork を自身で行うためのコード追加が現実的でないプログラム以外での使用を意図していない。 .TP \fB\-C\fP, \fB\-\-no\-close\fP デーモンにバックグラウンドでの動作を強制する際に、ファイルディスクリプタのクローズを一切行わない。プロセスの出力を参照する、ファイルディスクリプタの出力をプロセスの出力をロギングするためにリダイレクトするといったデバッグ目的で使用される。\fB\-\-background\fP を指定した際にのみ有効である。 .TP \fB\-N\fP, \fB\-\-nicelevel\fP \fIint\fP プロセスを起動する前にプロセスのプライオリティを変更する。 .TP \fB\-P\fP, \fB\-\-procsched\fP \fIpolicy\fP\fB:\fP\fIpriority\fP プロセスを起動する前に、スケジューラのポリシーと優先順位を変更する。優先順位の指定は任意であり、\fB:\fP に続いて値を設定することで指定する。デフォルトの \fIpriority\fP は 0 である。現在サポートされているポリシーの値は \fBother\fP, \fBfifo\fP, \fBrr\fP である。 .TP \fB\-I\fP, \fB\-\-iosched\fP \fIclass\fP\fB:\fP\fIpriority\fP プロセスを起動する前に、IO スケジューラのクラスと優先順位を変更する。優先順位の指定は任意であり、\fB:\fP に続いて値を設定することで指定する。デフォルトの \fIpriority\fP は 4 であるが、\fIclass\fP が \fBidle\fP の場合の \fIpriority\fP は常に 7 となる。現在サポートされている \fIclass\fP の値は \fBidle\fP, \fBbest\-effort\fP, \fBreal\-time\fP である。 .TP \fB\-k\fP, \fB\-\-umask\fP \fImask\fP プロセスを起動する前にプロセスの umask を設定する。 .TP \fB\-m\fP, \fB\-\-make\-pidfile\fP 自分自身で PID ファイルを作成しないプログラムを起動する際に使用する。このオプションにより、プロセスの起動直前に \fBstart\-stop\-daemon\fP は \fB\-\-pidfile\fP で参照されるファイルを作成し、pid の値を格納する。このファイルはプログラムの停止時に削除されないことに注意。\fB注記:\fP このオプションは動作しない場合がある。特に、プログラムの実行時にそのメインのプロセスから fork するようなプログラムでは正しく動作しない。このため、通常は \fB\-\-background\fP オプションと併用する場合にのみ有用である。 .TP \fB\-v\fP, \fB\-\-verbose\fP 詳細な情報を出力する。 . .SH 終了ステータス .TP \fB0\fP 指定されたアクションが実行された。\fB\-\-oknodo\fP が指定された場合、何も行われなかった場合も意味する。これは、\fB\-\-start\fP が指定されたがマッチするプロセスが実行されていた場合、\fB\-\-stop\fP が指定されたがマッチするプロセスが存在しなかった場合に発生しうる。 .TP \fB1\fP \fB\-\-oknodo\fP が指定されなかった場合に、何も行われなかった。 .TP \fB2\fP \fB\-\-stop\fP および \fB\-\-retry\fP が指定されたが、規定時間の最後まで到達したにも関わらず、プロセスがまだ実行されている。 .TP \fB3\fP その他のエラー。 .PP \fB\-\-status\fP コマンドを実行した際には、以下の戻り値が返される: .TP \fB0\fP プログラムは実行中である。 .TP \fB1\fP プログラムは実行中でないが、pid ファイルが存在している。 .TP \fB3\fP プログラムは実行中でない。 .TP \fB4\fP プログラムの状況を確認できない。 . .SH 例 既に実行中でない場合に、\fBfood\fP デーモンを (プロセス名 food、実行ユーザ food 、PID 情報を food.pid に格納で) 起動する。 .IP .nf start\-stop\-daemon \-\-start \-\-oknodo \-\-user food \-\-name food \e \-\-pidfile /run/food.pid \-\-startas /usr/sbin/food \e \-\-chuid food \-\- \-\-daemon .fi .PP \fBfood\fP に \fBSIGTERM\fP を送信し、停止するまで 5 秒間待機する: .IP .nf start\-stop\-daemon \-\-stop \-\-oknodo \-\-user food \-\-name food \e \-\-pidfile /run/food.pid \-\-retry 5 .fi .PP \fBfood\fP 停止のためのカスタムスケジュールのデモ: .IP .nf start\-stop\-daemon \-\-stop \-\-oknodo \-\-user food \-\-name food \e \-\-pidfile /run/food.pid \-\-retry=TERM/30/KILL/5 .fi .SH 翻訳者 高橋 基信 . 喜瀬 浩 . 関戸 幸一 . 鍋谷 栄展 . 倉澤 望 . 石川 睦 . 鵜飼 文敏 . 中野 武雄 . .SH 翻訳校正 Debian JP Documentation ML .