位置:海鸟网 > IT > linux/Unix >

实时管理Linux-使用/proc文件系统来控制系统

/proc 文件系统是 Linux 的优秀特性之一,本文向您详细讲述了它的一些最实用的基础知识。使用 /proc,您再也不用关闭并重新引导机器来管理操作系统的许多细节问题,这对那些要求系统的可用性尽可能高的管理员来说非常有用。
任何管理过具有商业重要性的系统的人都知道器配置,然后重新装入 Apache
除去不需要的 inetd 登录服务
操作网络设置
通过 NFS 导出新的文件系统
启动/停止防火墙

首先,常见的方法是,直接通过 /etc/init.d 中的脚本来操作系统服务。这些脚本用参数来操作它们所控制的服务;可以通过输入脚本名但不带任何参数这种方法来查看有哪些有效的选项。常见的参数有:

start:启动已停止的服务
stop:停止正在运行的服务
restart:停止正在运行的服务,然后再重启该服务;它将启动已停止的服务
reload:在不中断任何连接的情况下,重新装入服务配置
status:报告服务处于运行状态,还是停止状态

例如,下面这条命令将在不终止任何已连接的用户会话的情形下,重新装入 xinetd 配置(如果您更改了 /etc/xinetd.conf,那么这条命令很有用):

/etc/init.d/xinetd reload

Red Hat 提供了 service 这条命令,它可以为您操作服务。service 命令提供的功能与输入脚本名本身的功能一样。它的语法如下所示:

service script-name [parameter]

例如:

service xinetd reload

SuSE 也提供名为 rc 的命令。该命令类似于上面的 service 命令,但该命令与脚本名之间没有空格。它的语法如下所示:

rc{script-name} parameter

例如:

rcapache start

与更改内核参数类似,一旦重新引导系统,则对这些服务的更改将会丢失。现在越来越多的分发版开始采用 chkconfig 命令,它管理在各种运行级别下(包括引导时)启动的服务。在撰写本文时,chkconfig 命令的语法会因 Linux 版本的不同而略有差异,不过如果输入不带任何参数的命令 chkconfig,则会显示一个如何使用该命令的列表。也可以通过 chkconfig(8) 的联机帮助页找到更多有关 chkconfig 的信息。

结束语
使用 /proc 文件系统实时配置 Linux 内核不是一件轻松的事情,然而一旦了解了该文件系统的结构,以及掌握了如何操作各种文件和参数,则您就拥有了一个功能强大的工具,使您的服务器在任何时候都可用。

致谢
我十分感谢 Adrian Fewings 先生对本文的校对。

参考资料

在 Linux Kernel Archives 网页上下载 Linux 内核,或者参与有关 Linux 内核方面的事情,或者仅仅了解 Linux 内核方面的信息。


请参阅安装内核源代码的“Documentation”目录中有关内核的文档。


了解来自 Linux Gazette 的关于 /proc 虚拟文件系统的更多信息。


请阅读 sysctl(8) 和 sysctl.conf(8) 的联机帮助页。


在 Linux Documentation Project 主页上,可以找到更多 Linux 文档。


有关硬件问题方面的故障诊断指南,请阅读“ Linux 硬件稳定性指南,第 1 部分 ”(developerWorks,2001 年 3 月)和“Linux 硬件稳定性指南,第 2 部分”(developerWorks,2001 年 7 月)。


“理解 Linux 配置文件”(developerWorks,2001 年 12 月)概述了控制许可权、系统应用程序、守护程序和其它方面的配置文件。


“配置和编译内核”(developerWorks,2002 年 5 月)这篇文章一步一步地向您讲述了从源代码编译 Linux 内核的基本任务。


如果您想了解,“高可用性”对于大型机意味着什么,则请阅读 IBM Redpaper“Linux on IBM zSeries and S/390: High Availability for z/VM and Linux”。


在 developerWorks Linux 专区查找更多有关针对 Linux 开发者的参考资料。


关于作者
Graham 于 2000 年 7 月获得了 Exeter 大学计算机科学和管理科学的理学士学位(荣誉)。在毫无一点经验的情况下,他于 2000 年 9 月加入了 IBM,从事 IT 支持工作,并且开始学习 Linux。一年后,于 2001 年 9 月,他获得了 Red Hat 认证工程师。他所从事的工作和个人爱好使他具备了在各个平台上运行各种版本的 Linux 的经历,来支持 IBM 位于英国的 Hursley Laboratory 的开发社区。最近,他已经撰写了一些关于 Linux 方面的文章,他的第一部也是唯一的一部出版物被收录在 Linux Documentation Project 的指南中。可以通过 gwhite at uk.ibm.com 与 Graham 联系。