Linux系统该怎么学?运维老鸟的经验心得

时光荏苒,青春行走在时间的河岸,渐行渐远。初夏又至,七月的脚步越来越近。马上又有大波毕业生离校啦。等待着他们的是社会的检验,对如何选择一份职业就显得尤为重要,当然,你也得具备一定的职业素养,才能干好这份工作。先说说大学生的毕业情况。

有关数据表明,2014年全国普通高校毕业生人数达到727万,2015年全国普通高校毕业生人数达到749万,2017年的毕业生总人数可能只多不少。大学生的就业春天不会来临,他们所面临的就业形势依然严峻。相信大家都听说过IT行业,是一个赚钱的行业,在一线城市,这些人的工资能月入20k左右。那我们就关于这一话题进行探讨。

首先,对于一个涉世未深的IT行业人来说,你需要一个明确的目标,看看自己是适合哪个方面发展。未来的你可能是从事网页的开发工作又或者是大数据的高级开发工作,甚至也有可能是一个IOS的开发。但是这些都是后期自己去摸索,才能找的到的路。现在,需要我们打一个好的基础。我们都知道Linux这个操作系统。这个操作系统确实是一个比较流行的一个系统,和Windows相比,Linux有很多独到之处,同时它也是一个IT行业的垫脚石。那么什么是Linux呢?

.jpeg

Linux是一套自由加开放源代码的类Unix操作系统,诞生于1991年10月5日(第一次正式向外公布),由芬兰学生Linus Torvalds和后来陆续加入的众多爱好者共同开发完成。相比于windows,开源,是他独有的特点,这个特点使得它给了你更多的权限,实现在Windows上不能实现的事。当然学习Linux,对你进入IT这份行业,有举足轻重的作用。

如何学会Linux呢?对于很多人,又是一个头疼的问题。毕竟,我们又不是计算机专业出生的,对于计算机之一行业的基础知识,懂得少之又少。当你看到这,第一眼感觉肯定是崩溃的,当然不乏也有神人存在,但那毕竟是少数人,所以,一个好的学习方法变得尤为重要。

一、选择一个比较合适的Linux发行版。

Linux发行版有很多种,这些有的是为专门的商业供应,也有的是为个人用户所使用,

Fedora是基于RHEL,CentOS,Scientific Linux, 和Oracle Linux的社区版本。相比RHEL,Fedora打包了显著的更多的软件包。其中一个原因是,多样化的社区参与Fedora的建设;它不只是一家公司。SUSE,  SUSE Linux Enterprise Server (SLES), 和openSUSE 之间的关系类似于 Fedora, Red Hat Enterprise Linux, 和CentOS的关系。Debian是包括Ubuntu在内许多发行版的上游,而Ubuntu又是Linux Mint及其他发行版的上游。Debian在服务器和桌面电脑领域都有着广泛的应用。Debian是一个纯开源计划并着重在一个关键点上,稳定性。它同时也提供了最大的和完整的软件仓库给用户。个人建议你学习redhat,因为Redhat靠谱,内核也比较稳定,建议你看一下《Linux就该这么学》,就是基于Redhat讲的。

二、学会一些基础的命令。

Unix & Linux 命令行特别之处在于,一些选项的设计是遵循传统的, 只需认识一个就能在其它命令使用相似的功能。选项通常都是相关功能的英文缩写,并非毫无意义的英文字。你除了需要掌握一些基本的命令。像ls cd cat more mkdir rmdir vi rm tail ./ or sh这些。后面参数也得看会。

1. -h 通常意指 ‘h’ + uman, 也就是 human-readable, 代表者有: ls -lth, sort -h2. -v (小写) 通常意指 ‘v’ erbose, 代表者有: curl -v, ssh -v, python -v

2.1 -V (大写) 通常意指 ‘V’ ersion,与 –version 相比之下比较冷门,代表者有: gedit -V, firefox -V, openvt -V

2.2 –version (小写 v) 也是意指 ‘V’ ersion,代表者是九成的命令: python –version, konsole –version, gnome-shell –version, firefox –version, chromium-browser –version, bash –version, curl –version, tree –version, ls –version, journalctl –version, gedit –version, unp –version

2.3 –help, 同上, 九成的命令都有。不推荐 -h, 很多命令没有 -h, 亦或已经用来代表  ‘h’uman-readable。

三、掌握一些操作系统的基础感念。

对于一个高级的程序员,他们能利用好操作系统留下的接口去进行深层次编程,比如说多线程编程,就是利用CPU的资源实现相关程序,然而作为一个比较合格的程序员,这些,你是必须掌握的。像什么进程间通信,文件操作,多线程编程,sock编程,之类,必须熟练掌握,这样才能进行下面的操作,学习一些大数据,UI开发之类,然而,你会发现学完这个后,自己学习新东西,更容易上手。

四、学会代码规范,分布式管理代码的git服务。

一个合格的IT行业人员,对于他们的编码,一定是非常有条理的,这样不光整洁,比较好维护,要知道一个项目的代码,是有上万行以上的,如果不调理,那怎么后期维护之类。还有一点,要学会代码管理,git是一个好的工具,能让你快速的实现代码管理。望我们一同努力~发扬开源精神~