初期化スクリプトは、特定のユーザーでスクリプトを実行します。

初期化スクリプトは、特定のユーザーでスクリプトを実行します。
/apps/data/service/bin/startup.sh

これはRHELの起動中に実行したいスクリプトです。ランレベル3でのみ実行したいです。

このスクリプトを特定のユーザーとして実行したいと思います。たとえば、次のようになります。アプリケーション管理

それでは、これを達成するために推奨される方法は何ですか?私はこれに関する多くの記事を読んでいましたが、今は混乱しています。

ソフトリンクを作成します。/apps/data/service/bin/startup.sh下に/etc/init.dスクリプトを起動すれば十分ですか?私の理解は正しいですか?

特定のユーザーでスクリプトを実行したいのですが、次のようにinit.dの下にファイルを生成する必要がありますか?

su appadmin -c "/apps/data/service/bin/startup.sh" 

実行可能にしますか?

答え1

あなたは間違いなくそれを調べる必要があります/etc/init.d/functions。という素晴らしい機能がありますdaemon。指定されたユーザーでプログラムを実行します。

例:

daemon --user=your_user /apps/data/service/bin/startup.sh &>/dev/null & ← or some logfile maybe…

他のサービスから初期化スクリプトをコピーできます;-)

HTH、乾杯

関連情報