766培训网
电脑培训
linux的学习路线

linux的学习路线

发布时间 :2021-02-03 11:30:35 浏览量:563 收藏
导读:

中级进阶需要在充分了解linux原理和基础知识之后,对上层的应用和服务进行深入学习。下面小编给大家介绍linux的学习路线,一起来看看吧。

linux的学习路线

linux的学习路线

第一阶段:初级入门

初级阶段需要把linux学习路线搞清楚,任何学习都是循序渐进的,所以学linux也是需要有一定的路线。

1、Linux基础知识、基本命令(起源、组成、常用命令如cp、ls、file、mkdir等常见操作命令)。

2、Linux用户及权限基础。

3、Linux系统进程管理进阶。

4、Linux高效文本、文件处理命令(vim、grep、sed、awk、find等命令)。

5、shell脚本入门(可边练习边学习)。

第二阶段:中级进阶

中级进阶需要在充分了解linux原理和基础知识之后,对上层的应用和服务进行深入学习,其中说到服务肯定涉及到网络的相关知识,是需要花时间学习的。

1、TCP/IP网络基础(差不多CCNA、NP的知识就够用)。

2、Linux企业常用服务(如dns、http、ftp、mail、nfs等)。

3、Linux企业级安全原理和防范技巧(系统性能/安全、安全威胁模型和保护方法。

4、加密/解密原理及数据安全、系统服务访问控制及服务安全基础。

5、iptables安全策略构建。

6、shell脚本进阶(主要是结合一些应用,写一些案例)。

7、MySQL应用原理及管理入门。

学到这里,掌握的基本技能,已经够用了,已经能做一些基础的运维工作和简单维护了。

第三阶段:高级提升

1、http服务代理缓存加速(其中主要学习varnish、nginx缓存系统,要对CDN的知识有所了解)。

2、企业级负载集群(其中主要学习nginx、haproxy、lvs要对主要知识熟练掌握,对负载均衡算法有清晰认识)。

3、企业级高可用集群 (其中需要对keepalived,heartbeat等进行深入讲解)。

4、运维监控zabbix详解(主要是zabbix、cacti、nagios等监控系统,现在用的比较多的是zabbix)。

5、运维自动化学习(需要学一些开源运维自动化工具的使用如ansible、puppet、cobbler等运维自动化工具)。

第四阶段:经验方向进阶

1、大数据方向(需要对hadoop、storm等常见开源大数据系统需要深入了解)。

2、云计算方向(主要是openstack这套东西,当然像一些kvm等虚拟化技术,也是需要掌握的,现在docker也比较流行)。

3、运维开发(主要是python运维开发)。

4、自动化运维(在之前自动化基础上做深入)。

5、运维架构师(主要需要广度,差不多5年左右以上经验,可以担当此职位)。

Linux系统的学习方法

linux系统实在是过于重要,起码对于android程序员来说,它是非常重要的。基本你深入到每个技术的底层,要理解它就逃不开要理解linux系统的知识。

它就像终极boss一样,不管你走哪条路,要走到头就要经过它的考验。但是它又实在是非常的庞大,你很难用几个月的时间,啃上一两本书,敲上几行代码就理解它,熟悉它。

那么你就得准备好和它长期相处,既不能逃避它,也不能让它阻挡你正常的学习、使用的脚步。我们需要一种这样相处的办法。

不管是从哪个语言开始接触的编程,我们熟悉这个语言的工作机制,熟悉它的函数和类库,熟悉它常用的框架以及软件架构,都是循序渐进的。甚至可能我们在用它做了很多项目,解决了很多问题之后,对它的了解仅仅是有限的一部分。但是我们觉得我们已经掌握它了,并不会觉得有任何的技术障碍。这是为什么呢?

其实,还是因为我们能够有一套成熟的上述办法,让我们可以与它和平相处。这套办法涵盖了:

1、运行和调试方法。

2、文档和源码阅读方法。

3、便捷可靠的IDE,提供代码提示、跳转、查找等功能,使人从记忆任务中解脱出来。

4、清晰的知识地图,让我们知道自己在干什么,有哪些东西可用。

5、成熟的社区和丰富的资料、开源库等。

6、工程化工具,让我们可以方便地管理、编译、集成、发布软件。

然后我们就可以将一个庞大的知识库,拆分成一小部分一小部分,慢慢学习、吸收。而未知的部分,不会阻碍我们使用它,我们可以在需要时,再去研究它,快速上手。

那为什么到了linux系统这里,一切就变得复杂了呢?

因为我们要学的东西更加生僻了,我们要研究的知识更加底层了。我们要处理的源码更加庞大了,我们要掌握的概念和要解决的问题更加复杂了。

这让我们运行和调试更加困难,编码和编译更加困难,集成和发布更加困难,理解和熟悉更加困难。

正因如此,我们更加要掌握以上提到的6个基本功,扎实地理解掌握,才能掌握linux系统的学习、使用方法。

我们说了,在有了一套解决办法之后,我们就能够逐步拆分式学习linux系统了。这个拆分也有通用的办法。

1、提出知识点(概念),

2、细化概念。了解它要解决需求,提出的办法。

3、源码对照。针对细化过的概念,对照源码学习实现原理。包括,功能-函数对照,机制-流程对照,使用方式-文档对照等。

4、验证。通过案例和实验,验证概念和知识。

5、总结和记录。对学习的概念进行适当的延伸、梳理、总结,形成知识体系,并输出到文档。

Linux学习的书籍

《Linux内核设计与实现》

《深入理解Linux内核》

《LINUX设备驱动程序(第3版)》

《Linux内核源代码情景分析》

《Linux内核源代码分析》

《LINUX KERNEL技术手册》

《深入Linux内核架构》

《Linux内核完全注释》

《Orange S:一个操作系统的实现》

《30天自制操作系统》