搞PHP的必经之路,Linux,你玩溜了没有?
Linux的内容浩瀚无穷,一头扎进去,很容易迷失方向,不知所踪。所以这里谈一下怎么才能在linux中不迷失方向以及相关的学习方法。
-------------------------学好linux的机遇------------------------
现在很多公司都搭上了互联网的专车,在存储网站的介质上,有点技术的都选择了云服务器,并且也都选择linux系统而不太会选择windows,是有原因的。
如服务器就是要1年都不能关机,windows难以做到。试想一下,你的windows电脑,1年不关机,得卡成什么样子了。
所以学会linux,起码任何公司你都有可能进去了。只是可能,因为现实中是这样的:通常很多中小型公司招人的时候,是招PHP人才,然后让PHP的人去管linux服务器,而通常又是PHP本身内容很多,学PHP的人对Linux还没来得及深入就上岗了,难免有点力不从心...
如果你在懂PHP的前提下又会Linux,那你就可以到处有用武之地了。
-------------------------怎么学习------------------------
既然形势发展是这样的,那么就不要再讨论学还是不学的问题了,而是怎么学习?怎么学会?怎么轻松的学会?怎么不迷失方向?
1:找一本权威的书;
比如:我用的是鸟哥写的《Linux私房菜(第3版)》,有基础篇和服务器篇,共两本书,感觉不错。
2:找一个学的好的过来人带你
很多情况,你遇到问题了去查书、查资料,不一定能查的到,会浪费很多时间在低效的事情上,此时如果有一个有经验的过来人能一针见血的给你指导,你就可以少走很多弯路,节省出更多时间用在更有意义的学习其他知识上。不失为一件可喜之事。
3:不断挖掘兴趣
这个过程是长期的,也是要不断的去执行的,尽量达到形成条件反射去。如:当你熟练使用linux命令去操作的时候,你会发现比图形化快的多,也爽的多。像这种一个个让你兴奋的亮点你都应该记录下来,随时回顾它的好处,慢慢的,你就开始有兴趣了。
4:熟悉常用操作、用户权限管理和文件系统等基础认识;
常用操作有如:拷贝文件,删除文件,查询文件,等。
权限管理有如:给用户增加个写的权限等等。
文件系统有如:/,/home,/root,等这些目录有什么特点,都是干什么的,挂载、卸载等等。
5:有一条清晰的学习路线
以lamp,lnmp为主线,只要牵涉到的就学习。
搭建lamp,lnmp环境:
A:独立方式搭建环境:包括rmp包方式,yum方式,和源码方式;
B:集成方式搭建环境,有如:phpStudy的Linux版集成安装包;
C:服务器管理系统,有WDCP,AMP;
相关的SSH,FTP,开通虚拟主机,绑定域名,远程访问客户端的使用等等都要熟悉。
6:多动手
多动手写命令,不要怕错,要把常用的命令和它的常用使用方式都记录下来,熟记于心,这样的知识才是你的。如:递归的复制一个文件夹的命令,清除某个文件夹里的所有文件的命令。错了没关系,要总结,不要第2次错!
这些命令一开始可能会经常忘记,所以你得把它们经常拿出来看看...
提醒:如果你对命令是什么感觉很抽象,同时也想知道它是怎么实现的?可以在网上搜索一下《C语言,好爽》第3期,里面用C语言模拟了命令的实现,模拟SQL语句,模拟数据库,可以让你深入了解这些命令是什么,以及软件是什么、编译过程等,对于认识形形色色的配置文件以及比如apache都有很大的意义。
7:多和实际需求联系
这样你才不会有那种"学了没用武之地"的感觉。比如:可以用shell做一个可视化的服务器管理系统,需要什么功能都可以直接而快速的加上,修改成你最喜欢的最适合你的独特的服务器管理系统。你在任何地方都可以通过浏览器去访问,去监控、去设置服务器的东西...既有趣,又有实际意义,还综合的应用你的所学知识,一举多得。
-------------------------注意事项------------------------
1:切忌浮躁,要沉的下心来。
linux的内容很多很广泛,所以,要有"水滴石穿"的决定,有"十年磨一剑"坚韧,注意我的用词,是坚韧。你会有种"不以物喜、不以己悲"之感。这样的人是值得尊敬的,可惜很少。如果你很浮躁,钻进去就想一下子吃成个胖子,它会让你撑死的。
2:版本选择
linux系统种类多种多样,每种系统还有多个版本,但内核基本一致;如果你觉得选择起来太麻烦,那就跟我选择的一样吧,遇到问题了还方便指点,我选择的是centos 6.5 32位,几年了没更换;linux的版本也不用更换的太频繁,拿到一个,能学好就是,遇到其他版本了,很多都依葫芦画瓢的可以攻克。
3:多接触英语
linux系统里面基本上都是英语,这个不用多说了。
这里主要是看英文水平,重要的是阅读的水平,和过四六级没多大联系。你六级考高分,如果看不懂英文文档,那也白搭。
4:积极扩展周边知识
不要再拒绝相关知识了,如:操作系统基础、计算机网络。这些东西对于你直接使用阿里云搭建你公司的服务器很有帮助,你在阿里云上可以看到一个"内网ip"和"外网ip",就是这么来的。它可以用来做集群和负载均衡,当你公司网站用户类很多的时候,你就有可能要做负载均衡的事情了。所以,这当然和你公司的盈利直接挂钩了。
如果你水平好,学的差不多了,你可以深入linux内核去学习,了解驱动,了解底层启动等,这些会非常有利于你深入理解linux。但这时候,你就需要很好的C和C++甚至汇编的基础了...
所以,linux的深入理解就需要C和C++,PHP的深入学习也需要C和C++的基础,你现在还认为PHP和C语言C++无关吗?
5:多和外界交流
多逛相关的网站和论坛,多学习一些过来人的经验,能少走弯路就尽量的少走弯路,把时间多用在总结上。
对待知识,我们要心诚,你认真的对待它,它就会"无以为报、只得以身相许"就是你的了...