I have Linux Mint on my computer but I don't know how to find out whether Apache2 is on it or where it is actually installed. I run my web browser (PHP installed) with http://localhost as a URL and it works.
- 14,638
- 9
- 54
- 58
- 573
- 3
- 7
- 8
-
what do you mean by PHP installed? – onemach Feb 09 '12 at 14:06
-
How is that related to c, c# or unix? – ThiefMaster Feb 09 '12 at 14:08
-
you want to know the path where are the files from that site? – Francisco Tapia Apr 24 '15 at 17:03
7 Answers
I would recommend
dpkg --get-selections | grep apache
It lists all installed packages that contain "apache" in their name. For example:
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
It indicates that the package apache2 is installed on the system.
Another approach, to find any running HTTP daemon on the default port would be:
sudo lsof -nPi | grep ":80 (LISTEN)"
Which lists something like:
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)
- 86,445
- 63
- 260
- 306
-
``-bash: dpkg: command not found`` is the above done in a certain directory? – elliotrock Jun 19 '17 at 01:04
-
-
`-bash: dpkg: command not found` same error on aws linux even tried with sudo. – Krishnadas PC Jul 04 '18 at 12:28
-
1This question is about Linux Mint. Using dpkg on platforms that don't have it is pointless. – Oliver Salzburg Jul 04 '18 at 12:39
Try the which command:
# which apache2
In my experience, the Apache binary is located in /usr/sbin on most installations.
- 510
- 3
- 10
-
4Depending on distro you might also try which with 'apache' and 'httpd' – siliconrockstar Apr 24 '15 at 17:00
To check whether if apache is running or not (the status), type:
sudo service apache2 status
at the command line.
- 7,344
- 36
- 42
- 54
- 71
- 1
- 2
-
This only works where Apache is installed as a (`sysv` etc) service; which admittedly will cover a lot of cases. – bertieb Aug 24 '15 at 08:03
Just do a which httpd as user root.
-
2Afraid to say, but on Mint (a Debian derivative) it would be `apache` or `apache2`, but not `httpd` ... – 0xC0000022L Feb 09 '12 at 14:12
As I recall, Mint is based on Ubuntu, so you should be able to check 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
In this case, you can see it's not installed on my system. If you haven't asked for it to be installed, it's probably not -- I doubt it's part of the default distribution.
- 2,143
- 1
- 17
- 15
Try this bash command:
if [[ -z $(apache2 -v 2>/dev/null) ]] && [[ -z $(httpd -v 2>/dev/null) ]]; then echo "Apache not found"; fi
- 2,170
- 11
- 17
- 24
- 11
- 3
As root, you can test if apache is running under process name httpd, apache, or apache2, using
ps -A | grep 'apache\|httpd'
But again, this will only find apache if the process is running.
- 240
- 2
- 5
-
1
-
Ah cool, wasn't sure if non-privileged users could list global processes, thanks. – siliconrockstar Apr 25 '15 at 02:31