web-dev-qa-db-ja.com

Ubuntuでバイナリを実行できません:ファイルが見つかりません

実行可能ファイルを実行しようとすると、file not foundエラーが発生します。時々それは何も言わないが何もしない。

たとえば、./blah-blah.binを実行すると、ファイルがそこにあるのにファイルを見つけることができません。 ./blah-blah-file-2.shを実行すると、無音になります。

注1:ファイルには+ xがあります。
注2:ルートも実行できません。
注3:/ usr/binからのすべてが実行されます。
注4:GUIから試すことはできません。コンソールにしかアクセスできません。

どうしたの?

アップデート:突然、一部のコマンド(lsなど)がfile not foundで失敗します。彼らは昨日働いた...

4
Alexey

試してみてください

ldd ./alfresco-install.bin

出力を確認します。これは、ダイナミックライブラリが1つか2つ欠落しているように疑わしいように聞こえます。

2
Shadur

マウントオプションを確認します。具体的には、noexecでマウントされているかどうかを確認します。

これが問題である場合、例えば/ tmpで、

Sudo mount -o remount,exec /tmp
1
sehe

それはスクリプトですか、それともバイナリ実行可能ファイルですか?

スクリプトの場合は、#!行を確認してください。

シェルによっては、不正な#!行のあるコマンドのエラーメッセージは、不足しているインタープリターではなくスクリプトを参照している場合があります。

たとえば、tcshを使用します。

% cat foo
#!/bin/no_such_interpreter

echo hello
% chmod +x foo
% ./foo
./foo: Command not found.
%

Bashを使用すると、エラーメッセージは異なります。

$ chmod +x foo
$ cat foo
#!/bin/no_such_interpreter

echo hello
$ ./foo
bash: ./foo: /bin/no_such_interpreter: bad interpreter: No such file or directory
$

#!が問題なく見える場合でも、行末に\r文字があると失敗する可能性があります。ファイルがWindowsで作成された場合によく発生します。なに

head -1 blah-blah.bin | cat -A

見せて?

それでも問題が解決しない場合は、入力したコマンドを正確に示し、エラーメッセージを表示します.

編集:タイトルがバイナリ実行可能ファイルであることを示唆していることを理解しています。正確にはどのようなファイルですか?の出力は何ですか

file blah-blah.bin

1
Keith Thompson