远程机器是麒麟操作系统桌面版本,通过VNC登录后,分辨率只有800x600,运行一些有图形界面程序显示不全,拖来拖去,很麻烦。
以为是安装的TightVNC不行,换了TigerVNC,还是不行。
其实麒麟是Ubuntu系的,ubuntu默认支持vnc,vino-serv。
占用5900端口。
lsof -i
显示所有端口占用的程序,可以找到vino-serv。
所以不需要安装TightVNC或TigerVNC。
但是也没有找到办法设置vino-serv,没有找到相关配置文件,网上说的都试过了,没有效果。
后来找了一个替代方法,写了一个脚本,登录vnc后,执行脚本,就可以修改分辨率了。
#!/bin/bash
export DISPLAY=:0
xrandr --fb 1920x1080
/usr/lib/vino/vino-server &
亲测可用。
在另一台鲲鹏cpu的麒麟上,没有效果。
xrandr
cvt 1920 1080 60
xrandr --newmode "1920x1080_60.00" 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsynce
xrandr --addmode VGA-1 "1920x1080_60.00"
xrandr --output VGA-1 --mode "1920x1080_60.00"
这样设置一下就可以了。
第一句 xrandr,看看当前配置。
第二句, cvt是一个在Linux中用于生成显示器模式详细信息的命令行工具。它可以根据用户指定的分辨率和刷新率计算出适合显示器的Modeline配置信息。
第三句,根据cvt输出,新建一个mode。
第四句,添加mode。
第五句,设置mode。