(Strangley)Linux Mintにログインすると、インストールしたApache2が起動しません。
このコマンドを実行すると、次のようになります。
Sudo service Apache2 start
ログインのたびにこのサービスを起動する方法を教えてください。
シャットダウン時にエラーが発生しました:
/etc/apach2/Apache.confの230行目の構文エラー..../etc/Apache/sites-enables/mysite:そのようなファイルまたはディレクトリはありません
問題は、mysite
がホームフォルダーのファイルにシンボリックリンクされていたことです。
それは通常問題にはならないはずだと私は思った。
しかし、私の知る限り、私のホームパーティションはencryptedです。したがって、Apacheがロード中に仮想サイトファイルを読み取れなかったと思います。パスワードを入力するまでファイルにアクセスできませんでした。
複雑な状況で、解決に数か月かかりました:)
Sudo apt-get install rcconf
Sudo rcconf
Sudo update-rc.d -f Apache2 add
または
Sudo update-rc.d Apache2 defaults
Sudo chkconfig --add Apache2
または
Sudo chkconfig -- level 35 Apache2 on
MintはUbuntuに基づいており、UbuntuはUpstartに切り替えているため、 pstart Cookbook は、起動時または指定したランレベルでサービスを開始するためのすべての情報を持っています。
このサイト 起動時にApacheを起動するための詳細なクックブックを提供します。
同じ問題のもう1つの原因は、rc [0-6] .dのApacheリンクの優先度です。私のはS90とK09で、Apacheは起動時に起動しませんでした。優先度をデフォルトの20に設定すると、うまくいきました。最初に既存のリンクを削除する必要があります。
Sudo update-rc.d -f Apache2 remove
Sudo update-rc.d Apache2 defaults
2019年に更新された新しい回答:
Sudo systemctl start httpd
Sudo systemctl enable httpd
Systemctlコマンドは、systemdシステムとサービスを制御する新しいツールです。これは古いSysV initシステム管理の置き換えです。最近のLinuxオペレーティングシステムのほとんどは、この新しいツールを使用しています。 CentOS 7、Ubuntu 16.04以降、またはDebian 9システムを使用している場合。彼らは現在systemdを選択しています。
有効なサービスは、システムの起動時に自動起動します。これは、SysV initのchkconfigよりもsystemdの同様のオプションです。