- 安装ubuntu桌面化环境
apt install ubuntu-desktop gnome-panel gnome-settings-daemon metacity nautilus gnome-terminal dbus-x11 x11-xserver-utils
2\安装vnc服务端
apt install tightvncserver
2、初始化vnc并设置VNC密码
vncserver
Would you like to enter a view-only password (y/n)?
这个选项是您是否想要输入一个仅查看密码,这里要输入n否则vnc登录时将无法操作。
3、初始化后可以查看vnc状态
使用netstat -ntlp查看5901端口是否监听
- 将刚刚启动的vnc停止并编辑vnc启动脚本
使用vncserver -kill :1 停止刚刚启动的vnc远程桌面
由于刚刚初始化了vnc,vnc会自动生成一个文件夹,vnc的启动脚本文件、vnc的日志文件和密码文件都会在这个文件夹中,路径为:~/.vnc/
编辑xstartup文件将原有文件替换为以下内容:
#!/bin/sh
autocutsel -fork
xrdb $HOME/.Xresources
xsetroot -solid grey
export XKL_XMODMAP_DISABLE=1
export XDG_CURRENT_DESKTOP="GNOME-Flashback:Unity"
export XDG_MENU_PREFIX="gnome-flashback-"
unset DBUS_SESSION_BUS_ADDRESS
gnome-session --session=gnome-flashback-metacity --disable-acceleration-check --debug &
XAUTHORITY=$HOME/.Xauthority
export XAUTHORITY
重新启动vnc并通过5901端口访问是否成功
- 这个时候vnc远程桌面中的浏览器是打不开的,在终端中使用firefox手动打开浏览器
出现报错,这是在 VNC 上转发 X11 时快照和注册 XAuthority 的问题。只需在终端窗口中运行以下命令即可解决此问题;
XAUTHORITY=$HOME/.Xauthority
export XAUTHORITY
然后,通过终端运行 Firefox 即可正常打开它
这个时候只是临时的环境变量,如果虚机重启或vnc重启临时环境变量就会失效,建议将环境变量设置成永久环境变量
编辑/etc/profile环境变量文件在末尾加入
XAUTHORITY=$HOME/.Xauthority
export XAUTHORITY
并使用source /etc/profile重新加载环境变量
然后运行vncserver -kill :1和vncserver重新启动vnc,这样就可以直接通过桌面图标打开火狐浏览器。
注:VNC服务可以有多个远程桌面进行连接,假如运行一个vnc后也可以再运行第二个甚至多个vnc,他们是通过不同的端口来控制的默认从5901开始,第一个vnc端口为5901第二个为5902依次+1,这是通过/usr/bin/vncserver这个vnc配置文件进行控制的
可以通过文件中的vnsprot变量来修改vnc的默认端口,这里可以看到这个变量的值就是5900加上桌面号,如果运行多个vnc桌面可以通过桌面号来管理,例如我想关闭第二个运行的桌面使用:vncserver -kill :2来关闭