版权所有 © 2000 Eric S. Raymond
修订历史 | ||
---|---|---|
修订 3.0 | 2004-02-04 | 修订者:esr |
重大更新。移除了过时的书籍,添加了一本新书。 | ||
修订 2.1 | 2003-10-28 | 修订者:esr |
添加了 TAOUP。 | ||
修订 2.0 | 2003-07-31 | 修订者:esr |
重大修订,清理了过时的内容。 | ||
修订 1.21 | 2003-02-22 | 修订者:esr |
LDP 站点已移动。 | ||
修订 1.20 | 2001-06-14 | 修订者:esr |
移除了 “Practical Unix Security”;它已经五年了,现在其他书籍更好地涵盖了这些材料。 | ||
修订 1.19 | 2001-06-14 | 修订者:esr |
添加了 Ross Anderson 的 “Security Engineering”。更正了 ISBN。 |
Linux 阅读列表 HOWTO 的新版本将定期发布到 comp.os.linux.answers。它们也将上传到各种 Linux WWW 和 FTP 站点,包括 LDP 主页。
您还可以通过 URL http://sunsite.unc.edu/LDP/HOWTO/Reading-List-HOWTO.html 在万维网上查看最新版本。
如果您对本文档有疑问或意见(或者只是想推荐一本您认为应该收录在其中的书),请随时发送邮件给 Eric S. Raymond,地址是<esr@thyrsus.com>。我欢迎任何建议或批评。
有关在线 HOWTO、杂志和其他非书籍材料,请参阅 Linux 文档项目主页。
几年前,我写了一个不太关注 Linux 的 Unix 书目,它可能仍然有趣并保留一定的娱乐价值。您可以在 这里 找到 Loginataka。
SAGE,系统管理员协会,维护了一个优秀的 相关书籍列表。
以下未加引号的评论要么是我的,要么是我认为没有理由更改 Jim Haynes(本文档之前的维护者)的评论。其他人发送的评论用引号括起来,并在前面加上评论者的姓名(JH 是 Jim Haynes)。
附加到出版信息的 “See” URL 直接指向出版商的 Web 目录,通常会将您带到一个包含封面照片、简介和订购信息的页面。没有这些信息的书籍是因为出版商正在使用框架,并且目录页面无法添加书签。
主题列表大致从外到内(文化到用户级编程到内核编程到硬件)。在各节中,我已尝试按我熟悉的程度优先列出最有用的书籍。这首先列出我的其中一本书只是一个令人尴尬的巧合,真的!(欢迎提出更好的组织建议。)
新黑客词典,第三版,Eric S. Raymond 编辑,1996 年,ISBN 0-262-68092-0,MIT Press,547 页。
嗯,呃。互联网文化指南。很多人喜欢它。HTML 版本在 Jargon File 资源页面。
Unix 二十五年,Peter H. Salus 编辑,1994 年,ISBN 0-201-54777-5,Addison-Wesley,255 页。
Linux 是 Unix 传统的一部分。这本书是 Unix 的口述历史——它如何起源、如何演变、如何传播——由亲历者讲述。
人月神话,周年纪念版,Frederic P. Brooks,1995 年,ISBN 0-201-83595-9,Addison-Wesley。
每个人都应该阅读的关于软件工程的书籍。
Alan Cox:“我推荐这本书不是因为它技术价值,而是因为它将常识和现实应用于计算项目。” JH:“啊,是的。如果 Linus 被分配了 200 名程序员,并被告知在 3 个月内生产 Linux 会怎么样!”
Linux 系统管理员指南,Lars Wirzenius 编辑,1997 年,Linux 文档项目。
可在 LDP 主页上找到,或直接访问 http://www.tldp.org//sag/。
一本关于如何维护和管理 Linux 系统的优秀入门书籍。
Linux in a Nutshell,第四版,Ellen Siever,Stephen Figgins,Aaron Weber,2003 年,ISBN 0-596-00482-6,O'Reilly & Associates。
根据 O'Reilly 的说法,“Linux 的桌面参考”。对于 Linux 用户来说,这取代了他们以 SVr4/Solaris 为导向的 “Unix In a Nutshell”。
Running Linux,第四版,Matt Welsh,Matthias Dallheimer,Terry Dawson,Lar Kaufman,2002 年,0-596-00272-6,O'Reilly & Associates。
理解、安装和使用 Linux 操作系统所需的一切。优秀的初学者书籍。
实用 Linux 指南,Mark G. Sobell,1998 年,ISBN 0-201-89549-8,Addison-Wesley,1072 页。
正如标题所说——关于基本 Unix、Shell、编辑器、邮件程序、网络、Web 工具和实用程序的实用教程。涵盖了一些系统管理基础知识。
Essential System Administration,第 3 版,�leen Frisch,2002 年,ISBN 0-596-00343-9,O'Reilly & Associates。
更深入地介绍了正常的系统管理任务。不是 Linux 专用的,但包含 Linux 材料。
Security Engineering: 构建可靠分布式系统指南,Ross Anderson,2001 年,0-471-38922-6,Wiley。
我见过的关于技术安全措施和通用计算机安全的最好的书。关于 “如何偷一幅画” 和物理警报系统的章节本身就值回票价。
Real World Linux Security: 入侵预防、检测和恢复,第二版,Bob Toxen,2003 年,ISBN 0-13-046456-2,Prentice-Hall。
这是一部杰出的作品,是未来 Linux 安全书籍的评判标准。我为它写了序言。它结合了关于如何强化 Linux 系统的逐步实用说明,以及关于攻击路径、保护环和安全分析的良好理论。描述了许多针对特定漏洞的对策。
Programming Perl,第三版,Larry Wall、Tom Christiansen 和 Jon Orwant,2000 年,ISBN 0-596-00027-8,O'Reilly & Associates,1104 页。
Shell(作为一种用于非琐碎脚本的编程语言)已经过时了。Perl 在其位置上占据主导地位(尽管现在它正受到 Python 的强烈挑战)。这是权威 Perl 书籍的第三版。
Emmanuel Pierre 维护了一个 Perl 书籍简短列表。
Programming Python,第二版,Mark Lutz,2001 年,ISBN 0-596-00085-5,O'Reilly & Associates。
Perl 之后的下一步。Python 设计精美,与 C 的集成更好,并且可以更优雅地扩展到大型项目。
HTML & XHTML: The Definitive Guide,第五版,Chuck Musciano 和 Bill Kennedy,2002 年,ISBN 0-596-00382-X,O'Reilly & Associates,680 页。
我见过的最好的 HTML 教程/参考,也是您唯一需要的 HTML 书籍,除非您还想做 CGI。就全面性、深度和组织质量而言,我不知道还有哪本 HTML 书籍能与这本书相提并论。
Unix 编程环境,Brian Kernighan 和 Rob Pike,1984 年,ISBN 0-13-937681-X,Prentice-Hall。
真正的经典之作——可能是对 Unix 哲学最好的单本书阐述。对于学习 shell 编程很有用。
The LaTeX Companion,Michael Goossens、Frank Mittelbach 和 Alexander Samarin,1994 年,ISBN 0-201-54199-8,Addison-Wesley,530 页。
“如果您是那些想要了解如何扩展 LaTeX 以创建尽可能漂亮的文档而又不想成为 (La)TeX 大师的用户之一,那么这本书适合您”——摘自前言。Bruce Thompson 补充说:“一本非常好的书,提供了大量关于 LaTeX 新扩展的信息,提供了大量示例,精确地展示了如何操作文档的布局”
LaTeX: A Document Preparation System,Leslie Lamport,1994 年,ISBN 0-201-52983-1,Addison-Wesley,256 页。
Bruce Thompson:“LaTeX 2.09 及其作者的终极参考。一本涵盖 LaTeX2e(当前 TeX/LaTeX 发行版中包含的版本)的新版本正在准备中。LaTeX 2.09 完全受 LaTeX2e 支持。任何想要使用 LaTeX 的人都必须拥有。温和地介绍了文档准备以及 LaTeX 为制作专业质量文档提供的各种工具。大量示例。”
The TeXbook, Volume A of Computers and Typesetting,Donald Knuth,1986 年,ISBN 0-201-13448-9,Addison-Wesley,496 页。
Bruce Thompson:“TeX 的权威用户指南和完整参考手册。对于偶尔使用 LaTeX 的人来说可能不需要,但无论如何都是一本引人入胜的书。” 我要加强一下,补充说这本书不适合胆小的人。
The METAFONT Book, Volume C of Computers and Typesetting,Donald Knuth,1986 年,ISBN 0-201-13444-6,Addison-Wesley,386 页。
Bruce Thompson:“METAFONT 的权威用户指南和参考手册,METAFONT 是 TeX 的配套程序,用于设计字体。如果您计划设计自己的字体以在 TeX 和 LaTeX 中使用,那么这是一部优秀的作品。METAFONT 包含在正常的 TeX/LaTeX 发行版中。” 这本书绝对不适合胆小的人。
The Practice of Programming,Brian Kernighan 和 Rob Pike,1999 年,ISBN 0-201-61586-X,Addison-Wesley。
一本关于编写高质量程序的优秀专著,肯定会成为该领域的经典之作。
Programming Pearls,(第二版),Jon Bentley,2000 年,ISBN 0-201-65788-0,Addison-Wesley。
这些是从 Bentley 在 Communications of the ACM 上的专栏中选出的文章。他讨论了程序改进中的各种问题,通常侧重于程序效率。
The Art of Unix Programming,Eric S. Raymond 编辑,2003 年,ISBN 0-131-42901-9,Addison-Wesley,512 页。
关于如何像 Unix 专家一样思考的书。可浏览的 HTML 和订购信息请访问 此处。
Writing Efficient Programs,Jon Bentley,1982 年,ISBN 0-13-970251-2 或 0-13-970244-X,Prentice-Hall。
本书介绍了 Bentley 改进程序效率的方法和规则集,并包含大量示例。
The C Programming Language,(第二版),Brian Kernighan 和 Dennis Ritchie,1988 年,ISBN 0-13-110362-8,Addison-Wesley,272 页。
由 C 的设计者 “K&R” 合著的原始经典 C 书籍的改进第二版,涵盖 ANSI C。仍然是最好的!
Who's Afraid of C++?,Steve Heller,1996 年,ISBN 0-12-339097-4,Academic Press,508 页。
我见过的最好的 C++ 入门书。现在可以在 Web 上 获取。
POSIX Programmer's Guide: Writing Portable Unix Programs,Donald Lewine,1992 年,ISBN 0-937175-73-0,O'Reilly & Associates,607 页。
Linux 非常严格地遵守 POSIX 标准(不符合标准被认为是错误并会迅速修复)。因此,这本优秀的 POSIX 参考资料也是 Linux 内核 API 的优秀参考资料。
Advanced Programming in the Unix Environment,W. Richard Stevens,1993 年,ISBN 0-201-56317-7,Addison-Wesley。
一本关于通用 Unix 编程的书籍,与 Stevens 关于网络编程的经典著作一样出色。
Linux Application Development,Michael K. Johnson 和 Erik W. Troan,1998 年,ISBN 0-201-308215,Addison-Wesley。
Linux API 的最佳单一参考。涵盖了非通用 Unix 或 Posix 的功能。
Unix Network Programming, volume 1 -- Networking APIs: Sockets and XTI,W. Richard Stevens,1998 年,ISBN 0-13-490012-X,Prentice-Hall。
您可能想了解的关于该主题的一切。通常被认为是关于基础知识的权威。
Unix Network Programming, volume 2 -- Interprocess Communication,Richard Stevens,1998 年,ISBN 0-13-081081-9,Prentice-Hall。
同上...
Linux Network Administrator's Guide,Olaf Kirch,1995 年,ISBN 1-56592-087-2,O'Reilly & Associates。
可在 LDP 主页上找到,或直接访问 http://www.tldp.org/nag/nag.html。
一本关于如何维护和管理联网 Linux 系统的优秀入门书籍。
TCP/IP Network Administration,Craig Hunt,1992 年,ISBN 0-937175-82-X,O'Reilly & Associates,472 页。
不如 Kirch 的书那样专注于 Linux。更深入地介绍了 TCP/IP 核心,包括路由和 BGP。
DNS and BIND,第二版,Paul Albiz 和 Cricket Liu,1998 年,ISBN 1-56592-512-2,502 页,O'Reilly & Associates。
深入介绍了 DNS,对运行复杂的多子网安装的人员很有用。涵盖了 BIND 库编程。
Sendmail,第三版,Bryan Costales 和 Eric Allman,2002 年,ISBN 1-56592-839-3,1232 页,O'Reilly & Associates。
Linux 和 Unix 默认邮件传输代理的详尽(且令人疲惫)指南。
The Design of the Unix Operating System,Maurice J. Bach,1996 年,ISBN 0-13-201799-7,470 页,Prentice-Hall。
Linus 入门的这本书。
Operating Systems, Design and Implementation,Andrew S. Tanenbaum,1987 年,ISBN 0-13-638677-6,940 页,Prentice-Hall。
Alan Cox 喜欢这本书。Tanenbaum 设计了 Minix,这是 Linus 从中引导 Linux 的系统。
The Linux Kernel book,R�my Card、�ric Dumas 和 Frank M�vel,1998 年,ISBN 0-471-98141-9,John Wiley & Sons。
(从法语版 “Programmation Linux 2.0” 翻译而来;相同作者;1997 年;�ditions Eyrolles;法国巴黎。)
对内核操作进行非常有趣且内容丰富的检查,填补了 POSIX 接口与 “The Design of the Unix Operating System” 和 Linux 源代码之间的空白。对 Unix OS 的设计和操作有很好的理解是先决条件,但这本书对于超越一般理解并进入实际工作非常有帮助。
主要作者是 ext2 文件系统的核心开发人员之一,Linux Kernel book 显示了对问题的牢固掌握以及清晰的解释和结构。对于如此低级别的工作来说,它出奇地易读。(代码示例文件仍然以法语命名,非常迷人。)
本书更新至 Linux 2.0.35,并预示了 2.1 和 2.2。不涵盖网络协议实现。
LINUX Kernel Programming,(第三版),Michael Beck、Harold Bohme、Mirko Dziadka、Robert Magnus、Claus Schroter 和 Dirk Verworner,2002 年,ISBN 0-201-719754,Addison-Wesley,480 页。
Linux 内核编程指南;涵盖 2.4。涵盖了 Linux 核心和网络层的架构以及驱动程序构建。
The Design and Implementation of the 4.4BSD Unix Operating System,Marshall Kirk McKusick、Keith Bostic、Michael J. Karels 和 John S. Quarterman,1996 年,ISBN 0-201-54979-4,Addison-Wesley。
关于 4.3 BSD 内核实现的经典书籍的后继者,该内核影响了 Linux 的设计(尤其是在套接字和网络附近)。本书涵盖了 BSD/OS、FreeBSD 和 NetBSD 的 4.4BSD 基础。
80386 Programmer's Reference Manual,Intel Corporation,1986 年,ISBN 1-55512-022-9。
第一部分。应用程序编程,数据类型,内存模型,指令集。第二部分。系统编程,架构,内存管理,保护,多任务处理,I/O,异常和中断,初始化,协处理和多处理。第三部分。兼容性(与早期的 x86 机器)。第四部分。指令集
80386 System Software Writer's Guide,Intel Corporation,1987 年,ISBN 1-55512-023-7。
这解释了 80386 为操作系统编写者提供的功能。它包括关于 Unix 实现的章节。80386 架构的许多功能似乎都是考虑到 Multics 而设计的;这些功能未被 DOS 或 Unix 使用。
Programming the 80386,John H. Crawford 和 Patrick P. Gelsinger,1987 年,ISBN 0-89588-381-3,774 页。
这是 Jolitzes 将 BSD 移植到 386 架构时使用的书。
80386 Hardware Reference Manual,Intel Corporation,1986 年,ISBN 1-55512-024-5。
引脚连接、时序、波形、框图、电压,所有这些类型的东西。