《RedHat官方参考指南》(本人翻译)
《RedHat参考指南》(Red Hat Linux 8.0The Official Red Hat Linux Reference Guide)中文版(本人翻译)代前言
今年大部分时间都在备考CPA,现在终于有时间来好好研究技术了。前几天在linux技术中坚站看到
《RedHat定制指南》《RedHat初学指南》《RedHat安装指南》《RedHat参考指南》《RedHat安全指南》,认为是很好的资料 ,就下了回来。但后2者只有英文的,在网上找了一下,没有找到中文的,就把他译成中文,分批在www.linuxsir.com的论坛上发表。若有翻译不妥当的地方,望大家批评指正。
邮箱:[email protected]
qq:271009278
发送请求为linux,我就会加你为好友的。
严复提的标准是“信,达,雅”.水平有限,只有在直译的基础上,适当意译。
希望广大网友能够与我共同探讨。 邮箱:[email protected]
qq:271009278
发送请求为linux,我就会加你为好友的。
严复提的标准是“信,达,雅”.水平有限,只有在直译的基础上,适当意译。
希望广大网友能够与我共同探讨。
译文中有括号中有英文的,均是本人拿不准或译不出的地方,望大家提意见。
这次译的是
http://www.chinalinuxpub.com/doc/manual/rhl-rg-en-8.0/
红帽子 Linux 8.0
官方的红帽子 Linux 叁考指南
版权 ? 2002 红帽子公司出品
ISBN: N/ 一
--------------------------------------------------------------------------------
目次
介绍
这本手册的变化
寻找适应自己的文档
对第一次使用Linux 的使用者文档
为有更多使用linux经验的使用者
对 Linux Gurus的文档
文档约定
使用鼠标
在X窗口里复制粘贴
更多内容
我们需要反馈!
为支持登记
I. 系统叁考
1. 文件系统结构
为什么分享共有的结构?
文件系统层次标准的概观 (FHS)
特别文件的位置
2. proc 文件系统
虚拟文件系统
在 proc 文件系统中的最高阶层的文件
/proc/中的目录
使用 sysctl
附加的资源
3. 启动过程, Init 和关机
启动过程
启动过程的详细细节
在启动时间正在运行中的程序
与其他的启动过程的不同
体系机构
SysV Init
Init 运行级别
/etc/sysconfig/中的目录
关机
4. 开机载入程序(. Boot Loaders)
开机载入程序和系统结构
grub
安装 grub
grub术语
grub介面(interfaces)
grub 指令
grub菜单配置文件
LILO
/etc/lilo.conf中的选择项
在启动时改变运行级别
附加的资源
5. 使用者和组
创造使用者和组的工具
标准使用者
标准组
使用者私人的组
遮蔽公用程序(shadow utilities)
6. X 窗口系统
X 的强大
XFree86
桌面环境和窗口管理器
运行级别
字体
附加的资源
II. 安全叁考
7. Pluggable 证明模块 (PAM)
PAM 的优势
PAM 配置文件
PAM 模块
PAM 模块控制标记
PAM 模块路径
PAM 模块函数中的独立变数(PAM Module Arguments)
PAM 配置文件的例子(Sample PAM Configuration Files)
PAM 和设备所有权
附加的资源
8. TCP 数据包和 xinetd
TCP 数据包是什么?
以主机为基础的访问控制列表(Host-Based Access Control Lists)
访问控制使用 xinetd(Access Control Using xinetd)
附加的资源
9. SSH 协议
SSH 的特征
SSH 连接的事件顺序
SSH 安全的层
OpenSSH 配置文件
超过 安全的 shell(More Than a Secure Shell)
远程连接用 SSH之需要
10. Kerberos
Kerberos 的优势
Kerberos 缺点
Kerberos 术语
Kerberos 如何工作
Kerberos 和 PAM
配置一个 Kerberos 5 服务器
配置一个 Kerberos 5 客户
附加的资源
11. Tripwire
该如何使用 Tripwire
安装 Tripwire rpm
配置 Tripwire
设定 Tripwire 数据库初值(Initialize the Tripwire Database)
运行完整性检查
检查 Tripwire 报告
更新 Tripwire 数据库
更新 Tripwire 政策文件(Updating the Tripwire Policy File)
更新 Tripwire 配置文件
Tripwire 文件位置叁考(Tripwire File Location Reference)
附加的资源
III. 网络服务叁考
12. 网络脚本.( Network Scripts)
网络配置文件
介面配置文件
介面控制脚本
网络动作(Network Functions)
附加的资源
13. 防火墙和 iptables
打包过滤
iptables 和 ipchains之间的不同
在 iptables 指令中被用的选择项
储存 iptables 信息
附加的资源
14. Apache HTTP 服务器
Apache HTTP 服务器 2.0
移动 Apache HTTP server 1.3 的配置文件
安装之後
开始和停止 httpd
在 httpd.conf 中的配置指令
默认的模块
把模块加入到你的服务器
使用虚拟主机
附加的资源
15. 电子邮件
协定
电子邮件程序分类
Sendmail
Fetchmail
Procmail
安全
附加的资源
16. Berkeley 英特网名字网域(Berkeley Internet Name Domain) (BIND)
介绍 DNS 和 BIND
BIND配置文件
使用 rndc
BIND 的高级特征
避免通常的错误
附加的资源
17. 网络文件系统 (NFS)
方法(Methodology)
NFS 服务器配置文件
NFS 客户配置文件
保护 NFS(Securing NFS)
附加的资源
18. 轻量级目录存取协定 (简易资料存取协定) ( Lightweight Directory Access Protocol (LDAP))
为什么使用简易资料存取协定?
OpenLDAP Daemons 和公用程序
简易资料存取协定术语
OpenLDAP 配置文件
OpenLDAP 安装概观
升级到 OpenLDAP 2.0 版
配置你的系统证明使用 OpenLDAP(Configuring Your System to Authenticate Using OpenLDAP)
附加的资源
4. 附录
A. 一般的叁数和模块
详细说明模组叁数
光盘模组叁数
SCSI叁数
以太网络叁数
http://www.chinalinuxpub.com/doc/manual/rhl-rg-en-8.0/ch-intro.html
介绍
欢迎阅读红帽子Linux官方叁考指南。
红帽子Linux官方叁考指南包含关於你的红帽子 Linux 系统的有用资讯。 从基本的观念,例如红帽子 Linux 文件系统的结构,到系统安全和证明控制的比较好的点(to the finer points of system security and authentication control),我们希望你将会感到这本书是有价值的。
这个指南是为你准备的,如果你想要学习一点儿更多的有关你的红帽子 Linux 系统是如何工作的。 你能在这本手册里面探究的主题包括下列各项:
文件系统结构
启动过程
X 窗口系统
安全问题(Security issues)
网络服务
这本手册的变化
这本手册为了把红帽子 Linux 8.0 的最新性能弄清楚而被重新组织并且升级。 这些变化包括:
新的启动载入程序章节(A New Boot Loaders Chapter)
grub 部分被校订而且扩大为包括 LILO。
升级了的 Apache HTTP 服务器章节
现在有从 1.3 版到 Apache HTTP 服务器的 2.0 版转移的导引。 也就是,服务器配置选项的列表被升级了。 为 Gary Benson 和 Joe Orton在Apache HTTP 服务器转移指南上的辛苦的工作致以特别感谢。
升级了简易资料存取协定章节(Updated LDAP Chapter)
简易资料存取协定章节被修改并且重新组织。
升级了 iptables 章
iptables 章被阐明而且重新组织。
升级了 Tripwire 章
Tripwire 章被澄清而且重新组织。 ( 甚至有一个假想的新例证 ;-)
阅读这个指南之前,你应该关于安装问题熟悉红帽子 Linux 官方安装指南的内容, 关于基本 Linux观念熟悉红帽子 Linux 官方入门指南,关于一般的配置问题熟悉红帽子 Linux 官方定制指南。 红帽子Linux官方叁考指南包含的高级应用资料可能对有些使用者没有用, 这取决于他们如何使用他们的红帽子 Linux 系统。
所有的官方红帽子 Linux 手册的 HTML 和PDF版本均可在 http://www.redhat.com/doc 得到。
注意
虽然这本手册反映最新的可能的信息,但是你应该阅读红帽linux的手册(the Red Hat Linux Release Notes),因为有些东西在本文定稿之前可能不能用。版本手册(The Release Notes)可在红帽子 Linux CD #1 上找到或在下列网址上:
http://www.redhat.com/doc/manual/linux
第3帖
http://www.chinalinuxpub.com/doc/manual/rhl-rg-en-8.0/s1-intro-documentation.html
发现适合你的文档
你需要的是适应你 Linux 专长层次的文档。 否则,你可能感到沮丧或者找不到必需的信息来解决你的问题。红帽子 Linux 官方叁考指南处理 你的红帽子 Linux 系统的比较技术上的方面和选择项(The Official Red Hat Linux Reference Guide deals with the more technical aspects and options of your Red Hat Linux system.)。这个部分将会帮助你决定是否检阅你所需要的东西在这本手册或考虑其他的红帽子 Linux 手册,包括在线资源,用你的搜寻引擎。
三个不同种类的人使用红帽子 Linux ,而且每一类需要的文档和资料都不同。 帮助你知道你应该从哪里启动,取决于你的自己经验层次:
Linux初学者
这种类型的使用者以前从未用过任何的 Linux( 或像 Linux-like) 操作系统或者仅仅对 Linux 有有限的皮毛知识。 他们可能或不可能有使用其他的操作系统.(例如 Windows) 的经验 .你是这样的吗? 如果如此,跳到这一部分------为Linux 初学者准备的文档(the Section called Documentation For First-Time Linux Users. )
一些 有Linux 经验的(Some Linux Experience)
这种类型的使用者以前安装和成功使用过 Linux( 但不是红帽子 Linux),或者可能有差不多的经验在其他的类 Linux操作系统上。你是这样的吗? 如果如此,转向------富有经验的使用者(the Section called For the More Experienced)
富有经验的使用者
这种类型的使用者以前安装和成功使用过红帽子 Linux。 如果这符合你,转向------为 Linux gurus准备的文档。(the Section called Documentation for Linux Gurus. )
为Linux 初学者准备的文档(the Section called Documentation For First-Time Linux Users. )
因为有些人初次接触到 Linux, 在任何方面得到的信息,例如印刷,启动系统或给硬盘分区,都可能如读天书。它帮助你打好基础,而避开那些高深的内容(It helps to initially step back and gain a decent base of information centered around how Linux works before tackling these kinds of advanced issues)。
你首先要获得一些有用的文档。 它们不能是太复杂的。没有文档,你只会失望,而不能好好用你的红帽子 Linux 系统。(you will only become frustrated at your inability to get your Red Hat Linux system working the way you want. )
你应该找到以下的Linux 书籍:
A brief history of Linux — Many aspects of Linux are the way they are because of historical precedent. The Linux culture is also based on past events, needs or requirements. A basic understanding of the history of Linux will help you figure out how to solve many potential problems before you actually see them.
An explanation of how Linux works — While delving into the most arcane aspects of the Linux kernel is not necessary, it is a good idea to know something about how Linux is put together. This is particularly important if you have been working with other operating systems, as some of the assumptions you currently hold about how computers work may not transfer from that operating system to Linux.
An introductory command overview (with examples) — This is probably the most important thing to look for in Linux documentation. The underlying design philosophy for Linux is that it's better to use many small commands connected together in different ways than it is to have a few large (and complex) commands that do the whole job themselves. Without examples that illustrate this approach to doing things, you may find yourself intimidated by the sheer number of commands available on your Red Hat Linux system.
记住你不须记住所有的 Linux 命令。 不同的技术会帮助你找到你需要完成一个任务的特定命令。你只需要知道Linux任务运行的一般的方法,你需要完成什么,和如何知道将会给你你要运行指令的精确解释的工具。
官方红帽子 Linux 安装指南会帮你成功搞定红帽子 Linux 系统安装和最初配置。 官方红帽子 Linux 入门指南包括 Linux的历史 ,基本系统指令, gnome , KDE , rpm 和许多其他的基本观念。 你应该从这二本书读动而且使用他们打好你的红帽子 Linux 知识基础。不久,比较复杂的观念将会开始被理解因为你已经掌握了一般的知识 。
除了读红帽子 Linux 手册,一些其他的好的文档资源可用,而很便宜甚至免费:
介绍 Linux 的网站
http://www.redhat.com —红帽子网站,你将会找对 Linux 文档计划 (ldp) ,红帽子 Linux 手册的在线版本, faq(时常问的问题) ,一个能帮助你发现一个 Linux 使用者组的数据库的联结,红帽子知识库 , 和更多内容。
http://www.linuxheadquarters.com —颇具亲和力的 Linux 总部网站,有手把手的指南。
对Linux 新闻讨论组的介绍
你能同其他人,参加尝试解决问题的新闻讨论组, 或被积极地问问题或回答。众所周知,富有经验的 Linux 使用者是非常有帮助的,当帮助新的使用者解决各种不同的 Linux 问题------尤其你的问题提的对路时。 如果你没有好的新闻组阅读软件,你能在 http://www.deja.com 找到。 几十个 Linux 相关的新闻讨论组存在, 包括下列各项:
linux.help — A great place to get help from fellow Linux users.
linux.redhat — This newsgroup primarily covers Red Hat Linux-specific issues.
linux.redhat.install — Pose installation questions to this newsgroup or search it to see how others solved similar problems.
linux.redhat.misc — Questions or requests for help that do not really fit into traditional categories go here.
linux.redhat.rpm — A good place to go if you are having trouble using RPM to accomplish particular objectives.
讲Linux 基础知识的书
Red Hat Linux for Dummies, 2nd Edition by Jon "maddog" Hall; IDG
Special Edition Using Red Hat Linux by Alan Simpson, John Ray and Neal Jamison; Que
Running Linux by Matt Welsh and Lar Kaufman; O'Reilly & Associates
Red Hat Linux 7 Unleashed by William Ball and David Pitts; Sams
在这里被提及的书是对红帽子 Linux 系统获得基本了解的有用信息的主要来源。 关于各种不同的主题有比较深入的信息的书,在许多章列出了它们的书名, 通常在一个附加的资源区域中。( usually in an Additional Resources area.)
为有更多经验的用户
如果你曾经用过其他的 Linux 版本, 你或许已经有基本的把握。 你可能安装过自己 的Linux 系统,而且你甚至下载过并且安装过你在英特网上搜索的软件。 在安装 Linux 之后,然而,配置可能是非常让人困惑的。
官方红帽子 Linux 定制指南设计的初衷是解释各种不同的方法配置你的红帽子 Linux 系统。 使用这本手册学习关於配置选择项和该如何将他们的效果实现的事。
当你正在安装不被在官方红帽子 Linux 设定指南中提及的软件时,看看其他的人在相似的环境中是如何做的,是时常有帮助的。 来自 Linux 文档计划的 HOWTO 文件, 可在 http://www.redhat.com/mirror/ldp/HOWTO/HOWTO-INDEX/howtos.html,文件 Linux 的特别方面, 从低电平核仁秘教的变化到使用 Linux 作为业余家无线电台工作。(document particular aspects of Linux, from low-level kernel esoteric changes to using Linux for amateur radio station work)
为Linux Gurus准备的文档
如果你是一个长时间的红帽子 Linux 使用者, 你或许已经知道,了解一个程序最好方法之一是读它的源程序码及配置文件。 红帽子 Linux 的一个主要的优势是任何人均可读他的源程序码。
明显的,并不是每个人都是C 程序设计者,如此源程序码不可能对你是有帮助的。 然而,如果你有足够知识和技术读它,它会告诉你所有的答案。
第4帖http://www.chinalinuxpub.com/doc/manual/rhl-rg-en-8.0/s1-intro-conventions.html
文档约定
在你阅读这本手册的时候,你会注意到某些字词使用了不同的字体、大小和粗细。这种突出显示是有矩可循的;用同一风格来代表不同字词以表明它们属于同一类型。用这种方式来代表的各种字词类型包括:
command
Linux 命令(以及其它操作系统的命令,若使用的话)用这种方式代表。它向你表明你可以在命令行中键入词或词组然后按 键来启用命令。有时,命令中会包括应用另一种方式显示的词(例如文件名),在这种情况下,它们被视为命令的一部分,因而整个词组都会被显示为命令。例如:
使用 cat testfile 命令来查看当前工作目录中一个叫做 testfile 的文件。
filename
文件名、目录名、路径、以及 RPM 软件包名用这种方式代表。它表明在你的 Red Hat Linux 系统上存在着一个叫这个名称的文件或目录。例如:
你的主目录中的 .bashrc 文件包括你自用的 bash shell 定义和别名。
/etc/fstab 文件包括关于不同系统设备和文件系统的信息。
如果你想使用一个万维网服务器日志文件分析程序的话,安装 webalizer RPM。
application
这种方式向你表明该程序是一个终端用户的应用程序(与系统软件相对)。例如:
使用 Mozilla 来浏览万维网。
键盘上的按键用这种方式代表。例如:
要使用 键补全,键入一个字符然后按 键。你的终端机上就会显示目录中起首为那个字符的文件列表。
-
一个击键的组合用这种方式代表。例如:
-- 击键组合会退出你的图形会话,把你返回到图形登录屏幕或控制台。
「GUI 界面上的文本」
在 GUI 界面屏幕或窗口中的标题、词汇、或短语会用这种方式显示。它用来标明某个 GUI 屏幕或 GUI 屏幕上的某个元素(譬如与复选箱或字段相关的文本)。例如:
如果你想要在你的屏幕保护程序停止前要求口令的话,选择「需要口令」复选箱。
「GUI 屏幕或窗口上的最上级菜单」
用这种方式表示的词汇表明它位于一个下拉菜单的最上级。如果你在 GUI 屏幕上点击了这个词,应出现菜单的其它部分。例如:
在 GNOME 终端的「文件」下,你会看到「新建标签」选项,它允许你在同一窗口中打开多个 shell 提示。
如果你需要在 GUI 菜单上点击一系列命令的话,它们会如下面的例子中所示:
点击面板上的「主菜单」=> 「编程」 => 「Emacs」来启动 Emacs 文本编辑器。
「GUI 屏幕或窗口中的按钮」
这种方式表明它是 GUI 屏幕上可点击的按钮。例如:
点击「后退」按钮来返回到你刚才查看的网页。
computer output
这类方式的文本表明它是计算机在命令行中显示的输出。你键入命令的反应、错误讯息、以及程序或脚本中向你要求输入的互动式提示,都是用这种格式来代表的。例如:
使用 ls 命令来显示目录的内容:
$ ls
Desktop about.html logs paulwesterberg.png
Mail backupfiles mail reports
命令返回的输出(在上面的例子中,是目录的内容)用这种方式来显示。
prompt
提示是计算机在向你表明它在等待你的输入。它会用这种方式来显示。例如:
$
#
$
leopard login:
user input
用户键入的文本。无论是在命令行中还是在 GUI 屏幕上的文本箱内的输入都会用这种方式来显示。在下面的例子中,text 用这种方式显示:
要把你的系统引导入基于文本的安装程序,你需要在 boot: 提示下键入 text 命令。
除此之外,我们还使用几种不同的方式来强调某些信息。按照信息对你的系统的重要程度,它们被标为注记、窍门、重要、小心、或警告。例如:
注记
切记,Linux 区分大小写。换一句话说,rose 不是 ROSE 或 rOsE。
窍门
目录 /usr/share/doc 包括了关于你的系统上安装的软件包的附加信息。
重要
如果你修改了 DHCP 配置文件,这些改变在你重启 DHCP 守护进程之后才会生效。
小心
不要以根用户身份来执行日常任务 — 使用一个常规的用户帐号,除非你需要使用根帐号来进行系统管理任务。
警告
如果你选择要不进行手工分区,服务器安装会删除所有安装了的硬盘驱动器上的现存分区。除非你确信你没有需要保留的数据,请不要选择这种安装类型。
第五帖
http://www.chinalinuxpub.com/doc/manual/rhl-rg-en-8.0/s1-intro-mouse.html
使用鼠标
Red Hat Linux 是为使用三键鼠标设计的。如果你有一个两键鼠标, 你应该在安装过程中选择“模拟 3 键”。如果你在使用模拟三键,同时按鼠标的两键与按缺少的第三键(中间)作用相同。
该文档中,如果指示你使用鼠标点击某物,这意味着点击鼠标左侧的按钮。你需要使用中间的或右侧的鼠标按钮的情况会被具体说明。(如果你把鼠标配置成左手使用,上述情况则正好相反。)
你可能会对“拖放”这个词很熟悉。如果你被指示要拖放 GUI 桌面上的某个项目,点击这个项目,然后压住鼠标按钮,在按钮被持续压住的时候,把鼠标移动到一个新位置上来拖动这个项目。当你到达了目的地,松开鼠标按钮来放置这个项目。
第六帖
http://www.chinalinuxpub.com/doc/manual/rhl-rg-en-8.0/s1-intro-copypaste.html
在 X 下复制和粘贴文本
在 X 窗口系统下使用鼠标来复制和粘贴文本是一项简单操作。要复制文本,只需点击鼠标,把它在文本上拖过来突出显示该文本。要把文本粘贴到某处,在需要放置文本的地方点击鼠标的中间按钮。
第七帖
http://www.chinalinuxpub.com/doc/manual/rhl-rg-en-8.0/s1-intro-more-to-come.html
更多的东西
官方红帽子 Linux 叁考指南是红帽子公司提供的有用的资讯和及时的支持给红帽子 Linux 使用者的的承诺部份。 未来的版本将会把关的资讯扩大到系统结构组织,新的和有力的安全工具和其他的资源来帮助你扩充你的红帽子 Linux 系统的能力,你可以使用它。
那是你能得到帮助的地方。
我们需要反馈!
如果你在官方红帽子 Linux 叁考指南中找到错误, 或者有改进本书的建议,我们很希望能收到您的来函!请向 Bugzilla(http://bugzilla.redhat.com/bugzilla/)提交一份关于 rhl-rg的报告。
在提交报告的时候,请明确指定本书的标记:
rhl-rg(EN)-8.0-HTML-RHI (2002-08-14T22:29-0400
如果你提到手册的识别符, 我们将会准确地知道你指的是哪一个版本。
如果你有改进本书的建议,请尽可能详细地阐明。如果你发现了错误,请包括所在章节及段落,因此我们可以轻易地查找到。
第八帖
http://www.chinalinuxpub.com/doc/manual/rhl-rg-en-8.0/s1-register.html
注册支持
如果你有一份 Red Hat Linux 8.0 的正式版本,请记住注册以便获得 Red Hat 顾客可以享受的诸多权益。
依据你购买的 Red Hat Linux 产品而定,你可以享受部分或全部以下列举的权益:
Red Hat 支持 — 从 Red Hat, Inc. 的支持组中获得关于安装问题的帮助。
Red Hat 网络 — 轻松地更新你的软件包,以及接收为你的系统定制的安全通知。详情请参阅http://rhn.redhat.com。
Under the Brim: The Red Hat E-Newsletter — 每个月可直接从 Red Hat 获取最新的新闻和产品信息。
要注册,请访问:http://www.redhat.com/apps/activate/。 你可以在 Red Hat Linux 产品盒内的黑色、红色和白色的登记卡上找到你的产品 ID。
关于 Red Hat Linux 的技术支持的详细资料,请参阅《Red Hat Linux 安装指南》中的附录:获取技术支持。
感谢您选择了 Red Hat Linux!祝您一切顺利!
Red Hat 文档组
第九帖
http://www.chinalinuxpub.com/doc/manual/rhl-rg-en-8.0/pt-system-reference.html
I. 系统叁考
目次
1. 文件系统结构
2. proc 文件系统
3. 启动程序, Init 和关机
4. 开机载入程序
5. 使用者和组
6. X 窗口系统 《RedHat参考指南》(Red Hat Linux 8.0The Official Red Hat Linux Reference Guide)中文版(本人翻译)
代前言
今年大部分时间都在备考CPA,现在终于有时间来好好研究技术了。前几天在linux技术中坚站看到
《RedHat定制指南》《RedHat初学指南》《RedHat安装指南》《RedHat参考指南》《RedHat安全指南》,认为是很好的资料 ,就下了回来。但后2者只有英文的,在网上找了一下,没有找到中文的,就把他译成中文,分批在www.linuxsir.com的论坛上发表。若有翻译不妥当的地方,望大家批评指正。
邮箱:[email protected]
qq:271009278
发送请求为linux,我就会加你为好友的。
严复提的标准是“信,达,雅”.水平有限,只有在直译的基础上,适当意译。
希望广大网友能够与我共同探讨。
译文中有括号中有英文的,均是本人拿不准或译不出的地方,望大家提意见。
这次译的是
第十帖
http://www.chinalinuxpub.com/doc/manual/rhl-rg-en-8.0/ch-filesystem.html
第 1 章. 文件系统结构
为什么分享公有的结构? (Why Share a Common Structure?)
操作系统的文件系统结构是它最基本组织的层次。 几乎一个操作系统同它的使用者,应用程序和安全模型交互的所有方法都依赖于它在一个存储设备上储存文件的方式。使用者和程序可以从一个通常的指引知道该在哪里读和写文件,有很多理由表明这是至关重要的。(It is crucial for a variety of reasons that users, as well as programs, be able to refer to a common guideline to know where to read and write files. )
一个文件系统从二种不同的角度来看,可分为:
可分享的和不可分享的文件(Shareable vs. unshareable files)
动态的和静态的文件(Variable vs. static files)
可分享的文件是那些以能被各种不同的主机访问;不可分享的文件不是对任何其他的主机都可访问。 动态文件能随时改变,不因为操作(Variable files can change at any time without any intervention);静态的文件(例如只读的文档和二进制文件)不会改变,如果没有系统管理员或一个用户的一个操作。(static files, such as read-only documentation and binaries, do not change without an action from the system administrator or an agent that the system administrator has placed in motion to accomplish that task. )
这样看文件的理由是要帮助你了解给这些文件所在的目录的许可的类型。操作系统和它的使用者需要决定那些文件应该在哪里被放置,是否目录被设置成只读或可读写 , 和每个文件被允许访问的层次。这个组织的最高权限是决定性的,例如访问根目录可能被限制一样,否则 ,
权限是混乱的或不安全。(The top level of this organization is crucial, as the access to the underlying directories can be restricted or security problems may manifest themselves if the top level is left disorganized or without a widely-used structure )
然而, 只是有一个结构不意谓什么,除非它是一个标准。 竞争结构能实际上引起较他们为多的问题固定(Competing structures can actually cause more problems than they fix)。因为这,红帽子选择那最广泛地被使用了的文件系统结构,而且做了一些稍微的改变,使它适应在红帽子 Linux 里面被使用的特殊文件。
第十一帖
http://www.chinalinuxpub.com/doc/manual/rhl-rg-en-8.0/s1-filesystem-fhs.html
文件系统科学分类标准之概观 (FHS)( Overview of File System Hierarchy Standard (FHS))
红帽子遵守文件系统科学分类标准(FHS),一个定义许多文件和目录的名字和位置的协议。 我们将会继续遵守FHS( We will continue to track and follow the standard to keep Red Hat Linux FHS-compliant )
对任何符合FHS文件系统的系统来说,目前的 FHS 文件都是权威的叁考, 但是该标准在许多方面不明确或是可以深入探讨的。 在这一部分中,我们提供该标准的概观和不被该标准包含的文件系统的部份描述。
该标准的完全版本可在这里找到:
http://www.pathname.com/fhs
符合该标准意味着许多,但是最重要的两点是与其他符合该标准的系统保持兼容性和能够以只读的方式挂载/usr 部分(因为它包含一般的可运行的文件并且意谓着不能被使用者改变)。因为/usr 目录被以只读的方式挂载,它一从光盘被安装或从另外的一个机器经由被只能读的 NFS 安装。(Since the /usr directory is mounted read-only, it an be mounted from the CD-ROM or from another machine via a read-only NFS mount.)
FHS 组织
在这里提及的目录和文件是FHS 文件中的一小部分。查看最近的 FHS 文件,以获得更完全的信息。
/dev 目录
/dev 目录包含与系统有关的设备的说明文件(The /dev directory contains file system entries which represent devices that are attached to the system.)。 这些文件是系统进行适当操作的基础(These files are essential for the system to function properly。)
/etc 目录
/etc 目录是为安装到你机器上的配置文件而保留的。 没有二进制文件被放在 /etc 。从前被放在/etc的任何二进制文件现在应该放在 / sbin 或可能放在 /bin。
X11 和 skel 目录是/ etc 目录的子目录:
/etc
|- X11
|- skel
X11 目录是X11 的配置文件,例如XF86Config 文件。 skel 目录放置 "基本的" 使用者的文件,当一个使用者初次被创立的时候用来使用的一个起始点目录(The skel directory is for "skeleton" user files, which are used to populate a home directory when a user is first created。)
/lib 目录
/ lib 目录应该只包含那些运行/ bin 和 /sbin中的二进制文件所需要的库文件。在 root 文件系统里面, 这些共享的库文件对开机和运行指令是非常重要的。
/mnt 目录
/ mnt 目录是为暂时安装的文件系统准备的, 例如光盘和软盘。
/opt 目录
/opt 目录给较大的, 静态的(static)应用软件软件包被储存提供一个区域。
因为软件要避免放置他们的软件包在系统各处(For packages that wish to avoid putting their files throughout the file system),/ opt 在那个软件包的目录之下,提供一个合乎逻辑的和可预期的组织系统。 这给系统管理员在一个特别的软件包里面知道每个文件的作用提供了方便。
举例来说,如果样本名叫sample的软件包装在/opt,那麽它的全部文件会被放置在目录/opt/sample里面,例如 二进制文件放在/opt/sample/bin和帮助文档放在/opt/sample/man里
包含许多不同的子软件包的大软件包, 每完成一个特别的任务,就会去 /opt里面 得到组织它本身的大软件包的标准化的方法(Large packages that encompass many different sub-packages, each of which accomplish a particular task)。这样,我们的sample软件包可能有不同的工具来进入 他们自己的子目录,例如 /opt/sample/tool1 和/opt/sample/tool2,他们都有的自己 bin , man 和其他相似的目录。
/proc 目录
/ proc 目录包含与内核联系的特别的 "文件"。(The /proc directory contains special "files" that either extract information from or send information to the kernel )
由於有大量的数据在里面和这个目录能用来与内核沟通许多方法,我们专门用一个整篇来介绍。 对於较多的信息,请见第 2 章.
/sbin 目录
/ sbin 目录仅能被 root 使用者使用。 / sbin 只是在启动和挂载/usr,系统恢复操作中用到。 FHS描述:
"/ sbin仅作为/bin的补充在开机时用到。在运行之后的任何事 / usr 被知道被发起 ( 当没有问题) 应该被放在/usr/sbin之内。本地系统管理员的二进制文件应该被放在/usr/local/sbin内。"("/sbin typically contains files essential for booting the system in addition to the binaries in /bin. Anything executed after /usr is known to be mounted (when there are no problems) should be placed in /usr/sbin. Local-only system administration binaries should be placed into /usr/local/sbin.")
至少,下面的程序应该是在 /sbin中:
arp, clock,
getty, halt,
init, fdisk,
fsck.*, grub,
ifconfig, lilo,
mkfs.*, mkswap,
reboot, route,
shutdown, swapoff,
swapon, update
/usr 目录
/usr 目录是用来放置能共享访问整个站点的文件(The /usr directory is for files that can be shared across a whole site)。/ usr 目录通常有它自己的结构,而且它应该是只读的。至少,下列各项目录应该是/usr的子目录:
/usr
|- bin
|- dict
|- doc
|- etc
|- games
|- include
|- kerberos
|- lib
|- libexec
|- local
|- sbin
|- share
|- src
|- tmp -> ../var/tmp
|- X11R6
bin 目录包含可运行的文件,dict 包含非 FHS的文档页,/etc包含整个系统的配置文件,/games是为游戏,/include包含 C 头文件, kerberos 包含二进制文件和更多Kerberos(much more for Kerberos),lib 包含链接文件和没被设计成能直接被使用者使用的脚本或 shell的库文件 。libexec 目录包含被其他的程序称为辅助程序的程序, sbin 包含系统管理员的二进制文件( 但那些不在 /sbin中),share 包含不是结构-特效药的文件(contains files that are not architecture-specific), src 是为源程序码, X11R6 是与 X 窗口系统有关的。 (红帽子 Linux 上的 XFree86)
/usr/local 目录
FHS 说:
" /usr/local是为系统管理员安装软件使用的。 当系统软件被升级的时候 , 它需要从被重写。 它可能作为 在一群主机之中可分享的程序和数据, 但是不在 /usr中。"("The /usr/local hierarchy is for use by the system administrator when installing software locally. It needs to be safe from being overwritten when the system software is updated. It may be used for programs and data that are shareable among a group of hosts, but not found in /usr.")
/usr/ local的结构与/usr 目录是相似的。 它有下列各项子目录,作用与 /usr 目录中是相似的:
/usr/local
|- bin
|- doc
|- etc
|- games
|- include
|- lib
|- libexec
|- sbin
|- share
|- src
/var 目录
因为 FHS 要求挂载/usr 为只读,任何程序的日志文件或需要缠绕在线桥上或锁目录应该写在 /var 目录中(any programs that write log files or need spool or lock directories should write them to the /var directory)。 FHS 描述/ var 为:
"...变动数据文件。 这包括卷线桥目录和文件, 管理的和砍伐原木数据 , 和短暂的和暂时的文件。"("...variable data files. This includes spool directories and files, administrative and logging data, and transient and temporary files.")
下面应该是目录 /var的子目录:
/var
|- account
|- arpwatch
|- cache
|- crash
|- db
|- empty
|- ftp
|- gdm
|- kerberos
|- lib
|- local
|- lock
|- log
|- mail -> spool/mail
|- mailman
|- named
|- nis
|- opt
|- preserve
|- run
+- spool
|- anacron
|- at
|- cron
|- fax
|- lpd
|- mqueue
|- news
|- rwho
|- samba
|- slrnpull
|- squid
|- up2date
|- uucp
|- uucppublic
|- vbox
|- voice
|- tmp
|- tux
|- www
|- yp
系统日志例如信息和 lastlog均会被写入 /var/log。 /var/lib/ rpm 目录包含 rpm 系统数据库。 闭锁文件(Lock files)在/var/lock, 通常在目录中为正在使用文件的程序的个别项目(usually in directories particular for the program using the file.)。/ var/spool目录为各种不同的系统有子目录储存数据文件的需要(The /var/spool directory has subdirectories for various systems that need to store data files.) 。
在红帽子 Linux 中的 /usr/ local
在红帽子 Linux 中, 有意的使用 /usr/ local 些微地不同於 FHS所 叙述。FHS 说/usr/local 应该是你储存软件,保证安全的地方,要与系统软件升级独立(The FHS says that /usr/local should be where you store software that is to remain safe from system software upgrades)。因为红帽子升级是安全的------使用 rpm 指令和图形化的软件包管理工具应用程序,你不需要放他们在 /usr/local中来保护文件。 但是,我们推荐你使用 /usr/ local 来放置软件。
举例来说,你从NFS挂载有来自一部名为jake的主机的只读的/ usr。如果有一个软件包或程序你想要安装,但是你没有对jake的写权限,你应该安装它在usr/local之下。稍后,如果你可以使jake的系统管理员安装程序在/ usr,你就能在/usr/local中卸载它。 第12帖
http://www.chinalinuxpub.com/doc/manual/rhl-rg-en-8.0/s1-filesystem-special-file.html
特殊文件的位置
红帽子些微地扩充了 FHS的结构来适应红帽子 Linux 应用的特别文件。
大多数符合红帽子软件包管理器 (rpm) 的文件在 /var/lib/rpm/目录中。 想得到更多关于 rpm资讯,请看官方红帽子 Linux 定制指南中看rpm软件包的管理这一部分 。
/var/spool/up2date/ 目录包含被红帽子升級代理使用的文件 , 包括 rpm的头信息。这个目录通常放置在升级时下载的rpm包。想得到更多的资讯,请访问红帽子网络, https://rhn.redhat.com/
对红帽子 Linux 来说,另外一个特殊位置是 /etc/sysconfig/目录。 这个目录放置多种配置信息。许多在开机时运行的脚本要用到这里面的文件。 请参看第 3 章的 the Section called The /etc/sysconfig/ Directory in Chapter 3部分,来了解这个目录和这些文件在启动过程中的作用。
最后, /initrd/目录里没什么东西。 它是空的, 但是在启动过程期间他是一个临时的挂载点。
警告
不 要因为任何理由删除initrd/ 目录。删除这个目录将会导致你的系统无法启动(Removing this directory will cause your system to fail to boot with a kernel panic error message)。
第13帖
http://www.chinalinuxpub.com/doc/manual/rhl-rg-en-8.0/ch-proc.html
第 2 章. proc 文件系统
Linux 内核有二个主要功能: 当程序与硬件交互的时候(when and how processes interact with these devices),控制它们对计算机上硬件的访问。 /proc/ 目录包含表明内核当前状态层次的特殊文件------允许应用程序和使用者知道内核的状态(allowing applications and users to peer into the kernel's view of the system)。
在 /proc/目录里面,你能发现有价值的很多资讯------系统硬件和现在正在运行的任何程序。 除此之外,在 / proc/ 目录树里面的一些文件能让使用者和应用程序改变内核的配置。
虚拟的文件系统
在 Linux 下,所有的数据都被当成文件。 绝大多数的使用者熟悉二种主要的文件:文本文件和二进制文件。 但是 /proc/ 目录包含另外类型的文件,它们叫做虚拟的文件。 就因为这个理由, /proc/ 时常被称为虚拟文件系统。
这些虚拟的文件有独特的性质。他们大部份在大小方面被列成如零的位元组(Most of them are listed as zero bytes in size)然而当被察看的时候,它能包含很多的信息。 比如,大部份时间和日期设置后会立即反映出目前的时间和日期, 表明他们在不停的变动。
有些虚拟文件,例如 中断,,/proc/meminfo,/proc/mounts, 和 /proc/ 分区提供随时更新的对系统硬件的信息描述。 另外, 像 / proc/ filesystems 和 /proc/sys/ 目录提供系统的配置信息和介面(interfaces)。
为了达到这个目的,包含一个相似主题的资讯的文件被放在虚拟目录和子目录之内。 举例来说,, /proc/ide/包含所有ide硬件的信息。 同样地,程序目录包含每一个系统上正在运行的程序的资讯。
察看虚拟的文件
在 /proc/目录里面使用 cat ,,more, 和less命令,你能立刻访问一些关於系统的大量的资讯。 举例来说,如果你想看你的计算机的CPU是什么型号的,输入 cat/proc/cpuinfo ,你将会看见与下列各项相似的东西:
processor : 0
vendor_id : AuthenticAMD
cpu family : 5
model : 9
model name : AMD-K6(tm) 3D+ Processor
stepping : 1
cpu MHz : 400.919
cache size : 256 KB
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 1
wp : yes
flags : fpu vme de pse tsc msr mce cx8 pge mmx syscall 3dnow k6_mtrr
bogomips : 799.53
当在 /proc/中看不同的虚拟文件的时候, 你将会注意到一些信息是可以理解的但有一些则是天数一般的。 这是那些能从虚拟文件得到数据并将其显示的程序存在的原因。 这样的应用程序例如: lspci , apm, free, 和top。
注意
一些在 / proc/ 目录中的虚拟文件只能由 root 来读。
变更虚拟文件
如同惯例,/ proc/ 目录里面的大部分虚拟文件是只读的。 然而, 一些能用来在内核中调整设置。尤其对/proc/sys/子目录中的文件。
为了要改变虚拟的文件数值,使用 echo 命令和 > 重定向文件的新数值(To change the value of a virtual file, use the echo command and a > symbol to redirect the new value to the file)。 举例来说, 要立即改变你的主机名称,你可以输入:
echo bob.subgenius.com > /proc/sys/kernel/hostname
其他的文件被当作二进制文件或 boolean 开关(Other files act as binary or boolean switches)。 举例来说,如果你键入cat /proc/sys/net/ipv4/ip_forward, 你也将会看见0 或1.0 表示内核不再转寄网络包。使用 echo 指令改变 ip_forward 的数值为 1,你能立刻把包转寄打开(you can immediately turn packet forwarding on。)
提示
过去一直用来改变设置的/ proc/sys/ 子目录中的命令现在在/sbin/sysctl中。要得到更多的资讯关於这个指令, 参见使用 sysctl这一部分(see the Section called Using sysctl)
要得到 /proc/sys/中的可用的一些内核配置文件的清单, 请参见/proc/sys/(.see the Section called /proc/sys/.)
第14帖(1)
http://www.chinalinuxpub.com/doc/manual/rhl-rg-en-8.0/s1-proc-topfiles.html
在 proc 文件系统中最高层次的文件
下面是 /proc/目录中最高层次的一些比较有用的虚拟文件的列表。
注意
在大部份的情形下,在这个部分中列出的文件的内容在你机器上将不会总是相同的。 这是因为很多信息取决于你正在运行红帽子 Linux 的硬件。
/proc/apm
这个文件提供关於高级电源管理 (APM) 的系统状态的资讯并且被 apm 指令使用。 如果没有电池组被连接到 AC 动力源(If the system with no battery is connected to an AC power source), 虚拟的文件看起来类似这个:
1.16 1.2 0x07 0x01 0xff 0x80-1%-1?
在这样的系统上运行 apm- v指令,会有下面的显示:
APM BIOS 1.2 (kernel driver 1.16)
AC on-line, no system battery
对于没有使用电池组的系统, apm只能让计算机处于待机状态。 apm 指令在笔记本电脑上更有用。举例来说,在正在运行红帽子 Linux的笔记本电脑上,运行cat/proc/apm指令,会有下列各项输出:
1.16 1.2 0x03 0x01 0x03 0x09 100%-1?
当这个笔记本电脑拔开它的能源长达几分钟后 ,apm 文件的内容会换成下列相似的东西:
1.16 1.2 0x03 0x00 0x00 0x01 99% 1792 min
用apm- v 指令将得到更有用的数据,例如下列各项:
APM BIOS 1.2 (kernel driver 1.16)
AC off-line, battery status high: 99% (1 day, 5:52)
/proc/cmdline
当它启动的时候 , 这个文件将展现传给内核的叁数。 一个样本 /proc/ cmdline 文件看起来像这样:
ro root=/dev/hda2
这告诉我们内核以只读挂载------(ro)表明------在第一 IDE 设备上的第二分区(/dev/hda2)。
/proc/cpuinfo
这个虚拟的文件识别你的系统用的处理机的类型。 下列各项是输出的一个例子,你会在 /proc/cpuinfo看见:
processor : 0
vendor_id : AuthenticAMD
cpu family : 5
model : 9
model name : AMD-K6(tm) 3D+ Processor
stepping : 1
cpu MHz : 400.919
cache size : 256 KB
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 1
wp : yes
flags : fpu vme de pse tsc msr mce cx8 pge mmx syscall 3dnow k6_mtrr
bogomips : 799.53
processor------提供每个处理器一个识别数字。 如果你只有一个处理器, 你将只会看见 0.
cpu family—简明地告诉你你系统中有的处理器的类型。 如果你的计算机是Intel系列的,在"86"之前的数值加以区分。如果你想了解老机子的信息,例如586,486, 或 386 ,这将非常有用。因为一些 rpm 软件包是为这些特别的结构编译的,这个数值能够让你决定安装哪些软件包。
model name------告诉你处理器的通常名字, 包括它的设计(project name)名字。
CPU MHz —告诉你CPU精确的速度------以MHz为单位,精确到小数点后3位。
cache size—告诉你处理器可用的二级缓存。
Flags------定义有关处理器的许多不同的性质, 例如浮点运算 (FPU) 和处理 MMX 指令能力(the ability to process MMX instructions)。
/proc/devices
这个文件显示正在为内核配置使用的各种不同的字符(the various character)和区块设备。 它不包括模组未被载入内核的设备。 下面是这个虚拟文件一个样本的输出:
Character devices:
1 mem
2 pty
3 ttyp
4 ttyS
5 cua
7 vcs
10 misc
14 sound
29 fb
36 netlink
128 ptm
129 ptm
136 pts
137 pts
162 raw
254 iscsictl
Block devices:
1 ramdisk
2 fd
3 ide0
9 md
22 ide1
/proc/devices的信息包括设备的主要数目和名字,并且被分为二个主要的部分: 字符设备和区块设备(Character devices and Block devices)。
字符设备与区块设备,除了二种基本不同以外,是相似的。
块状设备有一个可用的缓冲区,在处理他们之前允许他们对命令提出请求(allowing them to order requests before dealing with them) 。这对用来存储信息的设备是非常重要的-------比如硬盘------因为在写入设备之前就能够得到信息,这就比单纯的命令更有效(This is important for devices designed to store information — such as hard drives — because the ability to order the information before writing it to the device allows it to be placed in more efficient order)。 字符设备不需要缓冲。
另一个不同是区块设备能在每一设备被配置的区块同样大小中送并且接受信息。 字符设备没用送数据 preconfigured 大小(The other difference is that block devices can send and receive information in blocks of a size configured per device. Character devices send data with no preconfigured size。)
要得到关於设备的更多资讯,请参看 /usr/src/linux-2.4/Documentation/devices.txt 。
/proc/dma
这个文件包含已注册的正在使用中的ISA 直接内存读取 (DMA) 通道的列表。 一个 /proc/ dma 文件看起来像这样:
4: cascade
/proc/execdomains
这个文件列出被 Linux 内核支持的运行网域(execution domains),连同他们支持的其他性质。
0-0 Linux
想象一下,一个特别的操作系统把运行网域当做 "个性" 。 因为其他的二进制格式,例如Solaris , UnixWare 和 FreeBSD,都能被 Linux 使用,程序设计者能改变操作方式,通过变更任务的特性来适合这些二进制的特别系统的需要。 除了 PER_LINUX 运行网域以外,不同的性质也能被实现,如被动态地载入模块。(Think of execution domains as the "personality" for a particular operating system. Because other binary formats, such as Solaris, UnixWare, and FreeBSD, can be used with Linux, programmers can change the way the operating system treats particular system calls from these binaries by changing the personality of the task. Except for the PER_LINUX execution domain, different personalities can be implemented as dynamically loadable modules)
第14帖(2)
http://www.chinalinuxpub.com/doc/manual/rhl-rg-en-8.0/s1-proc-topfiles.html
/proc/fb
这个文件包含架框缓冲区设备的列表,有架框缓冲区设备号码和控制它的驱动器。 包含架框缓冲区设备系统的/ proc/ fb,标准的输出类似这:(This file contains a list of frame buffer devices, with the frame buffer device number and the driver that controls it. Typical output of /proc/fb for systems which contain frame buffer devices looks similar to this: )
0 VESA VGA
/proc/filesystems
这个文件显示现在被内核支持的文件系统类型的列表。来自一般内核的(未被编译的)/proc/ filesystems 文件的输出类似以下:
nodev rootfs
nodev bdev
nodev proc
nodev sockfs
nodev tmpfs
nodev shm
nodev pipefs
ext2
nodev ramfs
iso9660
nodev devpts
ext3
nodev autofs
nodev binfmt_misc
第一栏表明是否文件系统被安装在一个区块设备上。 以nodev开头 的那些不被安装在一个设备上。 第二栏列出被支持的文件系统的名字。
当一个文件系统不被识别,mount命令将会在这些文件系统中循环寻找适合的方式。(The mount command cycles through these file systems when one is not specified as an argument. )
/proc/interrupts
这个文件记录了 x86 结构上的每个 IRQ( 中断请求)中断的数字。 一个标准 /proc/interrupts类似以下:
CPU0
0: 80448940 XT-PICtimer
1: 174412 XT-PICkeyboard
2: 0 XT-PICcascade
8: 1 XT-PICrtc
10: 410964 XT-PICeth0
12: 60330 XT-PICPS/2 Mouse
14: 1314121 XT-PICide0
15: 5195422 XT-PICide1
NMI: 0
ERR: 0
对於一个有多处理器的机器,这个文件可能看起来有些稍微地不同:
CPU0 CPU1
0: 1366814704 0 XT-PICtimer
1: 128 340 IO-APIC-edgekeyboard
2: 0 0 XT-PICcascade
8: 0 1 IO-APIC-edgertc
12: 5323 5793 IO-APIC-edgePS/2 Mouse
13: 1 0 XT-PICfpu
16: 11184294 15940594 IO-APIC-levelIntel EtherExpress Pro 10/100 Ethernet
20: 8450043 11120093 IO-APIC-levelmegaraid
30: 10432 10722 IO-APIC-levelaic7xxx
31: 23 22 IO-APIC-levelaic7xxx
NMI: 0
ERR: 0
第一栏表示IRQ 数字。 每个处理器在系统中有它的自己的栏和它的 IRQ 中断号(Each CPU in the system has its own column and its own number of interrupts per IRQ)。 下个栏报告中断的类型,而且最後一栏包含使用每个 IRQ 的设备名字(The next column reports the type of interrupt, and the last column contains the name of the device that is located at that IRQ)。
在这个文件中被看到的每个中断类型, 都是特殊的, 意即有不同之处(which are architecture-specific, mean something a little different)。 对x86 的机器, 下面的数值是通用的:
XT-PIC 这是老式AT计算机的中断。
IO-APIC-edge—电压讯号从最低值到高度打断过渡,创造edge, 断续发生和只是向曾经发送讯号。 这种断续 , 和 IO-APIC- level断续, 只在 586 系列产品的处理器和更高的系统上被看到(The voltage signal on this interrupt transitions from low to high, creating an edge, where the interrupt occurs and is only signaled once. This kind of interrupt, as well as the IO-APIC-level interrupt, are only seen on systems with processors from the 586 family and higher)。
IO-APIC-level当电压讯号高到讯号再一次低下地去的时候 , 产生中断(Generates interrupts when its voltage signal goes high until the signal goes low again。)
/proc/iomem
这个文件告诉你,目前每个物理设备在系统內存的映像:
00000000-0009fbff : System RAM
0009fc00-0009ffff : reserved
000a0000-000bffff : Video RAM area
000c0000-000c7fff : Video ROM
000f0000-000fffff : System ROM
00100000-07ffffff : System RAM
00100000-00291ba8 : Kernel code
00291ba9-002e09cb : Kernel data
e0000000-e3ffffff : VIA Technologies, Inc. VT82C597
e4000000-e7ffffff : PCI Bus #01
e4000000-e4003fff : Matrox Graphics, Inc. MGA G200 AGP
e5000000-e57fffff : Matrox Graphics, Inc. MGA G200 AGP
e8000000-e8ffffff : PCI Bus #01
e8000000-e8ffffff : Matrox Graphics, Inc. MGA G200 AGP
ea000000-ea00007f : Digital Equipment Corporation DECchip 21140
ea000000-ea00007f : tulip
ffff0000-ffffffff : reserved
(00000000-0009 fbff: 系统随机存取储存器
0009fc00-0009ffff: 保留
000a0000-000bffff: 录像带随机存取储存器区域
000c0000-000c7fff: 录像带只读存储器
000f0000-000fffff: 系统只读存储器
00100000-07 ffffff: 系统随机存取储存器
00100000-00291 ba8: 内核码
00291ba9-002e09cb: 内核数据
e0000000- e3ffffff: 经由技术,公司 VT82C597
e4000000- e7ffffff: PCI 总线 #01
e4000000- e4003fff: Matrox 图形,公司 MGA G200 AGP
e5000000- e57fffff: Matrox 图形,公司 MGA G200 AGP
e8000000- e8ffffff: PCI 总线 #01
e8000000- e8ffffff: Matrox 图形,公司 MGA G200 AGP
ea000000- ea00007f: 数传设备公司 DECchip 21140[ FasterNet]
ea000000- ea00007f: tulip
ffff0000- ffffffff: 保留)
第一栏显示內存被分配成每个不同类型的內存。 第二栏告诉那些内存里面被位于的类型內存(The first column displays the memory registers used by each of the different types of memory. The second column tells the kind of memory located within those registers)。 特别地,这个栏将会告诉你哪一记忆记录器被内核RAM使用或 , 如果你有多个以太网卡在你的 NIC (网络接口)上 , 內存记录器分配作为每个端口(In particular, this column will tell you which memory registers are used by the kernel within the system RAM or, if you have multiple Ethernet ports on your NIC, the memory registers assigned for each port.)。
/proc/ioports
/proc/ ioports的输出提供用与一个设备通信的输入或输出的被注册的端口区域的列表。 这个文件可能相当长, 它的开始与这相似:
0000-001f : dma1
0020-003f : pic1
0040-005f : timer
0060-006f : keyboard
0070-007f : rtc
0080-008f : dma page reg
00a0-00bf : pic2
00c0-00df : dma2
00f0-00ff : fpu
0170-0177 : ide1
01f0-01f7 : ide0
02f8-02ff : serial(auto)
0376-0376 : ide1
03c0-03df : vga+
03f6-03f6 : ide0
03f8-03ff : serial(auto)
0cf8-0cff : PCI conf1
d000-dfff : PCI Bus #01
e000-e00f : VIA Technologies, Inc. Bus Master IDE
e000-e007 : ide0
e008-e00f : ide1
e800-e87f : Digital Equipment Corporation DECchip 21140
e800-e87f : tulip
第一栏给出了为设备保留的 IO 端口地址范围,这些设备在第二栏中列出。
/proc/isapnp
这个文件列出了在系统上的ISA 槽中的即插即用 (PnP) 卡。 这最可能是声卡,但是也可能包括设备的任何数目(This is most often seen with sound cards but may include any number of devices)。若有 Soundblaster ,它的 proc/ isapnp 文件类似这个:
Card 1 'CTL0070:Creative ViBRA16C PnP' PnP version 1.0 Product version 1.0
Logical device 0 'CTL0001:Audio'
Device is not active
Active port 0x220,0x330,0x388
Active IRQ 5
Active DMA 1,5
Resources 0
Priority preferred
Port 0x220-0x220, align 0x0, size 0x10, 16-bit address decoding
Port 0x330-0x330, align 0x0, size 0x2, 16-bit address decoding
Port 0x388-0x3f8, align 0x0, size 0x4, 16-bit address decoding
IRQ 5 High-Edge
DMA 1 8-bit byte-count compatible
DMA 5 16-bit word-count compatible
Alternate resources 0:1
Priority acceptable
Port 0x220-0x280, align 0x1f, size 0x10, 16-bit address decoding
Port 0x300-0x330, align 0x2f, size 0x2, 16-bit address decoding
Port 0x388-0x3f8, align 0x0, size 0x4, 16-bit address decoding
IRQ 5,7,2/9,10 High-Edge
DMA 1,3 8-bit byte-count compatible
DMA 5,7 16-bit word-count compatible
这个文件可能相当长,取决于显示的设备数目和他们的资源需求。
每个卡列出它的名字, PnP 版号和产品版号。 如果设备是活动的和配置过的,这个文件也将会为设备显示端口和 IRQ 数字。 除此之外, 保证更好的兼容性,卡将会指定给不同叁数首选的和可接受的数值(the card will specify preferred and acceptable values for a number of different parameters)。 这里的目标是要允许 PnP 卡在彼此的周围工作并且避免 IRQ 和端口冲突(The goal here is to allow the PnP cards to work around one another and avoid IRQ and port conflicts)。
/proc/kcore
这个文件表现系统的物理內存并被储存成核心文件格式。 不像大部分的/proc/文件,kcore 显示大小。 这个数值用位元组给出并且和实际的內存 (RAM) 的大小加上 4KB相等。
这个文件的内容被设计成由调试器调试, 例如gdb ,它就不是人类的可读(如同天书)。
警告
不要访问 /proc/ kcore 虚拟文件。 文件的内容将会由终端文本输出。如果你偶然地看这个文件,按ctrl+c停止程序,然后输入reset,返回指令行提示。
/proc/kmsg
这个文件用来保持被内核产生的信息。 这些信息然后由其他的程序使用, 例如 /sbin/klogd。
第14帖(3)
http://www.chinalinuxpub.com/doc/manual/rhl-rg-en-8.0/s1-proc-topfiles.html
/proc/ksyms
这个文件支撑动态地被输出被模组工具用的符号定义到的内核联接并且绑载入模组(This file holds the kernel exported symbol definitions used by the module tools to dynamically link and bind loadable modules)。
e003def4 speedo_debug
e003b04c eepro100_init
e00390c0 st_template
e002104c RDINDOOR
e00210a4 callDone
e00226cc megaraid_detect
第一栏列出了用于内核运行的内存位址,第二个栏表示运行功能的名字,而且最後一个栏显示载入模块的名字。
/proc/loadavg
这个文件提供一个显示,处理器在时间上的平均负荷和被 uptime 和其他的指令用的附加数据。 一个/proc/ loadavg 文件类似这:
0.20 0.18 0.12 1/80 11206
前三个栏表明在最後 1,5, 和 10 分钟时间段内对处理器的使用。 第四栏表明正在运行的程序数和程序的总数目。 最後一个栏显示最後一个进程使用的ID号。
/proc/lock
这个文件显示正被内核用的块文件。 这个文件的内容包含内核的调试数据和能够做巨大的改变,取决于对系统的使用。 一个轻负荷系统的 /proc/locks文件类似这:
1: FLOCKADVISORYWRITE 807 03:05:308731 0 EOF c2a260c0 c025aa48 c2a26120
2: POSIXADVISORYWRITE 708 03:05:308720 0 EOF c2a2611c c2a260c4 c025aa48
每个块都有一个由独特数字为开头的行。第二栏表明块的类, FLOCK表明来自一个flock系统呼叫的老式UNIX文件块, POSIX 表明来自一个 lockf 系统呼叫的较新的 POSIX块锁(with FLOCK signifying the older-style UNIX file locks from a flock system call and POSIX representing the newer POSIX locks from the lockf system call。)
第三栏有二个数值。 ADVISORY意谓着该块允许其他的人访问数据;它只避免其他的人来尝试锁定它。 MANDATORY意谓着当块在的时候,他人访问数据不被允许。 第四个栏显示块所有者在访问文件的时候,是否可读或可写 , 第五栏说明拥有块的进程的ID(身份证)。 第六栏表明正被锁的文件的ID,格式如MAJOR-DEVICE:MINOR-DEVICE:INODE-NUMBER.。 第七栏展现文件的块区域的开始和结束。 剩余的栏指出被特殊调试的内核数据结构,它们可以忽略。
/proc/mdstat
这个文件表明多重-磁盘(multiple-disk)目前的信息,RAID配置。 如果你的系统不包含这样的配置, 那麽你的 /proc/ mdstat 文件将会看起来相似以下:
Personalities :
read_ahead not set
unused devices: <none>
在上面的状态中,这个文件将保留,直到你创建软件RAID或 md 设备。 在那种情况下,你能看到 / proc/ mdstat 给你现在正在用的 mdX RAID设备发生的东西拍快照。
下面的 proc/ mdstat 文件显示一个md0 被配置成RAID1设备的一个系统。 它现在与磁盘同步:
Personalities :
read_ahead 1024 sectors
md0: active raid1 sda2 sdb2 9940 blocks resync=1% finish=12.3min
algorithm 2
unused devices: <none>
/proc/meminfo
这在/proc/目录中是更普遍使用的文件之一,例如它报告给系统许多关於目前的RAM(随机存取储存器)用法的有价值的资讯。 有256MB内存和 384MB 交换空间的一个系统的 / proc/ meminfo 文件类似这:
total: used: free:shared: buffers:cached:
Mem:261709824 2534072328302592 0 120745984 48689152
Swap: 402997248 8192 402989056
MemTotal: 255576 kB
MemFree: 8108 kB
MemShared: 0 kB
Buffers: 117916 kB
Cached: 47548 kB
Active: 135300 kB
Inact_dirty: 29276 kB
Inact_clean: 888 kB
Inact_target: 0 kB
HighTotal: 0 kB
HighFree: 0 kB
LowTotal: 255576 kB
LowFree: 8108 kB
SwapTotal: 393552 kB
SwapFree: 393544 kB
这里的很多信息被free, top和 ps 指令引用。 事实上,指令free的输出在内容和结构上都与/proc/meminfo相似。 但是直接地察看 /proc/meminfo,更多的细节被显示:
Mem —显示在系统中内存的目前状态, 包括总共的,使用的,自由的,共享的,缓冲的, 和高速缓冲存储器(cache),它们均以byte表示。
Swap—以byte显示交换空间总共的,使用的,自由的。
MemTotal —物理内存的总数量,以kb为单位。
MemFree —被系统留着未用的物理内存,以kb为单位。
MemShared —不被2.4和更高版本的内核使用的,为与比较早的内核版本保持兼容性而保留。
Buffers—被缓冲文件使用的内存的总数, 以kb为单位。
Cached—被高速缓冲存储器(cache memory)用的内存的总数量, 以kb为单位。
Active—在活跃使用中的缓冲或高速缓冲存储器页面文件的总数量, 以kb为单位。
Inact_dirty —缓冲或高速缓冲存储器页面的总数量, 以kb为单位, 可能是自由的(未使用的)和可利用的。
Inact_clean —缓冲或高速缓冲存储器页面的总数量,以kb为单位,肯定是自由的和可利用的。
Inact_target —平均过一分钟每秒净余量的分配(The net amount of allocations per second),以kb为单位。(Inact_target — The net amount of allocations per second, in kilobytes, averaged over one minute.)
HighTotal 和 HighFree —內存的全体的和自由的量, 分别地,那是间接的在内核空间之内的映射。 HighTotal 数值能改变,基於使用的内核的类型。
LowTotal 和 LowFree —內存的全体的和自由的量,分别地,那是直接的在内核空间之内的映射。 LowTotal 数值能改变,基於使用的内核的类型。
SwapTotal —可用的交换空间的总数量, 以kb为单位。
SwapFree —自由的交换空间的总数量, 以kb为单位。
第14帖(4)
http://www.chinalinuxpub.com/doc/manual/rhl-rg-en-8.0/s1-proc-topfiles.html
/proc/misc
这个文件列出各种的主要设备上被注册的各种驱动,这些设备号码 为10: (This file lists miscellaneous drivers registered on the miscellaneous major device, which is device number 10:)
135 rtc
1 psaux
134 apm_bios
第一栏在是每个设备的较小数目 ,第二栏表明正在使用的驱动器(The first column is the minor number of each device, and the second column shows the driver in use)。
/proc/modules
这个文件显示所有被载入内核的模块的列表。 它的内容可能会改变,取决于你的系统的配置和使用,但是它应该以相似的方式被组织成以下这个样本 /proc/modules文件的输出:
ide-cd 27008 0 (autoclean)
cdrom 28960 0 (autoclean)
soundcore 4100 0 (autoclean)
agpgart 31072 0 (unused)
binfmt_misc 5956 1
iscsi 32672 0 (unused)
scsi_mod 94424 1
autofs 10628 0 (autoclean) (unused)
tulip 48608 1
ext3 60352 2
jbd 39192 2
第一栏包含模块的名字。 第二个栏表明模块占用內存的大小,以b作单位。 第三栏告诉你是否模块现在被载入 (1) 或未被载入 (0)。最后一栏表明模块是否能在没有使用一段时期之後自动地卸货它本身(autoclean),是否它不被利用(unused).所在行列有名字在括号中(象[ or ])任何模块告诉你这个模块依赖另外的模块(Any module with a line containing a name listed in brackets ([ or ]) tells you that this module depends upon another module to be present in order to function)。
/proc/mounts
这个文件简明列出正被系统使用中的所有的挂载点(mounts):
rootfs / rootfs rw 0 0
/dev/hda2 / ext3 rw 0 0
/proc /proc proc rw 0 0
/dev/hda1 /boot ext3 rw 0 0
none /dev/pts devpts rw 0 0
none /dev/shm tmpfs rw 0 0
none /proc/sys/fs/binfmt_misc binfmt_misc rw 0 0
在这里的输出与/ etc/mtab的内容类似, 除了 /proc/mount可能是才更新的。
第一栏指明被挂载的设备,第二个栏显示挂载点( mountpoint)。第三个栏告诉文件系统类型,第四个栏告诉你是否它被挂载成只读 (ro) 或可读可写(rw)。 第五栏和第六栏是虚拟数值,它们被设计成与/etc/mtab的格式匹配。
/proc/mtrr
这个文件表明在使用中的系统目前內存范围记录器 (MTRRs) 。 如果你系统的结构支持 MTRRs,你的 mtrr 可能看起来相似以下(This file refers to the current Memory Type Range Registers (MTRRs) in use with the system. If your system's architecture supports MTRRs, your mtrr might look something like this:):
reg00: base=0x00000000 ( 0MB), size=64MB: write-back, count=1
MTRRs 与intel P6系列处理器 (Pentium 2 和更高的)一同使用,而且他们被用来控制处理器访问內存的范围。 当使用 PCI 或 AGP 插槽上的显卡的时候, 适当地配置 / proc/ mtrr 文件能获得超过 150% 的性能.
大部份时间,这个数值会为你适当地配置。要得到更多有关MTRRs的资讯和手动配置这个文件,请看 http://web1.linuxhq.com/kernel/v2.3/doc/mtrr.txt.html。
/proc/ partitions
除了下列各项以外,这里的大部份信息对使用者来说不太重要:
major—设备的主要数目。 主要的数目在我们的例子 (3) 中用区块设备 ide0 符合在 /proc/ devices(major — The major number of the device with this partition. The major number in our example (3) corresponds with the block device ide0 in /proc/devices。)
minor—设备的较小数目。 这服侍在~结束的时候分割的名字分开分割进不同的实际设备之内并且与~有关数目。(minor — The minor number of the device with this partition. This serves to separate the partitions into different physical devices and relates to the number at the end of the name of the partition )
# blocks—列表被包含在特别的分割实际的磁盘区块的数目(#blocks — Lists the number of physical disk blocks contained in a particular partition。)
name—分割的名字(name — The name of the partition)。
/proc/pci
这个文件包含你系统上的每个 PCI 设备的一个完整的列表。取决于你有的 PCI 设备的数目,/proc/ pci 能相当长。 来自一个基本系统上的这个文件的一个例子看起来相似这:
Bus0, device 0, function0:
Host bridge: Intel Corporation 440BX/ZX - 82443BX/ZX Host bridge (rev 3).
Master Capable.Latency=64.
Prefetchable 32 bit memory at 0xe4000000 .
Bus0, device 1, function0:
PCI bridge: Intel Corporation 440BX/ZX - 82443BX/ZX AGP bridge (rev 3).
Master Capable.Latency=64.Min Gnt=128.
Bus0, device 4, function0:
ISA bridge: Intel Corporation 82371AB PIIX4 ISA (rev 2).
Bus0, device 4, function1:
IDE interface: Intel Corporation 82371AB PIIX4 IDE (rev 1).
Master Capable.Latency=32.
I/O at 0xd800 .
Bus0, device 4, function2:
USB Controller: Intel Corporation 82371AB PIIX4 USB (rev 1).
IRQ 5.
Master Capable.Latency=32.
I/O at 0xd400 .
Bus0, device 4, function3:
Bridge: Intel Corporation 82371AB PIIX4 ACPI (rev 2).
IRQ 9.
Bus0, device 9, function0:
Ethernet controller: Lite-On Communications Inc LNE100TX (rev 33).
IRQ 5.
Master Capable.Latency=32.
I/O at 0xd000 .
Non-prefetchable 32 bit memory at 0xe3000000 .
Bus0, device12, function0:
VGA compatible controller: S3 Inc. ViRGE/DX or /GX (rev 1).
IRQ 11.
Master Capable.Latency=32.Min Gnt=4.Max Lat=255.
Non-prefetchable 32 bit memory at 0xdc000000 .
这个输出展现所有 PCI 设备的列表,以总线,设备,功能来分类(sorted in the order of bus, device, and function)。 不仅仅提供设备的名字和版本 , 这个列表也给你IRQ的详细说明信息,你能很快地找出冲突。
提示
要得到这个信息的一个更可读的版本,输入:
lspci -vb
/proc/slabinfo
这个文件给片层次上的关於~的资讯內存用法(This file gives information about memory usage on the slab level)。Linux2.2及更高的内核都用slab pools在页层次上面来管理內存。 普遍用物件有他们的自己片池(Commonly used objects have their own slab pools.)。 下列各项是典型的 /proc/ slabinfo 虚拟文件的部分:
slabinfo - version: 1.1
kmem_cache 64 68 112 2 2 1
nfs_write_data 0 0 384 0 0 1
nfs_read_data 0 160 384 0 16 1
nfs_page 0 200 96 0 5 1
ip_fib_hash 10 113 32 1 1 1
journal_head 51 7020 48 2 90 1
revoke_table 2 253 12 1 1 1
revoke_record 0 0 32 0 0 1
clip_arp_cache 0 0 128 0 0 1
ip_mrt_cache 0 0 96 0 0 1
这个文件中的数值以下列顺序出现: cache名字,活跃的链接(objects)数目,总链接的数目,链接的大小数目,链接的活跃片 (区块) 的数目,链接的片总数和每片页数(The values in this file occur in the following order: cache name, number of active objects, number of total objects, size of the object, number of active slabs (blocks) of the objects, total number of slabs of the objects, and the number of pages per slab)。
注意活跃在这种情况下意谓着一个链接是在使用中。 因此一个活跃的链接是在使用中的,而一个活跃的片是包含一个或更多活跃的链接。
/proc/stat
它记录着自最近开机之後,有关系统的各种不同的数据。 /proc/stat的内容 /proc/stat, 可能相当长,其开始部分与以下相似:
cpu1139111 3689 234449 84378914
cpu0 1139111 3689 234449 84378914
page 2675248 8567956
swap 10022 19226
intr 93326523 85756163 174412 0 3 3 0 6 0 1 0 428620 0 60330 0 1368304 5538681
disk_io: (3,0):(1408049,445601,5349480,962448,17135856)
ctxt 27269477
btime 886490134
processes 206458
一些比较常见的统计数据包括:
CPU—以 jiffies(一秒的 1/100)为单位衡量------在以下各种模式下------用户模式,低优先级用户模式(nice), 系统模式 , 和空闲任务。 在顶端给出了所有的CPU的总数,每个CPU在下面又有它自己的数据列表。
page—內存页的数目系统的页数有写在和在外到磁盘(page — The number of memory pages the system has written in and out to disk)。
swap—swap页的数目系统有引进 和在外(swap — The number of swap pages the system has brought in and out)。
intr —系统有经历的中断数目(intr — The number of interrupts the system has experienced)。
btime —启动时间,从 1970 年1月 1 日起以秒计算, 以公元纪年。
/proc/swaps
这个文件测量交换空间和它的利用。 对一个系统来说,只有唯一的一个swap分区, /proc/swap的输出可能看起来类似以下:
Filename Type Size Used Priority
/dev/hda6 partition13651220024-1
虽然一些信息能在/proc/目录中的其他文件看到,/proc/swap提供一个快照-------每个交换文件名,交换空间的类型,总大小和正在使用中的空间数量(以kb作单位)。 当很多交换文件在使用中的时候 , 前面几栏是有用的。优先级越低,交换文件越可能将要被使用(The lower the priority, the more likely the swap file is to be used)。
/proc/uptime
这个文件表明自开机以来共运行了多长时间。 / proc/ uptime的输出 相当短:
350735.47 234388.90
第一个数字告诉你计算机运行的总秒数。 第二个数字告诉你有多少秒机器是空闲的。
/proc/version
这个文件告诉你 Linux 内核和 gcc 的版本, 和红帽子 Linux 的版本:
Linux version 2.4.18-0.40 ([email protected])(gcc version 2.96 20000731
(Red Hat Linux 7.2 2.96-102)) #1 Tue May 28 04:28:05 EDT 2002
这个信息在多处用到。当一个使用者登录的时候 , 版本数据会显现出来。 《RedHat参考指南》(The Official Red Hat Linux Reference Guide)中文版(本人翻译)
邮箱:[email protected]
qq:271009278
发送请求为linux,我就会加你为好友的。
严复提的标准是“信,达,雅”.水平有限,只有在直译的基础上,适当意译。
希望广大网友能够与我共同探讨。
译文中有括号中有英文的,均是本人拿不准或译不出的地方,望大家提意见。
这次译的是
第15帖(1)
http://www.chinalinuxpub.com/doc/manual/rhl-rg-en-8.0/s1-proc-directories.html
通常有关内核的大量的信息被放置在/proc/的目录和子目录中。
进程目录(Process Directories)
每个/proc/ 目录包含许多目录名。 一个列表可能类似这个:
dr-xr-xr-x 3 root root 0 Feb 13 01:28 1
dr-xr-xr-x 3 root root 0 Feb 13 01:28 1010
dr-xr-xr-x 3 xfs xfs 0 Feb 13 01:28 1087
dr-xr-xr-x 3 daemon daemon 0 Feb 13 01:28 1123
dr-xr-xr-x 3 root root 0 Feb 13 01:28 11307
dr-xr-xr-x 3 apache apache 0 Feb 13 01:28 13660
dr-xr-xr-x 3 rpc rpc 0 Feb 13 01:28 637
dr-xr-xr-x 3 rpcuserrpcuser 0 Feb 13 01:28 666
这些目录叫做进程目录,因为他们以进程的ID命名且包含进程的详细信息。当使用者运行程序时,在进程目录中对所有者和组的设定都会起作用。 当进程被结束的时候, 它的 /proc/进程目录将消失。
每个进程目录包含以下文件:
cmdline —这个文件包含启动进程发出的命令。
CPU—提供对系统的每个处理器的利用的详细资讯。 在一个双处理器系统上运行某程序会有类似以下的输出:
cpu11 3
cpu0 0 0
cpu1 11 3
cwd —一 链接到程序当前工作目录(A symlink to the current working directory for the process.)。
environ—为程序给出环境变量的列表。环境变数被屈服所有的大写字符,而且数值是在小写(铅字) 字符中(The environment variable is given in all upper-case characters, and the value is in lower-case characters)。
exe —一链接到可运行的程序。
fd —一该目录包含进程的所有描述文件。 他们象以下:
total 0
lrwx------ 1 root root 64 May8 11:31 0 -> /dev/null
lrwx------ 1 root root 64 May8 11:31 1 -> /dev/null
lrwx------ 1 root root 64 May8 11:31 2 -> /dev/null
lrwx------ 1 root root 64 May8 11:31 3 -> /dev/ptmx
lrwx------ 1 root root 64 May8 11:31 4 -> socket:
lrwx------ 1 root root 64 May8 11:31 5 -> /dev/ptmx
lrwx------ 1 root root 64 May8 11:31 6 -> socket:
lrwx------ 1 root root 64 May8 11:31 7 -> /dev/ptmx
maps—包含与进程有关的各种的可执行文件和库文件的內存映像。 这个文件可能相当长, 取决于程序是否复杂, sshd 进程的输出的开始像这一样:
08048000-08086000 r-xp 00000000 03:03 391479 /usr/sbin/sshd
08086000-08088000 rw-p 0003e000 03:03 391479 /usr/sbin/sshd
08088000-08095000 rwxp 00000000 00:00 0
40000000-40013000 r-xp 00000000 03:03 293205 /lib/ld-2.2.5.so
40013000-40014000 rw-p 00013000 03:03 293205 /lib/ld-2.2.5.so
40031000-40038000 r-xp 00000000 03:03 293282 /lib/libpam.so.0.75
40038000-40039000 rw-p 00006000 03:03 293282 /lib/libpam.so.0.75
40039000-4003a000 rw-p 00000000 00:00 0
4003a000-4003c000 r-xp 00000000 03:03 293218 /lib/libdl-2.2.5.so
4003c000-4003d000 rw-p 00001000 03:03 293218 /lib/libdl-2.2.5.so
mem —被程序占用的內存。 这个文件不能被使用者读取。
Root-----进程到root目录的链接。
Stat—程序的状态。
statm —被进程使用的內存的状态。下面是/proc/ statm 文件的一个样本:
263 210 210 5 0 205 0
七栏针对不同的方面对程序占用內存做出统计。 从左到右,他们依次是下列各个方面:
总程序大小, 用kb作单位
內存的大小分配, 用kb作单位
共享的页数目
页数是编码(Number of pages are code )
数据/ 堆叠的页数(Number of pages of data/stack)
库文件的页数(Number of pages of library)
脏页数(Number of dirty pages) 了不起! 好,干的不错!
明天,也把我翻译的小文章放上来! 顶 :-D 是很厉害, 我要向你学习... 《RedHat参考指南》(The Official Red Hat Linux Reference Guide)中文版(本人翻译)
邮箱:[email protected]
qq:271009278
发送请求为linux,我就会加你为好友的。
严复提的标准是“信,达,雅”.水平有限,只有在直译的基础上,适当意译。
希望广大网友能够与我共同探讨。
译文中有括号中有英文的,均是本人拿不准或译不出的地方,望大家提意见。
这次译的是
第15帖(2)
http://www.chinalinuxpub.com/doc/ma...irectories.html
status—进程的状态------比stat或 statm更易读。 进程 sshd 输出类似以下:
Name: sshd
State: S (sleeping)
Tgid: 797
Pid: 797
PPid: 1
TracerPid: 0
Uid: 0 0 0 0
Gid: 0 0 0 0
FDSize: 32
Groups:
VmSize: 3072 kB
VmLck: 0 kB
VmRSS: 840 kB
VmData: 104 kB
VmStk: 12 kB
VmExe: 300 kB
VmLib: 2528 kB
SigPnd: 0000000000000000
SigBlk: 0000000000000000
SigIgn: 8000000000001000
SigCgt: 0000000000014005
CapInh: 0000000000000000
CapPrm: 00000000fffffeff
CapEff: 00000000fffffeff
除此之外进程的ID和名字,进程的状态 ( 例如 S(sleeping睡眠) 或 R(running正在运行中的) 和所有者/ 组ID是可以看到的, 还有关于內存使用的更多详细的数据。
/proc/self/
/proc/self/目录是到现在正在运行中的程序一个联结。 这允许程序查看它本身而不必知道它自己的进程ID。
在 shell (命令行)环境里面,/proc/self/ 目录的一个列表提供与进程目录相同的内容。
/proc/bus/
这个目录包含在系统上的各种不同的总线的信息。举例来说,在一个包含 ISA , PCI ,和usb总线的标准系统上,每一个关于这些总线的目前数据在 / proc/bus/之下的它的目录中是可用的。
子目录和文件的内容随着你的系统配置上的改变而改变。 然而,每一个目录为每总线类型至少为那个型的每个总线有一个目录(each of the directories for each of the bus types has at least one directory for each bus of that type)。 这些独立的总线目录,通常由数目标示, 例如 00,包含在那个总线上可用的设备的各种不同的二进制文件。
因此,举例来说, 一个有usb总线而没有usb设备的系统的 /proc/bus/usb/ 目录包含以下一些文件:
total 0
dr-xr-xr-x 1 root root 0 May 3 16:25 001
-r--r--r-- 1 root root 0 May 3 16:25 devices
-r--r--r-- 1 root root 0 May 3 16:25 drivers
/proc/bus/usb/目录包含记录usb总线上的各种不同的设备的运行轨迹的文件,驱动器必需使用他们(The /proc/bus/usb/ directory contains files that track the various devices on any USB buses, as well as the drivers required to use them)。 /proc/bus/usb/001/目录包含第一个usb总线上的所有设备。 从看设备的内容文件,你能识别主板上的usb总线 root 集线器(you can identify the USB root hub on the motherboard:):
T: Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2
B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0
D: Ver= 1.00 Cls=09(hub ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=0000 ProdID=0000 Rev= 0.00
S: Product=USB UHCI Root Hub
S: SerialNumber=d400
C:* #Ifs= 1 Cfg#= 1 Atr=40 MxPwr= 0mA
I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
E: Ad=81(I) Atr=03(Int.) MxPS= 8 Ivl=255ms
/proc/driver/
这个目录包含被内核使用的各种驱动的信息。
在这里一个通常的文件是 rtc,提供来自驱动器因为系统的即时克拉克 (RTC) 的输出,保存时间的设备而系统是断接(A common file found here is rtc, which provides output from the driver for the system's Real Time Clock (RTC), the device that keeps the time while the system is switched off)。 /proc/driver/ rtc的输出看起来像这一样:
rtc_time : 01:38:43
rtc_date : 1998-02-13
rtc_epoch : 1900
alarm : 00:00:00
DST_enable : no
BCD : yes
24hr : yes
square_wave : no
alarm_IRQ : no
update_IRQ : no
periodic_IRQ : no
periodic_freq : 1024
batt_status : okay
想得到更多关於RTC的资讯,访问 /usr/src/linux-2.4/Documentation/rtc.txt。
/proc/ fs
这个目录显示哪一个文件系统被输出。 如果你正在运行一个 NFS 服务器,你能键入 cat /proc/fs/nfs/exports,可以看到正被共享的文件系统和允许那些文件系统的许可。 对於更多的用NFS共享文件系统,请看第 17 章.
/proc/ide/
这个目录保存着系统上IDE 设备的资讯。 每个 IDE 通道都有一个独立的目录, 例如 /proc/ide/ ide0 和 /proc/ide/ide1。 除此之外,驱动也是可以利用的,它们提供在 IDE通道上用的各种不同的驱动的版本号:
ide-cdrom version 4.59
ide-floppy version 0.97
ide-disk version 1.10 告广大linux同人
明天就放寒假了,也要回家了。从2003年12月中旬我开始的翻译的工作(《RedHat参考指南》(The Official Red Hat Linux Reference Guide)中文版(本人翻译))因各种原因要停一段时间了。不过我过年后一定尽快译完。现在的计划是在2004年3月末完工,然后好好为2004年的CPA考试作准备。
我译这篇文档的初衷一是锻炼运用英语的能力,二是申报学校的科技项目。所以我肯定会尽量把它做好。当然也希望大家承认这是我的原创,不然学校认为我在抄袭,申报科技项目就泡汤了。(笑)
目前我在以下四个地方同步发表该文档
⑴ Linuxsir [黄嘴企鹅论坛]Linux 综合讨论区的Linux 专业英文精品技术文档专题 http://www.linuxsir.org/bbs/forumdisplay.php?s=&daysprune=&forumid=67&x=7&y=6
⑵Linuxsir [黄嘴企鹅论坛]Linux 发行版讨论区Linux 发行版Redhat/Fedora专题 http://www.linuxsir.org/bbs/forumdisplay.php?s=&daysprune=&forumid=40&x=14&y=11
⑶Linuxsir [黄嘴企鹅论坛]Linux 软件应用讨论区Linux 软件专题讨论 http://www.linuxsir.org/bbs/forumdisplay.php?s=&daysprune=1000&forumid=28
⑷ 中国Linux公社论坛 首页 -> 翻译汉化 http://www.linuxfans.org/nuke/modules.php?name=Forums&file=viewforum&f=43
只要承认该文档是我的原创,大家可以到处发帖,与更多的爱好者们分享。
在近一个月里,感谢很多人对我的支持。如网友 waynef等,还有很多人与我通过QQ和E-mail讨论,感谢大家。
我是用金山快译先译个初稿,再根据自己的理解逐句再译一遍。大家用过金山快译的都知道,译的效果很一般,加之我的认识有限,必然会有很多值得商榷的地方,要做到“信,达,雅”实在是太难了,不然杨绛先生不会倾十年心血译《三剑客》,所以欢迎大家批评指正,知识性的错误,语法错误,不符合汉语习惯等都可以提出,可以在QQ里发离线消息,跟帖,发邮件都可以,我一定认真对待。
再之,我经常在论坛看见有人提问,如何看内存信息,如何看CPU信息,(当然我的意思不是说大家不该问),其实在这个RedHat参考指南里都有详细的说明(本人绝非王婆卖瓜,自卖自夸,大家可以看/proc这一部分)。这也是我译的意义所在。正如大家看到一个典故不知从何而来,最根本最可靠的办法是查《词源》《词海》这一类工具书,而不是问这个问那个。相信大家有搞程序设计的吧,遇到问题时都是好好研究API!大家要对WINDOWS有个深入的了解,研究微软出的书是很有必要的吧。最近我看了CISCO出的技术红皮书,就对网络方面有了新的认识。希望大家好好研究官方的资料,大有裨益。不可否认,官方资料也有缺陷,但你没研究它之前,你知道那里有缺陷?这总比自己关起门来研究自己的个人技术强吧!
欢迎大家与我共同讨论。
页:
[1]