:~$ sudo apt-get remove nginx* && sudo apt-get install nginx-full* Reading package lists... Done Building dependency tree Reading state information... Done After this operation, 5,579 kB of additional disk space will be used. Do you want to continue? [Y/n] y Get:1 http://in.archive.ubuntu.com/ubuntu xenial-updates/universe amd64 nginx-full-dbg amd64 1.10.0-0ubuntu0.16.04.1 [3,789 kB] Fetched 3,789 kB in 33s (112 kB/s) Selecting previously unselected package nginx-common. (Reading database ... 189767 files and directories currently installed.) Preparing to unpack .../nginx-common_1.10.0-0ubuntu0.16.04.1_all.deb ... Unpacking nginx-common (1.10.0-0ubuntu0.16.04.1) ... Selecting previously unselected package nginx-full. Preparing to unpack .../nginx-full_1.10.0-0ubuntu0.16.04.1_amd64.deb ... Unpacking nginx-full (1.10.0-0ubuntu0.16.04.1) ... Selecting previously unselected package nginx-full-dbg. Preparing to unpack .../nginx-full-dbg_1.10.0-0ubuntu0.16.04.1_amd64.deb ... Unpacking nginx-full-dbg (1.10.0-0ubuntu0.16.04.1) ... Processing triggers for ufw (0.35-0ubuntu1) ... Rules updated for profile 'Apache Full' Rules updated for profile 'Nginx HTTP' Processing triggers for systemd (229-4ubuntu4) ... Processing triggers for ureadahead (0.100.0-19) ... Processing triggers for man-db (2.7.5-1) ... Setting up nginx-common (1.10.0-0ubuntu0.16.04.1) ... Setting up nginx-full (1.10.0-0ubuntu0.16.04.1) ... Job for nginx.service failed because the control process exited with error code. See "systemctl status nginx.service" and "journalctl -xe" for details. invoke-rc.d: initscript nginx, action "start" failed. dpkg: error processing package nginx-full (--configure): subprocess installed post-installation script returned error exit status 1 dpkg: dependency problems prevent configuration of nginx-full-dbg: nginx-full-dbg depends on nginx-full (= 1.10.0-0ubuntu0.16.04.1); however: Package nginx-full is not configured yet. dpkg: error processing package nginx-full-dbg (--configure): dependency problems - leaving unconfigured No apport report written because the error message indicates its a followup error from a previous failure. Errors were encountered while processing: nginx-full nginx-full-dbg E: Sub-process /usr/bin/dpkg returned an error code (1)
9 Answers
Shutting down apache2 first before installing nginx should fix this problem:
sudo service apache2 stop

- 113
- 5

- 1,481
-
3Welcome to Ask Ubuntu! I recommend [edit]ing this answer to expand it with specific details about how to do this. (See also How do I write a good answer? for general advice about what sorts of answers are considered most valuable on Ask Ubuntu.) – David Foerster Jul 31 '16 at 14:46
-
This gave me the hint I needed. In my case I was using a docker container which run another nginx server – mithril_knight Feb 15 '17 at 12:51
-
I hit the same thing, but finding the culprit with
netstat -tulpn | grep :80
, in my case it was Varnish configured to listen on port 80.systemctl stop varnish
, then installing Nginx, fixed it for me. Why Debian/Ubuntu packages try to start themselves on install is beyond me... I would rather install, configure it how I like it, then start it :P – geerlingguy Jul 26 '17 at 13:57 -
It's odd that NGINX doesn't check for this in their installer, and at least provide a more helpful message. Apache is very commonly installed on Linux systems. – machineghost Oct 30 '19 at 23:52
-
Yes this works for me , but one should cross verify other process using the port 80 and stop it in order to install nginx – Sameer Kumar Choudhary May 07 '20 at 07:55
Andrew Chan provided the right answer for me. To extend his answer a bit, here's what you can do on the commandline;
stop apache2
sudo systemctl stop apache2.service
prevent apache2 to start at boot
sudo systemctl disable apache2.service
Reinstall nginx
sudo apt-get install nginx

- 281
-
1I would suggest that you not disable Apache2 at boot if you need it - there are many cases where you do not need to disable Apache if you end up configuring it to listen on another port. Having done this myself, for some setups, I can speak from some experience (I also do a lot of work in the nginx package, which is where this experience comes from) – Thomas Ward Aug 02 '16 at 15:09
In my case the error is the server has IPv6 disabled. Solution:
Edit /etc/nginx/sites-enabled/default
and comment IPv6 out:
listen [::]:80 default_server;
Reinstall nginx:
apt purge nginx
apt autoremove
apt install nginx

