当前位置首页 > Debian知识

初探debian桌面的管理启动

阅读次数:545 次  来源:admin  发布时间:

每次调试笔记本没事安装的kali的时候,在桌面管理上总是忘记一些命令和操作,今天没事总结一下吧!debian linux是一个样子的。

启动顺序:

1./etc/inittab较新的版本没有这个文件,默认图形启动。

2 X-server启动

#xinit

xinit是启动Xserver和Xclient的。xinit会运行一个xinitrc的文件,这个文件你可以自己编写

xinit 的用法为: xinit [[client] options ] [-- [server] [display] options] 。其中 client 用于指定一个基于 X 的应用程序, client 后面的 options 是传给这个应用程序的参数, server 是用于指定启动哪个 X 服务器,一般为 /usr/bin/X 或 /usr/bin/Xorg , display 用于指定 display number ,一般 为 0 ,表示第一个 display , option 为传给 server 的参数。

如果不指定 client , xinit 会查找 HOME ( 环境变量 ) 目录下的 .xinitrc 文件,如果存在这个 文件, xinit 直接调用 execvp 函数执行该文件。如果这个文件不存在,那么 client 及其 options 为: xterm -geometry +1+1 -n login -display :0 。

如果不指定 server , xinit 会查找 HOME( 环境变量 ) 目录下的 .xserverrc 文件,如果存在这个文件, xinit 直接调用 execvp 函数执行该文件。如果这个文件 不存在,那么 server 及其 display 为: X :0 。如果系统目录中不存在 X 命令,那么我们需要在系统目录下建立一个名为 X 的链接,使其指向真正的 X server 命令

3./etc/X11/default-display-manager ;这个是设置显示管理器(DM),显示管理器是为X窗口系统提供图形界面登录模式的程序,一个给定的X服务器只能由一个显示管理器来管理,如果多个赤示管理器被配置为分别管理不同的X服务器,它们可以同时运行需分别对各显示管理器进行设置,编辑它们在/etc/init.d目录下的init脚本,并且关闭对默认管理器的检查。比如我装有gdm3,lightdm,sddm。我默认的是lightdm.

使用命令**#dpkg-reconfigure gdm3**来轻松切换!

4.窗口管理器(Window Manager) 例如(metacity ,fluxbox等)启动.

/usr/bin/startx

/usr/bin/startxfce4

/usr/bin/gnome-seeio

/usr/bin/startkde

登录X的startx命令也是通过传递参数给xinit来启动X的,

KDE ,GNOME在使用中一般都是集合起来构成一个完整的集成工作环境,这就是我们平时所说的广义上的xclient

可以直接使用命令来启动各种管理器,更换默认的startx的启动可以使用命令:

#update-alternatives --config x-session-manager

不同的用户使用该命令可使不同用启默认启动不同的桌面。

centos修改:

A./etc/sysconfig/deskto

B.当前用户目录下建立.xinitrc,文件中加入startkde或gnome-sessio

C.切换#switchdesk gnome/kde

独立安装x window所需要的每一个包

yum install xorg-x11-server-Xorg

yum install xorg-x11-server-util

yum install xorg-x11-util

yum install xorg-x11-xinit

yum install xorg-x11-a

yum install xorg-x11-twm

yum install xterm

xorg-x11-drv-fbdev-0.4.3-2.el6.x86_64

xorg-x11-drv-intel-2.21.12-2.el6.x86_64

组合安装x window

yum groupinstall “X Window System”

yum groupinstall GNOME Desktop Environment

yum groupinstall KDE Desktop Environment

安装完毕后,执行startx,即可进行X window(KDE)

***转别人发的转发版***abcd

a)xserver 主要提供基本的显示接口共xclient使用,并将用户的操作等也反映给xclient,是xclient与硬件的一个中间层。xserver相关的两个主要部分是

(1) xorg.conf

xorg.conf是X Server的主要配置文件,它包含一个当前系统的硬件资源列表。X Server就是根据这些硬件资源“组织”出基本的图形能力。xorg.conf文件在/etc/X11/xorg.conf,主要包含几个字段:

Files: X系统使用的字体存放目录(字体的具体使用由FontConfig工具主持)

InputDevice: 输入设备,如键盘鼠标的信息

Monitor: 显示器的设置,如分辨率,刷新率等

Device: 显示卡信息

Screen: 由Monitor和Device组装成一个Screen,表示由它们向这个Screen提供输出能力

ServerLayout: 将一个Screen和InputDevice组装成一个ServerLayout,在具有多个显示设备的系统中,可能有多个Screen和多个ServerLayout,用以实现不同的硬件搭配。

在最近的xorg版本中,X Server已经开始自动侦测硬件,现在的xorg.conf已经都成了默认名称。具体细节还待查,但基本原理还是不变的。

(2) X session(X会话)

