Apacheがシステムにインストールされているかどうかを確認するにはどうすればよいですか?


28

私は自分のコンピューターにLinux Mintを持っていますが、Apache2がインストールされているのか、実際にインストールされているのかを知る方法がわかりません。http://localhostURLを使用してWebブラウザー(PHPをインストール済み)を実行すると動作します。


PHPがインストールされているとはどういう意味ですか?
-onemach

それはc、c#、unixにどのように関連していますか?
シーフマスター

あなたはそのサイトからのファイルがどこにあるパスを知りたいですか?
フランシスコタピア

回答:


43

私がお勧めします

dpkg --get-selections | grep apache

名前に「apache」を含むすべてのインストール済みパッケージがリストされます。例えば:

apache2                                         install
apache2-doc                                     install
apache2-mpm-prefork                             install
apache2-utils                                   install
apache2.2-bin                                   install
apache2.2-common                                install
libapache2-mod-php5                             install
libapache2-svn                                  install

パッケージapache2がシステムにインストールされていることを示します。

見つけるための別のアプローチ、任意のデフォルトのポート上で実行されているHTTPデーモンは、次のようになります。

sudo lsof -nPi | grep ":80 (LISTEN)"

次のようなものをリストします:

apache2    1026     root    4u  IPv6    3739      0t0  TCP *:80 (LISTEN)
apache2    3966 www-data    4u  IPv6    3739      0t0  TCP *:80 (LISTEN)
apache2    4014 www-data    4u  IPv6    3739      0t0  TCP *:80 (LISTEN)
apache2    4015 www-data    4u  IPv6    3739      0t0  TCP *:80 (LISTEN)
apache2    4016 www-data    4u  IPv6    3739      0t0  TCP *:80 (LISTEN)

-bash: dpkg: command not found上記は特定のディレクトリで行われますか?
エリオロック

@elliotrockいいえ、で実行してみてくださいsudo
デアホッホステープラー

-bash: dpkg: command not foundaws linuxで同じエラーがsudoでも試されました。
クリシュナダスPC

1
この質問はLinux Mintに関するものです。dpkgを持たないプラットフォームでdpkgを使用するのは無意味です。
デアホッホステープラー

12

whichコマンドを試してください:

# which apache2

私の経験では、Apacheバイナリは/usr/sbinほとんどのインストールにあります。


4
ディストリビューションによっては、「apache」と「httpd」を使用して試すこともできます
-Siliconrockstar

4

Apacheが実行中かどうか(ステータス)を確認するには、次のように入力します。

sudo service apache2 status

コマンドラインで。


これは、Apacheが(sysvetc)サービスとしてインストールされている場合にのみ機能します。確かに多くのケースをカバーします。
ベルティエブ

3

which httpdrootユーザーとして実行するだけです。


2
怖いと言ってますが、ミント(Debianの派生物)に、それは次のようになりますapacheapache2ではなく、httpd...
0xC0000022L

3

私が思い出すように、MintはUbuntuに基づいているので、次のことを確認できるはずですapt-cache policy apache2

$ apt-cache policy apache2
apache2:
  Installed: (none)
  Candidate: 2.2.20-1ubuntu1.1
  Version table:
     2.2.20-1ubuntu1.1 0
        500 http://us.archive.ubuntu.com/ubuntu/ oneiric-updates/main amd64 Packages
        500 http://security.ubuntu.com/ubuntu/ oneiric-security/main amd64 Packages
     2.2.20-1ubuntu1 0
        500 http://us.archive.ubuntu.com/ubuntu/ oneiric/main amd64 Packages

この場合、システムにインストールされていないことがわかります。インストールを要求していない場合、おそらくそうではありません。デフォルトのディストリビューションの一部ではないでしょうか。


0

ルートとして、プロセス名httpd、apache、またはapache2でapacheが実行されているかどうかをテストできます。

ps -A | grep 'apache\|httpd'

ただし、これもプロセスが実行されている場合にのみApacheを検出します。


1
rootでなくても機能する場合。
ハスター

ああ、非特権ユーザーがグローバルプロセスを一覧表示できるかどうかはわかりませんでした。ありがとう。
Siliconrockstar
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.