来源:https://blog.zhjh.top/archives/Hj6MzDF0JS0PqJcjA3YWC

这是原先写在博客园的,原标题为 “Linux Ubuntu 虚拟机系统自定义桌面分辨率且重启后保持不变”,现在做部分修改,适用于 Debian 系发行版:

我用 VMware Workstation 12 Pro 安装的 Ubuntu MATE Desktop Environment 1.12.1 ,发现安装后没有需要的分辨率,于是安装 VMware Tools/Open VM Tools,希望安装后分辨率可以自动适应(查看 -> 自动调整大小 -> 自动适应客户机),但是安装后无效且虚拟机和客户机之间的复制粘贴也无效,原先用 Ubuntu Kylin 16.04 都可以的。

可能是 VMware Tools 的问题,没有深入研究,如果谁知道可以留言告诉我。

复制粘贴以后再讲,可通过共享完成。

先讲一下分辨率,终端命令如下:

# 生成指定分辨率
$ cvt 1920 1080
# 1920x1080 59.96 Hz (CVT 2.07M9) hsync: 67.16 kHz; pclk: 173.00 MHz
Modeline "1920x1080_60.00"  173.00  1920 2048 2248 2576  1080 1083 1088 1120 -hsync +vsync

# 使用 xrandr 创建新的 mode,--newmode 后面跟刚刚 cvt 产生的 modeline 信息,如果去掉“_60.00”就可以在显示器首选项中看到。
$ xrandr --newmode "1920x1080_60.00"  173.00  1920 2048 2248 2576  1080 1083 1088 1120 -hsync +vsync

# 查看分辨率和设备
$ xrandr

# 添加新的 mode,--addmode 后面第一个参数是 xrandr 命令显示出来的列表中,你要更改目标输出的设备名称,此处是虚拟机所以是 Virtual1。
$ xrandr --addmode Virtual1 "1920x1080_60.00"

# 将分辨率应用到指定的输出设备
$ xrandr --output Virtual1 --mode "1920x1080_60.00"

但是这样设置之后重启就会消失,解决方案是新增 xorg.conf 文件,将此模式保存为默认分辨率。

# 如果未安裝 Vim 可自行百度或使用“sudo gedit /etc/X11/xorg.conf”
$ vim /etc/X11/xorg.conf

# 以下内容 Shift + Insert 粘贴(复制是 Ctrl + Insert,剪切是 Shift + Delete )到 Vim 中,然后按 Esc 输入 :wq 保存并退出 Vim。
# 其中第三行为第一条命令的输出内容,如果文件中有内容,看格式追加。
Section "Monitor"
Identifier "Configured Monitor"
Modeline "1920x1080_60.00"  173.00  1920 2048 2248 2576  1080 1083 1088 1120 -hsync +vsync
Option "PreferredMode" "1920x1080_60.00"
EndSection

Section "Screen"
Identifier "Default Screen"
Monitor "Configured Monitor"
Device "Configured Video Device"
EndSection

Section "Device"
Identifier "Configured Video Device"
EndSection

如果 xorg.conf 不存在也可以设置开机启动(我还没去找其他解决方案):

$ vim /etc/rc.local

# 之前用过的命令粘贴进去保存即可
#!/bin/bash
xrandr --newmode "1920x1080_60.00"  173.00  1920 2048 2248 2576  1080 1083 1088 1120 -hsync +vsync
xrandr --addmode Virtual1 "1920x1080_60.00"
xrandr --output Virtual1 --mode "1920x1080_60.00"

参考资料

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