详解Linux运维工程师必备技能

张戈大神是腾讯的一名运维,张戈博客也是我接触到第一个 Linux 运维师的博客,最近也在接触 Linux,说到工具,在行外可以说是技能,在行内一般称为工具,就是运维必须要掌握的工具。

我就大概列出这几方面,这样入门就基本没问题了。

Linux 系统如果是学习可以选用 Redhat 或 CentOS,特别是 CentOS 在企业中用得最多,当然还会有其它版本的,但学习者还是以这 2 个版本学习就行,因为这两个版本都是兄弟,没区别的,有空可以再研究一下 SUSE,有些公司也喜欢用。

工具如下:

1、Linux 系统基础

这个不用说了,是基础中的基础,连这个都不会就别干了,参考书籍,可以看鸟哥 linux 基础篇,至少要掌握这书 60%内容,没必须全部掌握,但基本命令总得会吧。

2、网络服务

服务有很多种,每间公司都会用到不同的,但基础的服务肯定要掌握,如 FTP, DNS,SAMBA, 邮件, 这几个大概学一下就行,LAMP 和 LNMP 是必须要熟练,我所指的不是光光会搭建,而是要很熟悉里面的相当配置才行,因为公司最关键的绝对是 WEB 服务器,所以 nginx 和 apache 要熟悉,特别是 nginx 一定要很熟悉才行,至少有些公司还会用 tomcat,这个也最好学一下。其实网络服务方面不用太担心,一般公司的环境都已经搭建好,就算有新服务器或让你整改,公司会有相应的文档让你参照来弄,不会让你乱来的,但至少相关的配置一定要学熟,而且肯定是编译安装多,那些模块要熟悉一下他的作用,特别是 PHP 那些模块。

这上面 2 点只是基础,也是必要条件,不能说是工具,以下才是真正的要掌握的工具。

3、shell 脚本和另一个脚本语言

shell 是运维人员必须具备的,不懂这个连入职都不行,至少也要写出一些系统管理脚本,最简单也得写个监控 CPU,内存比率的脚本吧,这是最最最基本了,别以为会写那些猜数字和计算什么数的,这些没什么作用,只作学习意义,写系统脚本才是最有意义,而另一个脚本语言是可选的,一般是 3P,即 python, perl 和 php,php 就不需要考虑了,除非你要做开发,我个人建议学 python 会比较好,难实现自动化运维,perl 是文本处理很强大,反正这两个学一个就行了。

4、sed 和 awk 工具

必须要掌握,在掌握这两个工具同时,还要掌握正则表达式,这个就痛苦了,正则是最难学的表达式,但结合到 sed 和 awk 中会很强大,在处理文本内容和过滤 WEB 内容时十分有用,不过在学 shell 的同时一般会经常结合用到的,所以学第 3 点就会顺便学第 4 点。

5、文本处理命令

sort, tr, cut, paste, uniq, tee 等,必学,也是结合第 3 点时一并学习的。

6、数据库

首选 mysql,别问我为什么不学 sqlserver 和 oracle,因为 Linux 用得最多绝对是 mysql,增删改查必学,特别要学熟查,其它方面可能不太需要,因为运维人员使用最多还是查,哪些优化和开发语句不会让你弄的。

7、防火墙

不学不行,防火墙也算是个难点,说难不难,说易不易,最重要弄懂规则,如果学过 CCNA 的朋友可能会比较好学,因为 iptables 也有 NAT 表,原理是一样的,而 FILTER 表用得最多,反正不学就肯定不合格。

8、监控工具

十分十分重要,我个人建议,最好学这 3 个,cacti,nagios,zabbix,企业用得最多应该是 nagios 和 zabbix,反正都学吧,但 nagios 会有点难,因为会涉及到用脚本写自动监控,那个地方很难。

9、集群和热备

这个很重要,肯定要懂的,但到了公司就不会让你去弄,因为新手基本不让你碰,集群工具有很多,最好学是 LVS,这是必学,最好也学学 nginx 集群,反向代理,还有热备,这个就更多工具能实现了,像我公司是自己开发热备工具的,mysql 热备也要学,就是主从复制,这个别告诉我容易,其实不容易的,要学懂整个流程一点也不容易,只照着做根本没意思。

