如何在 Windows 7 主机上运行的 VMware Workstation 12 Player 中设置 Ubuntu 16.04 64 位的屏幕分辨率?

我可以在登录后使用以下命令手动设置屏幕分辨率:
xrandr -s 1360x768

但是我无法让它保持在这个分辨率上。每次我重新登录,分辨率都会暂时改变为1360x768,但在桌面出现之前就切换回800x600。
我还尝试了其他版本的命令,如果这有关系的话。例如,xrandr --output Virtual1 --mode 1360x768。只要不退出当前会话,它就可以工作,但在我重新登录后又会切换回800x600。
我尝试过以下方法:
1. 将命令放置在/etc/lightdm/lightdm.conf中,但这会导致整个图形界面无法显示。 2. 编辑~/.xprofile以运行设置屏幕分辨率的命令,但这并不起作用。 3. 安装了open-vm-tools并确保其是最新版本。 4. 在虚拟机设置中禁用了3D加速,正如另一个答案中建议的那样。但这没有任何效果。 5. 将xrandr命令添加到我的~/.bashrc中。这使得每次打开终端时都能正确设置分辨率,但这个解决方案有些笨拙。我不想必须打开终端才能正确设置屏幕分辨率。
还有其他什么办法吗?
提前感谢!
编辑:我正在使用VMware Workstation 12 Player,版本12.1.1(构建3770994)。

你使用的是哪个版本的VMware? - Severus Tux
@Vishwa 我正在使用 VMware Workstation 12 Player,版本为 12.1.1 (build-3770994)。 - ARV
我已经发布了答案 **:-)**。正如你所看到的,我在Ubuntu上使用VMWare Workstation,但这不应该有任何影响。希望这能解决你的问题。 - Severus Tux
我突然也遇到了这个问题。我重新启动了我的虚拟机,现在除了800x600的分辨率外,其他任何分辨率都无法正常工作。我尝试了所有我能找到的解决办法,但是没有任何效果。 - Halsafar
6个回答

我之前在这里写过,Ubuntu的全新安装不会有分辨率问题。但是后来我在寻找另一个问题的答案时找到了解决方法。
按照以下步骤操作,一切都会得到解决。如果您已经安装了最新的VMware工具并且未安装open-vm-tools,则跳过第3步。
1)sudo apt-get autoremove open-vm-tools 2)按照通常的方法安装VMware工具(虚拟机->重新安装VMWare工具)
3)重启虚拟机
4)sudo apt-get install open-vm-tools-desktop 5)重启虚拟机。
希望这可以帮助您。我知道尝试修复这个问题有多么令人沮丧。

2非常抱歉没有及时回复。我尝试了这个方法,但它并没有解决问题。目前,我只是手动运行一个脚本来设置分辨率。虽然不是一个优雅的解决方案,但对我来说暂时有效。 - ARV
1对于没有更新这个答案,我感到抱歉。我应该更早地删除我的第一条评论。这是修复vmware 12.1.1 build-3770994的方法,但在我现在使用的vmware 12.5.0 build-4352439上不起作用。如果我找到了这个版本的新解决方案,我会更新这个答案。如果你也找到了解决方案,请添加一个答案。 - sercan
2这个答案对我在VMWare Fusion 8.5.8 (5824040)版本中使用的Ubuntu 16.04.1 LTS有效。 - Ian

如果您在VMWare Workstation上使用Ubuntu,您需要安装VMWare工具以获得适当的分辨率。
以下是逐步操作的步骤:
  • 启动您的虚拟机并登录到Ubuntu。

  • 转到VM --> 安装VMWare Tools...

    enter image description here

  • 点击安装

  • 现在您应该在Ubuntu中看到一个名为“VMWare tools”的虚拟CD。将VMWareTools-xx.xx.xx.xxxxx.tar.gz复制到您的主目录。

  • 解压它

    enter image description here

  • 在终端中进入提取的文件夹:

     cd ~/vmware-tools-distrib
    
  • vmware-install.pl提供执行权限

     chmod +x vmware-install.pl
    
  • 以超级用户权限执行它。

     sudo ./vmware-install.pl
    
  • 输入密码。当要求确认时,输入yes并按下Enter。如果您希望使用默认设置进行安装,请继续按下Enter处理下一个消息,其中包括:

    • 在执行以下过程时,当询问“需要创建...这是您想要的吗?”时按下Enter

    • 默认目录/usr/bin

    • 包含init目录的默认目录/etc

    • 包含init脚本的默认目录:/etc/init.d

    • 守护程序文件的默认目录:/usr/sbin

    • 库文件的默认目录:/usr/lib/vmware-tools

    • 常见代理库文件的默认目录:/usr/lib

    • 常见代理临时文件的默认目录:/var/lib

    • 文档文件的默认目录:/usr/share/doc/vmware-tools

  • 当询问是否要调用/usr/bin/vmware-config-tools.pl时,按下Enter

  • 对于其他所有查询,按下Enter

  • 现在重新启动您的Ubuntu。

设置适当的分辨率。

  • 重新启动后,进入系统设置 --> 显示 --> 分辨率,选择您偏好的分辨率,然后点击应用,接着点击保留此配置

    enter image description here

就这样了;-)。重新启动后,默认分辨率将为1366x768 :-)


