行业资讯

帮助中心 >  产品文档 >  运维 >  Linux运维工程师所需技能

以自己有限的经验说说作为一名合格的Linux运维工程师需要掌握的东西。

1、选择版本
现在发行版本已经让人有点眼花缭乱了。但是架构和底层的东西都是一样的,只是各自会有一些自己特有的工具。
LINUX有:CentOS、Red Hat、Oracle Linux、Debian、Ubuntu、SUSE
只要玩转精通一个,基本上就可以了。有空再去玩玩其它的发行版本。

Unix版本也要学学。
UNIX有:Oracle Solaris、IBM AIX、HP-UX、FreeBSD

在熟悉之前可以多安装系统,了解系统安装的每个步骤,自定义选择组件安装。

2、系统基础
要去了解和理解跟WIN不一样的思想,彻底改变固定的思维,如
开源的思想和本质
一切皆文件
根目录结构
根目录下每个文件存放什么文件
挂载分区
安装软件
源码编译安装软件
系统上各种服务的功能

3、各种命令
因为Linux下一般都是文字界面,不用图形界面,平时管理都要靠命令来操作。
掌握基本的命令至关重要,特别是一些基本的文件操作命令,如:
cp 复制文件
mkdir 新建目录
touch 新建文件
cat 显示文件内容
rm 删除目录和文件
cd 切换路径
ls 列出目录和文件
man 列出命令的详细说明
find 找文件

查看服务器性能的命令也是经常需要用到的:
top 查看进程运行情况
uptime 查看服务器运行时长和负载
sar 可以查看服务器历史性能情况

还有很多,就不一一列举了。
一切操作皆需要命令,想想就应该是非常之多了。


3、文本编辑器
在Linux下除了使用命令外,编辑文档是最频繁的操作。
熟练使用文本编辑器,在工作中是非常重要的。
一般在Linux下推崇的两款编辑器是vi和Emacs。
不过使用广泛的应该还是vi,毕竟跟Emacs比起来,上手比较快。
so,一定要熟练掌握vi的使用。
现在都是用vi的加强版vim。

切记:一定要熟练使用。


4、安装配置服务
这个算是最难的,但也是Linux的重点。
Linux之所有使用广泛,就是使用上面的各种服务。
最常用的服务有:
web服务:最常用,有APACHE/nginx,LAMP/LNMP架构要经常去搭建
DNS服务:DNS服务可以做负载架构,也可以给Oracle数据库提供解析服务,要会搭建。
文件服务:NFS服务、SMB服务等,提供文件共享服务,要会搭建。
DHCP服务:现在一般都是直接使用硬件交换路由设备了。
邮箱服务:主要有sendmail/postfix两个服务
FTP服务:现在也没有以前那么流行了,用的也不是很多。

5、写脚本
一般运维人员都要管理上百台服务器,不会写脚本,管理起来是相当困难的。
平时监控或者部署都需要用脚本来进行批量操作。
SHELL编程要熟练,开始可以多去看别人写的。
自己再慢慢尝试着去写,从简到难。
其中sed和awk工具要掌握,结合正则表达式,功能强大。


6、防火墙
Linux下iptables是一定要熟悉掌握的。
iptables还是很强大的,配置好了可以保证Linux的安全和防止各种攻击。


7、运维工具
现在部署、监控工具也是非常之多。
工具能减轻工程师的负担。
系统安装:Cobbler、Kickstart
系统软件部署与管理:ansible、SaltStack、Puppet、Cfengine、Capistrano、Func
系统监控:Nagios、Cacti、Zabbix、Ganglia
这个需要根据自己公司的需要来使用。


8、数据库
Linux上主要还是MySQL和Oracle。
运维工程师至少要会安装,后期一般都会交给DBA去管。
如果没有DBA的话,说不定也顺便要管了。


9、架构
架构也有很多种,有系统的架构,应用的架构。
系统的,比如LVS,要研究研究。
应用,可以学Nginx相关架构。
数据库的架构也可以学学。


10、学一门语言
这里主要是指后台脚本语言,有Perl、Python、Ruby和PHP。
PHP一般主要还是用来解析web。
在运维工作中,最广泛的还是Python,以前是推荐学习,现在是一定要学的。

 
当然,还可以专门研究系统内核,比如优化和剪裁内核等。
其实只要把系统学好了,其它的东西,你就算不精通,但至少安装和一些基本的使用,还是能很快上手的。


提交成功!非常感谢您的反馈,我们会继续努力做到更好!

这条文档是否有帮助解决问题?

非常抱歉未能帮助到您。为了给您提供更好的服务,我们很需要您进一步的反馈信息:

在文档使用中是否遇到以下问题: