我的1080P笔记本接了一个4K分辨率显示器。安装Ubuntu18后,发现页面太小啦,如果通过VMWare设置自动适应客户机,然后选择自由拉伸,又变得好丑。字体和内容都变得很糊。
我在网上找了很久,找到了一篇教程,也是2020年新写的。我在这里贴出来。https://www.cnblogs.com/youxia/p/linux036.html。当然了,我肯定不是完全和他一样,所以才写了这个文章顺便投原创。
博客中操作的重点就是在终端中的操作。第一步
cvt 3200 1800 //此命令查看设置为3200*1800分辨率需要设置什么参数
比如在我的电脑上返回的内容如下
# 3200x1800 59.96 Hz (CVT 5.76M9) hsync: 111.82 kHz; pclk: 492.00 MHz
Modeline "3200x1800_60.00" 492.00 3200 3456 3800 4400 1800 1803 1808 1865 -hsync +vsync
你要接着输入命令(xrandr --newmode 加上上面返回的部分内容,从Modeline后面的"3200x1800"…这里开始),所以你第二步要输入
xrandr --newmode "3200x1800_60.00" 492.00 3200 3456 3800 4400 1800 1803 1808 1865 -hsync +vsync //你定义了一个分辨率
第三步要将这个分辨率模式加入系统(此步骤界面可能会缩的很小,正常)
xrandr --addmode Virtual1 "3200x1800_60.00"
第四步,让现在的系统用你定义的这个分辨率模式
xrandr --output Virtual1 --mode
OK,到这里,博客中的要点就结束了。然后开始我的总结。
对于上图"3200x1800_60.00"相当于定义了一个名为"3200x1800_60.00"的变量,这个变量存储了一些参数。然后这些操作只是对当前系统有效,为了让他一直有效,你需要将他保存到一个文件,这个文件可以理解为环境变量。每次开机都会读取。这个文件是隐藏文件,在~目录下,需要用 ls -a 能查看到文件(.profile)是否存在。将那三行代码添加到文件末尾。应该要用root用户,通过gedit命令去改文件。
sudo su //切换到root
gedit .profile //改内容
我和博客中输入cvt 3200 1800返回的内容有差异,而这个差异很小,影响却很大。博客中返回了
"3200x1800_60.00" 492.00 3200 3456 3800 4400 1800 1803 1808 1865 -hsync +vsync //我返回的内容中一部分
"3200x1800" 492.00 3200 3456 3800 4400 1800 1803 1808 1865 -hsync +vsync //博客中返回的部分
我的返回的内容相比多了_60.00内容,可能这是屏幕刷新率吧。但是我如果直接xrandr --newmode后面接"3200x1800_60.00" 492.00 3200 3456 3800 4400 1800 1803 1808 1865 -hsync +vsync,就会报错X Error of failed request
X Error of failed request: BadName (named color or font does not exist)
Major opcode of failed request: 141 (RANDR)
Minor opcode of failed request: 16 (RRCreateMode)
Serial number of failed request: 55
Current serial number in output stream: 55
那如何解决报错呢?看了网上的说法:大概是因为不能有下划线。(但是我换一个分辨率带下划线可以)
如果我换成别的名字,或者把下划线换成连接符-,这条命令不会出错。但是输入到最后一条的时候,整个界面除了终端窗口外都会花屏。所以最后我换了一个其他的分辨率,还可以,想换3840x2160来着,但是这样的话,必须要全屏才可以,否则看不全。斟酌之后选了2560x1600。
xrandr --newmode "2560x1600_60.00" 348.50 2560 2760 3032 3504 1600 1603 1609 1658 -hsync +vsync
xrandr --addmode Virtual1 2560x1600_60.00
xrandr --output Virtual1 --mode 2560x1600_60.00