開始するサービスに引数を渡したいのですが。例えば。サーバーをデバッグモードで起動します。お気に入り、
service jboss-as start debug
またはそのような。しかし、service
はそれをサポートしていないようです。
何か方法はありますか? (それが重要な場合はRHEL 6の場合。)
注:これは buntu/Linux:起動スクリプト(sysvinit)の起動パラメーターは通常どのように定義されていますか? に似ていますが、同じではありません。
RHELには/ etc/sysconfigフォルダーがあります。ここでは、起動パラメータを定義します。起動スクリプトには、次のようなものを含めます。
if [ -f /etc/sysconfig/$prog ] ; then
. /etc/sysconfig/$prog
fi
例については、既存のサービスを確認してください。
開発の場合は、エクスポートした変数(.bashrcなど)にスタートアップパラメータを入れ、いつでも手動でオーバーライドできます。
[〜#〜]編集[〜#〜]
本当にservice
を使用したい場合は、他にいくつかのオプションがあります。
スクリプトは少なくともstart
とstop
をサポートする必要があります。ただし、debug
コマンドを実装することもできます。そして、プログラムを次のように開始します。
service foo debug
別の方法は、スクリプトの2番目の引数を確認し、プログラムを次のように開始することです。
service foo start debug
Initスクリプトを次のように変更します。
case "$1" in
start)
if [ "$2" = "debug" ]
then
start_debug
else
start
fi
;;
Ubuntuでは、起動パラメータは通常次の場所にあります。
/etc/default/<service_name>
上記で提案したように、その存在を確認した後、システム固有のファイルから追加のパラメーターを調達します。
サービスの起動にオプションを追加するのは好きではありません。