开始Linux的学习之后,请不要用Windows的工作方式来思考问题,因为它们之间确实有很大的不同,比如它们之间的内存管理机制、进程运行机制等都有很大不同,因此抛开Windows的那种思维,用全新的理念尝试去挖掘Linux身上特有的潜质,对初学者是至关重要的。
一定要习惯命令行方式
Linux是由命令行组成的操作系统,精髓在命令行,无论图形界面发展到什么水平,命令行方式的操作永远是不会变的。Linux命令有许多强大的功能:从简单的磁盘操作、文件存取,到进行复杂的多媒体图像和流媒体文件的制作,都离不开命令行。虽然Linux也有桌面系统,但是X-window也只是运行在命令行模式下的一个应用程序。
因此,可以说命令是学习Linux系统的基础,在很大程度上学习Linux就是学习命令,很多Linux高手其实都是玩儿命令很熟练的人。也许对于刚刚从Windows系统进入Linux学习的初学者来说,立刻进入枯燥的命令学习实在太难,但是一旦学会就爱不释手。因为它的功能实在太强大了。
理论结合实践
有很多初学者都会遇到这么一个问题,自己对系统的每个命令都很熟悉,但是在系统出现故障的时候,就无从下手了,甚至不知道在什么时候用什么命令去检查系统,这是很多Linux新手最无奈的事情了
说到底,就是学习的理论知识没有很好地与系统实际操作相结合。
很多Linux知识,例如每个命令的参数含义,在书本上说得很清楚,看起来也很容易理解,但是一旦组合起来使用
却并不那么容易,没有多次的动手练习,其中的技巧是无法完全掌握的。
人类大脑不像计算机的硬盘,除非硬盘坏掉或者硬盘被格式化,否则储存的资料将永远记忆在硬盘中,而且时刻可以调用。而在人类记忆的曲线中,必须要不断地重复练习才会将一件事情记得比较牢。学习Linux也一样,如果无法坚持学习的话,就会学了后面的,忘记了前面的。还有些Linux初学者也学了很多Linux知识,但是由于长期不用,导致学过的东西在很短的时间内又忘记了,久而久之,失去了学习的信心。
可见,要培养自己的实战技能,只有勤于动手,肯于实践,这也是学好Linux的根本。
学会使用Linux联机帮助
各个Linux的发行版本的技术支持时间都较短,这对于Linux初学者来说往往是不够的,其实当安装了完整的Linux系统后其中已经包含了一个强大的帮助,只是可能你还没有发现它,或者还没有掌握使用它的技巧。例如,对于tar命令的使用不是很熟悉,那么只要在命令行输入“man tar”,就会得到tar的详细说明和用法。
主流的Linux发行版都自带了非常详细的帮助文档,包括使用说明和FAQ,从系统的安装到系统的维护,再到系统安全,针对不同层次用户的详尽文档。仔细阅读文档后,60%的问题都可在这里得到解决。
学会独立思考问题,独立解决问题
遇到问题,首先想到的应该是如何自己去解决这个问题,解决方式有很多,比如看书查资料、网络搜索引擎搜索和浏览技术论坛等,通过这几种方式,90%的问题都能得到解决
独立思考并解决问题,不但锻炼了自己独立解决问题的能力,在技术上也能得到快速提高。如果通过以上方式实在解决不了的话,可以向人询问,得到答案后要思考为何这么做,然后做笔记记录解决过程。最忌讳的方式是只要遇到问题,就去问人,虽然这样可能会很快解决问题,但是长久下去遇到问题就会依赖别人,技术上也不会进步。
学习专业英语
如果想深入学习Linux,一定要尝试去看英文文档。因为,技术性的东西写的最好的,最全面的文档都是英语写的,最先发布的高新技术也都是用英语写的。即便是非英语国家的人发布技术文档,也都首先翻译成英语在国际学术杂志和网络上发表。安装一个新的软件时先看Readme文档,再看Install文档,然后看FAQ文档,最后才动手安装,这样遇到问题就知道原因了。因此,学习一点专业的英语是很有必要的。
Linux学习路线图
Linux运维或管理人才是企业目前急需的技术人才之一,笔者根据10多年Linux相关工作经验,总结出了一套学习Linux的线路图,大家可以此线路图为依据,抓住重点,分清主次,相信一定能达到事半功倍的效果。如果读者能认真学习完并掌握本线路图所涉及的技术要点,那么也就基本掌握了企业对Linux运维或管理人才的基本应用需求。
Linux学习线路图如下图所示,本线路图分为初级、中级和高级三个阶段:初级阶段主要是对Linux基础知识以及系统基本应用的介绍,要掌握的内容较多,如果初次接触Linux,那么入门还是有一定难度的,Linux注重的是命令操作,因此初级阶段以学习基础命令为主,多看书、多实践是学好命令的根本;中级阶段以服务器常见配置为主,涉及各种应用服务器的配置、网络配置、系统安全配置等几个方面。此阶段的难点在于各种服务器的搭建,对综合知识要求较高;高级阶段的重点是编程语言、集群架构两个方面,此阶段的发展方向是高级运维工程师或系统架构师,要成为系统架构师,熟练掌握一门编程语言是必须的,而Linux下常见的各种集群架构、分布式架构也是高级运维工程师必须要掌握的。
转载于:https://blog.51cto.com/12817704/1941110