一直以来,我都想把我学习Linux的过程记录下来,不是说给别人提供什么经验的,但是可以作为一个借鉴,少走点弯路。
最初接触Linux,是在大二的时候。当时我们老师在机房给我们安装了带有界面的ubuntu发行版操作系统,因为以前一直是在windows下看电影,打游戏,所以看到ubuntu之后,也没有多大的新奇感,只是觉得界面还比较不错,操作相对来说没有windows下的熟练,所以也就没有多大的兴趣。只是在上课的时候照着书本敲了敲命令,说真的,当时这些命令都不知道是什么意思,只是简单直接的照着书本去敲。一般是练习半节课的时间,剩下的时间都用来浏览网页了。现在想想,大好的时间都浪费了。
转眼间,到了2013年9月,我找到了人生的第一份工作,我是做开发的,但是免不了要和服务器打交道。当时还不知道我们用的服务器是什么东西,直到看到我的工作导师指导我部署服务之后,我才明白原来用的是Linux的服务器。当时无知到了连putty是个什么玩意都不清楚,也不知道ftp上传工具。现在想想,真替当时的自己感到汗颜(人不无知枉少年吗,哈哈!)。因为在工作中需要用到Linux,重新去看了一些Linux的知识,不过都是一些简单的Linux操作命令,只是为了工作需要。
后来换了一份工作,发现服务器依旧是Linux,觉得有必要系统学习一下Linux了。当时只知道有《鸟哥的Linux私房菜》这本书,但是我却并没有去看这本书,都是在网上搜索一些零散的教程。学习Linux,首先得有一个操作系统环境,说到这,不得不说我安装Linux操作系统折腾的那些事,我首先是在自己的机器上安装了一个ubuntu的带有界面的操作系统,虽然自己的机器比较破旧,但还是义无反顾的选择了安装双系统,因为不想抛弃我熟悉的windows操作系统,最终导致的结果就是,因为机器过旧,显卡配置过低,我连安装好的ubuntu操作系统都没有进入就直接给卸载了。因为ubuntu的界面优化的很好,所以导致系统过大,因此开始转战较小的centos操作系统,很顺利,这次终于给安装上了,当然,安装的过程中也遇到了很多问题,虽然当时都给解决了,但是很遗憾,没有将遇到的问题记录下来。
说到这,你们以为我的折腾就结束了吗?没有,这只是个开始。因为Linux操作系统不熟悉,很多问题需要到windows下查询资料,两个系统切来切去感觉不方便(因为没有在Linux系统下成功安装中文输入法),所以开始曲线救国的道路,找到了虚拟机。虚拟机选择的是VMWare,操作系统最开始也是选择安装ubuntu,因为带有界面,当时对于纯文字界面感觉还是比较陌生,操作起来不熟练,但是依然,因为电脑配置的原因,ubuntu没有正常启动。好吧,放弃,继续我的centos之路。其实在这中间因为觉得fedora的界面比较不错,所以还安装了fedora。但是因为我们的生产环境是redhat,centos是基于redhat的linux发行版,所以最终还是选择了centos(centos相对于redhat来说是完全免费的)。
虽然选择了centos发行版,但是只是装上了系统,对于Linux的系统性知识还是不懂,而且没有学习的方向,不知道如何去学习,每天也只是找一点资料,导致知其然不知其所以然。如此学了一段时间,感觉进展缓慢,有必要去看看书了。最先看到的书籍是《鸟哥的Linux私房菜》。分为2本,一本讲解基础知识,一本讲解服务器搭建。毫无疑问,我要从基础开始看起。说到这,就要说说我这个人了,我不是一个特别有恒心的人,所以鸟哥的这本书一直是断断续续的看的,所以很多东西只是看了个大概,知道基本概念。因为鸟哥的书比较早,我学习用的是centos 7,里面有一些新的功能和鸟哥的书不一样,比如sysvinit已经被改成Systemd了,还有iptables被firewalld取代,当然,原有的功能在centos 7下依然可以使用,还是有学习的必要。
2015年的时候,因为对于Linux操作系统还比较熟悉,所以在所在的项目小组承担了搭建java运行环境的任务,当时的功能也很简单,安装了一个jdk,配置了一个tomcat,因为采用的是分布式的部署,保证tomcat的端口不冲突就可以了。因为当时是用ssh工具(securecrt)连接的,看到了都是纯文本界面,操作也全部是命令行,导致彻底爱上了文本界面,我又把我桌面版的centos 7换成了最小化安装的纯文本界面(不得不提,最小化安装的确是挺锻炼人的)。
看完了《鸟哥的Linux私房菜基础篇》之后,虽然说有了一些基础知识,不至于对Linux一窍不通,但是还缺乏实战经验,仅有的只是安装了jdk和tomcat的java运行环境。但是真正的java线上运行环境需要的不仅仅是这些,redis,nginx这些都是需要的。要想学习这些,仅仅靠搜索一些网络教程并不靠谱,因为每个人的系统环境都不是一样的。在看了很多人的教程之后,寻找错误,解决问题,总结经验,形成自己的学习笔记。同时,加了一些Linux的运维群,向一些Linux的运维大牛取取经。在这还有一本书可以推荐一下,《Linux就该这么学》是一本比较偏向实战的书,对于做运维的哥们姐们来说可以当作一本参考教程(运维大牛请自动略过)。
如今,虽然我还是一个Linux小白,但是我在学习Linux的这条道路上是一直在前进的,我希望可以和喜欢Linux的人共同交流,共同进步。我也希望每一个学习Linux的人,都能持之以恒,不断前进,可以实现自己的野心。