• ベストアンサー

chkconfig がうまくいかない

ApacheとPHPをソースからインストールしたのですが # /sbin/chkconfig/ --add httpd とすると -------------------- サービス httpd は、chkconfig をサポートしていません。 -------------------- # /sbin/chkconfig/ --list httpd としても同じです。 # which chkconfig -------------------- /sbin/chkconfig -------------------- とでてきます。 このランレベルの設定を行なうにはどうすればよろしいでしょうか? また、シャットダウンや再起動をするとApacheの自動起動ができません。 起動スクリプトを使っています。 # /etc/rc.d/init.d/httpd start とすると起動できて、ブラウザでの確認もできます。 (index.htmlもphpinfo.phpも表示できます。) 環境:Red Hat Enterprise Linux ES v.4 ご教授お願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • tany180sx
  • ベストアンサー率63% (239/379)
回答No.2

参照URLの方法でどうですか。 chkconfigコマンドでシステムの起動時にapacheを起動するかどうか設定できるようにするために、apachectlスクリプトの最初のほうに次の行を追加しておく。 # chkconfig: - 85 15 # description: Apache HTTP Server.

参考URL:
http://www.nslabs.jp/apache-install.rhtml
wonder_dct
質問者

お礼

tany180sx さん ご回答ありがとうございます。 自分でも調べた結果 /etc/rc.d/rc(ランレベル).d/ にリンクを張ったら Apache2の自動起動ができるようになりました。 ありがとうございました。

その他の回答 (2)

  • liq
  • ベストアンサー率38% (228/595)
回答No.3

先にapacheがインストールしてありそこにapache2をインストールした。apacheが自動起動していたがapache2を使うためにそれを止めた。apacheのアンインストールはしていない。apache2の起動スクリプトを/etc/rc.d/init.d/httpdとして作成し、それに対するリンクを/etc/rc.d/rcランレベル.d/に作成した。 ということでしょうか? apacheをアンインストールしてあるのならそれで問題はないと思いますが、apacheとapache2を共存させる(同時に使用はしなくても、残しておく)のなら多少注意が必要です。今の/etc/rc.d/init.d/httpdはapache2起動用ですが、前にも同じ名前のファイルがあってそれはapache起動用だったはずです。新しいファイルは名前を変えるなどして両方の起動スクリプトとrcランレベル.d内のリンクファイルを残しておく方が使いやすかったかもしれません。 chkconfig --addでエラーが出たのは多分/etc/rc.d/init.d/httpdがchkconfigに対応していなかったからだと思います。#2の方が書かれているのはそれに対する対処法です。# chkconfig: - 85 15というのは使用するランレベル(ここでは-)、起動順、停止順を記述しているのです。

wonder_dct
質問者

補足

liq さん ご回答ありがとうございます。 一番最初にインストールされていたのはRPMです。 # rpm -e --allmatches --nodeps httpd で、削除しました。 /etc/httpd/conf/htttpd.conf が削除されていることを確認しました。 (ファイル名が変更になっていました。) その後、Apacheをインストールしていたのですが 失敗したので、Apache2をインストールしなおしました。 Apache2をインストールする前に、Apacheのファイルを削除しました。 現状、自動起動できるようになったので、chkconfig は設定しなくても 大丈夫そうですが、教えていただき参考になりました。 ありがとうございます。

  • liq
  • ベストアンサー率38% (228/595)
回答No.1

以下の点について補足をお願いします。 前回の質問 http://oshiete1.goo.ne.jp/kotaeru.php3?q=2241065 で回答者の方がapacheとapache2があってポートがかちあっているようだという意味のことを書かれていますが、実際にそうでしたか?また、それにはどのように対処されましたか? # /etc/rc.d/init.d/httpd startで起動できるのは、起動したいapacheですか? /etc/rc.d/rc(ランレベル).d/には/etc/rc.d/init.d/httpdへのリンクファイルはありませんか?

wonder_dct
質問者

補足

再起動をしたら、Apache2が起動するようになりました。 > # /etc/rc.d/init.d/httpd startで起動できるのは、起動したいapacheですか? いいえ。Apache2です。 /etc/rc.d/rc(ランレベル).d/ にリンクを張ったら Apacheの自動起動はできるようになりました。

関連するQ&A