1尽管这个答案是针对在Ubuntu上的VMWare进行解释的,但是在Windows上的VMWare并没有太大的区别。 - Severus Tux
谢谢你的回答,但是我已经按照问题中提到的安装了适用于Ubuntu 16.04的open-vm-tools。当我尝试通过VMWare界面进行安装时,它显示VM tools已经安装,并建议使用操作系统附带的VM tools。我会再次检查是否有任何错误。由于这是一个新账户,我的点赞可能没有显示出来! - ARV
1我已经使用默认选项安装了VMware Tools,但这并没有解决自动调整屏幕分辨率的问题。我正在使用相同版本的VMware Workstation 12 Player 12.1.1 Build-3770994和16.04 LTS Ubuntu。主机操作系统是Win8.1。 - sercan
这个“VM”菜单在哪里?我只看到一个“活动”菜单。 - pacoverflow
在Ubuntu 20.04虚拟机中,我在VMTools 16设置的初始化阶段(在所有提示后)遇到了一个段错误。我提供... - jws

更改分辨率需要使用VMWare Tools或开源替代工具。我发现开源版本比随VMWare Workstation一起提供的编译版本效果稍好。
使用以下命令安装Open VM Tools。请注意,如果您已经安装了VMware Tools,则需要先卸载它们。
sudo apt-get install open-vm-tools open-vm-tools-desktop

一旦完成这个步骤,请完全关闭虚拟机,然后在工作站中重新启动它。
然后,您可以在图形用户界面中看到更多的分辨率选项,就像标准计算机一样,或者使用VMware Workstation的“自适应客户机”和“立即适应客户机”选项以及桌面Open VM Tools自动调整分辨率。
经过确认,在我个人运行的Ubuntu、Lubuntu、Xubuntu和Kubuntu 16.04 LTS机器上,此方法在VMware Workstation机器以及通过VMware Workstation访问的VMware ESXi虚拟机上都有效,并且几乎没有任何问题(请确保为虚拟机提供足够的vRAM,因为它从默认情况下您给出的虚拟RAM分配中获取视频RAM...)。

我遇到了同样的问题,很烦人,但最终通过使用上面建议的第一个答案的变种解决了。
我在Fusion 8.5.8上运行Ubuntu 16.04.3,硬件版本为12。
在Fusion的显示设置中:
  1. 应该勾选“对Retina显示器使用全分辨率”
  2. 将“使用Fusion显示首选项”设置为“单窗口”和“全屏”。
Fusion在MacOS 10.12.6上运行,在MacBook Pro上的显示首选项设置为“默认显示”。
  1. sudo apt-get autoremove open-vm-tools
  2. root身份安装Fusion的VMware工具
  3. 重新启动
我注意到重新启动后一切看起来都很完美,恢复到了我的1920x1200分辨率,但还是按照建议的最后几个步骤进行操作:
  1. sudo apt-get install open-vm-tools-desktop
  2. 重新启动
回到2560x1600的小分辨率,更改并保存为我喜欢的分辨率,然后退出并重新登录(实际上只是跳回我的Mac桌面再返回,因为这也会恢复设置),但Ubuntu又恢复到了2560x1600。
所以在这种状态下(仅运行VMware的工具与open-vm-tools-desktop),最终修复方法如下:
1. 运行sudo apt-get autoremove open-vm-tools-desktop 2. 在现有的安装上运行VMware的工具(第一步删除了一些必需的库和驱动程序) 3. 重新启动
完美解决,到目前为止没有注意到任何缺失或由于未安装开放式桌面工具而导致的功能丧失,似乎VMware的工具提供了您所需的一切并且正常工作。

就像你一样,我也找不到任何方法让它在启动时运行,但我找到了一种方法可以让它在登录时运行,这对我来说已经足够好了。我将以下内容添加到我的~/.profile文件中:
xrandr --newmode "1600x900_60.00" 118.25 1600 1696 1856 2112 900 903 908 934 -hsync +vsync
xrandr --addmode Virtual1 1600x900_60.00
xrandr -s 1600x900

你应该能够为你的决心做同样的事情。
xrandr --newmode "1360x768_60.00" 84.75 1360 1432 1568 1776 768 771 781 798 -hsync +vsync
xrandr --addmode Virtual1 1360x768_60.00
xrandr -s 1360x768

虽然在18.04上似乎不再起作用(它会更改然后立即切换回去)。在这种情况下,将上述内容添加到可执行的.sh文件中,并从Ubuntu的启动应用程序中添加一个新的条目调用它:

screenshot


编辑您的VMX文件,添加以下内容:
vga.guestBackedPrimaryAware = "FALSE"
svga.minVRAMSize = "16777216"

注意事项:

  • 在VMWare Fusion 8.5.6中以1920x1200的分辨率测试了Xubuntu 16.04,并使用了内核版本4.4.0-77。
  • 这可能是内核版本(我的情况下为4.4.0-77)和virtualHW.version(参见参考文献1)的组合问题,可能表明存在一个错误(参见参考文献2)。
  • 我的虚拟机设置为virtualHW.version = "11"

参考文献:

  1. https://unix.stackexchange.com/questions/301531/ubuntu-server-stopped-running-in-higher-resolution
  2. https://github.com/vmware/open-vm-tools/issues/54