“没有这样的文件或目录”,但二进制文件存在

“没有这样的文件或目录”,但二进制文件存在

我最近安装了一个动态二进制翻译程序来在我的 ARMv8 服务器上运行 x86_64 二进制文件。卸载DBT工具后,我发现了一些奇怪的错误消息,非常令人困惑。

一点背景信息,使用 DBT 工具,我能够输入 bash(为 x86_64 编译)并运行测试,就像在 x86_64 机器上一样。

在我完成测试并决定卸载该程序后,问题发生了。

有时,在 ARM 服务器上(我在使用 rpm 包之前安装了 DBT),如果我运行 x86_64 静态链接的helloworld二进制文件,输出消息为

-bash: ./helloworld: No such file or directory 

但是当我使用fileand时ls,二进制文件就存在了。

file ./helloworld

./helloworld: ELF 64-bit LSB executable, x86-64, version 1 (GNU/Linux), statically linked, for GNU/Linux 3.2.0, BuildID[sha1]=465941947d84d055552ea628720b94096516c3a7, with debug_info, not stripped

但是,要在我之前没有安装 DBT 工具的另一台 ARM 服务器上运行相同的二进制文件。输出消息是

-bash: ./helloworld: cannot execute binary file: Exec format error

该错误消息是我想要收到的,因为它清楚地指出了二进制文件不匹配的问题。

我关心的是

我可能没有完全卸载DBT工具,但仔细检查rpm包添加的文件后我找不到任何残留物。

我读过诸如此类的帖子https://askubuntu.com/questions/133389/no-such-file-or-directory-but-the-file-exists, 和别的。他们似乎遇到了同样的问题,但这些信息对我来说没有用。

任何帮助将不胜感激。

相关内容