ubuntu server 20.04安装vnc远程桌面xfce4

在这里插入图片描述

版本信息

cat /etc/*-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=20.04
DISTRIB_CODENAME=focal
DISTRIB_DESCRIPTION="Ubuntu 20.04.3 LTS"
NAME="Ubuntu"
VERSION="20.04.3 LTS (Focal Fossa)"
ID=ubuntu
ID_LIKE=debian
......

编写日期 : 2021-12-02
作 者:ITKEY

没有特别说明的地方,都是以root权限执行。

安装

安装TigerVNC Server

apt install tigervnc-standalone-server -y

安装 xfce4

apt install xfce4 -y

安装的过程中,会有如下的提示?
在这里插入图片描述
我这里选 默认的gdm3按下回车继续。

配置

设置vnc密码

我们这里以用户itkey为例(也可以换成其他用户),以下命令用itkey用户执行。
登录你想开启vnc远程桌面的用户。如下:

su itkey
vncpasswd

执行结果如下:

$ vncpasswd
Password:
Verify:
Would you like to enter a view-only password (y/n)?

~/.vnc/xstartup

以下命令用itkey用户执行。

su itkey
vim ~/.vnc/xstartup

内容如下:

#!/bin/sh
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
exec startxfce4

设置权限:

chmod u+x ~/.vnc/xstartup

启动vnc服务

vncserver :1 -localhost no -geometry=1920x1080
  • :1是端口,最终tcp端口是此数字+5900 ,也就是1+5900=5901
  • -localhost no 默认为yes,设置成no则可以非localhost也可以连接vnc
  • -geometry 设置分辨率

连接vnc服务

格式:

ip地址:tcp端口号

示例:172.16.184.19:5901
这里的端口是tcp端口,假如你设置的是:1,把这个数加5900就是最终结果。
也就是1+5900=5901
在这里插入图片描述
连接后,输入前面设置的vnc密码就可以进远程桌面了。

连接后,如果出现 黑屏,鼠标就是一个小方点。那么请稍等一会儿,有可能是桌面还在加载中。如果 等待超过30秒,还是黑屏,就有可能是你的配置不正常,请检查一下~/.vnc/xstartup配置是不是正确。
或者重启一下服务试试:

vncserver -kill :1
vncserver :1 -localhost no -geometry=1920x1080

中文环境

server的环境,默认是英文的。导致我们的vnc界面打开后也是英文的。如何设置成中文呢?

设置中文环境

查看当前语言环境

echo $LANG

查看当前系统是否有中文语言包

locale -a

如果没有中文则,安装中文语言包。

apt install language-pack-zh-hans

修改系统环境变量为中文

然后,修改/etc/environment(在文件的末尾追加):

LANG="zh_CN.UTF-8"
LANGUAGE="zh_CN:zh:en_US:en"
vim /etc/profile

增加以下内容:

LANG="zh_CN.UTF-8"
LANGUAGE="zh_CN:zh:en_US:en"

vim ~/.bashrc

增加以下内容:

LANG="zh_CN.UTF-8"
LANGUAGE="zh_CN:zh:en_US:en"

最后,执行命令:

sudo locale-gen

立马生效执行以下:

source ~/.bashrc

重启vnc服务

设置完成以后,在启动vnc服务,这里发现界面已经是中文了。

vncserver -kill :1
vncserver :1 -localhost no -geometry=1920x1080

重启完以后用vnc连接发现已经成功显示中文了。

语言支持

点开“所有应用程序”→“设置”→“语言支持”会提示语言支持没有安装完整
点击安装(I)
在这里插入图片描述
我这里点击安装后报如下错误:
在这里插入图片描述

那么我们就根据提示的内容命令行安装吧

apt install -y \
fcitx-module-cloudpinyin \
fcitx-frontend-gtk3 \
fcitx-sunpinyin \
ibus-libpinyin \
fcitx-table-wubi \
fcitx-ui-classic \
fonts-noto-cjk-extra \
gnome-user-docs-zh-hans \
fonts-arphic-ukai \
fcitx-ui-qimpanel \
fcitx \
fcitx-frontend-gtk2 \
language-pack-gnome-zh-hans \
ibus-table-wubi \
fonts-arphic-uming \
fcitx-pinyin \
fcitx-frontend-qt5 \
fonts-noto-cjk \

这里的软件们不一定都是需要的,按需安装吧。这里我把它们全列出来了。安装完成后,在点击语言支持就不会有之前的显示了。

重启以后,发现中文输入法也有了,之前终端的菜单是英文的,现在也变成中文的了。
之前一些汉化不全的地方都 已经全部汉化了。比如 :弹框的 确实 取消按钮。

我最终的选择是:

apt install -y \
gnome-user-docs-zh-hans \
language-pack-gnome-zh-hans \
fcitx \
fcitx-ui-qimpanel \
fcitx-pinyin \
fcitx-table-wubi \

前面两个可以解决一些菜单汉化不 完全的问题,后面的是fcitx输入法。

VNC中文输入法

默认进vnc是无法使用输入法的。我们修改一下~/.vnc/xstartup配置文件。内容如下:

#!/bin/sh
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS=@im=fcitx
export LANG=zh_CN.UTF-8
startxfce4

这时候我们重启vnc服务。

vncserver -kill :1
vncserver :1 -localhost no -geometry=1920x1080

进入桌面后,在终端执行以下命令,就可以使用fcitx输入法了。

fcitx -r; fcitx-configtool

那么能不能进入桌面就要以直接用输入法呢?
我把配置修改成了:

#!/bin/sh
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS=@im=fcitx
export LANG=zh_CN.UTF-8
fcitx -r
startxfce4

这样就可以进vnc就可以输入中文了。

卸载ibus(可选)
sudo apt remove ibus

下载搜狗输入法

下载页面
https://pinyin.sogou.com/linux/?r=pinyin
我下载 的版本是

wget https://ime.sogouimecdn.com/202112021523/d819ceffb13cb3427cbb30181f325a6b/dl/index/1612260778/sogoupinyin_2.4.0.3469_amd64.deb
#通过命令行安装搜狐输入法
sudo dpkg -i sogoupinyin_版本号_amd64.deb
#如果安装过程中提示缺少相关依赖,则执行如下命令解决:
sudo apt -f install

重启vnc服务,就可以使用搜狗输入法了。不想重启就重启fcitx输入法。
在这里插入图片描述
在这里插入图片描述

<think>好的,用户询问的是在Ubuntu 20.04安装和配置VNC服务器的方法。我需要根据提供的引用内容来构建回答,同时确保符合系统级指令的要求。首先,引用[2]提到使用TightVNC,但引用[3]中的安装命令是tigervnc,这可能需要注意版本差异。用户可能更倾向于使用较新的或更推荐的软件包,所以需要明确说明安装的是TigerVNC。 接下来,步骤应该分阶段:先更新系统,安装TigerVNC,然后配置VNC用户,设置密码,创建配置文件,编辑xstartup,最后启动服务和设置SSH隧道。引用[3]提供了安装命令,引用[4]解释了VNC Server的作用,可以用来引言部分。需要确保每个步骤都有对应的引用标注,比如安装步骤引用[3],配置部分引用[2]和[3]。 同时,用户可能需要知道如何设置防火墙,引用[1]提到UFW配置,但用户的问题可能不需要防火墙设置,但作为最佳实践,可以包含开放端口的步骤,但需要检查引用是否有相关内容。引用[1]是初始服务器设置指南,可能包括UFW,但没有具体的VNC端口开放说明,所以可能需要建议用户根据指南配置防火墙,但这里引用[1]只是初始设置,所以可能不需要详细说明防火墙部分,除非引用中有明确信息。 然后,关于SSH隧道部分,引用[2]提到通过SSH隧道安全连接,所以需要详细说明如何在本地建立隧道,并连接VNC客户端。这部分需要分步骤指导用户使用ssh命令转发端口,并推荐VNC客户端如TigerVNC Viewer或RealVNC。 生成的问题部分需要围绕安装后的配置、常见错误、安全连接方法以及替代方案。例如,如何设置多个用户,解决黑屏问题,SSH隧道的好处,其他VNC软件比较等,这些都应基于引用内容来提出。 最后,确保所有LaTeX格式正确,但用户的问题可能不涉及数学公式,所以可能不需要使用。但根据系统指令,行内数学表达式必须用$...$,但这里可能用不上,所以可能可以忽略,但需要检查是否有需要的地方。例如,如果有命令行中的变量或参数,可能不需要LaTeX格式,直接使用代码块即可。 总结回答结构:引言、先决条件、安装步骤、配置VNC用户、创建配置文件、启动服务、连接方法(SSH隧道)、相关问题。每个步骤都要引用对应的引用编号,例如安装步骤引用[3],SSH隧道引用[2]。</think>[用户可见层] ### Ubuntu 20.04 安装配置 VNC 服务器教程 #### 一、先决条件 1. 已配置 Ubuntu 20.04 服务器且完成初始设置(包括非 root 用户和 UFW 防火墙)[^1] 2. 拥有 sudo 权限的用户账户 #### 二、安装 TigerVNC 1. 更新软件包列表: ```bash sudo apt update ``` 2. 安装 TigerVNC 组件: ```bash sudo apt install tigervnc-standalone-server tigervnc-common ``` 此步骤包含 VNC 服务器核心组件[^3] #### 三、配置 VNC 用户 1. 切换到需要远程登录的用户(如 `ubuntu`): ```bash su - ubuntu ``` 2. 设置 VNC 密码(8位字符限制): ```bash vncpasswd ``` 3. 创建配置文件: ```bash mkdir ~/.vnc && nano ~/.vnc/xstartup ``` 4. 添加图形环境配置(例如使用 Xfce): ```bash #!/bin/bash unset SESSION_MANAGER unset DBUS_SESSION_BUS_ADDRESS startxfce4 & ``` 保存后赋予执行权限: ```bash chmod +x ~/.vnc/xstartup ``` #### 四、启动 VNC 服务 1. 首次启动(指定分辨率与端口): ```bash vncserver -geometry 1920x1080 -localhost no :1 ``` - `-localhost no` 允许远程连接 - `:1` 表示使用5901端口 2. 设置开机自启(通过 systemd): 创建服务文件: ```bash sudo nano /etc/systemd/system/vncserver@.service ``` 添加以下内容: ```ini [Unit] Description=Remote desktop service (VNC) [Service] Type=simple User=ubuntu ExecStart=/usr/bin/vncserver -fg %i Restart=on-failure [Install] WantedBy=multi-user.target ``` 启用服务: ```bash sudo systemctl enable vncserver@1.service sudo systemctl start vncserver@1.service ``` #### 五、通过 SSH 隧道安全连接 1. 本地终端执行(将远程5901端口映射到本地5903): ```bash ssh -L 5903:localhost:5901 ubuntu@your_server_ip -N ``` 2. 使用 VNC 客户端(如 TigerVNC Viewer)连接: - 地址输入 `localhost:5903` - 输入步骤三设置的 VNC 密码[^2]
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值