CentOS Linuxスタートアップでスクリプトを実行する方法


13

スクリプトを1つ入れます/etc/init.d/abc.sh。起動時に実行するようになりました。

chkconfigでこれを行うにはどうすればよいですか?

chkconfig --add abc.sh

しかし、私はそれがどのように機能するのか分かりません。


で古いが、それでも有用な製品がありますlinuxjournal.com/article/4445は
RedGrittyBrick

回答:


8

よく使う

/etc/rc.local

以下のようなので...

echo "/etc/init.d/abc.sh" >> /etc/rc.local

yaのためにそれをハックする必要があります。おそらくもっと適切な場所がありますが、ほとんどのディストリビューションでは機能しているようです。


そのスクリプトはデーモンであり、私は持っていますabc start stop restart configurd
Mirage

「service abc start」
ジェームズTスネル

8

起動時に実行されるスクリプトは、スクリプトとは呼ばれていません。起動時にスクリプトを実行する場合は、次を変更します/etc/crontab

@reboot /path/to/script

1
cronに配置すると、rootユーザーとして実行されますか?
キンバリーW

2
それは素晴らしいアイデアです!ポータブルでシンプルです。ブートに害はありません。システムモジュールは、正確なユーザー権限で起動した後、それはCentOSの7上の私の場合、それは「/に/スクリプト@rebootルート/パス」になります....来る
ニコラスGuérinet

2

他の既存の初期化スクリプトを見てください。すべての適切なrhスタイルのinitスクリプトには、3つのヒントがあります。ランレベル、スクリプトを開始する場所、およびスクリプトを開始/停止する優先順位です。スタート+ストップの合計は通常100です。

このコメント行は、chkconfigによって評価されます。



1

あなたは正しい軌道に乗っています。bashスクリプトは適切な場所にあり、chkconfigに追加しました。つまり、スクリプトはインストールされています。

それ/etc/init.dはへのシンボリックリンクであることに注意してください/etc/rc.d/init.d

スクリプトを追加したら、アクティブにするランレベルを選択する必要があります。 chkconfig --level 35 abc on。最も一般的なスタートアップであるランレベル3および5でスクリプトをアクティブにします。

ご相談ください chkconfig --helpは。

PS。あなたはまた、使用することができるntsysvであるTUI chkconfigのため。

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