Ubuntu18安装图形界面Ubuntu20安装VNC远程桌面,gnome图形界面+tightvncserver

迅恒数据中心
Linux天生是命令行的操作模式,所以一般使用SSH这样的文字远程工具进行远程连接,但Linux其实是有图形界面的,我们可以在Linux系统上配置VNC服务来实现远程图形界面连接。本文以Ubuntu系统为例,搭建VNC服务后在iPad上可用通过Screens连接,在Windows上可用VNC Viewer连接远程桌面。
放行VNC的TCP端口5900、5901端口
先切换为root用户:
sudo su root
更新软件源:
apt-get update
首先系统要安装了图形界面,并默认是启动到图形界面
如果你的系统没安装图形界面,就请给系统安装图形界面:
sudo apt install gnome-panel gnome-settings-daemon metacity nautilus gnome-terminal ubuntu-desktop -y
说明:gnome-panel是GNOME桌面环境的基本功能部分,gnome-settings-daemon可以设置GNOME session的各项设定,metacity是X Window System的窗口管理器(GNOME2的标准窗口管理器),nautilus是GNOME的文件管理器,而gnome-terminal就自然是gnome终端了
安装图形界面时如果报错,可以修改下镜像源:
vi /etc/apt/sources.list
将镜像源替换为http://mirrors.aliyun.com/ubuntu/或http://mirrors.163.com/ubuntu/
更新软件源:
apt-get update
然后再安装图形界面就不报错:
sudo apt install gnome-panel gnome-settings-daemon metacity nautilus gnome-terminal ubuntu-desktop -y

安装VNC服务:
sudo apt-get install tightvncserver -y
启动VNC服务:
vncserver
首次启动会要求设置密码,注意长度不要超过8位, 超过8位系统将自动截取前八位 。如果想要修改密码,删除 ~/.vnc/passwd,然后重新启动 VNC 即可。也可以使用 vncpasswd 命令修改。VNC服务默认序列号是1,使用:1来访问VNC服务。结束进程:vncserver -kill :1(端口号)注意VNC连接的端口是5900+显示数字,也就是说vncserver :1指定的VNC端口是5901
修改VNC配置:
a)备份配置文件cp ~/.vnc/xstartup ~/.vnc/xstartup.bak
b)修改配置文件vi ~/.vnc/xstartup为以下内容,并保存文件
#!/bin/sh                                                                       
export XKL_XMODMAP_DISABLE=1
export XDG_CURRENT_DESKTOP="GNOME-Flashback:GNOME"
export XDG_MENU_PREFIX="gnome-flashback-"  
gnome-session --session=gnome-flashback-metacity --disable-acceleration-check &
关闭VNC服务并重启:
vncserver -kill :1
vncserver
查看当前系统的启动模式:
systemctl get-default
multi-user.target //命令模式
graphical.target //图形模式
修改启动模式为图形界面(一般不需要设置默认安装图形界面后就默认为图形模式了):
systemctl set-default graphical.target
反之将默认启动模式修改为命令模式是:
systemctl set-default multi-user.target
重启reboot后生效

重启服务器后系统就是直接到图形界面了
这样你可以通过UltraVNC,TigerVNC或者RealVNC Viewer进行访问
远程连接后是英文,设置为中文的方法:
安装之前执行$LANG查看语言环境
安装简体中文语言包:
sudo apt-get install  language-pack-zh-hans*
运行语言支持检查(更新最新的语言支持包):
sudo apt install $(check-language-support) -y
修改配置文件:
vi /etc/locale.gen
将# zh_CN.UTF-8 UTF-8的#去掉
vi /etc/default/locale
原内容LANG=en_US.UTF-8注释掉
加上:
LANG="zh_CN.UTF-8"
LANGUAGE="zh_CN:zh"
LC_NUMERIC="zh_CN"
LC_TIME="zh_CN"
LC_MONETARY="zh_CN"
LC_PAPER="zh_CN"
LC_NAME="zh_CN"
LC_ADDRESS="zh_CN"
LC_TELEPHONE="zh_CN"
LC_MEASUREMENT="zh_CN"
LC_IDENTIFICATION="zh_CN"
LC_ALL="zh_CN.UTF-8"
修改完成后,重启系统。可以看到语言都变成中文的了

