《UNIX/Linux 系统管理技术手册(第四版)》——1.9 手册页和其他联机文档

简介:

本节书摘来自异步社区《UNIX/Linux 系统管理技术手册(第四版)》一书中的第1章,第1.9节,作者:【美】Evi Nemeth , Garth Snyder , Trent R.Hein , Ben Whaley著,更多章节内容可以访问云栖社区“异步社区”公众号查看

1.9 手册页和其他联机文档

UNIX/Linux 系统管理技术手册(第四版)
手册页通常称为“man手册页”,因为要用man命令来阅读,它构成了传统的“联机”文档(当然,现如今所有的文档都以这样或者那样的形式在线存在)。man手册页一般伴随系统一起安装。针对特定程序的man手册页通常随着安装新软件包一同安装。

man手册页对单条命令、驱动程序、文件格式或者库例程给出简洁的说明。它们不会解释诸如“我该怎样安装一个新设备?”或者“为什么我们的系统这么慢?”这样更普通的话题。对于这些问题来说,用户可以参考厂商提供的系统管理指南(参见1.10节),对于Linux系统来说,也可以从“Linux建档项目(Linux Documentation Project)”中获得文档。

1.9.1 手册页的组织
所有的系统都把man手册页分成若干节,但是在各个节的规定上面,不同系统间略有区别。我们的示例系统所采用的基本结构如表1.3所示。
screenshot
手册页中有些节会做进一步细分。例如,Solaris的第3c节包含了有关系统C标准库的手册页;有些系统的第8节没有内容,而把系统管理命令放到第1节。许多系统撤销了游戏和演示,第6节什么内容都没有。很多系统在手册中都有一个称之为l(L的小写)的节,用于本地手册页。

对于大多数主题而言,各节的确切结构并不重要,因为只要有匹配的手册页,man命令就会找到它。用户只需要对出现在不同节内同名的主题,知道各节的规定就行了。例如,passwd既是一条命令,也是一个配置文件,所以在第1节和第4或第5节都有关于它的手册项。
1.9.2 man:读取手册页
mantitle命令格式化特定的手册页并通过more、less命令,或者在PAGER环境变量中指定的任何程序把手册页发送到用户终端。title通常是一个命令、设备、文件名或者库例程名。手册中的各节大致是按照数字顺序进行搜索的,不过通常首先搜索描述命令的那些节(第1、8和6节)。

命令格式mansection title可让用户从某个特定的节获取手册页。于是在大多数系统上,man sync命令可得到sync命令的手册页,man 2sync命令可得到系统调用sync的手册页。

在Solaris上,必须在节号前面加上-s标志;例如,man -s 2 sync。

man -kkeyword或者aproposkeyword输出一份手册页清单,在其单行概要中有keyword。例如:

screenshot

keyword指代的库可能已经过期了。如果要向系统添加man手册页,需重构这个库文件,在Ubuntu、SUSE上使用mandb命令,在Red Hat上使用makewhatis命令,在Solaris、HP-UX和AIX上使用catman -w命令。

1.9.3 手册页的保存
手册页的nroff输入通常保存在/usr/share/man/下的多个目录中。Linux系统会把它们用gzip压缩以节省空间(命令man知道如何当场将它们解压缩)。如果在/var/cache/man或者/var/share/man下的适当目录有写入权限,那么命令man会在那里维护一个有格式的手册页的缓存,但是这存在安全风险。大多数系统会在安装的时候预处理一次手册页的格式(参考catman命令),或者根本不做预处理。

除了传统的nroff格式之外,Solaris还支持SGML格式的手册页。SGML格式手册页相关各节的目录都在/usr/share/man下。

命令man会在若干不同的目录中寻找用户需要的手册页。在Linux系统上,用户可以使用manpath命令来确定搜索路径。这个搜索路径(在Ubuntu中)一般为:

ubuntu$ **manpath**
/usr/local/man:/usr/local/share/man:/usr/share/man

如果有必要,用户可以设置自己的环境变量MANPATH来覆盖默认路径:

export MANPATH=/home/share/localman:/usr/share/man
有些系统能让用户为手册页设置一个自定义的系统级默认搜索路径,如果用户想要维护平行的一套man手册页目录树(比如OpenPKG创建的目录树),就能够用上这种功能。不过,如果用户想要用手册页的形式发布本地文档,更简单的做法是,用系统的标准打包机制打包,并把这些手册页放在标准的man目录下。参考第12章了解有关软件安装和管理的更多知识。

1.9.4 GNUTexinfo
Linux系统包括一种补充的联机手册页系统,叫做Texinfo。很久以前,GNU人士针对设定man页面格式的nroff为AT&T专有命令这一现实情况,发明了Texinfo文档。现在,我们已经有了GNU的groff来为我们完成这项工作,nroff的问题不再重要了,但它仍然在人们脑海里阴魂不散。

