Bootstrap

Ubuntu 18.04 LTS安装vnc4server+xfce4桌面环境和设置vnc开机自启动

先看下效果图片:

安装之前先去更改为国内源:Ubuntu18.04换源

安装 xfce4

sudo apt install xfce4*  

安装VNC4,注意不是tigervnc或者其它

sudo apt install vnc4server 

启动并且设置密码(目的是生成默认的配置文件)

vncserver

然后停止刚才启动的服务

vncserver -kill :1

编辑xstartup配置:

vim ~/.vnc/xstartup

配置改为如下:

#!/bin/bash
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
startxfce4 &
# 执行后可以双向copy文本
vncconfig &

创建开机自启脚本,需要root权限操作

vim /lib/systemd/system/rc-local.service

该文件默认存在,如不存在,可以尝试加入以下默认配置:

对一些关键的配置想说明原理:

        Type=forking(对于一些直接启动的命令,不会在额外启动进程的用 Type=simple,

        对于会额外启动进程的命令,需要用Type=forking)

        参考:ubuntu18.04 systemctl 命令

        User=root(这个需要根据你按照vncserver时候用的什么用户,如果按照用的非root用户,这里配置了root,应该是启动不起来的,因为vncserver没有在root用户下初始化过,如设置密码,配置vncserver的启动文件,所以启动会失败,那这里该配置哪一个用户你应该知道了吧?)

[Unit]

Description=/etc/rc.local Compatibility

Documentation=man:systemd-rc-local-generator(8)

ConditionFileIsExecutable=/etc/rc.local

After=network.target

[Service]

Type=forking

User=root

ExecStart=/etc/rc.local

TimeoutSec=300

RemainAfterExit=yes

GuessMainPID=no

如配置文件存在,需要再加入以下配置:

[Install]
WantedBy=multi-user.target
Alias=rc-local.service

然后创建rc.local文件,

sudo touch /etc/rc.local 
chmod +x/etc/rc.local 

需注意:脚本内为bash命令,第一行需要加入 

#! /bin/bash

如果开机启动的脚本会卡住,需要在命令后方加入 &

如 vncconfig &(这个是vncserver的工具,可以来回copy文字等)

将启动vnc的命令写入脚本内(脚本内的命令仅供参考,具体路径需要根据实际情况修改)

#! /bin/bash

/usr/bin/vncserver -kill :1
/usr/bin/vncserver :1 -geometry 1920x1080

 编辑好启动脚本后,启用rc.local脚本

sudo systemctl enable rc-local

启动命令和查看该服务状态的命令

sudo systemctl start rc-local.service
sudo systemctl status rc-local.service

重启服务器,查看是否生效

reboot

参考文章:

Ubuntu 18.04 LTS安装vncserver+xfce4

Ubuntu18.04 开机自启动(需要 sudo 权限)

;