start-stop-daemon

start-stop-daemon(8)              dpkg ユーティリティ              start-stop-daemon(8)



名前
       start-stop-daemon - システムデーモンプログラムの起動、停止

書式
       start-stop-daemon [option...] command

説明
       start-stop-daemon はシステムレベルのプロセスの生成や停止を制御するために使用される。また、
       適切なオプションを指定することで、実行中のプロセスを確認することができる。

       注記: --pidfile を指定しない場合、start-stop-daemon killall(1)
       と類似の動作を行う。start-stop-daemon は、(指定されていれば) プロセス名、uid、および gid
       にマッチするプロセスをプロセステーブルから検索する。--start
       が指定されている場合にマッチするプロセスがあれば、デーモンは起動されない。--stop が指定されていれば、マッチするプロセスすべてに TERM
       シグナル (もしくは --signal --retry により指定されたシグナル) が送られる。そのため、--stop
       を指定されても動作しつづける必要があるような、長寿命の子プロセスを持つデーモンには、 pidfile を指定しなければならない。

コマンド
       -S, --start [--] arguments
              指定されたプロセスの存在を確認する。該当するプロセスが存在する場合、 start-stop-daemon
              は何もせず、エラーステータス 1 を返して終了する (--oknodo が指定された場合は、0
              を返す)。該当するプロセスが存在しない場合、 --exec により、もしくは --startas
              が指定された場合はこれにより指定される実行ファイルを起動する。コマンドライン上で --
              以降に与えられた任意の引数は起動されるプログラムにそのまま引き渡される。

       -K, --stop
              指定されたプロセスの存在を確認する。該当するプロセスが存在する場合、 start-stop-daemon --signal
              により指定されたシグナルをそのプロセスに送り、エラーステータス 0 を返して終了する。該当するプロセスが存在しない場合、
              start-stop-daemon はエラーステータス 1 を返して終了する( --oknodo が指定された場合は 0
              を返す)。--retry を指定した場合、start-stop-daemon はそのプロセスが終了したことを確認する。

       -T, --status
              指定されたプロセスの存在を確認し、LSB の Init Script Action に基づいた終了ステータスを返却する。

       -H, --help
              使用方法に関する情報を表示し、終了する。

       -V, --version
              バージョンと著作権に関する情報を表示し、終了する。

マッチ用オプション
       -p, --pidfile pid-file
              Check whether a process has created the file pid-file. Note: using
              this matching option alone might cause unintended processes to be
              acted on, if the old process terminated without being able to
              remove the pid-file.

       -x, --exec executable
              Check for processes that are instances of this executable. The
              executable argument should be an absolute pathname. Note: this
              might not work as intended with interpreted scripts, as the
              executable will point to the interpreter. Take into account
              processes running from inside a chroot will also be matched, so
              other match restrictions might be needed.

       -n, --name process-name
              Check for processes with the name process-name. The process-name
              is usually the process filename, but it could have been changed by
              the process itself. Note: on most systems this information is
              retrieved from the process comm name from the kernel, which tends
              to have a relatively short length limit (assuming more than 15
              characters is non-portable).

       -u, --user username|uid
              Check for processes owned by the user specified by username or
              uid. Note: using this matching option alone will cause all
              processes matching the user to be acted on.

