[strech stable] Installation : Unmet dependencies

Bonjour ! :grinning:

Suite à une tentative d’installation de nginx, je me retrouve avec un problème de dépendances non remplies.

C’est une installation “fraîche” du système sur un serveur “Kimsufi”.

J’ai voulu installer la dernière version stable de nginx :

wget -O - https://nginx.org/keys/nginx_signing.key | apt-key add -
echo "deb http://nginx.org/packages/debian/ stretch nginx" > /etc/apt/sources.list.d/nginx.list
apt-get update
apt-get install nginx

Ca c’est plutôt bien passé malgré quelques warning sur des variables non créées…

Par la suite en me documentant sur la manière de configurer le serveur, j’ai pensé que le package “nginx-full” était une meilleur idée et j’ai enchaîné avec un :

apt-get install nginx-full

Et là, c’est le drame ! L’installation part en erreur et depuis j’ai le soucis qui m’amène ici :

E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).

J’ai essayé la commande avec ou sans package ; sans succès…

apt --fix-broken install
apt --fix-broken install nginx
apt --fix-broken install nginx-full

La sortie de cette dernière commande :

Reading package lists... Done
Building dependency tree       
Reading state information... Done
You might want to run 'apt --fix-broken install' to correct these.
The following packages have unmet dependencies:
 libnginx-mod-http-auth-pam : Depends: nginx-common (= 1.10.3-1) but it is not going to be installed
 libnginx-mod-http-dav-ext : Depends: nginx-common (= 1.10.3-1) but it is not going to be installed
 libnginx-mod-http-echo : Depends: nginx-common (= 1.10.3-1) but it is not going to be installed
 libnginx-mod-http-geoip : Depends: nginx-common (= 1.10.3-1) but it is not going to be installed
 libnginx-mod-http-image-filter : Depends: nginx-common (= 1.10.3-1) but it is not going to be installed
 libnginx-mod-http-subs-filter : Depends: nginx-common (= 1.10.3-1) but it is not going to be installed
 libnginx-mod-http-upstream-fair : Depends: nginx-common (= 1.10.3-1) but it is not going to be installed
 libnginx-mod-http-xslt-filter : Depends: nginx-common (= 1.10.3-1) but it is not going to be installed
 libnginx-mod-mail : Depends: nginx-common (= 1.10.3-1) but it is not going to be installed
 libnginx-mod-stream : Depends: nginx-common (= 1.10.3-1) but it is not going to be installed
 nginx-full : Depends: nginx-common (= 1.10.3-1) but it is not going to be installed
E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution). 

Quelqu’un saurait-il gérer cette situation ?
D’avance Merci !

Alors “fraiche” en Kimsufi, si ça se trouve, c’est une jessie, et avec un peu de malchance, elle doit avoir certains dépots déclaré en “stable”, au lieu du non de release, ou un truc comme ça.
Tu as quoi comme sources.list ?
Que dit apt-cache policy nginx nginx-common ?

Bonjour mattotop,

(note : comme je ne peux poster que 2 liens par message j’ai “masqué” ceux-ci en rajoutant une ’ devant le http.)

Voici mon /etc/apt/sources.list :

deb http://debian.mirrors.ovh.net/debian stretch main
deb-src http://debian.mirrors.ovh.net/debian stretch main

deb http://security.debian.org/debian-security stretch/updates main
deb-src http://security.debian.org/debian-security stretch/updates main

#stretch-updates, previously known as 'volatile'
deb http://debian.mirrors.ovh.net/debian stretch-updates main
deb-src http://debian.mirrors.ovh.net/debian stretch-updates main

Ca m’a l’air propre, non ?

Le résultat de apt-cache policy nginx nginx-common :

nginx:
  Installed: 1.12.0-1~stretch
  Candidate: 1.12.0-1~stretch
  Version table:
 *** 1.12.0-1~stretch 500
        500 http://nginx.org/packages/debian stretch/nginx amd64 Packages
        100 /var/lib/dpkg/status
     1.10.3-1 500
        500 http://debian.mirrors.ovh.net/debian stretch/main amd64 Packages
nginx-common:
  Installed: (none)
  Candidate: 1.10.3-1
  Version table:
     1.10.3-1 500
        500 http://debian.mirrors.ovh.net/debian stretch/main amd64 Packages

Cela veut donc dire que nginx-full n’est pas gérer au niveau du dépôt nginx…

/etc/apt# apt-cache policy nginx nginx-full  
nginx:
  Installed: 1.12.0-1~stretch
  Candidate: 1.12.0-1~stretch
  Version table:
 *** 1.12.0-1~stretch 500
        500 http://nginx.org/packages/debian stretch/nginx amd64 Packages
        100 /var/lib/dpkg/status
     1.10.3-1 500
        500 http://debian.mirrors.ovh.net/debian stretch/main amd64 Packages
nginx-full:
  Installed: (none)
  Candidate: 1.10.3-1
  Version table:
     1.10.3-1 500
        500 http://debian.mirrors.ovh.net/debian stretch/main amd64 Packages

