起動時のBashスクリプト?(Linux)


12

再起動時にbashスクリプトを作成/実行する方法はありますか(たとえば、Debian / Ubuntuのように、自宅の私の2つのボックスにあるものです)。

また、cronジョブを実行するための推奨ガイドはありますか?私はそれらに完全に新しいです(しかし、彼らは大いに役立つでしょう)

回答:


21

Ubuntu / Debian / Centosでは、@ rebootを実行するようにcronジョブを設定できます。これは、システムの起動時に1回実行されます。crontab -eを使用してcrontabを編集し、次の例のような行を追加します。例

@reboot /path/to/some/script 

cronを探すと、たくさんのリソースがあります。このサイトにはいくつかの良い例があります。


7

多くのブートで何かを開始する別の典型的な方法* nixのプラットフォームがある(または、私はこれが緩んで賛成に開始することができると考えた-参照の代替案を)特定のOS /ディストリビューションによっては、ディレクトリ内のスクリプトを置くために、であるかもしれません以下のようなもの/etc/rc2.d/etc/rc3.d/etc/rc/rc3.d、など(異なる分布は、数はどこから来るのである異なる「実行レベル」を、使用-以下のリンクを参照)。多くの場合、これらは手作業/etc/init.dでより簡単に実行できるようにからに、またはからファイルにシンボリックリンクされており、ほとんどの* nixプラットフォームで「start」および/または「stop」引数を取り、「status」、「restart」、多くのLinuxプラットフォームなどで。そのようなシステムでは、これらは通常initinittab。* BSDシステムには、同様の概念の異なるスタイルがあり、上記にリンクされているように、多くのバリエーションがあります。

上記のスタイルでは、たとえば/etc/rc2.d(デフォルトのランレベルが2のシステムの)スクリプトは、通常、文字SまたはKで始まり、2桁の数字で始まります。Sで始まるスクリプトは、 "start"の引数を使用してレベル2にブートするときに、辞書式順序(通常は数値順序に変換)で実行されます。シャットダウンすると、接頭辞Kのスクリプトが同様に実行され、引数「stop」が付けられます。

のファイル/etc/init.d(または/etc/rc/init.d、またはその他のバリエーション)には、SおよびKプレフィックス、または数値なしで名前が付けられます。通常、さまざまな/etc/rc?.dディレクトリ内のファイルは、実際のファイルにシンボリックリンクし、多くの場合、相対パスプレフィックスを介して参照されます../init.d/

さまざまなユーティリティがさまざまなシステムに存在し、これらを管理したり、物事のオン/オフを切り替えchkconfigたりします。リンク。ただし、実行する必要があるかどうかを確認するためにスクリプトによってチェックされます。私が考える IRIXはこのような何かを持っている最初のOSでした。その後、私が持っていたことをRedHatの一部のバージョンでは、同じ名前のツールがありましたが、それは実際にシンボリックリンクを管理し、少し異なっを振る舞っ-を参照してchkconfig(8)、私はおそらく同じ(または非常に類似した)バージョンと思われるもののために私がその時使用したように。

私がアクセスできるUbuntu 9.04システムでupdate-rc.dは、実行するスクリプトのように見えます。

あなたは用途がinittabファイルというシステムを使っているのであれば、あなたも、直接そこに物事を追加することができます-あなたは、ブート時に一度だけではない実行することをもののために特に便利ですが、積極的に監視していると(でinitに)respawnもし彼らこれまでクラッシュまたは終了します。man inittab追加情報については、システムの出力(ある場合)を参照してください。および/またはman initなど。たくさんの異なるフレーバーがあり、私は(現在)DebianまたはUbuntuのいずれにもひどく精通していないので、何を指しているのか正確にはわからないが、うまくいけばこれはいくつかの出発点を与える。

crontobの@rebootセクションは私にとっては新しいものですが、便利なオプションのようにも思えます。ただし、多くの場合にinitスクリプトを使用することをお勧めします。ただしman 5 crontab、cron構成に含めることができるもの、実行するように指示する方法、およびいつ(cronのVixie / ISCバージョンを想定する[ cron履歴を参照]を含む@rebootに関する詳細情報を参照してください。

それがお役に立てば幸いです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.