web-dev-qa-db-ja.com

コマンドで「bash:./fwupd:バイナリファイルを実行できません」と表示される

コマンドを発行するたびに

./fwupd /dev/sda 

私は次を取得します:

bash: ./fwupd: cannot execute binary file

Ubuntu 11.04 LiveCDを使用してSSDのファームウェアを更新しようとしています。

コマンドを正常に発行するにはどうすればよいですか?

1
wajed

ファイルを実行するのではなく、調達しているように見えます。

次のようなフルパスを使用して実行してみてください

Sudo /home/user/fwupd /dev/sda
1
arrange

いくつか試したところ、64ビットfwupdバイナリを32ビットLive CDで実行しようとしているようです。

http://www.ocztechnology.com/ssd_tools/ から.Zipファイル(実際にはtarballであり、恥ずべきことです)を取得し、tarを使用して抽出します。例えば。ファイルの名前がfwupd_v2.12.05.Zipの場合、次を実行します。

tar xf fwupd_v2.12.05.Zip

次に、32ビットfwupdバイナリを含むディレクトリにジャンプし、スーパーユーザー特権で実行します。

cd fwupd_v2.12.05/linux32
Sudo ./fwupd /dev/sda

逆が発生する場合(たとえば、互換性ライブラリのない64ビットマシンで32ビットバイナリを実行している場合)、エラーは異なります。

bash: ./fwupd: No such file or directory

これは、ia32-libs(Ubuntu 11.04 Natty以前)またはlibc6:i386(Ubuntu 11.10 Oneiric以降)をインストールすることで解決できます。

最後に、ファイルが実行可能でなかった場合、エラーは次のようになります。

bash: ./fwupd: Permission denied

これは、実行可能にすることで解決されます。

chmod +x fwupd
1
Lekensteyn

「env」という名前のファイルがあり、同じエラーが発生していました。

. env
bash: .: /usr/bin/env: cannot execute binary file

Envはある種の予約名であり、問​​題を引き起こしていることが判明しました。名前をもっとわかりにくい名前に変更することで解決しました。

0

ファイルの権限を更新しましたか?そのはず chmod 0755 fwupd

0
Marco Ceppi