这几天在配置实验室的服务器的时候发现了这一问题,前前后后搞了好久,后来我也不知道为啥就搞好了,网上也有好多类似的解决方法,但总感觉每个人都不一样,这里就记录一下自己的解决方法,给遇到类似问题的人以及自己以后遇到相同问题的话再按着这个步骤来就是了。
因为写的时候已经配好了不想再配一次所以有些是抄录下面的链接的:
如何在Ubuntu 18.04上安装和配置VNC
我的配置
VNC Server:Ubuntu 18.04.5 LTS
VNC Viewer:Windows10
远程连接桌面环境:xfce(主要是用gnome连接的时候虽然能连上但log文件里能看到很多报错= =)
步骤1 在Server端安装桌面环境以及VNC4Server
首先更新下自己的服务器
sudo apt-get update
然后安装xfce
sudo apt install xfce4 xfce4-goodies
再安装VNC4Server
sudo apt-get install vnc4server
步骤2 创建VNC Server连接
安装完成后开始进行vnc4server的配置,运行如下命令设置安全密码并创建初始配置文件
vnc4server :1
因为我的服务器之前把所有有关vnc的软件包全部删掉了,再加上只安装了vnc4server,所以现在只识别vnc4server这条命令,这条命令的作用是创建一个新的端口号为1的远程桌面,之后在vnc viewer上就可以用IP地址:1或者5091来进行连接了
第一次连接会提示你为新建的session创建密码,便于以后登录
You will require a password to access your desktops.
Password:
Verify:
密码长度必须介于六到八个字符之间。超过8个字符的密码将自动截断。
验证密码后,可以选择创建仅查看密码。使用仅查看密码登录的用户将无法使用鼠标或键盘控制VNC实例。最好选n就是了
密码输入完后会提示你已经成功创建了desktop,相应的,创建时的一些error和warning也会记录在log文件中,出了问题的话直接去log文件里找error和warning然后bing搜索吧
一般人这种时候在windows上下载VNC viewer然后键入服务器IP地址:1或者服务器IP地址:5091其实就已经可以连接了,但有些人(比如我)完全是灰屏,特别难受
确认过之后利用kill命令先关闭desktop
vnc4server -kill :1
这个1是和上面那个1对应的,也可以有第234个desktop连接
步骤3 进行VNC Server的配置
步骤2中我们可以看到创建了一个xstartup的文件,里面是创建desktop后执行的一些命令,执行命令查看里面的内容
vim ~/.vnc/xstartup
在我看来里面的这些默认的命令没有任何用处,反而因为他们我启动vnc viewer的时候会灰屏
服务器上我现在xstartup里的命令就两条
#!/bin/sh
startxfce4 &
autocutsel -fork
第二条去掉也可以,其他文章上说可以加上xrdb $HOME/.Xresources这条载入用户设置的一些参数,但我只是想有一个可视化的桌面环境,所以并不需要(而且目录下也默认是没有这个文件的)。
给xstartup添加执行权限
sudo chmod 777 ~/.vnc/xstartup
然后重新启动vncserver,在windows上用viewer连接应该就可以看到xfce桌面了,不行的话重启下服务器重启下自己电脑
vnc4server :1
没有后面的:1会默认增加一个新的desktop,如果你已经有一个1的desktop会默认新建一个:2的desktop
遇到的其他问题
在一开始配置的时候我遇到了一个字体缺失的问题,就是在log文件里找到的
error opening security policy file /etc/X11/xserver/SecurityPolicy
Could not init font path element /usr/X11R6/lib/X11/fonts/Type1/, removing from list!
Could not init font path element /usr/X11R6/lib/X11/fonts/Speedo/, removing from list!
Could not init font path element /usr/X11R6/lib/X11/fonts/misc/, removing from list!
Could not init font path element /usr/X11R6/lib/X11/fonts/75dpi/, removing from list!
Could not init font path element /usr/X11R6/lib/X11/fonts/100dpi/, removing from list!
Could not init font path element /usr/share/fonts/X11/75dpi/, removing from list!
Could not init font path element /usr/share/fonts/X11/100dpi/, removing from list!
后面我是先安装了字体
apt-get install xfonts-100dpi xfonts-75dpi xfonts-scalable xfonts-cyrillic
然后再执行以下几个命令:
mkdir /usr/X11R6/lib
cd /usr/X11R6/lib
ln -s /usr/share/X11 X11
然后每次启动的时候其实还是会有问题emmm
error opening security policy file /etc/X11/xserver/SecurityPolicy
Could not init font path element /usr/X11R6/lib/X11/fonts/Speedo/, removing from list!
找不到Speedo字体,但由于已经连上了所以没有管它了