web-dev-qa-db-fra.com

Impossible d'exécuter le nouveau script de pré-installation (/var/lib/dpkg/tmp.ci/preinst)

J'essaie d'installer un fichier .deb dans ma boîte vagrant qui utilise generic/ubuntu1604 image mais j'ai l'erreur suivante:

Reading package lists... Done
Building dependency tree

Reading state information... Done
Reading state information... Done

A queue based service for watching directories for files to process as per its configuration.
Do you want to install the software package? [y/N]:y
(Reading database ... 108439 files and directories currently installed.)
Preparing to unpack wtbuild.deb ...
dpkg (subprocess): unable to execute new pre-installation script (/var/lib/dpkg/tmp.ci/preinst): No such file or directory
dpkg: error processing archive wtbuild.deb (--install):
 subprocess new pre-installation script returned error exit status 2
Errors were encountered while processing:
 wtbuild.deb

erreur

Cela n'arrive qu'avec cette image. Si j'essaie d'installer le même fichier .deb dans ma machine linux (xenial) ou dans une autre boîte de dialogue vagrant avec une image linux différente, le fichier .deb est installé correctement.

1
Javier Galarza

Il vous manque l'exécutable qui apparaît dans la ligne Shebang du script preinst.

  1. Extrayez les métadonnées du paquet dans un répertoire temporaire: dpkg -e wtbuild.deb tmp
  2. Ouvrez tmp/preinst dans un éditeur de texte.
  3. La première ligne doit commencer par les caractères #!. Le texte qui apparaît après est le programme qui sera utilisé pour exécuter le fichier. Vous manquez ce programme.
  4. Déterminez le paquet qui fournit le programme manquant. Par exemple, si le programme est /usr/bin/python, vous devez installer le package python: Sudo apt-get install python

Si vous maintenez wtbuild.deb, prenez le temps d'ajouter la dépendance manquante au fichier control du paquet. Si quelqu'un d'autre gère wtbuild.deb, vous devez créer un rapport de bogue et inclure le nom du paquet de dépendance manquant.

1
Zenexer