bash: ./*.exe: *.exe という名前の実行可能ファイルまたはディレクトリはありません。

bash: ./*.exe: *.exe という名前の実行可能ファイルまたはディレクトリはありません。

名前は?で終わると、通常のLinuxバイナリを実行できないようです。.exe理由は何ですか?

$ cp /bin/pwd pwd
$ ./pwd
/home/premek

いいですね。しかし...

$ cp /bin/pwd pwd.exe
$ ./pwd.exe 
bash: ./pwd.exe: No such file or directory

$ ls -la pwd.exe 
-rwxr-xr-x 1 premek premek 39616 May  3 20:27 pwd.exe

$ file pwd.exe 
pwd.exe: ELF 64-bit LSB pie executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=2447335f77d6d8c4245636475439df52a09d8f05, stripped

$ ls -la /lib64/ld-linux-x86-64.so.2
lrwxrwxrwx 1 root root 32 May  1  2019 /lib64/ld-linux-x86-64.so.2 -> /lib/x86_64-linux-gnu/ld-2.28.so
$ ls -la /lib/x86_64-linux-gnu/ld-2.28.so
-rwxr-xr-x 1 root root 165632 May  1  2019 /lib/x86_64-linux-gnu/ld-2.28.so
$ file /lib/x86_64-linux-gnu/ld-2.28.so
/lib/x86_64-linux-gnu/ld-2.28.so: ELF 64-bit LSB pie executable, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=f25dfd7b95be4ba386fd71080accae8c0732b711, stripped

答え1

私はこの問題について一日を過ごしましたが、もちろんこの質問を投稿してから1秒後にワイン用の.exeファイルを登録するために、次のことが思い出されました。

$ sudo cat /proc/sys/fs/binfmt_misc/wine 
enabled
interpreter /usr/bin/wine
flags: 
extension .exe

存在しません/usr/bin/wine

私は以下を使用してそれを削除しました。

$ sudo update-binfmts --remove wine /usr/bin/wine
update-binfmts: warning: no executable /usr/bin/wine found, but continuing anyway as you request

今大丈夫

答え2

Linuxを含むほとんどのUN * Xesは、ファイルの先頭またはその近くに表示される「Magic Number」で、デフォルトの実行可能ファイル(Linuxを含むほとんどの最新のUN * Xesの場合はELFファイル)を識別します。

Windows バイナリは次の場所にあります。移植可能な実行可能ファイル形式、魔法の数もあります - ファイルはスタブMS-DOS実行可能ファイルから始まります。文字「MZ」を含むマジックナンバーで始まります。、そして変数オフセットを持つ別々の「PE」マジックナンバーもあります。

~によるとbinfmt_miscのkernel.orgドキュメント、binfmt_miscルールは、ファイル拡張子ではなくファイルの内容(マジックナンバーなど)に基づいている場合があります。彼らが提供するワインルールの例は次のとおりです。

:DOSWin:M::MZ::/usr/local/bin/wine:

Wineがインストールされていないので、ルールを完全に削除するのが正しい修正です。 Wineをインストールしたことがある場合するLinuxバイナリと同じ方法でWindowsバイナリを実行するには、カーネルに.exeで終わるすべてのエントリがWindows実行可能ファイルであると仮定するように指示するルールの代わりに、サンプルルールと同様のルールを使用する必要があります。

関連情報