我最近下载了一个扩展名为.bundle的软件包。它是VMware-Player-6.0.3-1895310.x86_64.bundle。我想安装vmware-player,但当我打开它时,它却用文本编辑器打开了。
你需要更改文件的权限以使其可执行:
chmod a+x VMware-Player-6.0.3-1895310.x86_64.bundle
启动该文件。安装VMWare通常需要root权限,但并非总是如此。所以在这种情况下:
sudo ./VMware-Player-6.0.3-1895310.x86_64.bundle
VMware Player、Workstation和其他产品的.bundle
文件实际上是带有嵌入式二进制数据的shell脚本。您可以使用file
实用工具来发现或验证这一点,该工具对于查找文件的类型非常有用(可能):
ek@Ilex:~$ file VMware-Player-6.0.3-1895310.x86_64.bundle
VMware-Player-6.0.3-1895310.x86_64.bundle: a /usr/bin/env bash script executable (binary data)
chmod +x VMware-Player-6.0.3-1895310.x86_64.bundle
sudo ./VMware-Player-6.0.3-1895310.x86_64.bundle
(如果它是您当前目录中唯一的.bundle
文件,您可以使用chmod +x *.bundle
和./*.bundle
。或者键入文件名的前几个字符,然后按Tab,shell会为您输入剩余部分。)
sudo
?虚拟化软件(例如VMware产品)必须以root身份安装。这就是为什么我在第二行开头放置了sudo
的原因。(与虚拟化相反,不使用任何虚拟化的模拟器通常可以由有限用户安装和使用,而无需root采取任何操作。)
sudo
可以使用?sudo program
运行图形程序(更倾向于使用gksudo program
或sudo -H program
),但在这种情况下应该没问题:
file Downloads/VMw*
显示为VMware-Player-7.0.0-2305329.x86_64.bundle: data
。相反,您可以通过使用cat -vt ~/Downloads/V*|more
命令查看文件的开头,该命令会显示以一行指示它是一个shell脚本开始:#!/usr/bin/env bash
。 - nealmcb./VMware-Player-...x86_64.bundle --help
- Pau Coma Ramirez/bin/sh
是否正确?这是由@thusitha sumanadasa在另一个答案的评论中建议的 - 或者使用bash
或sh
是否很少有区别? - Cadoiz
sudo /bin/sh VMware-Player-6.0.3-1895310.x86_64.bundle
命令。 - Thusitha Sumanadasachmod a+x
而不是chmod u+x
吗?新用户不应该被鼓励将某物设为全局可执行。 - Morgothsudo
?如果我右键单击文件,没有“以root身份运行”(以管理员身份运行)的选项。如何在不使用shell的情况下安装VMWare? - Eugene Malasudo
的唯一选项是以提升的权限运行Dolphin。据我所知,chmod a+x
和chmod +x
是等效的,请参考这里:https://www.systemconf.com/2020/12/25/using-chmod-x-command-on-linux-and-unix-with-examples/ - Cadoiz