本书是作者继UNI管理技术领域的经典著UNIX System Administratoin Handbook(《UNIX系统管理技术手册》)之后,专为Linux写的最新版本。几位作者继续保持了一贯的写作风格,仍然把Linux系统管理技术分为三个方面分别介绍。第一部分“基本管理技术”人面介绍了运行单机Linux系统涉及到的各种管理知识和技术,如系统引导和关机、进程控制、文件系统管理、用户管理、设备管理、系统备份、驱动程序和内核的配置以及cron和系统日志的管理使用等。第二部分“网络管理技术”从详细阐述TCP/IP协议基本原理开始,深入讨论了网络的两大基本应用——域名系统和路由技术,然后逐章讲解Linux上的各种Internet关键应用,如sendmail、NFS、Web主机托管,在这部分里还有专门的章节介绍网络硬件、网络管理与调试和系统安全。第三部分“其他管理技术”包括了多种不容忽视的重要主题:Linux软件包的安装和定制、打印系统、系统维护与环境、性能分析、Windows问题的处理、系统守护进程以及政策与行政管理方面的知识等。
第一部分 基本管理技术\r\n 第1章 从何处入手\r\n 1.1 读者的知识背景\r\n 1.2 Linux同UNIX的关系\r\n 1.3 Linux和UNIX的历史\r\n 1.4 Linux的发行版本\r\n 1.5 表示法和印刷约定\r\n 1.6 从哪里获得信息\r\n 1.7 如何找到和安装软件\r\n 1.8 系统管理员的基本任务\r\n 1.9 重压下的系统管理员\r\n 1.10 推荐读物\r\n 1.11 习题\r\n 第2章 引导和关机\r\n 2.1 引导\r\n 2.2 引导PC\r\n 2.3 引导加载程序:LILO和GRUB\r\n 2.4 引导单用户模式\r\n 2.5 启动脚本\r\n 2.6 重新引导和关机\r\n 2.7 习题\r\n 第3章 超级用户的权力\r\n 3.1 文件和进程的归属关系\r\n 3.2 超级用户\r\n 3.3 选择root的口令\r\n 3.4 成为root用户\r\n 3.5 其他的伪用户\r\n 3.6 习题\r\n 第4章 进程控制\r\n 4.1 进程的组成部分\r\n 4.2 进程的生命周期\r\n 4.3 信号\r\n 4.4 KILL和KILLALL:发送信号\r\n 4.5 进程的状态\r\n 4.6 nice和renice:影响调度优先级\r\n 4.7 PS:监视进程\r\n 4.8 TOP:更好地监视进程\r\n 4.9 失控进程\r\n 4.10 习题\r\n 第5章 文件系统\r\n 5.1 路径名称\r\n 5.2 安装和卸载文件系统\r\n 5.3 文件树的组织\r\n 5.4 文件类型\r\n 5.5 文件属性\r\n 5.6 习题\r\n 第6章 添加新用户\r\n 6.1 /etc/passwd文件\r\n 6.2 /etc/shadow文件\r\n 6.3 /etc/group文件\r\n 6.4 添加用户\r\n 6.5 删除用户\r\n 6.6 禁止登录\r\n 6.7 账号管理工具\r\n 6.8 习题\r\n 第7章 串行设备\r\n 第8章 增加硬盘\r\n 第9章 周期性进程\r\n 第10章 备份\r\n 第11章 系统日志与日志文件\r\n 第12章 驱动程序和内核\r\n第二部分 网络管理技术\r\n 第13章 TCP/IP网络\r\n 第14章 路由\r\n 第15章 网络硬件\r\n 第16章 域名系统\r\n 第17章 网络文件系统\r\n 第18章 共享系统文件\r\n 第19章 电子邮件\r\n 第20章 网络管理和调试\r\n 第21章 安全\r\n 第22章 Web主机托管和Internet服务器\r\n第三部分 其他管理技术\r\n 第23章 软件安装和本地化\r\n 第24章 打印\r\n 第25章 维护与环境\r\n 第26章 性能分析\r\n 第27章 同Windows操作\r\n 第28章 守护进程\r\n 第29章 政策与策略
如同Linux和UNIX之间有着千丝万缕难以割舍的密切联系一样, Linux Administration Handbook(LAH, 《Linux系统管理技术手册》)和UNIX System Administration Handbook(USAH, 《UNIX系统管理技术手册》)之
间也有着密不可分的历史传承关系.
由EviNemeth教授主持编纂的USAH一书, 在1988年首次出版之后的十多年里长盛不衰, 一直是UNIX系统管理员所必备的案头经典. 这一方面因为几位作者分别来自于学术界. 企业界和技术培训领域, 他们的共同努力造就了本书文笔隽永流畅. 内容丰富翔实. 技术分析准确深入. 说明举例实用性强的突出特色:另一方面也要归功于作者紧跟UNIX操作系统持续演化进步和Internet迅猛发展的时代脚步, 在1998和2000年分别对其进行了两次修订再版, 陆续扩充包含了Internet网络技术和Linux/FreeBSD系统方面的最新进展, 以此及时准确地反映出UNIX系统管理领域内不断推陈出新的技术和变化.
当历史跨入21世纪之际, Linux操作系统从UNIX环境里孕育发芽, 由聚集在GNU旗下千百万hacker们无私呵护和培养, 在经历了长达十年的磨砺之后, 已经遍布世界各地, 渗透到千万人的生活之中. 从小到人们口袋里的PDA, 大到科学实验室里的超级计算机, 从人们热爱的科幻特级效果, 到面向全球服务的电子商务平台, 在形形色色的应用背后, 无不涌动着Linux急速前行的身影. 或许这就是Linux时代到来的序曲.
Linux之父Linus Torvalds在给本书作序时的自豪之情溢于言表——“它正在迅速成为世界的标准, 人们会拿别的UNIX版本和这个标准做比较, 而且还不一定能比得上!”的确, 这就是当今乃至可以预见的未来, Linux发展的真实写照. 专门一本Linux Administration Handbook(《Linux系统管理技术手册》)的推出, 从一个侧面宣告了Linux操作系统在当今计算机领域内重要地位.
随着Linux系统应用的逐步普及和深入, Linux系统所担负的任务也更加关键和重要, Linux系统管理工作涉及面广, 问题变化多端, 技术知识更新迅速, 对系统管理员知识和技能的要求也越来越高. Linux系统管理再也不是无足轻重的工作, 也无法再由一般人员甚至程序员来兼顾, 而是一个专业性很强的领域, 其中还不乏管理. 行政. 伦理. 司法等非技术领域方面的内容. Linux系统管理领域内职业认证体系的建立, 以及业内对系统管理员职位的高标准严要求, 都清楚地反映出了这方面的变化.
笔者从事基于UNIX/Linux系统的研发经历中, 三版USAH相继成为笔者案头必备的参考资料之一, 而且笔者还参与了其中译本的撰稿和审校工作. 所以当看到凝结着EviNemeth等人多年经验和心血的LAH一书时, 又再次被该书厚达千页的内容深深吸引住了, 这也使得翻译本书成为了一件颇有趣味的事情.
本书的内容丝毫不是man手册的复述, 或是命令说明的堆砌, 而是几位作者数十年的学识和经验的深层提炼, 其最大的特点就是能够让读者不但“知其然”而且“知其所以然”. 这使得本书既适合作为Linux初学者入门的辅导书, 又是专业人员在工作中间随时查阅和研习的好参考. 先后阅读这几版图书, 使得笔者颇有“学而时习之, 不亦乐乎”之感. 相信读者也会有类似的心得.
在翻译过程中, 笔者力求使得译文能够准确反映原文的含义和意图, 对于文中个别有晦涩技术背景的地方加入了一些辅助性的注释, 以帮助读者更好地领会原文的含义. 但限于水平, 笔者的工作中必定存有失误和遗漏之处, 欢迎广大读者朋友不吝赐教. 笔者的联系地址为清华大学网络中心, email地址为hzhang@cernet.edu.cn.
笔者最后感谢人民邮电出版社的编辑同志, 本书的顺利出版也是他们的辛勤工作和热情支持的结果.
张辉
2003年9月
Evi Nemeth已经从科罗拉多大学计算机科学系教师的岗位上退休了,但是她仍然在参与CAIDA的网络研究工作。她现在正坐在自己的新玩具——40英尺的Wonderland号帆船——上遨游加勒比海呢。
在计算技术的世界里, Linux是一种相当新的操作系统. 诞生于20世纪90年代初期的这个操作系统, 从开放源代码界得到了广泛的关注和支持. 从许多方面来看, Linux已经开始表现出与另一个以Microsoft为中心的世界相抗衡的实力.
尽管Linux取得了许多成就, 但它仍然需要为“生产计算技术(production computing)”界所彻底接受才行. 一旦这个生产技术环境成了大型机的同义词之后, 它就是一个这样的世界:在这个世界里, 停工几分钟就能造成数百万美元的损失, 让几十个人丢掉工作, 极端情况下还会使个别人失去生命.
我们认为Linux成为这个范畴内的一名全权成员而被人们接受的时机已经到来了. 不过, 要让人们形成这样的接纳态度, 要有一队“专业级”的Linux系统管理员打前阵才行.
我们着手撰写本书的目的, 就是让它成为专业Linux系统管理员的最好朋友. 在任何合适的地方, 我们采纳了经我们以前写的深受读者欢迎的书——UNIX System Administration Handbook(《UNIX系统管理技术手册》)——所验证过的概念和资料. 我们加上了大量专门针对Linux的材料, 并且把其余内容根据最新情况做了调整, 但是本书的覆盖面仍然保持和原来的类似. 我们希望您能够认可这样做的结果会给读者送来一本高质量的Linux系统管理工作指南, 并且可以从本书讲述的我们过去的经验中受益.
Linux系统管理方面也有不少别的书籍, 但是其中没有一本能在深度和广度上, 提供在现实的商业环境下高效地使用Linux所必须掌握的资料. 下面是本书有别于其他书的突出特色:
· 我们采取了一种结合实践讲述问题的方式. 我们的目的不是复述系统手册上的内容, 而是总结我们在系统管理工作中积累起来的经验. 本书包含了许多在现实中向困难宣战的故事, 也给出了大量注重实践的建议.
· 本书不是讲如何在家里. 在车库或者在PDA上运行Linux. 我们介绍的是如何在实际工作的环境下, 比如商业公司. 政府机关以及大学里使用Linux.
· 我们详细地阐述了Linux的联网技术. 这是系统管理工作中最为困难的方面, 也是我们认为自己可以向读者提供最多帮助的领域.
· 我们没有过于简化组织材料. 我们的例子都反映出了实际的真实情况, 并没有掩盖它们所有的繁冗和复杂. 在大多数情况下, 这些例子都是直接取自实际工作的系统.
· 我们介绍了三种主流的Linux发行版本.
我们举例的发行版本
和许多操作系统一样, Linux也在成长过程中出现了几个不同方向的分支. 虽然内核的开发仍然保持高度的集中, 但是打包和发布完整Linux操作系统的工作则由各种组织来完成, 每家都有自己的一个套路.
我们详细介绍了三种Linux发行版本:
· RedHat7. 2
· SuSE 7. 3,
· Debian 3. 0.
我们之所以选择这三种发行版本, 不但因为它们最流行, 而且因为它们是整个Linux界的代表. 不过, 本书里的许多材料也都能应用到其他主流的发行版本上.
对于我们所讨论的每个主题, 我们都提供了有关每种发行版本的详细信息. 针对某种特定操作系统的注释, 则用发行版本的徽标标出.
本书的组织
本书分为3大部分:基本管理技术. 网络管理技术和其他管理技术.
基本管理技术部分从系统管理员的角度来全面介绍Linux. 其中的章节涉及到运行单机Linux系统所需要的大部分知识和技术.
网络管理技术部分描述了Linux系统使用的各种协议, 介绍了用来安装. 扩展和维护网络所使用的各种技术. 这个部分中还介绍了高层网络软件. 各章的特色话题包括域名系统. 网络文件系统. 路由技术. sendmail和网络管理.
其他管理技术部分包括各种各样的补充信息. 其中有些章节讨论了一些可选的软件包, 例如Linux的打印系统. 其他一些章节就各种主题——从硬件维护到Linux安装的执行策略——提供了若干建议.
每一章的后面还有一组练习题. 我们用星号标出了我们估计要完成这道题所需付出的努力, “努力”体现在题目的难度和需要花费的时间两方面.
题目有4级:
没有星号简单题目, 应该很容易就能做出来.
* 比较难或者要花比较长时间的题目, 可能要求做试验,
** 最困难或者最花时间的题目, 要求做试验, 并进行深入分析,
****作为整个学期的项目(只在个别章节出现).
有些习题需要有系统上的root或者sudo权限, 有些题目要求有本地系统管理小组的权限. 有这两种要求的时候, 习题会予以说明.
我们的供稿人
我们很高兴Adam Boggs. Matt Crosby和Ned McClain能以供稿人的身份参与本书的编写工作. 他们在各种领域的深厚知识极大地丰富了本书的内容. 我们要向他们表示特别感谢, 是他们才使本书付梓成为可能. Adam做的工作比他承诺的还要出色, Matt是一位擅长提供高质量素材的大师, 而Ned则是我们太需要(而且也是热心)的多面手.
我们希望您会喜欢本书, 并祝您的系统管理工作好运连连!
Evi Nemeth
Garth Snyder
Trent R. Hein
2002年4月