win10 linux xfce桌面,windows10 WSL下Ubuntu18.04安装Xfce桌面与VNC远程工具

2023-05-16

1. xfce桌面的安装

Xfce是一款轻量级的桌面环境,运行在类Unix操作系统 (如Linux、FreeBSD 和 Solaris)上,界面清爽美观且对用户友好。

在安装Xfce前需要更新一下系统

sudo apt-get update

安装Xfce和xubuntu-desktop

sudo apt-get install xfce4

sudo apt-get install xubuntu-desktop

如果安装时出现错误,就多更新几次系统。

安装结束之后,重启电脑。在登陆界面选择Xfce Session即可进入Xfce桌面。

b83ef480d2c9f9f43f5f13428a97e70e.png

2.安装vnc远程工具

VNC(Virtual Network Console)是虚拟网络控制台的缩写,常用于远程控制。VNC的功能强大,操作简单,非常实用。在实现对Ubuntu18.04的远程控制中,需要安装VNC Server 和 VNC Viewer两个组件。

Ubuntu18.04安装VNC Server

安装前同样需要更新一下系统

sudo apt-get update

安装VNC Server

sudo apt-get install vnc4server

启动VNC Server(第一次启动VNC Server时会要求设置密码)

vncserver

另外,还需要修改xstartup文件内容(否则在通过VNC远程连接时会出现灰屏现象)

vim ~/.vnc/xstartup

将原文件内容(前12行)修改为以下内容:

#!/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

1945bf90c5e0be1370c3b459b663f4ae.png

参考下面配置比较合适

#!/bin/sh

DESK_TYPE=xfce

# DESK_TYPE=gnome

# DESK_TYPE=unity

# Uncomment the following two lines for normal desktop:

unset SESSION_MANAGER

unset DBUS_SESSION_BUS_ADDRESS

# exec /etc/X11/xinit/xinitrc