オプション
       -g, --group group|gid
              プロセスを開始する時点で、group gid を変更する。

       -s, --signal signal
              --stop と同時に指定することで、プロセスを停止するために送信するシグナルを指定する (デフォルトは TERM)。

       -R, --retry timeout|schedule
              --stop と同時に指定することで、start-stop-daemon
              にプロセスの終了を確認させる。これにより、マッチした実行中のプロセスが全て終了するまで繰り返し確認が行われる。プロセスが終了しなければ、スケジュールにより指定されたアクションが実行される。

              schedule のかわりに timeout が指定されている場合、 signal/timeout/KILL/timeout
              スケジュールが使われる。ここで signal --signal で指定されるシグナルである。

              スケジュール schedule は、スラッシュ (/) で区切られた少なくとも 2
              つの要素からなるリストである。それぞれの要素は、-signal-number もしくは [-]signal-name
              の場合は送るべきシグナル、 timeout の場合はプロセスが終了するのを待つ秒数、 forever の場合は必要な限り、残りの
              schedule を繰り返し適用することを意味する。

              schedule が終了し、forever が指定されていない場合、 start-stop-daemon はエラー状態 2
              で終了する。schedule が指定されている場合、--signal で指定したシグナルは無視される。

       -a, --startas pathname
              --start と同時に指定することで、pathname により指定されるプロセスを起動する。このオプションが指定されない場合、
              --exec に与えられる引数がデフォルトになる。

       -t, --test
              実行しようとする処理内容を出力し,それに伴い適切な返り値が設定されるが、実際の処理は行わない。

       -o, --oknodo
              処理が何も行われない (又は、行なわれないと想定される) 場合、終了ステータス 1 のかわりに 0 を返す。

       -q, --quiet
              情報メッセージを出力しない。エラーメッセージのみ出力する。

       -c, --chuid username|uid[:group|gid]
              プロセスを起動する前に指定されたユーザ名やユーザ ID に変更する。 : に続いてグループ名またはグループ ID
              を与えることによりグループも指定できる。これは `chown' コマンドと同じ書式 (user:group)
              である。ユーザ名のみを指定した場合、そのユーザのプライマリグループの GID が用いられる。このオプション ( : 書式)
              を使用した時には、 --group
              オプションが指定されていない場合であっても、指定された場合と同様にプライマリグループと補助グループが設定されることを認識しておく必要がある。--group
              オプションは、(あるプロセスについて nobody のような汎用のユーザをグループに追加するといった)
              ユーザが通常メンバとなっていないグループを指定する場合にのみ使用する。

       -r, --chroot root
              プロセスを起動する前に、root に対して chdir と chroot を実行する。pidfile は chroot
              後に、書き出されることに注意すること。

       -d, --chdir path
              プロセスを起動する前に、path に chdir する。-r|--chroot オプションを同時に指定した場合は、chroot
              の後に chdir する。そうでない場合、start-stop-daemon は、プロセスを起動する前に root ディレクトリに
              chdir する。

       -b, --background
              通常、自身をデタッチできないプログラムで使用される。このオプションを指定した場合、 start-stop-daemon
              は自身を対象プロセスの起動前に fork し、以後バックグラウンドで実行させる。 警告: start-stop-daemon いかなる理由によってプロセスの起動に失敗した場合であっても、その終了ステータスをチェックできなくなる。このオプションは最終手段であり、自身の
              fork に意味のないプログラムや、fork を自身で行うためのコード追加が現実的でないプログラム以外での使用を意図していない。

       -C, --no-close
              Do not close any file descriptor when forcing the daemon into the
              background.  Used for debugging purposes to see the process
              output, or to redirect file descriptors to log the process output.
              Only relevant when using --background.

       -N, --nicelevel int
              プロセスを起動する前にプロセスのプライオリティを変更する。

       -P, --procsched policy:priority
              プロセスを起動する前に、スケジューラのポリシーと優先順位を変更する。優先順位の指定は任意であり、:
              に続いて値を設定することで指定する。デフォルトの priority は 0 である。現在サポートされているポリシーの値は
              other, fifo, rr である。

       -I, --iosched class:priority
              プロセスを起動する前に、IO スケジューラのクラスと優先順位を変更する。優先順位の指定は任意であり、:
              に続いて値を設定することで指定する。デフォルトの priority は 4 であるが、class idle の場合の
              priority は常に 7 となる。現在サポートされている class の値は idle, best-effort,
              real-time である。

       -k, --umask mask
              プロセスを起動する前にプロセスの umask を設定する。

       -m, --make-pidfile
              自分自身で PID ファイルを作成しないプログラムを起動する際に使用する。このオプションにより、プロセスの起動直前に
              start-stop-daemon --pidfile で参照されるファイルを作成し、pid
              の値を格納する。このファイルはプログラムの停止時に削除されないことに注意。注記:
              このオプションは動作しない場合がある。特に、プログラムの実行時にそのメインのプロセスから fork
              するようなプログラムでは正しく動作しない。このため、通常は --background オプションと併用する場合にのみ有用である。

       -v, --verbose
              詳細な情報を出力する。

終了ステータス
       0      指定されたアクションが実行された。--oknodo が指定された場合、何も行われなかった場合も意味する。これは、--start
              が指定されたがマッチするプロセスが実行されていた場合、--stop
              が指定されたがマッチするプロセスが存在しなかった場合に発生しうる。

       1      --oknodo が指定されなかった場合に、何も行われなかった。

       2      --stop および --retry が指定されたが、規定時間の最後まで到達したにも関わらず、プロセスがまだ実行されている。

       3      その他のエラー。

       --status コマンドを実行した際には、以下の戻り値が返される:

       0      プログラムは実行中である。

       1      プログラムは実行中でないが、pid ファイルが存在している。

       3      プログラムは実行中でない。

       4      プログラムの状況を確認できない。


       既に実行中でない場合に、food デーモンを (プロセス名 food、実行ユーザ food 、PID 情報を food.pid に格納で)
       起動する。

              start-stop-daemon --start --oknodo --user food --name food \
                   --pidfile /run/food.pid --startas /usr/sbin/food \
                   --chuid food -- --daemon

       food SIGTERM を送信し、停止するまで 5 秒間待機する:

              start-stop-daemon --stop --oknodo --user food --name food \
                   --pidfile /run/food.pid --retry 5

       food 停止のためのカスタムスケジュールのデモ:

              start-stop-daemon --stop --oknodo --user food --name food \
                   --pidfile /run/food.pid --retry=TERM/30/KILL/5

翻訳者
       高橋 基信 <monyo@monyo.com>.  喜瀬 浩 <kise@fuyuneko.jp>.  関戸 幸一
       <sekido@mbox.kyoto-inet.or.jp>.  鍋谷 栄展 <nabe@debian.or.jp>.  倉澤 望
       <nabetaro@debian.or.jp>.  石川 睦 <ishikawa@linux.or.jp>.  鵜飼 文敏
       <ukai@debian.or.jp>.  中野 武雄 <nakano@apm.seikei.ac.jp>.

翻訳校正
       Debian JP Documentation ML <debian-doc@debian.or.jp>.



Debian Project                     2012-06-17               start-stop-daemon(8)