コマンドを発行するたびに
./fwupd /dev/sda
私は次を取得します:
bash: ./fwupd: cannot execute binary file
Ubuntu 11.04 LiveCDを使用してSSDのファームウェアを更新しようとしています。
コマンドを正常に発行するにはどうすればよいですか?
ファイルを実行するのではなく、調達しているように見えます。
次のようなフルパスを使用して実行してみてください
Sudo /home/user/fwupd /dev/sda
いくつか試したところ、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
「env」という名前のファイルがあり、同じエラーが発生していました。
. env
bash: .: /usr/bin/env: cannot execute binary file
Envはある種の予約名であり、問題を引き起こしていることが判明しました。名前をもっとわかりにくい名前に変更することで解決しました。
ファイルの権限を更新しましたか?そのはず chmod 0755 fwupd