10、数据备份

不学不行,工具有很多,但至少要把 RAID 的原理弄懂,特别是企业最常用的 1+0 或 0+1,自己做实验也要弄出来,备份工具有很多,如 tar, dump, rsync 等,最好多了解一下。

算了,说到这 10 点已经够你受了,应该可以入门了,因为有些技术会比较难学,例如 apache 和 nginx 中还有些很重要的技术,如系统调优和服务优化,还有程序优化,这些在没接触工作前很难学习到的,所以先把这 10 点学了吧,估计要学熟至少 3 个月不止,就脚本那部分已经让你很吃力了,我建议是先学熟 shell,等工作后再学另一门脚本语言,这样会比较好。

以上就是踏入 Linux 运维工程师需要掌握的工具,其实还有很多工具要掌握的,但你在学习环境中是很难学到,最后我再提醒一下,这里所指的工具相当于技能,而不是像 windows 或 ubuntu 那些图形化工具,那些工具没用的,还有,学 Linux 就别装图形界面,这样虚拟机就不用吃太多内存,而且绝对不建议在真机上装 Linux,根本达不到学习效果。

沈唁志|一个PHPer的成长之路! 原创文章采用CC BY-NC-SA 4.0协议进行许可,转载请注明:转载自:详解Linux运维工程师必备技能

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏SDNLAB

OpenDaylight发布氧版本(Oxygen):不断提高的成熟度和生产稳定性

4367
来自专栏小勇DW3

【转载】java架构师进阶之路

Java架构师,应该算是一些Java程序员们的一个职业目标了吧。很多码农码了五六年的代码也没能成为架构师。那成为Java架构师要掌握哪些技术呢,总体来说呢,有两...

8493
来自专栏Python爬虫与算法进阶

爬虫学到什么程度可以去找工作

随便看看知乎上的教程就可以入门了,就Python而言,会requests当然是不够的,还需要了解scrapy和pyspider这两个框架,scrapy_redi...

1341
来自专栏ASP.NET MVC5 后台权限管理系统

ASP.NET MVC5+EF6+EasyUI 后台管理系统(60)-系统总结

前言: 起初写这个框架的时候,可以说在当时来说并不是很流行的设计模式,那是在2012年,面向对象的编程大家都很熟悉, 但是“注入、控制反转(DI,IOC,依赖注...

3718
来自专栏Android 开发者

[译] Android 的多摄像头支持

从 Android P 开始,添加了对逻辑多摄像头和 USB 摄像头的支持。这对 Android 开发者来说意味着什么?

3954
来自专栏杨建荣的学习笔记

insert导致的性能问题大排查(r11笔记第26天)

今天开发的同学小窗口消息给我,向我咨询一个ORA错误的问题。 错误代码是ORA-30036,使用oerr ora 30036查看,由于是undo空间无法扩展导致...

35015
来自专栏张善友的专栏

Followme Devops实践之路

想要提高开发团队效率,势必要有一套完整而成熟的开发流程方案,除了sprint迭代开发模式之外,还有近几年流行的devops流程,都是可以大幅度提高开发效率的工具...

2293
来自专栏CSDN技术头条

数据密集型系统架构设计

按照使用的资源类型划分,我们可以把系统分为三大类型:IO密集型、计算密集型,数据密集型。系统的类型反映了系统的主要瓶颈。现实情况中,大部分系统在由小变大的过程中...

2238
来自专栏闰土大叔

为什么我不推荐你使用vue-cli创建脚手架?

最近在知乎看到一个问题,原问题如下: “ 很奇怪,为什么现在能找到自己手动创建vue脚手架的文章非常少,而且大家似乎对webpack4的热情并不高,对于想基于v...

57113
来自专栏前端大白专栏

关于react-native的各种报错的最终解决方案

2539

扫码关注云+社区

领取腾讯云代金券