无法在虚拟机中的 ubuntu 上并行运行一个程序的多个实例

无法在虚拟机中的 ubuntu 上并行运行一个程序的多个实例

我在 Windows 笔记本电脑上保留了一个运行 Ubuntu 的虚拟盒。各种 Windows 分区都已安装,因此可以通过 ubuntu 虚拟盒看到。Linux 软件实际上存储在 Windows 文件系统中,并且可以在虚拟盒 ubuntu 中完美执行。

直到我升级到 Ubuntu 20.04.2 LTS,情况才有所改变。现在,Linux 可执行文件仍在运行……但是,在一个程序已经在运行时,启动同一程序的第二个副本的任何尝试都会失败。实际上,如果我prog在后台启动一个程序(任何程序),并且我ls -l /windows_path/wherever/progx标志就会消失(它会在 prog 的运行副本完成后立即返回。)因此,无法并行启动的多个副本prog是因为可执行文件在首次启动后被暂时标记为“不可执行”,并且在运行完成之前尝试启动另一个副本会返回“权限被拒绝”。这发生在任何可执行文件上,无论是编译的还是 shell 脚本。我实际上编写了一个包含对其ls -l自身指令的 shell 脚本,...并且(在chmod +x)启动它之后,确实,它在运行时将自己描述为不可执行!?向脚本chmod +x本身询问失败。

有人知道这是怎么回事吗?在同样好的旧 Oracle VirtualBox 中,ubuntu 18 从未发生过这种情况,并且 windows 主机上没有任何变化(也不是由于 VirtualBox 更新)。更新/etc/fstab后我也没有碰过,它仍然像这样:

D_DRIVE /media/sf_D_DRIVE vboxsf uid=1000,gid=1000,rw,exec 0 0
E_DRIVE /media/sf_E_DRIVE vboxsf uid=1000,gid=1000,rw,exec 0 0

答案1

这听起来像 VirtualBox 错误 20320https://www.virtualbox.org/ticket/20320这个问题应该在 VBox 6.1.22 版中得到修复。升级主机和 Guest Additions,因为这是一个共享文件夹问题。

相关内容