Mint17のソースから 'apache2'をビルドした後、 'a2dissite'と 'a2ensite'が見つかりません。

Mint17のソースから 'apache2'をビルドした後、 'a2dissite'と 'a2ensite'が見つかりません。

完了後Apache2 httpサーバーソースから(2.4.23)私はa2dissite注文しませんでしたa2ensite

次のように構成されています。

./configure --with-included-apr --prefix=/usr/local/apache2

私が実行したとき:

whereis apache2

私は得る:

apache2: /etc/apache2 /usr/local/apache2

しかし、何も表示されません。正しく機能するwhich apache2にはシンボリックリンクが必要な場合があります/usr/binhttp://localhost

ソースバージョン情報:

/usr/local/apache2/bin/apachectl -v Server version: Apache/2.4.23 (Unix) Server built: Nov 1 2016 22:52:26

Linuxバージョン:

linux mint 17
3.13.0-37-generic #64-Ubuntu SMP Mon Sep 22 21:28:38 UTC 2014 x86_64 

答え1

Apache Software Foundationが提供するソースコードを使ってビルドしているようです。スクリプトa2en...(およびサポート設定)はDebian専用です。そのディレクトリにソースコードを見つけることができます。Debian リポジトリ

ソースからサーバーを構築しhttpd、引き続き使用できる最良のオプションは、a2ensiteDebian ソースパッケージを使用することです。

sudo apt-get install devscripts dpkg-dev build-essential
sudo apt-get build-dep apache2
dget http://httpredir.debian.org/debian/pool/main/a/apache2/apache2_2.4.23-5.dsc
cd apache2-2.4.23
dpkg-buildpackage -us -uc

最初の2つのコマンドは、ビルドに必要なパッケージをインストールし、ソースパッケージをダウンロードして解凍してビルドした後、通常どおり手動でインストールできる一連apache2のパッケージを作成します。dgetdpkg-buildpackage.debdpkg

そのbuild-dep行が機能しない場合は、次のようになりますapache2

sudo apt-get install debhelper lsb-release libaprutil1-dev libapr1-dev libpcre3-dev zlib1g-dev libnghttp2-dev libssl-dev perl liblua5.2-dev libxml2-dev autotools-dev gawk dh-systemd

答え2

にシンボリックリンクを接続しないでください/usr/bin。これは非常に悪い考えなので、やってはいけません。

なぜ?/usrを含むほとんどは、/usr/binパッケージマネージャ用に予約されているためです。あなたを含むパッケージマネージャ以外のすべてはそこにあるものに触れてはいけません。

/usr/localローカルにコンパイルされたソフトウェアをインストールする場所を提供するために存在します。通常ではなく/usr/local、接頭辞として提供します/usr/local/apache2。 (BTW、プレフィックスはbinパス、ライブラリパスなどのプレフィックスです。たとえば、Apacheのコマンドラインツールはに入り、$PREFIX/binライブラリはに入ります$PREFIX/lib/apache2。)

問題に対する解決策は、/usr/local/apache2/binシェルがバイナリを見つけるために使用するパスのリストに追加することです。これはしばしば$PATH「your path」と呼ばれ、次のコマンドを使用して変更できます。

export PATH="/usr/local/apache2/bin:$PATH"

これをシェルの起動ファイルの1つに入れて永久に作成できます。

それにもかかわらず、私はあなたがまだ2つのうちのa2ensite1つを見つけることができないと思いますa2dissite。私が正確に覚えているなら、両方のコマンドはDebian開発者が追加し、Mintから継承したものです。したがって、アップストリームのApacheソースコードには含まれません。スティーブンキット良い答えこれらのコマンドの取得方法をお知らせします。

関連情報