web-dev-qa-db-ja.com

スーパーユーザーとして起動時にスクリプトを実行するにはどうすればよいですか?

Ubuntuサーバーで起動時にコマンドを実行したい。誰もこれを行う方法を知っていますか? /etc/rc.localはスーパーユーザーとして実行されますか?任意の助けをいただければ幸いです。ありがとう!

4
Qwintus

/etc/rc.localはルートとして実行されます。

Initプロセスのほとんどはルートとして実行されるか、その方法で開始されます。

9
coteyr

これを行うことができる場所がいくつかあります。

/etc/init.d(および/etc/rc[runlevel].dへのリンクを作成する-通常2)は非常にうまく機能するため、そこに起動ビットとシャットダウンビットを指定できます。

それは一種の古い方法です(ただし、非常に簡単です)。新興企業で何かをすることもできます。 このページ をご覧ください(「ジョブの作成」セクションをご覧ください)。

大きな落とし穴-通常、パスは期待したものとは異なります。ですから、最初にスクリプトから "echo $ PATH>/init_path"の行に沿って何かを実行して、問題があるかどうかを確認することをお勧めします(/ init_pathをチェックして、このファイルを削除しても安全です)。スクリプトでパスを指定するのは簡単ですが、PATHで何かを必要とするスクリプトから何かを実行する場合は、それに応じてPATH変数を設定する価値があります。

0
Nevyn