X session是指X server启动后直到X server关闭之间的这段时间。这期间一切跟X相关的动作都属于X session的内容。管理X session的程序称为Display Manager,常听说的gdm或kdm就是gnome/kde所分别对应的Display Manager。

开启一个X session,也就是开始了图形界面的使用。在开启的过程中,Display Manager会对用户进行认证(也就是用户名密码的输入),运行事先设置好的程序(比如scim输入法就是这个时候启动的)等等。

这个开启过程要执行的一系列操作都可以在/etc/X11/Xsession以及/etc/X11/Xsession.d/目录下看到,其他还有一些配置文件如Xsession.options, Xresource等,都是执行的X session的初始化过程。仔细阅读这些脚本或配置文件,可以帮助你更好地理解X

)Display Manager

上面说过,Display Manager(后简称DM)是管理X session的程序,常见的有gdm, kdm, xdm等。对于默认进入X界面的Linux系统,必须将DM程序在开机时执行,即:/etc/rc2.d/S13gdm。下面我们从手工启动X的过程,看一下DM为我们做了哪些工作。

如果没有设置DM在开机时运行的话,手动启动X使用startx命令。man startx

可以知道,startx的作用可以看作是Display Manager的一种隐性实现。它使用xinit命令,分别根据/etc/X11/xinit/xinitrc和/etc/X11/xinit/xserverrc中所指定的设置唤起X。

其中,xserverrc执行X server的运行任务;xinitrc则运行Xsession命令。从/etc/X11/Xsession脚本的内容可以看出,它也就是进入/etc /X11/Xsession.d/目录轮询地执行所有脚本。很明显,这些也就是前面所说的Xsession初始化工作。

综合起来说,Display Manager完成三个任务:1, X Server的启动; 2, X session的初始化; 3, X session的管理。

c)Window Manager

X Server提供了基本的图形显示能力。然而具体怎么绘制应用程序的界面,却是要由应用程序自己解决的。而Window Manager(桌面管理器,后简称WM)就是用来提供统一的GUI组件的(窗口、外框、菜单、按钮等)。否则,应用程序们各自为政,既增加了程序开发的负担,不统一的桌面风格对视觉也是不小的挑战。

WM的启动由DM控制,在gdm的登录窗口,我们可以进行选择。常见的WM有:Metacity(Gnome默认的WM), fluxbox, fvwm, E17等。

d)X Client

最后,就是X Client了。X客户端程序,顾名思义,就是使用X服务的程序。firefox,gedit等等都属于X Client程序。X Client部分值得考虑一下的就是DISPLAY环境变量。它主要用于远程X Client的使用。该变量表示输出目的地的位置,由三个要素组成:

[host]:display[.screen]

host指网络上远程主机的名称,可以是主机名、IP地址等。默认的host是本地系统,你可以在自己系统上echo $DISPLAY看一下。

SSH隧道转发版

SSH提供了X11转发的功能,可以使用SSH简单地实现上一节描述的功能。

首先确认A机器上的SSH Server打开的X11转发功能。检查SSH Server配置文件/etc/ssh/sshd_config,确认有如下配置:

X11Forwarding ye

然后在从B机器上SSH到A机器:

h -X 192.168.9.135

-X选项打开SSH的X11转发功能。

在此会话中查看A机器上的DISPLAY变量,应与下面类似:

localhost:10.0

在此会话中查看A机器上的TCP监听端口,应有6010端口。

在此会话中启动A机器上的图形程序,图形应显示在B机器上。

实际上,SSH在A机器上打开了一个监听端口6010,并且在登录会话开始时为会话设置了DISPLAY变量为localhost:10.0。随后此会话中的图形程序运行时,X11 client库会将X请求发送到SSH监听6010端口中,然后A机器上的SSH将X请求转发到B机器,B机器的SSH客户端收到X请求后交给B机器上的X Server显示。

SSH隧道转发Windows版

原理与上一节类似,X请求也是通过SSH进行转发。要在Windows上显示Linux的图形界面,必须并运行一个X Server,这里选用Xming。

安装并运行Xming以后,使用ssh客户端连接上机器A,这里选用SecureCRT作为ssh客户端(使用putty同样可以)。

打开SecureCRT的会话选项作如下设置:

初探debian桌面的管理启动

勾选这个选项的作用实际上与上一节中的ssh命令的-X选项相同。

设置好会话选项以后,如果当前会话已经登录机器A,注销再重新登录。

登录到机器A,查看DISPLAY变量:

初探debian桌面的管理启动

Linux在远程X Server上显示图形界面

启动一个图形程序,界面将在Windows上显示:

初探debian桌面的管理启动

Linux在远程X Server上显示图形界面

https://blog.csdn.net/clozxy/article/details/5488699

上一篇:ThinkPHP框架搭建及常见问题(Apache或MySQL无法启动)----简单的初体验
下一篇:搭建ApacheRocketMQ单机环境