最近,听到一些同学说,“Linux越学越头疼”。其实这句话,在我之前刚接触Linux的时候,也是深有感触。Linux越学越不明所以。最后干脆放弃学习,转而学习其他东西。
其实大家在初学Linux的时候, 有这个感受,也是十分正常和普遍的。我们大家从一开始接触计算机,便一直是Windows系统,从未使用过Linux这个系统。自然不知道要怎么使用linux。而且使用windows的习惯早已经不可改变。你会自动吧windows的操作映射到linux上,但是总是发现行不通或者出入很大。以至于,越学越学不懂。
Linux是一门从开始入门便很复杂的课程。及其消耗个人的耐性。同时也很考研学习能力。最重要的是要有一颗折腾的心。不能随便玩两下就放弃了。那么这辈子都不可能学会了。
在我看来,一切高深的知识都不过是从基础知识演变和抽象而来的。所以大家一定要先把自己的基础知识夯实再说。没有基础知识做铺垫,后面的那些进阶高阶知识根本无从谈起。
首先,要想学会Linux,一定要具备能折腾的心。而且要不怕折腾。遇到问题不要怕,也不要随便轻言放弃。现在网上资料那么多,各种通讯那么发达。一定会有方法解决你的问题的。
今天,我就来为大家答疑解惑,希望大家可以好好看看我以下的一些建议或者意见。首先大家在刚开始学习的时候, 希望大家能丢弃掉Windows的操作习惯。吧那些习惯统统抛诸脑后。不要总是试图用Windows的习惯来使用linux。他俩的思想很多方面都有很大的不同。当然一些地方也是存在很多共性的。
首先我推荐你先选一个合适的发行版本。Linux发行版本很多,这一点就和Windows不一样。
在这里,我推荐centos或者Ubuntu。这些作为服务器很多,大家在以后工作中也会遇到大多数是这两种发行版。
然后安装一个虚拟机环境,安装上linux。此时你就可以跟着视频或者书籍,敲命令了。先从最基本的命令开始,一点点做实验。看看这些命令都是干嘛的,都是如何组合使用的,且会产生什么效果。不同的命令有什么作用,这是必须记忆的。当你把这些基本命令学完之后,就可以学习shell脚本了。看看吧这些命令写进一个脚本里组合使用,会发生什么作用。
学完shell脚本,就可以学习一些中级知识了。这个时候就要多学习一些原理性的理论知识了。这些理论知识对你以后解决问题,绝对会起到很大的作用。
比如TCP/IP网络基础知识。一些服务的原理,比如http,dns,ftp等。
然后还需要懂得linux安全上的一些知识,懂得如何维护好服务器的安全,和如何抵御外部攻击。还要学习一下一些常用服务的安装和管理,比如mysql,redis,nginx等等。学完中级知识,就要学习高级知识了。这些知识更加偏向应用。比如企业级负载集群,高可用集群,分布式集群,运维自动化,运维监控zabbix等等。还有docker,k8s等。
好了,说了这么多,下面为大家推荐几本书籍,希望大家从这些书籍中找到自己需要的知识。
在学习基础这个层面,我首先就要给大家推荐的是一本书,这本书我在初学Linux的时候,就是看这本书入门的。
那就是《Linux就该这么学》这本书,现在已经出了第二版,相较于第一版,知识更加全面,并且是基于RHEL 8系统,紧跟潮流。
在我看来,这本书的排版顺序,十分适合初学者,大家可以跟着这本书从前往后,先学习前面的基础命令,把这些基础命令反复练习,知道每条命令是干什么的,以及这些命令背后的每个参数每个选项都是干什么的。这些命令一定要死记在脑子中。这本书还配套了一个专门的网站 https:www.linuxprobe.com。
同学们可以直接在线免费学习本书内容。并且该网站还有很多的实战干货,有助于大家提供其他方面的技术水平。
在中高级部份,我推荐《大规模Linux集群架构最佳实践》。
这本书籍,全面介绍了linux集群的使用现状,包括网络,安全,监控,备份,日志分析,自动化等等各个方面,大家从这本书中可以学到很多的实战案例。
学习linux是一个漫长的过程,切勿心浮气躁,想着很快就能有所成果。希望大家能踏踏实实学习。