Mon besoin d’installer le nginx-full n’est pas formel, c’était surtout pour être “raccord” avec les tutoriels de configuration de nginx

J’ai retiré cette limitation pour ton compte, c’est une sécurité mise en place par le moteur de forum pour les nouveaux utilisateurs.

Merci !!

Bon ben si tu veux installer nginx-full, il faut shunter le dépot nginx qui n’est pas raccord avec la stretch:
mv /etc/apt/sources.list.d/nginx.list /etc/apt/sources.list.d/nginx.list.disabled

ensuite tu fais un update, puis tu forces le downgrade sur la version stretch “officielle debian” de nginx:
apt-get install nginx=1.10.3-1

À vérifier, mais je pense que le paquet nginx fourni par nginx.org est un équivalent du paquet nginx-full fourni par debian.org

Bonjour

Une autre méthode,
consiste à faire précéder et suivre tes retours de commandes par une ligne ne contenant que trois “backticks” :


…ce que je viens de faire en modifiant tes messages.



----------
Voir aussi : [Tuto en ligne : Présentation de ses messages sur ce forum](https://www.debian-fr.org/t/tuto-en-ligne-presentation-de-ses-messages-sur-ce-forum/73065/4)

Effectivement, c’est clairement indiqué ici : https://wiki.debian.org/fr/Nginx

Merci de l’info (et de l’édition) !

Ca n’à pas marché (même message), mais en jouant la commande apt --fix-broken install ensuite, elle essaye de réinstaller nginx avec les même messages d’erreur qu’à ma première installation :

 Reading package lists... Done
Building dependency tree       
Reading state information... Done
Correcting dependencies... Done
The following packages were automatically installed and are no longer required:
  fontconfig-config fonts-dejavu-core libfontconfig1 libgd3 libjbig0
  libjpeg62-turbo libnginx-mod-http-auth-pam libnginx-mod-http-dav-ext
  libnginx-mod-http-echo libnginx-mod-http-geoip
  libnginx-mod-http-image-filter libnginx-mod-http-subs-filter
  libnginx-mod-http-upstream-fair libnginx-mod-http-xslt-filter
  libnginx-mod-mail libnginx-mod-stream libtiff5 libwebp6 libx11-6
  libx11-data libxau6 libxcb1 libxdmcp6 libxpm4 libxslt1.1 nginx-common
Use 'apt autoremove' to remove them.
The following additional packages will be installed:
  nginx-common
Suggested packages:
  fcgiwrap nginx-doc ssl-cert
The following NEW packages will be installed:
  nginx-common
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
25 not fully installed or removed.
Need to get 0 B/104 kB of archives.
After this operation, 228 kB of additional disk space will be used.
Do you want to continue? [Y/n] Y
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
	LANGUAGE = (unset),
	LC_ALL = (unset),
	LANG = "fr_FR.utf8"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
Preconfiguring packages ...
(Reading database ... 22706 files and directories currently installed.)
Preparing to unpack .../nginx-common_1.10.3-1_all.deb ...
Unpacking nginx-common (1.10.3-1) ...
dpkg: error processing archive /var/cache/apt/archives/nginx-common_1.10.3-1_all.deb (--unpack):
 trying to overwrite '/etc/default/nginx', which is also in package nginx 1.12.0-1~stretch
dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
Errors were encountered while processing:
 /var/cache/apt/archives/nginx-common_1.10.3-1_all.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

apt auto remove ne fonctionne pas et aboutit au message d’erreur d’unmet dependencies que j’ai déjà exposé…

J’ai l’impression que la solution viendrais de pouvoir installer nginx-common sauf que l’installation plante…

Il s’agit surement d’une spécificité de configuration Kimsufi, je vais voir à trouver plus d’info chez eux…

J’ai trouvé comment débloquer cette situation en faisant une recherche web sur cette partie du message d’erreur :

dpkg: error processing archive /var/cache/apt/archives/nginx-common_1.10.3-1_all.deb (--unpack):
 trying to overwrite '/etc/default/nginx', which is also in package nginx 1.12.0-1~stretch
dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)

J’ai remis en place le dépôt nginx puis…

La commande miracle est : dpkg -i --force-overwrite /var/cache/apt/archives/nginx-common_1.10.3-1_all.deb

Mon problème est donc résolu :stuck_out_tongue: Merci beaucoup :thumbsup:


Et pour vraiment clore le sujet le problème qui, “je pense”, est à la source de tout :

LANG = "fr_FR.utf8".
...
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory

Sur la Kimsufi la debian stretch est pré-configurer sur le français de France utf8. Mais les locales correspondantes ne sont pas installées ! Donc ce message d’erreur…

Pour les installer : dpkg-reconfigure locales

Ensuite, je ne sais pas trop si c’est utile mais j’ai préféré faire une désinstallation et réinstallation propre de nginx :

apt-get remove nginx
apt-get install nginx

Tout s’installe sans erreurs, c’est beau, c’est propre :sunny:

1 J'aime