Назад | Перейти на главную страницу

обновить nginx с 1.4.4 до 1.4.5, пытаясь перезаписать X, который также находится в пакете Y

Я получаю эту ошибку при попытке обновления:

Preparing to replace nginx 1.4.4-4~raring (using .../nginx_1.4.5-1~raring_amd64.deb) ...
Unpacking replacement nginx ...
dpkg: error processing /var/cache/apt/archives/nginx_1.4.5-1~raring_amd64.deb (--unpack):
 trying to overwrite '/usr/sbin/nginx', which is also in package nginx-full 1.4.4-4~raring
dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
Errors were encountered while processing:
 /var/cache/apt/archives/nginx_1.4.5-1~raring_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

Я использую эти репозитории:

deb http://nginx.org/packages/ubuntu/ raring nginx
deb-src http://nginx.org/packages/ubuntu/ raring nginx

Почему этот файл находится в nginx и nginx-full? Я думал, что nginx-full зависит от nginx?

Кто-нибудь знает, почему так происходит и как решить? Спасибо!

Полный пакет nginx не от "http://nginx.org/packages/ubuntu/"репозиторий, он из основного репозитория Ubuntu.

Удалите nginx-full (из основного репо) перед установкой nginx (из репозитория nginx).

Имейте в виду, что у вас возникнут проблемы с include директива в nginx.conf файл, вам нужно изменить строку include /etc/nginx/conf.d/*.conf к include /etc/nginx/sites-enabled/*.conf после установки.

Вы можете использовать apt pinning, чтобы избежать этой проблемы, отдавая больший приоритет пакету nginx из репозитория nginx над репозиторием ubuntu по умолчанию.

Взгляните сюда: http://www.argon.org/~roderick/apt-pinning.html