Ubuntu
Ubuntu Server 停止以更高解析度執行
我已經完成的步驟:
- 在 VMware Workstation 12 中安裝了 Ubuntu Server 16.04.1
- 編輯
/etc/default/grub
為包含GRUB_GFXMODE=1440x900 GRUB_GFXPAYLOAD_LINUX=keep
- 跑
sudo update-grub
- 重新啟動;解析度設置正確,GRUB 和 Ubuntu 均為 1440x900
- 關閉
- 拍了一張
- 啟動虛擬機;解析度不再正確設置,GRUB 為 640x480,Ubuntu 為 800x600
在安裝期間、第一次重新啟動之前或兩次重新啟動之間,我沒有進行任何自定義。如何解決此問題,以便 Ubuntu 始終以 1400x900 執行?
vbeinfo
在 GRUB 中沒有列出任何高於 800x600 的解析度。
hwinfo --framebuffer
根本不輸出任何東西。編輯:我已經通過在新 VM 中的第二次安裝驗證了這一點:最初,GRUB 檢測到更高的解析度,並且這在重新啟動後仍然存在,但在關閉和重新啟動後不存在。
在玩了幾個虛擬機之後,我將問題追溯到 VMware 添加
svga.guestBackedPrimaryAware = "TRUE"
到 VMX 文件,這表明 VMware 知道 VM 已安裝 VMware 工具。看來,當設置此標誌時,VMware 不會通過 VBE 公開更高解析度,因此 GRUB 不能使用更高的解析度。從 VMX 文件中刪除這一行可以解決一次啟動的問題,但是當您關閉機器時,VMware 會將其添加回來。
如果硬體版本為 10,則不會發生此行為,但會在 11 或 12 上發生。要永久解決此問題,請
svga.guestBackedPrimaryAware = "TRUE"
從 VMX 文件中刪除該行,並將該行更改為virtualHW.version = "11"
或。virtualHW.version = "12"``virtualHW.version = "10"