Liunx运维工程师OPS必会技能之

Shell简介

Shell是Unix/Liunx系统下的脚本编程语言,属于一种解释性计算机语言,与Python语言一样是解释执行,并不需要编译后执行,故而Shell也是可以编写程序的。

Shell本身也是一个程序,在Unix/Liunx系统中,Shell是连接着unix/Liunx内核和用户及其他应用程序的中间件,简单来说Shell是Unix/Liunx内核和用户之间的桥梁,是两者之间交流沟通的工具。我们学习Liunx时,所使用的终端就是一个shell的交互终端。

Shell脚本的功能是十分强大的,特别对于Unix/Liunx系统的日常管理是完全能够满足需求的。比如对于运维师(负责Unix/Liunx服务器的运行和维护)而言,系统的日常工作:字符串或者文本检索,文件的创建与查找,更改系统的设置,监控服务器性能以及安全,发送对应的报警信息,大规模的软件自动部署(例如LAPM自动一键部署),因此对于一名专业的系统服务器运维师而言,Shell脚本是必须掌握的。

云主宰苍穹—Shell桥梁作用

Shell语言简介

Shell脚本语言是一种常用与服务端的计算机语言,自然没有通用计算机语言C、C++、Java、C#、Python功能强大。古语有言,麻雀虽小,然五脏俱全也。Shell脚本也有基本的编程元素:

1、字符串、变量、数组、算术运算加减乘除、逻辑运算、还有注释;

2、分支结构if—else,循环结构for、while,until等流程控制语句;

3、Shell同时也支持自定义的函数,主要为了方便模块化管理。

Shell常用分类

Liunx系统一般都自带的有默认的Shell程序软件,如同编译器GCC,C语言标准库,文本编辑器Vi/Vim、Emacs一样在安装Liunx系统是就存在的。一般常用的Shell有bash、sh、csh、ash等等。

1、bashshell是Liunx默认的shell,有GNU组织开发;

2、sh全称Bourneshell,有ATT公司SteveBourne开发;

3、csh是伯克莱大学BillJoy设计,因语言类似C语言故而称Cshell;

4、ash的优点就是占用的资源极少,属于轻量级的shell,适用于低内存的系统,比如嵌入式开发系统。

5、查看Shell

Shell是一个程序,一般都是放在/bin或者/user/bin目录下,当前Linux系统可用的Shell都记录在/etc/shells文件中。

在Liunx终端,输入命令:echo$SHELL,即可查看当前Liunx系统的默认shell。

6、Shell提示符

在BashShell中,对于普通用户的提示符是一个美元符号$,而对于超级用户Root的提示符则是一个井字符号#,shell提示符的作用是提示或者等待用户输入shell命令。

服务端运维师

在IT领域里面,UNIX/Liunx、Mac和Windows三国鼎立,瓜分了整个服务端的系统,特别由于Liunx的开源以及免费,几乎整个服务端系统都是Liunx的天下了。

云主宰苍穹—服务器端系统占比

随着Linux在服务器上的广泛应用:用来搭建Web服务器、数据库服务器、负载均衡服务器(CDN)、邮件服务器、DNS服务器、反向代理服务器、VPN服务器、路由器等。同时由于Linux服务器的大规模应用,市场急需一批专业的人才去管理,这群人就是Linux运维工程师(OPS)。OPS的主要工作就是搭建起运行环境,让程序员写的代码能够高效、稳定、安全地在服务器上运行,他们属于后勤部门。OPS的要求并不比程序员低,优秀的OPS拥有架设服务器集群的能力,还会编程开发常用的工具。Liunx鱼尾工程师(OPS)这项工作的细节内容包括:

1、安装操作系统,例如CentOS、Ubuntu、Kali等等Liunx发行版。

2、部署代码运行环境,例如网站后台语言采用PHP或者Python,就需要安装Nginx、Apache、MySQL、PHP运行时等,LAPM的批量部署。

3、及时修复漏洞,防止服务器被攻击,这包括Linux本身漏洞以及各个软件的漏洞,特对于服务器的安全问题。

4、根据项目需求升级软件,例如PHP7.0在性能方面获得了重大突破,如果现在服务器压力比较大,就可以考虑将旧版的PHP5.x升级到PHP7.0。

5、监控服务器压力,别让服务器宕机。例如淘宝双十一的时候就会瞬间涌入大量用户,导致部分服务器宕机,网页没法访问,甚至连支付宝都不能使用,高并发和高流量的访问。

6、分析日志,及时发现代码或者环境的问题,通知相关的程序猿进行修复。




转载请注明:http://www.aierlanlan.com/grrz/4332.html