Atualizando o servidor Nginx para 1.10 no Debian 8.4

Atualizando o servidor Nginx para 1.10 no Debian 8.4

Acabei de instalar a versão mais recente do Debian (8.4) em uma máquina virtual e tudo correu bem.

Em seguida, instalei o servidor nginx dos repositórios Debian e obtive a versão 1.6.2, enquanto a versão mais recente disponível é 1.10, então gostaria de atualizá-la.

A maneira como tentei fazer isso talvez esteja errada, mas foi tudo que encontrei até agora.

Atualizei meus repositórios pela primeira vez adicionando o repositório nginx ao sources.listarquivo desta forma:

sudo sh -c "echo 'deb http://nginx.org/packages/debian/ `lsb_release -cs` nginx' >> /etc/apt/sources.list"
sudo sh -c "echo 'deb-src http://nginx.org/packages/debian/ `lsb_release -cs` nginx' >> /etc/apt/sources.list"
curl http://nginx.org/keys/nginx_signing.key | apt-key add -
sudo apt-get update

Então, tentei instalar a versão mais recente do nginx com este comando:

sudo apt-get install nginx

E eu recebo esse problema:

root@Debian:/#LANG=C apt-get install nginx
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
    nginx-common nginx-full
Use 'apt-get autoremove' to remove them.
The following packages will be upgraded:
    nginx
1 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.
Need to get 0 B/739 kB of archives.
After this operation, 2421 kB of additional disk space will be used.
Reading changelogs... Done
(Reading database ... 140333 files and directories currently installed.)
Preparing to unpack .../nginx_1.10.0-1~jessie_i386.deb ...
Unpacking nginx (1.10.0-1~jessie) over (1.6.2-5+deb8u1) ...
dpkg: error processing archive /var/cache/apt/archives/nginx_1.10.0-1~jessie_i386.deb (--unpack): trying to overwrite '/etc/default/nginx', which is also in package nginx-common 1.6.2-5+deb8u1
dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
Errors were encountered while processing:
    /var/cache/apt/archives/nginx_1.10.0-1~jessie_i386.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

Como posso resolver isso?

Responder1

O erro básico é este (ênfase minha):

dpkg: erro ao processar arquivo /var/cache/apt/archives/nginx_1.10.0-1~jessie_i386.deb (--unpack):tentando sobrescrever '/etc/default/nginx', que também está no pacote nginx-common 1.6.2-5+deb8u1

Isso significa que o novo pacote que você está instalando está tentando sobrescrever um arquivo fornecido por outro pacote (o seu instalado nginx-common) e dpkgtem medo de que isso quebre as coisas e se recusa a fazê-lo.

A solução simples é remover completamente nginx-commonos pacotes e instalar a nova versão novamente:

sudo apt-get purge nginx-common
sudo apt-get install nginx

informação relacionada