安装简体中文拼音输入法:
sudo apt install ibus-pinyin
然后在:应用程序--系统工具--首选项--设置--区域和语言
点击“输入源”的“+”号将汉语(Intellingent Pinyin)加到系统输入法中即可
以后就可以用Ctrl+Shift键切换输入法了

设置vncserver开机启动:
sudo vi /etc/init.d/tightvncserver
内容为:
#!/bin/sh
### BEGIN INIT INFO
# Provides: tightvncserver
# Required-Start: $syslog $remote_fs $network
# Required-Stop: $syslog $remote_fs $network
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Starts VNC Server on system start.
# Description: Starts tight VNC Server. Script written by James Swineson.
### END INIT INFO
# /etc/init.d/tightvncserver
VNCUSER='root'
case "$1" in
 start)
 su $VNCUSER -c 'vncserver :1'
 echo "Starting VNC Server for $VNCUSER"
 ;;
 stop)
 su $VNCUSER -c 'vncserver -kill :1'
 echo "TightVNC Server stopped"
 ;;
 *)
 echo "Usage: /etc/init.d/tightvncserver {start|stop}"
 exit 1
 ;;
esac
exit 0
对该文件添加可执行权限sudo chmod 755 /etc/init.d/tightvncserver
设置为开机启动sudo update-rc.d tightvncserver defaults
(取消开机启动sudo update-rc.d -f tightvncserver remove)

如果服务器系统上装了防火墙并开启了,就要开放端口。
sudo ufw status  #查看防火墙状态
sudo ufw version #查看防火墙版本
在ubuntu系统中,常用的就是ufw或者iptables。
ufw开放5901端口:
ufw allow 5901/tcp
ufw reload  #更新防火墙
iptables开放5901端口:
iptables -I INPUT -p tcp --dport 5901 -j ACCEPT
iptables-save >/etc/iptables.save   #更新防火墙并保存规则
iptables-restore </etc/iptables.save  #开机按照保存的规则自启防火墙

给Ubuntu设置IP方法:
Ubuntu17开始已经放弃在/etc/network/interfaces配置IP等信息,而Ubuntu17后的ip地址配置文件则位于/etc/netplan/目录下,
配置文件名为**-network-manager-all.yaml或**-installer-config.yaml等名称
cd /etc/netplan/
ll
可以查看到网络配置文件名为**-network-manager-all.yaml或**-installer-config.yaml等名称
比如00-installer-config.yaml
vi /etc/netplan/00-installer-config.yaml
如Ubuntu20.4原始:
network:
  ethernets:
    enp1s0f0:
      addresses:
      - 14.17.65.96/24
      gateway4: 14.17.65.65
      nameservers:
        addresses:
        - 114.114.114.114
        - 8.8.4.4
        search: []
    enp1s0f1:
      dhcp4: true
  version: 2
说明:冒号后需空格,每一级缩进严格
上面的14.17.65.96/24表示IP地址为14.17.65.96掩码为255.255.255.0,
但是这个IP的掩码实际为255.255.255.192也就是26,不清楚为何要写为24
如果给Ubuntu20.4配置双IP可以配置为:
network:
  ethernets:
    enp1s0f0:
      addresses:
      - 14.17.65.96/24
      - 114.119.116.21/24
      gateway4: 14.17.65.65
      nameservers:
        addresses:
        - 114.114.114.114
        - 8.8.4.4
        search: []
    enp1s0f1:
      dhcp4: true
  version: 2
重启网卡生效:
sudo /etc/init.d/networking restart

如果重启网卡报错,就有可能是修改网卡的名称引起的。这时候可以重启服务器reboot
 

分类:教程帮助 百度收录 必应收录