Amazon Linux AMIリリース2012.03にApache2がインストールされています。 /etc/init.d/httpd start
を使用すると、エラーなしで手動で起動できます。ただし、マシンの起動時に自動的には起動しません。
Rc * .dディレクトリですべてが正しく設定されているようです。 find /etc/rc.d -name "*httpd*" | xargs ls -l
の結果は次のとおりです:
-rwxr-xr-x 1 root root 3371 Feb 16 2012 /etc/rc.d/init.d/httpd
lrwxrwxrwx 1 root root 15 Apr 14 2012 /etc/rc.d/rc0.d/K15httpd -> ../init.d/httpd
lrwxrwxrwx 1 root root 15 Apr 14 2012 /etc/rc.d/rc1.d/K15httpd -> ../init.d/httpd
lrwxrwxrwx 1 root root 15 Apr 14 2012 /etc/rc.d/rc2.d/K15httpd -> ../init.d/httpd
lrwxrwxrwx 1 root root 15 Apr 14 2012 /etc/rc.d/rc3.d/K15httpd -> ../init.d/httpd
lrwxrwxrwx 1 root root 15 Apr 14 2012 /etc/rc.d/rc4.d/K15httpd -> ../init.d/httpd
lrwxrwxrwx 1 root root 15 Apr 14 2012 /etc/rc.d/rc5.d/K15httpd -> ../init.d/httpd
lrwxrwxrwx 1 root root 15 Apr 14 2012 /etc/rc.d/rc6.d/K15httpd -> ../init.d/httpd
/etc/init.d/httpd start
コマンドを/etc/rc.local
に入れることができることを理解していますが、これは回避策ではありませんか?なぜ自動的に起動しないのですか? rc * .dディレクトリにある他のもの(起動時、mongod、postfixなど)は問題なく起動します。ありがとう!
Chkconfigを使用して、このサービスを開始するランレベルを管理します。
通常chkconfig httpd onがその仕事をします。
「S」リンクはありません。すべての「K」はシャットダウンのみです。同じ名前のリンクを追加します。KをSに置き換えます。
「通常、システムは文字「S」で始まるコマンドを開始し、文字「K」で始まるコマンドを停止します。文字「K」で始まるコマンドは、システムが実行レベルを高いレベルから下位レベル。「S」で始まるコマンドはすべてのケースで実行されます。
Chkconfigを使用する場合は、「man chkconfig」を参照してください。あなたの場合:
chkconfig --level 2345 httpd on
すべきです.