Could not exec dpkg! : impossible d'installer un bureau virtuel sous debian 8.9 (jessie)

Bonjour je n’arrive pas a installer un bureau virtuel voici le resultat quand je met :
apt-get upgrade

~# apt-get upgrade
Lecture des listes de paquets… Fait
Construction de l’arbre des dépendances
Lecture des informations d’état… Fait
Calcul de la mise à jour… Fait
0 mis à jour, 0 nouvellement installés, 0 à enlever et 0 non mis à jour.
6 partiellement installés ou enlevés.
Après cette opération, 0 o d’espace disque supplémentaires seront utilisés.
Souhaitez-vous continuer ? [O/n] o
Could not exec dpkg!
E: Sub-process /usr/bin/dpkg returned an error code (100)

Merci d’avance de votre aide :slight_smile:

Bonjour.

As tu de l’espace libre ?
df -h

oui :

~# df -h
Sys. de fichiers Taille Utilisé Dispo Uti% Monté sur
/dev/root 220G 16G 194G 8% /
devtmpfs 7,8G 0 7,8G 0% /dev
tmpfs 7,9G 80K 7,9G 1% /dev/shm
tmpfs 7,9G 26M 7,8G 1% /run
tmpfs 5,0M 0 5,0M 0% /run/lock
tmpfs 7,9G 0 7,9G 0% /sys/fs/cgroup
/dev/sda2 15G 2,0G 12G 15% /var

Juste pour vérifier que dpkg est bien présent (le message ‘Could not exec dpkg!’ est assez inquiétant), tu peux vérifier ce que retourne which dpkg ?

$ which dpkg
root@ns3022688:~$

je n’ai rien quand je met which dpkg

ça c’est pas bon.
Il est difficile d’installer un package manager sans package manager :confused:

On peut éventuellement vérifier que les fichiers sont bien absents:
sudo find /usr/bin -name *dpkg*

A voir si quelqu’un connaît une solution à ce problème, mais pour moi la seule façon de réparer ça serait de:
1 - lancer une session depuis un liveCD ou liveUSB de la même version Debian,
2 - faire les MàJ (sudo apt update && sudo apt upgrade) histoire d’être sûr d’avoir les bonnes versions des binaires,
3 - copier tous les fichiers de dpkg de ta live session sur un support externe (tu dois pouvoir lister l’ensemble des fichiers avec la commande dpkg-query -L dpkg),
4 - démarrer ta Debian et copier tous les fichiers précédemment récupérés au bon endroit.

Il y a d’autres options pour réinstaller dpkg depuis un système live.

  • extraire le contenu du paquet dpkg_$version_$arch.deb dans un répertoire temporaire avec dpkg-deb.

  • utiliser dpkg avec l’option --root pour installer un paquet dans une autre racine (jamais testé).

Ca peut se faire directement depuis la machine cassée en utilisant le .deb qui est dans /apt/cache, en sortant le contenu du .deb avec ar x lefichier.deb dans un répertoire, et en déployant les fichiers contenus dans data.tar.gz en executant depuis la racine un tar xf /le/chemin/vers/data.tar.gz pour tout extraire à sa place directement sur l’arborescence existante.
Plus d’infos: Extraire paquet deb

Mais bon, faudrait aussi savoir pourquoi c’est cassé, je crains que redéployer dpkg ne suffise pas.

C’est bizarre de se retrouver dans une situation cassée comme ça, ça ressemble à un dist-upgrade entre deux versions de debian qui n’est pas allé jusqu’au bout.

C’est bon j’ai réussi à régler le problème en supprimant quelques addons :slight_smile: