简介
越来越发现用命令行进行系统操作的效率真是低的一逼(原谅我脑容量有限,只记有用的东西)。现在远程ubuntu桌面的方式有一大把:VNC(Virtual Network Computing)、TeamViewer、win10自带的远程连接RDP。经过一番尝试之后还是发现VNC最好用而且还免费。在linux上基于VNC协议的实现工具有很多,如TigerVNC、TightVNC、Vino、x11VNC、VNC Server等。要想能够正常远程到ubuntu上,需要有vnc客户端和服务端,基本环境如下:
- 操作系统:Ubuntu Server 18.04 LTS(已包含Gnome桌面)
- VNC Server:TigerVNC
- VNC Client:VNC Viewer for Windows(点击下载)
安装
VNC Client就不用说了,单文件版,双击就能运行。
VNC Server安装如下:
- ssh到你的server,然后输入以下命令安装tiger vnc:
sudo apt install tigervnc-standalone-server tigervnc-xorg-extension tigervnc-viewer
- 如果你没有任何桌面的话,可以输入以下命令安装过gnome桌面:
sudo apt install ubuntu-gnome-desktop
sudo systemctl enable gdm
sudo systemctl start gdm
- 配置vnc的登陆密码,直接输入以下命令,输入两次密码即可(最多只能输入8位):
vncpasswd
- 配置vnc使用gnome桌面:
nano ~/.vnc/xstartup
然后将以下内容粘贴进去,并保存:
#!/bin/sh
# Uncomment the following two lines for normal desktop:
export XKL_XMODMAP_DISABLE=1
unset SESSION_MANAGER
# exec /etc/X11/xinit/xinitrc
unset DBUS_SESSION_BUS_ADDRESS
gnome-panel &
gnmoe-settings-daemon &
metacity &
nautilus &
gnome-terminal &
如果你使用的xfce桌面,就粘贴如下代码:
#!/bin/sh
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
startxfce4 &
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
- 启动TigerVNC,直接输入
vncserver
看到如下结果就成功了
但是别着急连,因为还不能用. 输入netstat -ntupl|grep vnc
查看tiger vnc的端口监听状况:
发现它只是监听了127.0.0.1本地地址,没有监听外网地址。输入vncserver -kill :*
关闭vncserver(实际上是关闭了所有vnc开启的桌面,更多命令参考请输入vncserver --help
),然后再输入vncserver -localhost no
,开启外网的监听。
可以看到已经监听0.0.0.0了,端口5901。
如果你使用ECS或者有防火墙的话,可能会有一些安全策略上的配置需要你放行该端口。
至此,你可以开启VNC Viewer进行远程了。
注意
(1) VNC server输入IP和端口的方式(中间用两个冒号分隔)。
(2) 如果远程之后你发现是灰屏而且鼠标指针是个十字的话,表明需要安装gnome缺失组件:
apt-get install --no-install-recommends ubuntu-desktop gnome-panel gnome-settings-daemon metacity nautilus gnome-terminal -y
然后再安装dpi
sudo apt-get install xfonts-100dpi
sudo apt-get install xfonts-75dpi
图赏
Inspired by
1.Install and Configure TigerVNC server on Ubuntu 18.042.VNC连接Ubuntu 16.04桌面灰色的问题解决