CentOS 7下VNC Server服务配置
一、安装VNC相关包
yum -y install tigervnc tigervnc-server tigervnc-server-module
安装包
# rpm -qa|grep tigervnc
tigervnc-server-minimal-1.3.1-9.el7.x86_64
tigervnc-server-1.3.1-9.el7.x86_64
tigervnc-license-1.3.1-9.el7.noarch
二、复制配置模板文件为vncserver@:1.service
cp /lib/systemd/system/vncserver@.service /lib/systemd/system/vncserver@:1.service
三、修改/lib/systemd/system/vncserver@:1.service配置文件
[root@kvm01 ~]# cat /lib/systemd/system/vncserver\@\:1.service | grep -v ^# | grep -v ^$
[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target
[Service]
Type=forking
ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
ExecStart=/usr/sbin/runuser -l root -c "/usr/bin/vncserver %i"
PIDFile=/root/.vnc/%H%i.pid
ExecStop=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
[Install]
WantedBy=multi-user.target
四、设置VNC用户密码
vncpasswd
输入两次密码,完成密码设置。这一步一定要做的,不然无法启动vncserver。
五、重新载入system配置
systemctl daemon-reload
六、启动vncserver@:1.service服务,并设置开机自启
systemctl start vncserver@:1.service && systemctl enable vncserver@:1.service
注:若系统无法正常关机,则再次启动,此服务无法启动,解决办法参照步骤七
七、问题解决
注意关闭防火墙和selinux
1.报错:Job for vncserver@:1.service failed because the control process exited with error code. See "systemctl status vncserver@:1.service" and "journalctl -xe" for details.
处理方法:
rm -rf /tmp/.X11-unix/*
2.客户端无法连接进来
netstat -antlp|grep vnc
看到监听端口是5901
pc机使用tigervnc-viewer
输入ip:5901
4.调整分辩率,目前安装的这个版本不支持在脚本里设置分辨率。
下面链接里关于分辨率的设置是无效的,我走了不少弯路。
https://blog.51cto.com/hashing123/2155725
直接参考我的做法:建议用方法二
方法1:
systemctl stop vncserver@:1.service
vncserver -geometry 1920x1080
systemctl daemon-reload
systemctl start vncserver@:1.service
方法二、
直接设置系统分辨率即可。
“Sytem tools”--"settings"--"Displays"
选择你要的分辩率。