- 33,355
- 17
- 105
- 120

- 111
-
@DavidFoerster With apt 1.0, a new binary was introduced that collects many of the familiar (sub-)commands that were distributed among
apt-get
,apt-cache
and so forth. For example,apt update
equalsapt-get update
,apt search some-name
equalsapt-cache search some-name
and so forth. In some cases, there has been some rewording, likeapt full-upgrade
that equalsapt-get dist-upgrade
. The old binaries and their commands are still available for those who fancy them, as well. – Henning Kockerbeck Oct 27 '16 at 15:04 -
@HenningKockerbeck: Thanks. I truly didn't know back then and thought it was a typo but I educated myself in the mean time. – David Foerster Oct 27 '16 at 17:51
-
Worked for me, but I can't implement this in my shell scripts for server deployment, that's ridiculously roundabout... – Menasheh Feb 15 '17 at 06:09
I just had this issue, but the solution was slightly different.
Once I solved a simple site misconfiguration, I was able to update nginx.
Check your nginx error log:
sudo cat /var/log/nginx/error.log|less
Then try again:
sudo apt-get update;sudo apt-get upgrade

- 901

- 109
-
logs FTW, in my case the 80 port was already in use which was the cause of error – xliiv Jun 30 '17 at 18:47
In my case nothing helped at all, except of this:
sudo fuser -k 80/tcp
service nginx start

- 121
Before the installation remove any manually added symlinks from /sites-enabled
.

- 36,264
- 56
- 94
- 147

- 11
-
This was driving me crazy. I hadn't realised I had old sites in sites-enabled and had tried everything. I'm glad I scrolled to the bottom. – Michael Nov 21 '20 at 15:17
In my case it has been a misconfigurated file in /etc/nginx/sites-enabled/ I named them as .old files, but that does not matter. They will be readed and may prevend an successfull installation or start of that service. Be careful with files in that folder and read your error output carefully as discribed by @Taiger

- 11
When I checked /var/log/nginx/error.log I saw that the installer was unable to open /var/cache/nginx/microcache
A directory listing showed there was no /var/cache/nginx directory, so I created it and the install succeeded.
I see you want to reinstall Nginx, but we can have the same error when we have Nginx run in Docker container.
In this case, just look at started containers:
user@host:~$ docker ps
CONTAINER ID IMAGE COMMAND CREATED
STATUS PORTS NAMES
f4ee2264d5fb docker_nginx "nginx -g 'daemon of…" 5 months ago Up 2 days 0.0.0.0:80->80/tcp, 0.0.0.0:443->443/tcp nginx
Just stop it with CONTAINER ID
docker stop f4ee2264d5fb
Then you are able to install Nginx
apt-get -f install
without any package – Motte001 Apr 28 '16 at 09:49Please look:
:~$ sudo apt-get -f install
nginx-full-dbg depends on nginx-full (= 1.10.0-0ubuntu0.16.04.1); however: Package nginx-full is not configured yet.
dpkg: error processing package nginx-full-dbg (--configure): dependency problems - leaving unconfigured Errors were encountered while processing:
nginx-full nginx-full-dbg
E: Sub-process /usr/bin/dpkg returned an error code (1)
– Mohit Apr 28 '16 at 09:49systemctl -l status nginx
as well – Thomas Ward Apr 29 '16 at 15:01See "systemctl status nginx.service" and "journalctl -xe" for details.
– Can you please do that and include the output in your question? – David Foerster Apr 29 '16 at 17:41404 Not Found
nginx/1.10.0 (Ubuntu)
– Mohit Apr 30 '16 at 10:38├─16291 nginx: worker process
├─16292 nginx: worker process
└─16293 nginx: worker process
Presently nginx installed and gives status like this,thank you,Please help!! – Mohit Apr 30 '16 at 10:49
{}
button in the editor toolbar) are much more readable there; alternatively you can use a pastie service for longer listings and include the link of your pastie in your question. Overall it’s best to have everything relevant in one place. Additionally, comments may be deleted for various reasons. – David Foerster Jul 31 '16 at 14:45sudo apt-get remove nginx*
Careful! This DOES NOT do what you think it does. It is regexp so it matches any string containingngin
and I have just removeddocker-engine
accidentally. – Tony I. Apr 05 '17 at 11:01