目录

1.Linux计算机图形化结构

2.X window system

1)X Server

2)X Client

3)Window Manager

4)Display Manager

3.Ubuntu Server的图形化界面配置

1)流程

2)命令操作

3)其他命令

4)坑


1.Linux计算机图形化结构

云服务器上的ubuntu有图形界面吗 ubuntu服务器图形化界面_ubuntu

        window系统的图形化是和内核绑定在一起的,也就是说一旦成功安装了系统,就一定会有一个图形化的界面,而linux系统却不一样,其图形化是独立于系统的,对于很多linux系统来说,比如笔者用的ubuntu server 16,是没有图形化界面,只有文本模式。需要额外安装,从上图可以看到,linux的图形化系统其实是在操作系统之上的。

2.X window system

     linux中负责图形化的系统叫做 X window system,简称 X (据说是为了声明本身是传统window系统的下一代,因此取了w字母的下一个X)。Linux内核是没有GUI图形显示,需要X window system来实现。目前使用的X window system 的核心版本是第11版,因此也称X11。

    X window system主要包括几个元件:X Server; X Client;Window Manager;Display Manager;

1)X Server

基于X11 协议的服务端,主要负责管理主机上相关的硬件设备,包括键盘、鼠标、显示器、手写板等等。我们常看到的 Xorg 或是 XFree86 都是 X server。

2)X Client

基于X11 协议的客户端,主要负责响应从X Server的动作,将动作处理成图形化界面的数据,回传给X Server。

云服务器上的ubuntu有图形界面吗 ubuntu服务器图形化界面_ubuntu_02

     X Server 和 X Client 可以同时部署在同一台机器上,也可以部署在不同机器上。这种C/S结构能够节省本地机器的计算资源。为什么这么说呢?因为本地的X Server虽然是管理了硬件,但其实不需要怎么计算,接受来自硬件的动作后,直接传输给X Client,然后X Client 就会告诉它应该怎么显示图形,可以说是“无脑操作”了,所有计算都让X Client承担,因此如果本机计算资源不足,可以用外部服务器的X Client来计算。一个X Server可以与多个X Client进行通信,且不同X Client之间互不干涉。

3)Window Manager

窗口管理员,这是一个特殊的X Client,负责管理所有的X Client。可以进行很多操作,例如背景桌面的设定、窗口控制参数的设定(大小、移动、重叠显示、最小化等)。目前,常用的Window Manager包括了KDE, GNOME, XFCE,ubuntu-desktop,等,这些软件能够高效地帮助我们管理各个窗口。

云服务器上的ubuntu有图形界面吗 ubuntu服务器图形化界面_desktop_03

4)Display Manager

虽然叫做display Manager ,但其主要功能是提供登陆的环境,并载入用户选择的Window Manager等信息,下图就是display manager构建的登陆界面。左图是Lightdm,右图是GNOME 的 GNOME Display Manager (gdm) ,除此之外还有SDDM(原来的kdm)。

  

3.Ubuntu Server的图形化界面配置

1)流程

云服务器上的ubuntu有图形界面吗 ubuntu服务器图形化界面_ubuntu_04

2)命令操作

以ubuntu-desktop桌面为例:

sudo apt-get update #更新包
sudo apt-get upgrade 

sudo apt-get install xinit #安装X Server
sudo apt-get install lightdm #安装display manager登陆界面
sudo apt-get install ubuntu-desktop #安装window manager桌面环境

如果只想装核心桌面环境,可以使用下面:

sudo apt-get update #更新包
sudo apt-get upgrade 

sudo apt-get install xinit #安装X Server
sudo apt-get install gdm #安装display manager登陆界面
sudo apt-get install gnome-core #安装window manager桌面环境

不过需要根据需求添加其他组件:

  a.安装新立得软件包管理器 

  sudo apt-get install gsynaptic 

  b.安装无线上网模块(如果需要) 

  sudo apt-get install network-manager* 

  c.安装中文支持(能够显示中文) 

  sudo apt-get install language-support-zh 

  d.从新立得软件包管理器中选择中文输入法支持和中文界面支持 

3)其他命令

sudo dpkg-reconfigure lightdm #切换display manager

#卸载桌面
sudo apt purge ubuntu-desktop
sudo apt autoremove
sudo add-apt-repository --remove ppa:ubuntu-ppa/backports  # Ubuntu 16.0


sudo stop lightdm  #关停 LightDM
sudo start lightdm #启动 LightDM

service lightdm start #文本界面启动图形化界面

4)坑

最后分享下,安装过程中的一些坑。

a.安装Xinit。

安装Xinit本身没什么问题,但是当我尝试在普通用户下用 startx 来启动界面时,提示错误:

云服务器上的ubuntu有图形界面吗 ubuntu服务器图形化界面_desktop_05

(EE)Server terminated with error(1)

查看日志,发现:

云服务器上的ubuntu有图形界面吗 ubuntu服务器图形化界面_ubuntu_06

缺少模块啊,找不到文件啊,没有权限啊,一大堆问题,尝试一个个解决,无果,放弃该路线。

对策:安装lightdm,通过 service lightdm start 命令,用lightdm调用 X Server ,成功!可喜可贺,我这小机灵鬼!

值得一提的是:我在root用户下面,使用 startx 命令可以进入图形化界面,但是无法在其中无法切换用户。郁闷了,为啥普通用户就不行,瞧不起普通用户是吧。

b.安装ubuntu-desktop

如果只是安装了lightdm,没有安装ubuntu-desktop或是安装出错,登陆界面输入正确的用户密码还是无法进入。果断重装ubuntu-desktop。重装命令 sudo apt-get install --reinstall ubuntu-desktop.

云服务器上的ubuntu有图形界面吗 ubuntu服务器图形化界面_云服务器上的ubuntu有图形界面吗_07

c.依赖缺失

在认真研究(玩)ubuntu的时候,手贱,删除了一些文件,导致 install 命令无法正常使用,于是我使用 sudo apt-get install -f 来修复确实的依赖包(我果然是个小机灵鬼)。结果报错!看来是删了什么大佬了:

云服务器上的ubuntu有图形界面吗 ubuntu服务器图形化界面_ubuntu_08

就算用rm 删掉目前 google.provider文件,也依旧报错。最后,皇天在上,找到了下面命令,成功修复!!

sudo dpkg -P unity-scope-gdrive account-plugin-google account-plugin-facebook
sudo apt-get install -f