入门篇 
《LINUX权威指南》书不错,写的很全面也比较广,涉及的不深,做为入门书籍不错,可以比较全面的了解linux 。另外比较热门的也可以看看《鸟哥的私房菜》等书,偏管理类的书,如果想做server方向的可以找来看看。

驱动 
《LINUX设备驱动程序 》就是网上说的“LDD”,经典之作,必备书籍。国产经典《Linux驱动详细解》也是一本非常不错的书,很实用,书中源代码 分析比较多,基于2440的,对linux外围驱动有很全面的讲解。

内核篇 
浙江大学的《LINUX内核源代码情景分析》,外国鬼子的《莱昂氏UNIX源代码分析》还有《深入理解linux内核》都是出名的经典巨作。另外赵炯的《LINUX内核完全剖析--基于0.12内核》也非常不错,对内核代码进行了详细的注释,非常有助于对内核的理解和代码的分析。

shell篇 
《LINUX与UNIX Shell编程指南》

应用编程
不用说了肯定是《unix环境高级编程》被称为unix编程的圣经。

TCP/IP篇 
《TCP/IP详解》作者W.Richard Stevens也是《unix环境高级编程》的作者,牛人出的书没有一本不是经典的。但是英年早逝,默哀一下。

C语言
《The C Programming Language》正是作者造出来的c语言,书能垃圾就怪了
《c和指针》和《c缺陷和陷阱》两本必备。包含了c语言最容易出错的地方,加深c语言功力的好材料。

算法
《算法导论》


Linux操作系统主要就是一些配置文件和一些命令行工具,要掌握操作系统的主要目录结构和配置文件,运用系统的命令行工具完成常规的操作系统维护工作,监控工作。进而你可以安装部署一些企业应用,进行监控、管理等等。
把/etc目录下面常用的配置你都搞懂,把 /bin /sbin /usr/bin /usr/sbin下面常用的命令搞懂 会用shell编写常规的维护脚本,这样你已经非常厉害了。


linux 命令必须很熟悉,对find.sed,awk必须更熟悉,会正则。

了解unix编程,编译,知道gnu下的很多著名软件并会用。
example:m4,automake,autoconfig,binutils,gcc,...
能熟练试用vi,熟悉makefile...
可能的话掌握一种xwin开发方式gtk,qt等。
搞明白文件系统,能掌握50%以上/dev下设备干吗用的,并会用。
能知道/var下都有哪些重要东西。
熟悉/etc下的配置,了解常见的服务的配置
example:
squid,apache,natd,named,ftpd,sshd,xinetd
知道启动的时候unix按哪些顺序启动,并配置服务
C语言。
知道怎么安装软件
不仅仅是pkg_add,rpm,
知道怎样监控进程,网络
知道怎么追踪core
这些都熟悉了,基本算unix初通了,能做个unix初级使用者


看你想达到什么层次了,我个人的理解是: 

初级:

熟练使用命令、熟悉Shell编程、能配置简单的服务,清楚各类服务相关的配置文件的位置, 
能看懂并可修改系统提供的配置脚本(/etc/*.*) 
推荐书籍: 
《鸟哥的私房菜基础篇、高级篇》 
《Advanced Bash Shell》 

中级:

熟悉TCP/IP原理、OS原理、熟练使用C语言、Linux系统编程、网络编程。 
推荐书籍: 
《The C Programming Language》 
《Unix环境高级编程》 
《Linux程序设计》 
《TCP/IP协议详解卷一》 
《Unix网络高级编程》 

高级: 
《Linux Device Driver》 
《深入理解Linux内核》 
《深入理解计算机系统》 
《深入理解LINUX网络内幕》 

上面这些书单中,是我们公司一个玩Kernel的牛人开出的。任何知识的学习都不是一蹴而就的,需要反复实践,反复理解。 
祝你成功!


linux业内有句话,《深》为纲、《情》为目。情指的是情景分析,一本经典读物。情景分析很难,本身也需要读者有一定的天赋。不建议linux初学者阅读,很容易迷失方向。本身这本书更多是当你遇到问题的时候,希望能深入的探究缘由,读其中的某个章节。


linux四库全书
1、LINUX内核设计与实现 Edition2     
2、Linux设备驱动 Edition3 
3、LINUX内核源代码情景分析     
4、深入理解LINUX内核(第三版)


以上号称Linux Kernel四库全书,呵呵。入门的话看 LINUX内核设计与实现 Edition 2 

应用程序开发
<Advanced Programming in the Unix Environment> 

原文地址:http://www.cnblogs.com/jiangjh/archive/2011/06/27/2091164.html

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