第 7 章 X 窗口系统
警告 | |
---|---|
本章是基于 2013 年发布的 Debian 7.0 ( |
Debian 上的 X 窗口系统基于 X.Org 的源代码。
7.1. 关键软件包
这里有一些用于简易安装的(元)软件包。
表 7.1. X 窗口的关键(元)软件包列表
(元)软件包 | 流行度 | 大小 | 说明 |
---|---|---|---|
xorg | I:457 | 52 | X 库、一个 X 服务器、一系列字体以及一组基础的 X 客户端和工具(元软件包) |
xserver-xorg | V:66, I:492 | 238 | X 服务器的全部套件及其配置 |
xbase-clients | I:26 | 46 | 各种 X 客户端(元软件包) |
x11-common | V:372, I:755 | 308 | X 窗口系统的文件系统的基础设施 |
xorg-docs | I:6 | 2036 | X.Org 软件套件的各种文档 |
menu | V:54, I:197 | 1509 | 为理解菜单的应用生成Debian菜单 |
menu-xdg | V:31, I:109 | 27 | 将 Debian 菜单结构转换为 freedesktop.org xdg 菜单结构 |
xdg-utils | V:229, I:521 | 327 | freedesktop.org 提供的集成桌面环境的工具 |
task-gnome-desktop | I:175 | 9 | 标准 GNOME 桌面环境(元软件包) |
task-kde-desktop | I:66 | 6 | 核心 KDE 桌面环境(元软件包) |
task-xfce-desktop | I:106 | 9 | Xfce 轻量级桌面环境(元软件包) |
task-lxde-desktop | I:35 | 9 | LXDE 轻量级桌面环境(元软件包) |
fluxbox | V:2, I:9 | 3860 | Fluxbox:可配置度高且资源耗费低的 X 窗口管理器 |
关于 X 基础知识,请参考 X(7) 和 the LDP XWindow-User-HOWTO。
7.2. 设置桌面环境
一个 桌面环境 通常是一个 X 窗口管理器、一个文件管理器和一套兼容的实用程序组合而成。
你能够在 aptitude
的任务菜单下安装全部的桌面环境,例如 GNOME,KDE,Xfce 或者 LXDE。
提示 | |
---|---|
在Debian |
你也可以手动只建立一个 X 窗口管理器,例如 Fluxbox。
关于 X 窗口管理器和桌面环境的介绍,参见 Window Managers for X。
7.2.1. Debian 菜单
Debian 菜单系统从 menu
软件包中为带有 update-menus(1) 的文本和 X 程序提供了一个通用接口。每个软件包都会将它的菜单数据安装到 “/usr/share/menu/
” 目录。参见 “/usr/share/menu/README
”。
7.2.2. Freedesktop.org 菜单
每个遵从 Freedesktop.org xdg 菜单的软件包都会将由 “*.desktop
” 提供的菜单数据安装到 “/usr/share/applications/
” 下。符合 Freedesktop.org 标准的现代桌面环境会利用它们的数据使用 xdg-utils
软件包生成菜单。参见 “/usr/share/doc/xdg-utils/README
”。
7.2.3. 从 Freedesktop.org 菜单到 Debian 菜单
为了从遵从 Freedesktop.org 菜单的窗口管理器环境(例如 GNOME 和 KDE)访问传统的 Debian 菜单,你必须安装 menu-xdg
软件包。
7.3. 服务器/客户端关系
X Window系统作为服务和客户端程序的组合被启动。在这里,server 和 client的意义需要和local和remote区分开来。
表 7.2. 服务器/客户端术语表
类型 | 说明 |
---|---|
X 服务器 | 一个运行在本地主机上的程序,连接了使用者的显示和输入设备。 |
X 客户端 | 一个运行在远程主机上的程序,它会与 X 服务器进行数据的处理和传输。 |
应用程序服务器 | 一个运行在远程主机上的程序,会与应用程序客户端进行数据处理和传输。 |
应用程序客户端 | 一个运行在本地主机上的程序,连接了使用者的显示和输入设备。 |
现代X服务器具有 MIT 共享内存扩展 ,他们和本地X客户端通过本地共享内存进行通讯. 这就绕过了网络透明的Xlib进程间通讯通道,提升了大型图像的处理性能.
7.4. X 服务器
关于 X 服务器的信息,参见xorg(1)。
7.4.1. X 服务器的(重新)配置
使用下面命令(重新)配置一个 X 服务器。
# dpkg-reconfigure --priority=low x11-common
注意 | |
---|---|
新的 Linux 内核使用 DRM、KMS 和 udev,对图形和输入设备进行了良好的支持。X 服务器被重写以使用它们。因此 “ |
对于高分辨率的 CRT 大显示器,最好将将刷新率设置为显示器支持的最高值(85 Hz 不错,75 Hz 也行)以减少闪烁。对于 LCD 显示器,较慢的标准刷新率(60 Hz)就可以了,因为它的反应较慢。
注意 | |
---|---|
当心,别使用过高的刷新率,这可能会导致你的显示器系统发生重大的硬件故障。 |
7.4.2. 连接到 X 服务器的方式
这里有一些方式,可以使 “X 服务器”(显示端)接受来自 “X 客户端”(应用端)的连接。
表 7.3. 连接到 X 服务器的方式
软件包 | 流行度 | 大小 | 用户 | 加密 | 方式 | 相关使用 |
---|---|---|---|---|---|---|
xbase-clients | I:26 | 46 | 不检查 | 无 | xhost 命令 | 弃用 |
xbase-clients | I:26 | 46 | 检查 | 无 | xauth 命令 | 通过管道进行本地连接 |
openssh-client | V:803, I:996 | 4298 | 检查 | 有 | ssh -X 命令 | 远程网络连接 |
gdm3 | V:165, I:229 | 5101 | 检查 | 无(XDMCP) | GNOME 显示管理器 | 通过管道进行本地连接 |
sddm | V:53, I:95 | 1742 | 检查 | 无(XDMCP) | KDE 显示管理器 | 通过管道进行本地连接 |
xdm | V:3, I:6 | 686 | 检查 | 无(XDMCP) | X 显示管理器 | 通过管道进行本地连接 |
wdm | V:31, I:284 | 2289 | 检查 | 无(XDMCP) | WindowMaker 显示管理器 | 通过管道进行本地连接 |
ldm | V:0, I:0 | 436 | 检查 | 有 | LTSP 显示管理器 | 远程 SSH 网络连接(瘦客户端) |
警告 | |
---|---|
不要在不安全的网络中使用远程 TCP/IP 进行 X 连接,除非你有非常好的理由,例如使用了加密。未加密的远程 TCP/IP socket 连接容易遭到窃听攻击并且 Debian 系统默认禁用了它。请使用 “ |
警告 | |
---|---|
提示 | |
---|---|
7.5. 启动 X 窗口系统
X 窗口系统通常是作为 X 会话启动的,X 会话是 由 X 服务器和连接客户端组成的。对于常规的桌面系统,它们两个都是在一个工作站上运行的。
X 会话 由以下方式之一启动。
从命令行用
startx
命令启动基于”
graphical.target
“的依赖关系,一个 X 图形显示管理器 的后台守护程序*dm
通过systemd
启动。
提示 | |
---|---|
显示管理器后台守护进程(daemon)的启动脚本在实际执行它们自己时会检查 “ |
提示 | |
---|---|
关于 X 显示管理器的初始环境变量,参见 第 8.4.5 节 “只用于 X 窗口的特定语言环境”。 |
本质上,所有的这些程序都是执行 “/etc/X11/Xsession
” 脚本。之后 “/etc/X11/Xsession
” 脚本通过 run-parts(8) 执行 “/etc/X11/Xsession.d/
” 目录中的脚本。这本质上是通过 内建的 exec
命令执行按下面顺序第一个被找到的程序。
X显示管理器调用”
/etc/X11/Xsession
“ 的参数中指定的脚本, 如果他被定义了。“
~/.xsession
” 或 “~/.Xsession
” 脚本,如果它被定义。“
/usr/bin/x-session-manager
” 命令,如果它被定义。“
/usr/bin/x-window-manager
” 命令,如果它被定义。“
/usr/bin/x-terminal-emulator
” 命令,如果它被定义。
这个过程会受 “/etc/X11/Xsession.options
” 的影响。“/usr/bin/x-*
” 命令所指向的准确程序,是由 Debian 选择系统决定的,并且可以通过 “update-alternatives --config x-session-manager
” 修改。
细节参见 Xsession(5).
7.5.1. 使用 gdm3 启动 X 会话
gdm3(1) 让你从它的菜单中选择会话类型(或桌面环境:第 7.2 节 “设置桌面环境”),还有 X 会话的语言(或语言环境:第 8.4 节 “语言环境”) 。它在 “~/.dmrc
” 中像下面那样设定选择的默认值。
[Desktop]
Session=default
Language=ja_JP.UTF-8
7.5.2. 自定义 X 会话(经典方式)
系统中的 “/etc/X11/Xsession.options
” 包含没有前置 “#
” 字符的 “allow-user-xsession
” 行,则定义了 “~/.xsession
” 或 “~/.Xsession
” 的任何用户都能够通过完全覆盖系统代码来自定义 “/etc/X11/Xsession
” 的动作。在 “~/.xsession
” 文件中的最后一个命令应该使用 “exec some-window/session-manager
” 这样的形式来启动你最喜欢的 X 窗口/会话管理器。
如果使用了这个特性,系统实用程序选择的显示 (或登录) 管理器 (DM), 会话管理器或者窗口管理器 (WM) 会被忽略。
7.5.3. 自定义 X 会话(新方式)
以下是自定义 X 会话的新方式,它不会像上面那样完全覆盖系统代码。
显示管理器
gdm3
可以选择一个特定的会话并将它设置为 “/etc/X11/Xsession
” 的参数。- “
/etc/profile
“, “~/.profile
“, “/etc/xprofile
“, 和 “~/.xprofile
“ 文件会被作为gdm3
启动进程的一部分来执行。
- “
“
~/.xsessionrc
” 文件作为启动进程的一部分被执行。(独立桌面)- “
/etc/X11/Xsession.options
“ 中的 “#allow-user-xsession
“ 不会限制 “~/.xsessionrc
“ 文件的执行。
- “
“
~/.gnomerc
” 文件作为启动进程的一部分被执行。(仅 GNOME 桌面)
系统实用程序选择的显示 (或登录) 管理器 (DM), 会话管理器或者窗口管理器 (WM) 是相当不错的。
在这些配置文件里面,不应当有 “exec …
“ 或 “exit
“.
7.5.4. 通过 SSH 连接一个远程 X 客户端
使用 “ssh -X
” 可以启用一个来自本地 X 服务器到远程应用程序服务器的安全连接。
如果你想避免命令行选项 “-X
”,你需要将远程主机的 “/etc/ssh/sshd_config
” 文件中的 “X11Forwarding
” 设置为 “yes
”。
在本地主机上启动 X 服务器。
在本地主机中打开一个 xterm
。
通过下列命令,运行 ssh(1) 建立与远程站点的连接。
localname @ localhost $ ssh -q -X loginname@remotehost.domain
Password:
通过下列命令,在远程站点运行一个 X 应用程序,例如 “gimp
”。
loginname @ remotehost $ gimp &
这个方法可以显示来自远程 X 客户端的输出,相当于它是通过一个本地 UNIX 域名 socket 进行本地的连接。
7.5.5. 连接互联网的安全 X 终端
连接互联网的 X 安全终端,并且会显示在远程运行的整个 X 桌面环境,这可以通过使用特定软件包(例如 ldm
)轻松地做到。通过 SSH,你的本地机器会变成连接到远程应用程序服务器的一个安全瘦客户端。
7.6. X 窗口中的字体
在2002年,人们创建了发行版独立的库Fontconfig 2.0用于配置和定制字体访问. squeeze
以后的Debian使用 Fontconfig 2.0 进行字体配置.
X 窗口系统中的字体支持可以概括如下。
传统的 X 服务器端的字体支持系统
原始的核心 X11 字体系统为旧版本的 X 客户端应用提供了向后兼容。
原始的核心 X11 字体被安装到了 X 服务器上。
现代 X 客户端的字体支持系统
现代 X 系统支持下列带有高级功能(例如抗锯齿)的所有字体(第 7.6.1 节 “基础字体”,第 7.6.2 节 “其它字体” 和 第 7.6.3 节 “CJK 字体”)。
Xft 2.0 连接现代 X 应用,例如来自 GNOME、KDE 和带有 FreeType 2.0 库的LibreOffice 的应用。
FreeType 2.0 提供字体栅格化的库。
Fontconfig 为 Xft 2.0 解决了字体规范的问题。配置参见 fonts.conf(5)。
X渲染扩展 将字体访问和glyph图像生成从X服务器移动到了X客户端.
表 7.4. 支持 X 窗口字体系统的软件包
软件包 | 流行度 | 大小 | 说明 |
---|---|---|---|
xfonts-utils | V:66, I:542 | 415 | X 窗口系统字体实用程序 |
libxft2 | V:143, I:662 | 122 | Xft 的,一个库,连接到了带有 FreeType 字体栅格化库的 X 应用 |
libfreetype6 | V:426, I:994 | 896 | FreeType 2.0 字体栅格化库 |
fontconfig | V:354, I:776 | 583 | Fontconfig 的,一个通用的字体配置库——支持二进制 |
fontconfig-config | V:367, I:871 | 442 | Fontconfig 的,一个通用的字体配置库——配置数据 |
你可以通过下列方法查看字体配置信息。
使用 “
xset q
” 查看核心 X11 字体路径使用 “
fc-match
” 查看 fontconfig 的字体默认使用 “
fc-list
” 查看所有可用的 fontconfig 字体
提示 | |
---|---|
“The Penguin and Unicode” 很好地概述了现代的 X 窗口系统。在 http://unifont.org/ 中的其它文档提供了关于 Unicode 字体、支持 Unicode 的软件以及国际化的相关信息,还有 免费/自由/开源(free/libre/open source,FLOSS) 操作系统中的 Unicode 可用性问题。 |
7.6.1. 基础字体
计算机字体有两种主要的类型。
点阵字体(低分辨率栅格化下表现良好)
轮廓/笔画字体(高分辨率栅格化下表现良好)
缩放点阵字体会导致图像产生锯齿,而缩放轮廓/笔画字体则生成平滑的图像。
Debian 系统中的点阵字体通常由压缩的 X11 pcf 点阵字体文件 提供,它带有 “.pcf.gz
” 文件后缀名。
Debian 系统中的轮廓字体由以下提供。
PostScript Type 1 字体文件,它带有 “
.pfb
”(二进制字体文件)和 “.afm
”(字体规格文件)文件后缀名。
提示 | |
---|---|
OpenType 是为了取代 TrueType 和 PostScript Type 1。 |
表 7.5. 相应的 PostScript Type 1 字体
字体软件包 | 流行度 | 大小 | 无衬线字体 | 衬线字体 | 等宽字体 | 字体来源 |
---|---|---|---|---|---|---|
PostScript | N/A | N/A | Helvetica | Times | Courier | Adobe |
gsfonts | I:599 | 4439 | Nimbus Sans L | Nimbus Roman No9 L | Nimbus Mono L | URW (Adobe 兼容的大小) |
gsfonts-x11 | I:82 | 95 | Nimbus Sans L | Nimbus Roman No9 L | Nimbus Mono L | PostScript Type 1 字体支持的 X 字体。 |
t1-cyrillic | I:19 | 4878 | Free Helvetian | Free Times | Free Courier | URW 扩展(Adobe 兼容的大小) |
lmodern | V:13, I:113 | 33270 | LMSans | LMRoman | LMTypewriter* | 基于现代计算机的可缩放 PostScript 和 OpenType 字体(来自 Tex) |
表 7.6. 对应的 TrueType 字体
字体软件包 | 流行度 | 大小 | 无衬线字体 | 衬线字体 | 等宽字体 | 字体来源 |
---|---|---|---|---|---|---|
ttf-mscorefonts-installer | V:1, I:64 | 92 | Arial | Times New Roman | Courier New | 微软(Adobe 兼容的大小)(这会安装 non-free 数据) |
fonts-liberation | I:469 | 2093 | Liberation Sans | Liberation Serif | Liberation Mono | Liberation 字体项目(微软兼容的大小) |
fonts-freefont-ttf | V:50, I:276 | 6656 | FreeSans | FreeSerif | FreeMono | GNU 自由字体(微软兼容的大小) |
fonts-dejavu | I:478 | 39 | DejaVu Sans | DejaVu Serif | DejaVu Sans Mono | 覆盖了 Unicode 的 DejaVu、Bitstream Vera |
fonts-dejavu-core | V:220, I:809 | 2954 | DejaVu Sans | DejaVu Serif | DejaVu Sans Mono | 覆盖了 Unicode 的 DejaVu、Bitstream Vera(sans、sans-bold、serif、serif-bold、mono、mono-bold) |
fonts-dejavu-extra | I:516 | 7493 | N/A | N/A | N/A | 覆盖了 Unicode 的 DejaVu、Bitstream Vera(oblique、italic、bold-oblique、bold-italic、condensed) |
ttf-unifont | I:21 | 21 | N/A | N/A | unifont | GNU Unifont,带有 Unicode 5.1 基本多文种平面(BMP)中所有的可打印字符 |
提示 | |
---|---|
DejaVu 字体基于 Bitstream Vera 字体,并对其进行了扩充。 |
7.6.2. 其它字体
aptitude(8) 可以帮你轻松找到其它的字体。
简单的软件包列表位于 “软件集” → “本地化”
平面软件包列表可以使用 debtag 正则表达式来过滤字体数据:“
~Gmade-of::data:font
”在软件包名称里采用下面的正则表达式来过滤得到BDF(位图)字体包列表: “
~nxfonts-
“在软件包名称里采用下面的正则表达式来得到TrueType字体包列表: “
~nttf-|~nfonts-
“
因为自由字体有时会受限,因此对于 Debian 用户而言,可以选择安装或分享一些商业的 TrueType 字体。为了简化该过程,建立一些方便的软件包。
mathematica-fonts
fonts-mscorefonts-installer
当你付出使用非自由字体污染你自由系统的代价后,你会得到一些相当不错的 trueType 字体。
7.6.3. CJK 字体
下面是一些主要关注 CJK 字符 的字体。
表 7.7. CJK 字体名称中所使用的暗示字体类型的关键词
字体类型 | 日文字体名称 | 中文字体名称 | 韩文字体名称 |
---|---|---|---|
无衬线 | gothic、ゴチック | hei、gothic | dodum、gulim、gothic |
衬线 | mincho、明朝 | song、ming | batang |
像 “VL PGothic” 这样带有 “P” 的字体名称是对应的 “VL Gothic” 字体修改宽度后的比例字体。
举个例子,Shift_JIS 的码表包含了 7070 个字符。它们可以像下面那样分类。
JIS X 0201 单字节字符(191 个字符,又名半角字符)
JIS X 0208 双字节字符(6879 个字符,又名全角字符)
使用修复宽度的 CJK 字体的双字节字符占用控制台终端的双倍宽度。为了应对这种情况,带有 “.hbf
” 文件后缀名的 汉字点阵字体(Hanzi Bitmap Font,HBF)文件 被设计为包含了单字节和双字节字符的字体。
为了节省 TrueType 字体文件的空间,可以使用带有 “.ttc
” 文件后缀名的 TrueType 字体集合文件。
为了覆盖复杂的编码字体空间, CID采用”%!PS-Adobe-3.0 Resource-CMap
“开头的CMap文件作为PostScript类型1字体的关键字。这个几乎很少用在普通的X显示上,更多用于PDF等格式的文件渲染上。(参考 第 7.7.2 节 “X 实用应用”).
提示 | |
---|---|
对于Han unification,一些Unicode编码点阵期望能够有多样化的glyphs。其中最令人讨厌的在中日韩三个国家“U + 3001顿号”和“U + 3002表意的句号”的字符位置各不相同。配置日文中心字体的优先级,中文用的是” |
7.7. X 应用
7.7.1. X 办公应用
下面是一些基础的办公应用(LO 是 LibreOffice)。
表 7.8. 基础的 X 办公应用
软件包 | 流行度 | 软件包大小 | 类型 | 说明 |
---|---|---|---|---|
libreoffice-writer | V:188, I:441 | 39333 | LO | 文字处理软件 |
libreoffice-calc | V:188, I:436 | 32973 | LO | 电子表格 |
libreoffice-impress | V:176, I:433 | 9934 | LO | 演示文稿 |
libreoffice-base | V:145, I:325 | 7473 | LO | 数据库管理 |
libreoffice-draw | V:177, I:434 | 14600 | LO | 矢量图形编辑器(绘图) |
libreoffice-math | V:174, I:437 | 1963 | LO | 数学方程/公式编辑器 |
abiword | V:1, I:12 | 5141 | GNOME | 文字处理软件 |
gnumeric | V:6, I:21 | 9933 | GNOME | 电子表格 |
gimp | V:68, I:341 | 22313 | GTK | 位图图形编辑器 (绘图) |
inkscape | V:55, I:209 | 84823 | GNOME | 矢量图形编辑器(绘图) |
dia | V:5, I:31 | 3727 | GTK | 流程图和示意图编辑器 |
planner | V:0, I:5 | 1146 | GNOME | 项目管理 |
calligrawords | V:0, I:7 | 5717 | KDE | 文字处理软件 |
calligrasheets | V:0, I:6 | 10890 | KDE | 电子表格 |
calligrastage | V:0, I:5 | 5102 | KDE | 演示文稿 |
calligraplan | V:0, I:2 | 15342 | KDE | 项目管理 |
kexi | V:0, I:2 | 7576 | KDE | 数据库管理 |
karbon | V:0, I:7 | 3473 | KDE | 矢量图形编辑器(绘图) |
7.7.2. X 实用应用
下面是一些引起我注意的基础实用应用。
表 7.9. 基础的实用应用
软件包 | 流行度 | 软件包大小 | 类型 | 说明 |
---|---|---|---|---|
evince | V:116, I:329 | 954 | GNOME | 文档(pdf)阅读器 |
okular | V:46, I:118 | 14646 | KDE | 文档(pdf)阅读器 |
calibre | V:9, I:36 | 54876 | KDE | 电子书转换器和库管理 |
fbreader | V:2, I:15 | 3074 | GTK | 电子书阅读器 |
evolution | V:31, I:229 | 475 | GNOME | 个人信息管理(群组软体和电子邮件) |
kontact | V:1, I:16 | 2152 | KDE | 个人信息管理(群组软体和电子邮件) |
scribus | V:2, I:23 | 30375 | KDE | 桌面页面布局编辑器 |
glabels | V:0, I:4 | 1326 | GNOME | 标签编辑器 |
gnucash | V:3, I:12 | 32304 | GNOME | 个人会计 |
homebank | V:0, I:3 | 1044 | GTK | 个人会计 |
kmymoney | V:0, I:2 | 12036 | KDE | 个人会计 |
shotwell | V:19, I:223 | 6451 | GTK | 数码照片管理器 |
xsane | V:17, I:173 | 2346 | GTK | 扫描仪前段 |
小心 | |
---|---|
为了让 |
注意 | |
---|---|
如果在 GNOME 桌面环境中没有相应功能的软件,那么安装例如 |
7.8. X 琐事
7.8.1. 剪贴板
使用鼠标的 3 个按键来进行 X 选择是 X 原生的剪贴板(参见 第 1.4.4 节 “Unix类型的鼠标操作”)。
提示 | |
---|---|
Shift-Insert 等同于单击鼠标中键。 |
表 7.10. 基础的 X 选择程序
软件包 | 流行度 | 软件包大小 | 类型 | 说明 |
---|---|---|---|---|
xsel | V:10, I:44 | 59 | X | X 选择的命令行接口 |
xclip | V:9, I:49 | 64 | X | X 选择的命令行接口 |
现代的桌面环境(GNOME、KDE……)提供了不同的剪贴板系统用于剪切、复制和粘贴,它们使用鼠标左键和关键键(CTRL-X、CRTL-C 和 CTRL-V)。
7.8.2. X 中的键盘和鼠标按钮映射
xmodmap(1) 是 X 窗口系统中用来修改键盘和鼠标按钮映射的工具。为了获得 keycode,你需要在 X 中运行 xev(1) 并按下对应按键。为了获得 keysym 的含义,你需要查看 “/usr/include/X11/keysymdef.h
” 文件(x11proto-core-dev
软件包)中 MACRO 的定义。文件中所有的 “#define
” 语句后面都是以 “XK_
” 开头,后接 keysym 名称。
7.8.3. 典型的 X 客户端
大多数传统的 X 客户端程序,例如 xterm(1),可以用一组标准的命令行选项来启动,从而指定大小、字体和显示。
它们还使用 X 资源数据库来配置它们的外观。系统默认的 X 资源保存在 “/etc/X11/Xresources/*
” 中,应用默认的 X 资源保存在 “/etc/X11/app-defaults/*
” 中。使用这些设置作为起点。
“~/.Xresources
” 文件被用来保存用户资源设定。这个文件在登陆时会自动合并到默认的 X 资源。要更改这些设置并使其立即生效,使用下列命令将它们合并到数据库中。
$ xrdb -merge ~/.Xresources
参见 x(7) 和 xrdb(1).
7.8.4. X 终端模拟器 —— xterm
在 http://dickey.his.com/xterm/xterm.faq.html 可以了解到关于 xterm(1) 的一切信息。
7.8.5. 以 root 运行 X 客户端
警告 | |
---|---|
不要通过在显示管理器(例如 |
运行一个特殊的 X 客户端(例如使 “foo
” 取得 root 权限)的简单方法是像下面那样使用 sudo(8) 等。
$ sudo foo &
$ sudo -s
# foo &
$ ssh -X root@localhost
# foo &
小心 | |
---|---|
为了该目的像上面那样使用 ssh(1) 会浪费资源。 |
为了使 X 客户端链接到 X 服务器,请注意以下几点。
旧用户 “
$XAUTHORITY
” 和 “$DISPLAY
” 环境变量的值必须复制给新用户。“
$XAUTHORITY
” 环境变量的值所指向的文件必须对新用户可读。