[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup

[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources

xsetroot -solid grey

vncconfig -iconic &

# x-terminal-emulator -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &

# x-window-manager &

echo $DESK_TYPE

# xfce desktop

if test $DESK_TYPE = xfce; then

x-terminal-emulator -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &

x-session=-manager &

xfdesktop & xfce4-panel &

xfce4-menu-plugin &

xfsettingsd &

xfconfd i&

xfwm4&

fi

# gnome desktop

if test $DESK_TYPE = gnome; then

gnome-session &

gnome-panel &

gnome-settings-daemon &

metacity &

nautilus -n &

gnome-terminal &

/usr/bin/gsettings set org.gnome.desktop.wm.keybindings panel-main-menu "['F1']"

/usr/bin/gsettings set org.gnome.desktop.wm.keybindings maximize "['KP_5']"

/usr/bin/gsettings set org.gnome.desktop.wm.keybindings unmaximize "['F5']"

/usr/bin/gsettings set org.gnome.desktop.wm.keybindings show-desktop "['d']"

/usr/bin/gsettings set org.gnome.desktop.wm.keybindings switch-applications "['Tab']"

/usr/bin/gsettings set org.gnome.desktop.wm.keybindings switch-group "['Above_Tab']"

/usr/bin/gsettings set org.gnome.desktop.wm.keybindings switch-input-source "[]"

/usr/bin/gsettings set org.gnome.desktop.wm.keybindings switch-input-source-backward "[]"

/usr/bin/gsettings set org.gnome.settings-daemon.plugins.media-keys terminal "['t']"

fi

# unity desktop

if test $DESK_TYPE = unity; then

export DESKTOP_SESSION=ubuntu

export GDMSESSION=ubuntu

export STARTUP="/usr/bin/gnome-session --session=ubuntu"

$STARTUP &

fi

按Esc,输入:wq保存退出。

注意: 本文中xstartup文件仅适用于Ubuntu18.04系统在Xfce桌面下的VNC配置。Ubuntu16.04的xstartup文件内容与本文有所不同。

关闭之前开启的VNC Server窗口

vncserver -kill :1   #注意kill之后有空格

启动VNC Server

Vncserver

VNC Server在启动时还有其他参数可以配置(如分辨

率),可用vncserver -h指令查看。

76d8982541cd49a6ff54ee9c5ca3efad.png

vnc窗口大小太小,分辨率太低怎么办?使用下面的命令指定分辨率

$vncserver :0 -geometry 1600x1200

$vncserver :1 -geometry 1440x900

注意:上面的x不是*

Windows10安装VNC Viewer

安装时要选择VNC Viewer选项

9da60ad1acbd7b4d02e6f2b71bec37a4.png

在VNC Viewer中输入VNC Server的IP地址以及对应端口

365d0b31c46c70171d91bb832ed664ba.png

点击Connect输入密码即可实现远程控制。

d6be1f580175af8351f61fe36d4f5583.png

修改默认语言环境为中文(可选)

安装中文语言包

sudo apt install language-pack-zh-hans language-pack-zh-hans-base

设置本地化环境变量

echo "LANG=zh_CN.UTF-8" >> ~/.profile

修改 /etc/default/locale为:

LANG="zh_CN.UTF-8"

LANGUAGE="zh_CN.UTF-8"

中文输入法

sudo apt install fcitx fcitx-pinyin

echo -e "export XMODIFIERS=@im=fcitx\nexport GTK_IM_MODULE=fcitx\nexport QT_IM_MODULE=fcitx\n" >> .profile

安装firefox检验效果:

sudo apt-get install --assume-yes firefox firefox-locale-zh-hans

随后直接运行下述代码即可查看效果。

firefox

安装 zsh

目前常用的 Linux 系统和 OS X 系统的默认 Shell 都是 bash,但是真正强大的 Shell 是深藏不露的 zsh, 这货绝对是马车中的跑车,跑车中的飞行车,史称『终极 Shell』,但是由于配置过于复杂,所以初期无人问津,很多人跑过来看看 zsh 的配置指南,什么都不说转身就走了。直到有一天,国外有个穷极无聊的程序员开发出了一个能够让你快速上手的zsh项目,叫做「oh my zsh」,Github 网址是:https://github.com/robbyrussell/oh-my-zsh。这玩意就像「X天叫你学会 C++」系列,可以让你神功速成,而且是真的。

zsh 就是一款强大的虚拟终端,网上也都推荐使用 oh my zsh 来管理配置 , 不过对我来说还是不够傻瓜。于是,参考一篇文章使用 zsh 的包管理器 antigen 来管理所有功能,文章中还给了现成的配置。

安装 zsh

sudo apt-get -y install zsh

设置终端的 shell 环境默认为 zsh,输入以下命令(需要重启)

# 加 sudo 是修改 root 帐号的默认 shell

chsh -s `which zsh`

如果上面命令无效,修改 ~/.bashrc 文件, 在开头添加:

if [ -t 1 ]; then

exec zsh

fi

安装 antigen

curl -L git.io/antigen > antigen.zsh

# 修改配置 ~/.zshrc(如果切换帐号后无法使用 zsh 则把该用户的配置文件再配一遍)

curl -L https://raw.githubusercontent.com/skywind3000/vim/master/etc/zshrc.zsh > ~/.zshrc

注:已下载该文件

# 修改主题, 参考:https://github.com/robbyrussell/oh-my-zsh/wiki/themes# 如果需要主题一直生效需要添加到 ~/.zshrc 中

antigen theme ys

# 配置修改完重新执行 zsh

如果出现警告:zsh compinit: insecure directories, run compaudit for list.

chmod -R 755 ~/.antigen

按键补齐 ( 解决zsh中无法正常使用home和end等键的问题)

在 ~/.zshrc 文件末尾添加下面的内容

# key bindings

bindkey "\e[1~" beginning-of-line

bindkey "\e[4~" end-of-line

bindkey "\e[5~" beginning-of-history

bindkey "\e[6~" end-of-history

# for rxvt

bindkey "\e[8~" end-of-line

bindkey "\e[7~" beginning-of-line

# for non RH/Debian xterm, can't hurt for RH/DEbian xterm

bindkey "\eOH" beginning-of-line

bindkey "\eOF" end-of-line

# for freebsd console

bindkey "\e[H" beginning-of-line

bindkey "\e[F" end-of-line

# completion in the middle of a line

bindkey '^i' expand-or-complete-prefix

# Fix numeric keypad

# 0 . Enter

bindkey -s "^[Op" "0"

bindkey -s "^[On" "."

bindkey -s "^[OM" "^M"

# 1 2 3

bindkey -s "^[Oq" "1"

bindkey -s "^[Or" "2"

bindkey -s "^[Os" "3"

# 4 5 6

bindkey -s "^[Ot" "4"

bindkey -s "^[Ou" "5"

bindkey -s "^[Ov" "6"

# 7 8 9

bindkey -s "^[Ow" "7"

bindkey -s "^[Ox" "8"

bindkey -s "^[Oy" "9"

# + - * /

bindkey -s "^[Ol" "+"

bindkey

-s "^[Om" "-"

bindkey -s "^[Oj" "*"

bindkey -s "^[Oo" "/"

应用商店

目前 ( 1709 版本 16299.64 ) 已经可以在商店中搜索安装多个不同版本的子系统了,根路径为 %localappdata%\Packages\【根据子系统名找到对应的应用文件夹】\LocalState\rootfs 。同时还新增了两个命令行工具: wsl.exe 和 wslconfig.exe 。

其中 wsl.exe 应该等价于 bash.exe , 两者之间的细微差别暂时还没发现。至于 wslconfig.exe 的作用主要为(参考):

1. 查看安装所有已安装的子系统: wslconfig /l

适用于 Linux 的 Windows 子系统:

Ubuntu (默认)

Legacy

其中 Ubuntu 是商店中下载的版本,Legacy 是按老方法安装的默认wsl。

2. 切换bash.exe默认使用的子系统: wslconfig /s

其中 替换为 Ubuntu 或 Legacy , 或者其他已安装的子系统。

3. 卸载已安装的子系统: wslconfig /u

同上替换 。经测试发现,此 "卸载" 并不会卸载商店中安装的 Ubuntu 应用, 即再次执行该应用又会重新安装了。

与 Windows 通讯

目前子系统与 Windows 之间通过以下两种方式进行通讯

1、通过 tcp 协议进行通讯(简单点说就是用网络,端口都是通的)

2、通过 /mnt/【盘符】/目录 的方式访问Windows目录

试过在Windows的资源管理器中直接对子系统环境目录下的文件所做的修改不能被子系统所识别,因此需要在bash下进行操作。

在任何情况下,请勿使用Windows应用程序,工具,脚本,控制台等创建或修改Linux文件

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

win10 linux xfce桌面,windows10 WSL下Ubuntu18.04安装Xfce桌面与VNC远程工具 的相关文章

随机推荐