Linux 安装远程桌面并设置添加分辨率
本来想用本地的kali linux来远程登陆centos的服务器,在远程服务器安装VM,再VM里安装Windows虚拟机,用作工作娱乐需要,尼玛八颗八核至强CPU
,128G内存,2T硬盘,资源不能闲置不是?
一开始安装在服务器安装的XRDP,RDP是微软的一套remote desktop protocol协议,在本地安装rdesktop,再使用rdesktop -f -u username -p passwd ip:port,就能远程登陆服务器桌面了,但是没有声音,不爽。后来得知应该将非root用户加入audio组,我就加了,没效果(在freenx却有效果)。
后来我选择了freenx,去官网下载安装相应的deb或rpm包就可以了,安装包里自动安装服务器端程序和客户端程序。最后使用客户端登陆就可以了。freenx挺流畅的,但是全屏后不能使用本地快捷键,这点不如rdesktop。后来才发现其实这个可以设置,鼠标移动到右上角点击即可进入设置界面,可以设置显示的质量还有音频的质量,还有捕获键盘输入,总之,比rdesktop全面强大!
不管是在VM里还是freenx里,都遇到了分辨率达不到本地显示器的要求的问题,解决方案如下:
执行以下的命令即可强制修改分辨率:
1)cvt 1920 1080 60 //19201080是你想要的分辨率 60是刷新率
执行结果:
# 1920x1080 59.96 Hz (CVT 2.07M9) hsync: 67.16kHz; pclk: 173.00 MHz
Modeline “1920x1080_60.00” 173.00 1920 2048 2248 2576 10801083 1088 1120 -hsync +vsync
注意:173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync+vsync 这个数据很重要,后面需要用到
2)xrandr --newmode “1920x1080_60.00”173.00 1920 2048 2248 2576 10801083 1088 1120 -hsync +vsync
注意,这里使用的数据“173.00 1920 20482248 2576 1080 1083 1088 1120 -hsync+vsync”就是上面第一步中得到的数据,而“1920x1080_60.00”是自己定义的新的模式的名称,如果你想要的分辨率是800x600,当然你可以改为“800x600”或者“800x600_60.00”(60.00只是标明刷新率是60,不是必要的)
3)xrandr --addmode VGA-0 “1920x1080_60.00”
注意,这里的VGA-0不是固定的,而是根据具体的设备定的,有可能是VGA-0,VGA-1又或者是DIV1,DIV0都有可能,可通过xrandr指令查看当前连接的是哪个设备,一般在xrandr指令输出信息的前几行可以看到有个***connected xxxx,这个***就是你要使用的设备,上述指令的“1920x1080_60.00”参数就是在第二步里面添加的分辨率模式。
4)xrandr --output VGA-0 --mode“1920x1080_60.00”
VGA-0 和“1920x1080_60.00“参数意思同上,guess what.
这步做完,就会发现分辨率已经修改好了,但是一重启之后,就会发现,又恢复到原来的低分辨率了,所以这里可以做一个脚本,使每次登录的时候都自动执行这个脚本,那么只要一登录就会自动地把分辨率改过来了,系统会报“xxx不正常”的错误,但这个并不会影响使用。
脚本编写:
1.vim xrandr-config.sh
2.在xrandr-config.sh文件中输入:
#!/bin/bash
xrandr --newmode “1920x1080_60.00” 173.00 1920 2048 2248 2576 10801083 1088 1120 -hsync +vsync;
xrandr --addmode VGA-0 “1920x1080_60.00”;
xrandr --output VGA-0 --mode“1920x1080_60.00”
(注意,这里只是把上面的操作全部移到一个脚本中,但是里面省略了第一步,即cvt xxxx 这一部,因为cvt xxx得出的结果是固定不变的,所以我们可以记录下第一步的数据直接放到第二部中去使用)
3.保存推出后vim /etc/profile,在文件最后加上xrandr-config.sh所在的路径及名称,如我放在/root/Documents里面,则在/etc/profile最后加上/root/Documents/xrand-config.sh
4.重启,用户登录后就会自动执行脚本强制修改分辨率了。
再记录后来遇到的两个问题,当服务器没有安装桌面环境或者说XWindow时,再或者按照上面的方法设置分辨率遇到类似xrandr: Failed to get size of gamma for output default等问题时,或者启动service nxserver start 时提示:
NX> 162 WARNING: Cannot find X servers running on this machine.
NX> 162 WARNING: A new virtual display will be created on demand.
或者说另一种设置分辨率的方案,参照官方网站说法是freenx 5之后提供这样的特性:本地X服务没有启动时,可以创建虚拟显示器,修改配置文件:
As a further notice, the following keys will be added to the server configuration file (server.cfg):
#
# Enable or disable the automatic creation of an X11 display when no
# X servers are running on this host (e.g. headless machine) to let
# users connect to the desktop. This setting applies to NoMachine
# servers not supporting virtual desktops and permits to have one
# single display.
#
# 1: Enabled. NoMachine will create automatically the new display at
# server startup. This setting has to be used in conjunction with
# 'DisplayOwner' and 'DisplayGeometry'.
#
# 0: Disabled. NoMachine will prompt the user for creating the new
# display. This is the default.
#
#CreateDisplay 0 #设置为1
#
# When 'CreateDisplay' is enabled, specify the display owner and let
# NoMachine create the new display without querying the user. If the
# server supports only one concurrent connection, the connecting user
# must be the display owner set in this key.
#
#DisplayOwner "" #登陆桌面的用户
#
# When 'CreateDisplay' is enabled, specify the resolution of the new
# desktop in the WxH format. Default is 800x600.
#
#DisplayGeometry "800x600" #修改为自己想要的分辨率
什么?找不到配置文件?用find / -name server.cfg,在结果里找。修改完后重启nxserver服务,然后再登陆,完美!对了,要把自己加入到audio用户组哦,否则可能会没有声音。
更多推荐
所有评论(0)