Shulei Lee

blog

一、linux之路,路漫漫其修远兮,吾将上下而求索!先上经典书籍!

1.入门篇

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

2.驱动篇

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

3.内核篇

浙江大学的《LINUX内核源代码情景分析》,外国的《UNIX源代码分析》还有《深入理解linux内核》都是出名的经典巨作。

4.shell篇

《LINUX与UNIX Shell编程指南》

5.应用编程

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

6.TCP/IP篇

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

7.c语言

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

c专家编程,c语言技术手册, Practice c Programming 等。

8.算法

《算法导论》,床头必备喝

注:这些经典的书是经得起反复琢磨的,知识并不是一蹴而就的,需要反复实践,反复理解!千万不要妄想一口吃个胖子!

二、如何学习linux

Linux操作系统主要就是一些配置文件(/etc)和命令行工具(/bin /sbin /usr/bin /usr/sbin),要掌握操作系统的主要目录结构和配置文件,运用系统的命令行工具(shell脚本)完成常规的操作系统维护工作,监控工作。进而可 以安装部署一些企业应用,进行监控、管理等等。

1.重要的命令:find,sed,awk,正则……

2.工具:gnu下的著名软件 gcc,gdb,vi,make……

3.unix编程,编译等。xwin开发方式,gtk,qt……

4.文件系统,/dev下的设备(会用),/var下重要的东西,/etc 下的配置(常用服务配置apache, ftpd, sshd, xinetd, squid, natd, named),系统启动顺序,配置相应服务等……

5.c,python,php等高级语言……

三、个人水平定位

1.初级:熟练使用命令、熟悉Shell编程、能配置简单的服务,清楚各类服务相关的配置文件的位置, 能看懂并可修改系统提供的配置脚本(/etc/.)。推荐书籍: 《鸟哥的私房菜基础篇、高级篇》 《Advanced Bash Shell》 2.中级:熟悉TCP/IP原理、OS原理、熟练使用C语言、Linux系统编程、网络编程。 推荐书籍: 《The C Programming Language》 《Unix环境高级编程》 《Linux程序设计》 《TCP/IP协议详解卷一》 《Unix网络高级编程》 3.高级: 内核,驱动级别。推荐书籍: 《Linux Device Driver》 《深入理解Linux内核》 《深入理解计算机系统》 《深入理解LINUX网络内幕》

四、学习途径

1.Help System 帮助文档(man)

2.online books 在线文档(wiki ,blogs)

3.Training Guide 培训教程

4.Topic Collections 专题

5.Forms 论坛

6.名家的书籍

7.IRC,邮件列表等

8.理论与理论中的实践的差别并不如理论与实践中的实践差别那样大!

五、其他的书

javascript基础教程,~高级程序设计,~权威指南,~DOM编程艺术,~设计模式,~入门经典

UNIX in a Nutshell,The unix programming environment,unix技术手册

managing projects with make

applying RCS and SCCS

六、自己的路

linux/unix (c , bash(shell) , 工具(vi, gcc, make) , 内核机制 , python(高级语言) , 开源)

设计理念,系统管理,unix环境,服务器,嵌入式,桌面,移动设备

LOADING