X11-详细说明
介绍
X11, 也称 X Window System, 这个名称的由来还是别有含义的: X 在英文字母表在 W(indow) 后面, 寓意着下一代窗口. 而 11
表示 X Window System 的第 11 版本, 该版本的使用迄今为止最为广泛.
X11 是一个 C/S 架构的图形用户界面的显示协议, 可以在一台机器上运行程序 (X Client), 并将图形输出显示到另一台机器 (X Server).
相关概念
X Server
X Server 运行在用户本地机器 (比如自己的笔记本或主机), 负责处理输入设备 (如键盘鼠标), 和输出设备 (显示器).
X Client
指运行在远程服务器上的 GUI 程序, 通过网络将显示请求发送给 X Server.
工作模式
X Client 会将所有的绘图请求 (如窗口, 按钮等) 发送给 X Server. X Server 负责在显示设备上绘制这些图形元素.
会话
X11 用 :x
(x 是一个数字, 比如 1
, 2
) 这种格式标识会话, 可以通过设置 DISPLAY
环境变量指示 X11 将图形输出到哪个会话, 默认是 :0
:
1 |
|
安装
X11 Client
安装 xauth
和可用的 X11 client, 可以先安装 x11-apps
测试, 在 ubuntu 上如:
1 |
|
X11 Server
需安装 xorg
, 在 ubuntu 上如:
1 |
|
- 如果没有安装 kde, gnome 等图形界面, 可以装
openbox
驱动安装
先查看自己的显卡是啥:
1 |
|
输出如:
1 |
|
一般可直接选择安装 xf86-video
:
1 |
|
使用
启动 X11 Server
一般 Xorg (也就是 X) 不会自动启用, 而是由 display manager 或 xinit (即 startx
) 启动.
(display manager 的示例)
启用新的 X11 会话
启用并指定新的编号, 需要在 tty 界面运行:
1 |
|
不然会报错:
1 |
|
其不会启用一个桌面环境, 而仅仅是启用了一个 X server, 此时, 可以用 Ctrl+Alt+F3
切换到另一个 tty, 然后:
1 |
|
指定前面开启的会话. (这样似乎会 broken…)
配置
在 Archlinux 上, 一部分配置文件位于 /usr/share/X11/xorg.conf.d/
目录下, xorg.conf
或以 .conf
结尾的文件都会在启用时自动读取. 读取顺序根据 ASCII 字符, 且必须以 XX-
(两位数字) 开头, 注意 xorg.conf
会在最后读取 (越后的其实权限越大), 比如:
1 |
|
另外还可编辑 /etc/X11/xorg.conf
或 /etc/xorg.conf
文件, 可以先用:
1 |
|
在 /root/
下生成一个 xorg.conf.new
文件, 可以把这个拷贝到上面两个路径.
认证
X11 使用一种称 X11 cookie 的机制来进行身份验证, 可以用 xauth
来生成, 添加和管理这些 cookie.
查看当前 X11 cookie
1 |
|