以前のLinuxカーネル(3.0.0)は起動時にスクリプトを実行します。

以前のLinuxカーネル(3.0.0)は起動時にスクリプトを実行します。

システムの起動時にスクリプトを実行する必要がありますが、Linuxのバージョンが非常に古くなったため、次のようになります。

  1. いいえrc.local作成してコマンドを発行しても決して実行されません。
  2. crontab別言します。
  3. スクリプトを追加してもinit.d結果は出ませんでした。
  4. 明らかにUpstartアプリがなく、SSH経由でのみデバイスにアクセスできるため、インストールできません。

手動で実行すると確かに動作するので、スクリプト自体が動作すると確信しています。デバイスは組み込みLinuxデバイス(Ettus E100、協会)。私のLinuxバージョンは3.0.0です。正確なバージョンは次のとおりです。

  1. $ cat /proc/version返品: Linux version 3.0.0 (oe-classic@oebuild) (gcc version 4.5.3 20110311 (prerelease) (GCC) ) #1 Thu Mar 28 18:15:38 PDT 2013

  2. $ dmesg | head -1返品: [ 0.000000] Linux version 3.0.0 (oe-classic@oebuild) (gcc version 4.5.3 20110311 (prerelease) (GCC) ) #1 Thu Mar 28 18:15:38 PDT 2013

  3. $ runlevel返品: N 5

  4. $ cat /etc/issue何も返しません。

  5. $ cat /etc/*-release「該当するファイルやディレクトリがありません」というエラーを返します。

  6. $ lsb_release -a「コマンドが見つかりません」エラーを返します。

  7. $ uname -a返品: Linux ettus-e1xx 3.0.0 #1 Thu Mar 28 18:15:38 PDT 2013 armv7l GNU/Linux

私のディストリビューションを確認する方法がわかりません。

起動時にスクリプトを実行する他の方法はありますか?

ベストアンサー1

組み込みLinuxを実行しているため、機能が多少制限されています。しかし、Sys V initがあるようですので、rc.localをエミュレートできます。

/etc/rc.local必要な指示を含むファイルを作成し、次のコマンドを実行します。

#ln -s /etc/rc.local /etc/rc5.d/S99rclocal

またはsudoがある場合:

$sudo ln -s /etc/rc.local /etc/rc5.d/S99rclocal

おすすめ記事