虽然Texinfo逐渐不用了,但仍有很少几个GNU软件包坚持用Texinfo文件而不是man页面来提供自身的文档。用户可以把读取Texinfo的命令info的输出通过管道送给less命令,避开info命令内建的浏览体系。幸运的是,采用Texinfo提供文档的软件包通常会安装指示性的man页面,告诉用户使用info命令来阅读了解那些特殊的软件包。用户可以坚持使用man命令来查找手册,只有在被告知要采用info时再这么做,这样的做法很保险。命令info info将会把用户带入Texinfo的黑暗神秘世界。

相关文章
|
22天前
|
人工智能 Linux iOS开发
Linux下搭建本地deepseek(附文档下载)
本文介绍了在Linux上搭建本地DeepSeek的步骤。主要涉及安装ollama、下载deepseek模型(1.5b参数版本)和配置ChatboxAI客户端。通过命令行安装ollama后,使用`ollama run deepseek-r1:1.5b`下载模型,并配置环境变量以确保服务正常运行。最后,通过ChatboxAI与模型进行交互。整个过程适合初学者,服务器配置为4核CPU和8GB内存,无GPU,响应速度稍有延迟但可接受。相关资源链接已提供。
120 2
|
5月前
|
安全 Ubuntu Linux
Linux系统中的软件管理工具主
Linux系统中的软件管理工具主
84 7
|
1月前
|
安全 Unix Linux
Unix:Linux的“祖师爷”
Unix的诞生 Unix操作系统诞生于1969年,由肯·汤普逊(Kenneth Lane Thompson)和丹尼斯·里奇(Dennis MacAlistair Ritchie)在AT&T的贝尔实验室开发。其初衷是为了在闲置的PDP-7计算机上开发一个简单的操作系统,以便进行编程和游戏。最初的Unix是用汇编语言编写的,但随后为了更高效的开发和更好的可移植性,里奇和汤普逊用C语言重写了Unix的大部分代码,这奠定了Unix的基础,并促进了C语言的广泛应用。
33 2
|
2月前
|
安全 大数据 Linux
云上体验最佳的服务器操作系统 - Alibaba Cloud Linux | 飞天技术沙龙-CentOS 迁移替换专场
本次方案的主题是云上体验最佳的服务器操作系统 - Alibaba Cloud Linux ,从 Alibaba Cloud Linux 的产生背景、产品优势以及云上用户使用它享受的技术红利等方面详细进行了介绍。同时,通过国内某社交平台、某快递企业、某手机客户大数据业务 3 大案例,成功助力客户实现弹性扩容能力提升、性能提升、降本增效。 1. 背景介绍 2. 产品介绍 3. 案例分享
|
3月前
|
安全 Linux KVM
Linux虚拟化技术:从Xen到KVM
Xen和KVM是Linux平台上两种主要的虚拟化技术,各有优缺点和适用场景。通过对比两者的架构、性能、安全性、管理复杂性和硬件依赖性,可以更好地理解它们的适用场景和选择依据。无论是高性能计算、企业虚拟化还是云计算平台,合理选择和配置虚拟化技术是实现高效、稳定和安全IT环境的关键。
183 8
|
3月前
|
Unix Linux 编译器
UNIX/Linux 上的安装
UNIX/Linux 上的安装。
73 2
|
5月前
|
Ubuntu Linux 测试技术
Linux系统之Ubuntu安装cockpit管理工具
【10月更文挑战第13天】Linux系统之Ubuntu安装cockpit管理工具
437 4
Linux系统之Ubuntu安装cockpit管理工具
|
4月前
|
安全 Linux 数据安全/隐私保护
在 Linux 系统中,查找文件所有者是系统管理和安全审计的重要技能。
在 Linux 系统中,查找文件所有者是系统管理和安全审计的重要技能。本文介绍了使用 `ls -l` 和 `stat` 命令查找文件所有者的基本方法,以及通过文件路径、通配符和结合其他命令的高级技巧。还提供了实际案例分析和注意事项,帮助读者更好地掌握这一操作。
82 6
|
5月前
|
Java Linux
java读取linux服务器下某文档的内容
java读取linux服务器下某文档的内容
63 3
java读取linux服务器下某文档的内容
|
5月前
|
Unix 物联网 大数据
操作系统的演化与比较:从Unix到Linux
本文将探讨操作系统的历史发展,重点关注Unix和Linux两个主要的操作系统分支。通过分析它们的起源、设计哲学、技术特点以及在现代计算中的影响,我们可以更好地理解操作系统在计算机科学中的核心地位及其未来发展趋势。