六、Getting Help
主要概念
讨论
Getting Help
Unix,特别是 Linux 的传统做法是不印刷使用手册和文档,而是将它们收藏在系统中,以方便用户使用。没有人能记住命令 ls 的所有命令行选项,所以当用合适的命令行选项调用命令时,命令都会提供叫做“用法(usages)”的简短概要。大多数命令更完整的参考可以在有结构的 “man” pages 和 “info” pages 找到。在红帽企业版 Linux 中,目录 /usr/share/doc 针对特定软件包含有结构性不强的文档。最后,你还可以在 Linux 文档项目或红帽企业版 Linux 文档包中找到大量的指南和教程。
使用 -h、-? 或 –help 获得用法
随着不断深入学习这门课程,你会发现 Unix 在命名命令和命令选项时,经常会偏向简洁、高效的名称,而不是直观、易懂的名称。特别是常用的命令如 mv、ps 和 vi。Unix 的这种命名方针对有应验的用户非常有利,但新手操作就会比较吃亏。
没人能记住全部命令的所有使用方式,但有经验的 Unix 用户知道怎样在线快速寻找到他们所需的信息。最直接的帮助经常由命令本身提供。和命令行选项 -h、-? 或 –help 一起使用,命令提供“usage”或简短的语法总结。前面的课程里我们已经讨论过,在这里我们再回顾一下。
Man Pages
Manual Page(手册页),一般缩写为“man page”,是 Unix 系统的传统参考信息。它包括大多数命令、文件格式、程序调用的文档,一般主题可用命令 man 浏览。例如:man ls 产生有关 ls 命令的文档。
调页程序 less
红帽企业版 Linux 使用 less 调页程序浏览 man page。使用 less 浏览文件(包括 man page)时,使用单一键控制导航:使用 space 键浏览下一页,b 回到上一页,q 键退出。在以后的课程里还会再讨论 less,以下的表格只列出使用 less 浏览 man page 时最有用的导航命令。
Table 1. 基本的 less 导航
Command | Action |
space | 浏览下一页 |
b | 浏览上一页 |
q | 退出 |
/ text RETURN | 搜索文字 text |
n | 找到下一个之前用过的搜索术语 |
man page 章节
man page 分成八个标准章节,如下表。在不同章节的页有时会有相同的名字。举例来说,在第一章用户命令中的 passwd 命令,和第五章文件格式中的文件 /etc/passwd 都有相关的页数。用户要找的是 /etc/passwd 文件格式的相关文档,不幸的是, man passwd 只显示首先搜索到的页,在这里是整个第一章。要浏览第五章中的 man page,必须指明章数 man 5 passwd。
Table 1. man page 章节
章节 | 读者 | 主题 |
1 | 一般用户 | 命令 |
2 | 开发人 | 系统调用 |
3 | 开发人 | 库调用 |
4 | 管理员 | 设备文件 |
5 | 一般用户 | 文件格式 |
6 | 一般用户 | ???(见问题) |
7 | 一般用户 | 一般信息 |
8 | 管理员 | 管理员命令 |
在 Unix 中,引用 man page 通常会在页名后将章数用括号括起来,如 passwd(1) 或 passwd(5)。每章都包括一个叫 intro 的介绍页,所以命令 man 5 intro 会产生第五章的介绍页。
关键词搜索和 -a 选项
经常和命令 man 同时使用的两个选项是,进行关键词搜索的 -k,和浏览参数的“所有相关”页的 -a。用户 madonna 在找文件 /etc/passwd 格式的有关信息。她已经试过 man passwd,但这个命令只产生 passwd 命令的 man page,她用 man -k 搜索关键词 passwd。
[madonna@station madonna]$ man -k passwd
...
chpasswd (8) - update password file in batch
gpasswd (1) - administer the /etc/group file
hesiod_free_passwd [hesiod_getpwnam] (3) - Hesiod functions for retrieving passwd information
hesiod_getpwnam (3) - Hesiod functions for retrieving passwd information
hesiod_getpwuid [hesiod_getpwnam] (3) - Hesiod functions for retrieving passwd
information
htpasswd (1) - Create and update user authentication files
ldappasswd (1) - change the password of an LDAP entry
lppasswd (1) - add, change, or delete digest passwords
pam_localuser (8) - require users to be listed in /etc/passwd
passwd (1) - update a user's authentication tokens(s)
passwd (5) - password file 1
passwd [sslpasswd] (1ssl) - compute password hashes
saslpasswd (8) - set a user's sasl password
smbpasswd (5) - The Samba encrypted password file
smbpasswd (8) - change a user's SMB password
...
madonna 现在知道了需要的章节,她使用 man 5 passwd 找到所需页。madonna 还可以使用命令行选项 -a 指示 man 命令逐个浏览所有相关页。
Info Page
man page 通常提供提供参考信息,并不提供指导或一般使用。很多更复杂的命令在超级链接的“info page”中有更详细的记载。info page 比网络浏览器和可点击的链接出现的早。可以使用传统的 info 命令或是红帽企业版 Linux 提供的,界面相对简单的类似命令 pinfo 浏览 info page。info page 主要由 GNU project 开发的软件使用。
不带参数的 pinfo 命令会显示含有所有安装的 info page 内容的表格。基本导航和调页程序 less 相似。可以使用四个箭头键在 info page 的链接之间移动,见下表。
Table 1. pinfo 导航
Command | Action |
SPACE | 下一页 |
b | 上一页 |
q | 退出 |
/text RETURN | 搜索文字 text |
右箭头键 | 跟随链接 |
左箭头键 | 后退 |
上箭头键 | 上一个链接 |
下箭头键 | 下一个链接 |
目录 /usr/share/doc
开放源码软件的一个设计理念可以总结为“早发行,多发行”。开发软件时,只要软件可以使用,马上就发行,并不一定等到所有方面都完善。让用户尽早使用软件,可以让他们影响软件的设计,以便设计出更好的软件。
红帽企业版 Linux 遵照这一基本理论,提供实用、稳定的软件,即使这些软件还没正式被编入 man page 或 info page 中。通常,有关如何使用新开发产品的文档可能就在开发者匆忙打造的,名为 README 的简单文本文件中。红帽企业版 Linux 也会包括这些虽组织不完善但实用的文档,这些文档收藏在目录 /usr/share/doc,由包括这个软件的红帽软件包组织管理。
每个软件包的文档能够多有用,要视情而定。比如说,elvis 发现跟 PostScript 浏览器 ggv 的非正式文档非常简略,主要包括开发者的 ChangeLog。我们希望没有消息就是好消息。
[elvis@station elvis]$ ls -s /usr/share/doc/ggv-1.99.97/
total 144
120 ChangeLog 20 COPYING 0 NEWS 4 TODO
与之相比,在目录 /usr/share/doc 下可以找到大量有关复杂的文件,分享服务 samba 配置的信息,包括以不同格式储存在次目录中的文档。
[elvis@station elvis]$ ls /usr/share/doc/samba-2.2.7a/
autofs LDAP misc README Roadmap
COPYING libsmbclient printer-accounting README.vfs-recycle WHATSNEW.txt
docs Manifest printing recycle.conf
红帽文档指南
作为服务的一部分,红帽公司在红帽企业版 Linux 中包括文档手册。这些文档手册在互联网 上都可以找到。这些文档也有做成 RPM 形式的 CD 和印刷品,装在软件包套装中。
x86 安装指南
初次使用指南
用户定制指南
参考指南
安全指南
系统管理入门
这些手册提供针对红帽企业版 Linux 操作系统的信息,包括背景资料和不同工作的逐步操作。
Linux 文档项目
Linux 文档项目 的工作是将 Linux 操作系统的快速开发记录归档。这个网站的文档遵循 Linux 开发早期时所使用的格式。
FAQs
FAQ 即有关一个主题的“常见问题(Frequently Asked Questions)”,如 Linux-RAID FAQ。
HOWTOs
HOWTOs 提供如何逐步设置或配置 Linux 的各个部分,如 CD-Writing-HOWTO 或 ETHERNET-HOWTO。
GUIDES
各种 Guide(指南)更详细的介绍许多主题,如系统管理(System Administration)或 Linux 内核模块编程(Linux Kernel Module Programming)。
虽然这些文档并不针对红帽企业版 Linux 发行版本,这里的许多信息还是有用、有关的。
yelp:Gnome 帮助浏览器
最后,我们来介绍 yelp,GNOME 帮助浏览器(GNOME Help Brower),从应用程序菜单中选择“帮助”启动这一服务。 yelp 提供许多 GNOME 图形应用程序的主要文档,包括 Nautilus File Manager 和 GNOME 支程序。
Figure 1. yelp:GNOME 帮助浏览器
yelp:GNOME 帮助浏览器
问题
A title
Question 1
以下哪种方式不能获得 ls 命令的帮助?
Question 2
浏览 man page 时,使用哪个键使调页程序退出?
Question 3
man page 的哪一章含有配置文件 /etc/group 的文档?
Question 4
man page 的哪一章含有命令 group 的文档?
Question 5
man page 的哪一章含有文件名后缀及后缀所暗示的文件类型?
Question 6
列出 man page 章节的表格中没有第六章。这章的内容是什么?
Question 7
以下哪个命令产生在 man page 搜索词 sleep 的关键字搜索?
Question 8
非正式组织的文档位于红帽企业版 Linux 发行版本的哪里?
Question 9
如果你的系统没有安装红帽企业版 Linux 文档指南,你在哪里可以找到这些文档?
Question 10
GNOME 帮助浏览器 yelp 提供那种帮助?