M1设备VMware Fusion 13.5.2的Debian ARM虚拟机能否挂载Rosetta运行amd64程序?
在M1设备的VMware Fusion Debian ARM虚拟机中运行amd64二进制文件的问题
结论
VMware Fusion Pro 13.5.2不支持在ARM架构的Linux虚拟机中挂载Rosetta来转译运行amd64二进制文件,这是它与UTM、Parallels的明确功能差异点。
报错原因
你执行./my-amd64-binary时出现的-bash: ./my-amd64-binary: cannot execute binary file: Exec format error,本质是ARM架构的Debian系统无法原生识别amd64格式的二进制程序,而VMware Fusion目前没有提供类似Rosetta的跨架构转译挂载能力。
替代解决方案
- 使用QEMU用户态转译:这是Linux系统通用的跨架构运行方案,虽性能不及Rosetta,但可满足基础需求。在Debian虚拟机中执行以下命令安装依赖后,即可直接运行amd64二进制:
sudo apt update && sudo apt install qemu-user-static ./my-amd64-binary - 切换至支持Rosetta的虚拟化工具:若对运行性能有较高要求,可改用UTM或Parallels,它们支持在Linux虚拟机中挂载Rosetta,通过
rosetta ./my-amd64-binary这类命令实现高效转译。
内容的提问来源于stack exchange,提问作者jthemovie
相关产品推荐
相关产品推荐

