linux学到什么程度可以找工作 学linux能找什么工作

网友提问:

Linux学会了好找工作吗?

优质回答:

对于一个不了解运维究竟是做什么的同学,可能或多或少会对运维的工作内容打上错误的标签,认为运维就是每天很苦逼的在机房工作,甚至可能干着一些搬服务器、上架服务器、整理网线、打标签、调试网络设备等一系列环节。

这么一听,肯定显得地位很低端。可在实际工作中,Linux其实是至关重要的。学习 Linux 更多的是向系统层面、运维工程师方向发展,它的岗位主要包括:云计算系统工程师、大数据运维工程师、运维开发工程师、数据库运维工程师等等,都是 Linux 运维工程师的进阶。

一、初级运维工程师

互联网时代,人人都离不开网络。作为一名程序员来说,最起码不需要你过多的对网络有深入的研究,对于一些最基本的网络知识是必须要有的。在找运维岗位的时候,网络部分也是必不可少的,简单了梳理了一下:

1.网络技术与应用

计算机网络基础:基本概念、网络功能和分类、网络发展史、网络协议和标准的区别、网络常见设备及其功能、网络拓扑结构、常用的数值转换方法;

网络参考模型:OSI 和 TCP/IP 分层模型的结构、OSI 各层功能、数据传输过程、设备与各层之间的关系;

网络传输介质:制作双绞线跳线、打接信息模块、连接各种网络设备、光纤的特点分类和应用、测试网络连通性;

网络布线:综合布线常识与材料、布设网络线缆、网络布线的测试与验收、布线设计图纸;

交换机 / 路由器的基本原理与配置:(常见的品牌:Cisco、HUAWEI、H3C等)、MAC 地址理论、以太网帧结构、交换机转发原理及基本配置等;

IP 地址理论及应用:IP 地址和子网掩码概念及分类、配置 IP 地址、实现路由器间互通;

网络层协议及应用:数据包格式、ARP/ICMP 协议原理;

静态路由:路由的基本原理、配置静态/默认路由、排查路由的故障问题;

网络接入:网络接入方式、配置宽带路由器及处理常见故障;

WLAN 的部署与安全:无线 AP、WLAN 基本常识;

设备管理:硬件组成、路由器的启动过程、恢复设备密码、交换机的 IOS 备份、恢复、升级方法、路由器交换机的产品X

ARP 攻击与欺骗:防御攻击及欺骗、ARP 防火墙、攻击和欺骗报文、抓包软件;

虚拟X VLAN:VLAN 原理、TRUNK 原理、配置 VLAN 和 TRUNK

单臂路由和 VTP:单臂路由的通信过程、配置单臂路由和 VTP;

2.Linux 基础

系统安装及服务控制:操作系统的安装方法、Linux 系统引导过程、控制 Linux 系统中的服务、优化 Linux 的启动任务;

目录和文件管理:常见的基本命令、查看文件内容方法、备份与恢复文档方法、VIM 文本编辑器的方法;

安装及管理程序:Linux 命令与应用程序的关系、Linux 应用程序的组成、软件包的封装类型、RPM 包管理工具(概述、格式、查看、安装、升级、卸载、维护等)、源码编译安装程序(编译安装的基本过程:解包、配置、安装、使用);

账号和权限管理:管理用户账号和组账号(用户账号、组账号、UID 和 GID 号)、用户账号/组账号管理(用户账号/组账号文件、添加 / 删除 / 修改用户账号)、查询账号、查看目录和文件的属性、设置目录和文件的权限、设置目录和文件的归属;

磁盘和文件系统管理:检查并确认新硬盘、规划硬盘分区、创建 / 挂载 / 卸载 文件系统、设置文件系统的自动挂载、查看磁盘使用情况、LVM 逻辑卷管理、LVM 管理命令、LVM 应用、设置磁盘配额(作用范围、限制对象、限制方法等)、磁盘配额管理;

进程和计划任务管理:查看和控制进程、crontab 周期性任务设置;

分析和排查系统故障:分析日志文件、排除系统启动类故障、排除文件系统类故障;

Linux 基础网络设置:查看并测试网络、设置网络地址参数;

二、中级运维工程师

基本服务:DHCP(动态配置主机地址服务)、Samba(文件共享服务)FTP(文件传输服务)、DNS(域名解析服务)

Web(网站服务):LAMP、LNMP、TomCat

数据库:MYSQL、Oracle、Redis、SQL Server、MongoDB 等;

Shell 脚本:if、for、while、case 语句、文本处理三剑客:grep、sed、awk 等;

系统安全及应用:账号安全控制、系统引导及登录控制、弱口令检测及端口扫描;

远程访问及控制:SSH 远程管理、访问控制;

防火墙:表、链结构、数据包过滤的匹配流程、编写防火墙规则、SNAT / DNAT 策略及应用、规则的导出 / 导入、防火墙脚本;

YUM 仓库:部署 YUM 软件仓库、YUM 工具管理软件包;

PXE + Kickstart:远程安装服务 + 无人值守安装;

Rsync + inotify:远程同步备份工具 + 实时同步;

三、高级运维工程师

Web 缓存X:Squid X(传统X、透明X、ACL 访问控制)

虚拟化技术:KVM + OpenStack

集XLVS + Keepalived(负载均衡 + 双机热备)、Haproxy + Nginx 搭建 Web 集X;

MySQL 主从复制与读写分离

运维监控软件:Cacti、Nagios、Zabbix(主流)、Prometheus、Grafana

自动化:Ansible、SaltStack、Jenkins、Puppet

容器技术:Docker、Kubernetes

日志分析系统:ELK

编程语言:Shell、Python 等

性能优化:是最大化提升服务承载量,也是比较难的,可从硬件层、操作系统层、软件层和架构层维度展开思考进行优化

四、资深方向

如果你想要往更高技术领域发展的话,同时也会有更多的选择。比如

运维开发方向:主要是 Python 运维开发;

自动化运维方向:主要是在原来的自动化运维领域进行深入研究;

云计算方向:主要是针对现在比较流行的容器技术:Docker、Kubernetes 以及虚拟化技术等;

架构师方向:架构师的话,需要覆盖的技术领域就比较广了,而且需要的工作经验在 5 年工作以上;

大数据方向:主要针对开源大数据系统需要有深入的研究;

相信通过这四大阶段的大致介绍,一定让同学对运维有了更近一步的了解,和自身职业发展的定位了吧?如果有对Linux感兴趣的同学,也欢迎私信我,我可以把以上介绍的知识模块学习视频发给大家。学习是一个很漫长的过程,让我们一起加油吧!

其他网友回答

Linux 基础好的话,可以考虑往运维方面发展。

其他网友回答

会小机挺吃香的。