web-dev-qa-db-ja.com

init.dスクリプトをインストールする方法は?

タスクをスケジュールするためにセロリを実行するために、init.dスクリプトをインストールしようとしています。ここに私が従った手順があります:

  • ファイルをコピーしました celeryd そしてそれをフォルダー/ etc/init.d /に貼り付けました
  • 構成ファイルcelerydをフォルダー/ etc/default /に作成しました

Sudo /etc/init.d/celeryd startで起動しようとすると、エラーSudo: /etc/init.d/celeryd: command not foundがスローされます

Init.dのインストール方法についてGoogleで調べましたが、これは SO-question です.

それはuname -aを発行するように言っており、私がそうするとき、私はこれを得る

Linux capsonesystem8-desktop 3.2.0-43-generic-pae 
#68-Ubuntu SMP Wed May 15 03:55:10 UTC     
2013 i686 i686 i386 GNU/Linux

また、insservのようなutilsを使用してinit.dスクリプトを有効にするように指示されているため、試してみました。

insserv /etc/init.d/celerydがエラーをスローしますinsserv: command not found

だから私はinsservSudo apt-get install insservをインストールしようとしました。しかし、それはaleadyがインストールされていると言います:

insserv is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 222 not upgraded.

それでは、init.dスクリプトをインストールする方法は?任意の助けをいただければ幸いです。

update1:

私が試したとき:

$ sh -x /etc/init.d/celeryd start

いくつかのerrorsを明らかにします。それがサービスが開始されない理由かもしれません。

update2:

$ sh -x /etc/init.d/celeryd startを実行するときにすべてのエラーをクリアしましたが、それでもSudo /etc/init.d/celeryd startcommand not foundエラーをスローします

71
suhailvs

celerydスクリプトはおそらく実行可能ではないため、Sudo /etc/init.d/celerydcommand not foundを返します。そのため、最初に実行可能にする必要があります。

これを行うには、次のコマンドを実行します。

Sudo chmod 755 /etc/init.d/celeryd
Sudo chown root:root /etc/init.d/celeryd

最初の行は許可を-rwxr-xr-xに変更し、2行目はファイルの所有者とグループ所有者がrootであることを確認します。

これが完了したら、Sudo /etc/init.d/celeryd startを使用してデーモンを起動する必要があると思います。

55
Alaa Ali

スクリプトを所定の場所にコピーするときは、実行可能にし、rootが所有することを忘れないでください。

Sudo chmod +x /etc/init.d/celeryd
Sudo chown root:root /etc/init.d/celeryd

それをインストールしたら、起動時に自動的に起動するように設定できます:

Sudo update-rc.d celeryd defaults
Sudo update-rc.d celeryd enable
70
David Purdue

insservを実行したときにcommand not foundエラーが発生した場合は、次のコマンドを実行して修正できます。

Sudo ln -s /usr/lib/insserv/insserv /sbin/insserv

次に、insserv -hまたはman insservを参照してください。

また、試してみることができます:

Sudo update-rc.d celeryd defaults

ソース: https://askubuntu.com/a/334043/147044

3
Radu Rădeanu

これは、起動時にデーモンを自動起動するコマンドシーケンスです。

Sudo cd /etc/init.d
Sudo chown root:root celeryd
Sudo chmod 755 celeryd
Sudo ln -s /usr/lib/insserv/insserv /sbin/insserv
Sudo insserv celeryd
1
Oleg Bondar'