GNU/Linux >> Tutoriels Linux >  >> Linux

Comment puis-je résoudre l'erreur Impossible d'exécuter le fichier binaire ?

Habituellement, ce message d'erreur signifie que Linux ne reconnaît pas le fichier en tant que script shell ou en tant que fichier exécutable.

Généralement, la cause est l'exécution d'un exécutable sur la mauvaise architecture - si vous essayez d'exécuter des exécutables x86 sur un processeur ARM, ce message apparaît.

Est-ce que /usr/bin/id être écrasé, peut-être ?


Essayez de l'exécuter en utilisant ./executablefilename au lieu d'utiliser sh executablefilename. Ce n'est pas un script shell après tout.


Le problème est d'exécuter un binaire pour une architecture de processeur différente. Vous pouvez utiliser objdump (de binutils) pour vérifier l'architecture des binaires. Vous pouvez utiliser uname pour vérifier l'architecture d'une machine.

par exemple. J'ai rencontré cette erreur "impossible d'exécuter le fichier binaire" lors de l'installation de FF.Communicator - un plugin firefox pour chrome (afin que je puisse exécuter des pages qui utilisent des applets java).

  • objdump montre que le binaire est 64 bits elf64-x86-64
  • uname montre que ma machine est i686 32 bits

    $ ./FF.Communicatorbash :./FF.Communicator :impossible d'exécuter le fichier binaire$ uname -mpioi686 i686 i386 GNU/Linux$ objdump -a ./FF.Communicator./FF.Communicator :format de fichier elf64-x86-64./ FF.Communicateur

  • objdump sur un binaire fonctionnel sur ma machine montre qu'il s'agit de 32 bits elf32-i386

    $ objdump -a /bin/ls/bin/ls :format de fichier elf32-i386

À l'aide de ces outils, vous pouvez vérifier les architectures des machines et des binaires - pas seulement les architectures Intel, mais n'importe quel processeur.

Pour les utilisateurs de Mac OSX, vous pouvez connaître les informations d'architecture d'un fichier spécifique à l'aide de la commande "file":

$ file filename_here

Linux
  1. /usr/bin/ls :/usr/bin/ls :impossible d'exécuter le fichier binaire ?

  2. Comment puis-je vérifier qu'un fichier existe et exécuter une commande sinon?

  3. Comment puis-je supprimer une nouvelle ligne si c'est le dernier caractère d'un fichier ?

  4. en utilisant Linux, comment puis-je passer le contenu d'un fichier en tant que paramètre à un exécutable ?

  5. Comment exécuter un fichier python sous Linux

Comment résoudre l'échec temporaire de l'erreur de résolution de nom

Comment réparer :l'utilisateur n'est pas dans l'erreur de fichier sudoers

Comment exécuter un fichier .sh au démarrage de la session ?

Comment puis-je corriger les autorisations de mes fichiers ?

comment puis-je différencier deux sections du même fichier ?

Comment puis-je obtenir la longueur d'un fichier vidéo à partir de la console ?