阿里云
发表主题 回复主题
  • 383阅读
  • 0回复

《bash脚本编程》运维工程师的必备技能,通过大量的实例讲解提升学员实战能力

级别: 小白
发帖
0
云币
-35
目前,越来越多的企业应用会部署在 Linux 系统上的,而 Linux Shell 脚本可以极大地帮助我们完成这些应用的运维任务。这使得 Linux Shell 开发技能成为开发人员的一项重要的、有竞争力的技能。


到现在为止,你明白什么是shell脚本吗?如果明白最好了,不明白也没有关系,相信随着学习的深入你就会越来越了解到底什么是shell脚本。首先它是一个脚本,并不能作为正式的编程语言。因为是跑在linux的shell中,所以叫shell脚本。说白了,shell脚本就是一些命令的集合。举个例子,我想实现这样的操作:1)进入到/tmp/目录;2)列出当前目录中所有的文件名;3)把所有当前的文件拷贝到/root/目录下;4)删除当前目录下所有的文件。简单的4步在shell窗口中需要你敲4次命令,按4次回车。这样是不是很麻烦?当然这4步操作非常简单,如果是更加复杂的命令设置需要几十次操作呢?那样的话一次一次敲键盘会很麻烦。所以不妨把所有的操作都记录到一个文档中,然后去调用文档中的命令,这样一步操作就可以完成。其实这个文档呢就是shell脚本了,只是这个shell脚本有它特殊的格式。


Shell脚本能帮助我们很方便的去管理服务器,因为我们可以指定一个任务计划定时去执行某一个shell脚本实现我们想要需求。这对于linux系统管理员来说是一件非常值得自豪的事情。现在的139邮箱很好用,发邮件的同时还可以发一条邮件通知的短信给用户,利用这点,我们就可以在我们的linux服务器上部署监控的shell脚本,比如网卡流量有异常了或者服务器web服务器停止了就可以发一封邮件给管理员,同时发送给管理员一个报警短信这样可以让我们及时的知道服务器出问题了。

课程大纲:
第一阶段:Linux命令行和shell脚本的基本知识

第一课:linux组成、深入研究Linux内核的功能、bash提示符、man帮助手册、Linux目录结构、文件管理

第二课:进程管理、磁盘管理、文件的归档和压缩、Linux环境变量、命令别名

第三课:Linux输入输出重定向、管道、变量、脚本提示信息

第四课:Linux用户管理、Linux文件权限管理、文本编辑器vim的使用 (实例:监控系统中的所有用户的操作记录,并实时监测系统中具有安全问题的文件)

第五课:文本过滤器grep、文本流式编辑器sed、报表生成器awk (实例:对大型站点的访问日志进行处理,提取用户行为)

第六课:if-then语句、if-then-else语句、if嵌套语句、符合条件检查、case结构的使用(实例:编写一个nginx的服务脚本)

第七课:for循环、while循环、until循环、嵌套循环、文件数据的循环 (实例:编写脚本实时监控公司内的所有主机的在线情况、并实时监控服务器提供的服务是否正常)

第八课:常用的Linux系统信号、捕获Linux系统信号、怎么以后台模式运行脚本、制定Linux的任务计划、Linux脚本编程的函数使用(实例:每天的00:00对mysql数据库进行备份)

课程第二阶段:高级shell脚本编程(案例实战)

第九课:编写shell脚本实现hadoop集群的搭建

第十课:编写shell脚本实现mysql高可用集群的安装(corosync+pacemaker+mysql+nfs)

第十一课:编写shell脚本实现lamp架构的lvs net模型负载均衡集群的安装(lvs+apache+mysql+php+nfs)

第十二课:编写bash脚本 实现跳板机,只允许用户执行少量允许的命令

案例需求:

1、很多大公司的服务器都不允许直接登录,而是通过一个跳板机才能登录过去。在跳板机中,通常只能执行几个少数命令(如SSH),而其他命令是不允许执行的,那么怎样才能实现这个功能呢?

2、一些小公司,由于服务器比较少,不需要什么跳板机之类的说法,公司的开发运维人员加起来也就那么十几二十人,通常大家都知道root密码,所有人都是直接root登录上去,但是有时有人由于失误,把什么服务弄挂了,这时是肯定抓不到人的,因为所有人都知道密码,那么怎样才能知道谁都执行过什么命令呢?或者干脆只让他们执行少数允许的命令呢?


第十三课:编写shell脚本监控服务器状态案例

案例需求:为了持续观察服务器每天的基本运行状态,提供方便方便易读的集中的日志记录数据,需要结合shell脚本的任务计划设置,定期记录不同时间段服务器的CPU负载、内存和交换空间、磁盘使用率等各种信息。

1、每隔15分钟记录一次服务器的基本运行状况,包括:CPU负载、内存和交换空间、磁盘空间信息

2、最近用户等情况

3、记录当时的时间信息(以YYYY-mm-dd HH:MM的格式输出所有信息追加到文件/var/log/runrec/running.log中)

4、每天晚上00:00分时备份running.log文件;进行压缩备份,保存到/var/log/tuntec目录中;备份的文件名参考:runing.log-YYYYmmdd.tar.bz2;备份完成删除当天的记录文件(running.log)

授课时间:

课程预计2016年6月7日开课,预计课程持续时间为15周。

授课对象:

本课程适应于所有学生,完全可以零基础入学

课程环境:

操作系统:centos6.6

物理机尽量4g以上内存

讲师介绍:

本次课程将由zouhg讲师完成。zouhg讲师从2010年开始,从事大型web站点的运维工作,曾经任职多家互联网担任资深运维工程师的职位,对大型web站点运维有相当丰富的经验。

新颖的课程收费形式:“逆向收费”约等于免费学习,仅收取100元固定收费+300元暂存学费,学习圆满则全额奖励返还给学员!


本门课程本来打算完全免费,某位大神曾经说过“成功就是正确的方向再加上适度的压力”。考虑到讲师本身要付出巨大的劳动,为了防止一些朋友在学习途中半途而废,浪费了讲师的付出,为此我们计划模仿某些健身课程,使用“逆向收费”的方法。

在报名时每位报名者收取400元,其中100元为固定 收费,另外300是暂存学费,即如果学员能完成全部课程要求,包括完成全部的书面和互动作业,则300元全款退回,优秀的学员还可以获得礼品 奖励。如果学员未能坚持到完全所有的学习计划任务,则会被扣款。期望这种方式可以转化为大家强烈的学习愿望和驱动力!
课程授课方式:

1、 学习方式:老师发布教学资料、教材,幻灯片和视频,学员通过网络下载学习。同时通过论坛互动中老师对学员进行指导及学员之间相互交流。

2、 学习作业:老师每周布置书面及互动作业,学员需按时按质完成作业。

3、 老师辅导:根据作业批改中发现的问题,针对性给予辅导,帮助大家掌握知识。

4、 结业测验:通过测验,完成学业。

您是否对此课程还有疑问,那么请 点击进入 FAQ,您的问题将基本得到解答全国统一咨询热线 4008-010-006

课程现开始接受报名,报名方式

网上报名 请点击:bash脚本编程咨询Email :edu01@dataguru.cn,edu02@dataguru.cn

课程入门讨论咨询群:485625800(群内有培训公开课视频供大家免费观看) 咨询QQ: 2222010006 (上班时间在线)



工程师, 技能, 能力
本主题由 ~贝贝~ 于 2016-5-10 09:54 下沉





云栖社区小编整理
目前,越来越多的企业应用会部署在 Linux 系统上的,而 Linux Shell 脚本可以极大地帮助我们完成这些应用的运维任务。这使得 Linux Shell 开发技能成为开发人员的一项重要的、有竞争力的技能。


到现在为止,你明白什么是shell脚本吗?如果明白最好了,不明白也没有关系,相信随着学习的深入你就会越来越了解到底什么是shell脚本。首先它是一个脚本,并不能作为正式的编程语言。因为是跑在linux的shell中,所以叫shell脚本。说白了,shell脚本就是一些命令的集合。举个例子,我想实现这样的操作:1)进入到/tmp/目录;2)列出当前目录中所有的文件名;3)把所有当前的文件拷贝到/root/目录下;4)删除当前目录下所有的文件。简单的4步在shell窗口中需要你敲4次命令,按4次回车。这样是不是很麻烦?当然这4步操作非常简单,如果是更加复杂的命令设置需要几十次操作呢?那样的话一次一次敲键盘会很麻烦。所以不妨把所有的操作都记录到一个文档中,然后去调用文档中的命令,这样一步操作就可以完成。其实这个文档呢就是shell脚本了,只是这个shell脚本有它特殊的格式。


Shell脚本能帮助我们很方便的去管理服务器,因为我们可以指定一个任务计划定时去执行某一个shell脚本实现我们想要需求。这对于linux系统管理员来说是一件非常值得自豪的事情。现在的139邮箱很好用,发邮件的同时还可以发一条邮件通知的短信给用户,利用这点,我们就可以在我们的linux服务器上部署监控的shell脚本,比如网卡流量有异常了或者服务器web服务器停止了就可以发一封邮件给管理员,同时发送给管理员一个报警短信这样可以让我们及时的知道服务器出问题了。

课程大纲:
第一阶段:Linux命令行和shell脚本的基本知识

第一课:linux组成、深入研究Linux内核的功能、bash提示符、man帮助手册、Linux目录结构、文件管理

第二课:进程管理、磁盘管理、文件的归档和压缩、Linux环境变量、命令别名

第三课:Linux输入输出重定向、管道、变量、脚本提示信息

第四课:Linux用户管理、Linux文件权限管理、文本编辑器vim的使用 (实例:监控系统中的所有用户的操作记录,并实时监测系统中具有安全问题的文件)

第五课:文本过滤器grep、文本流式编辑器sed、报表生成器awk (实例:对大型站点的访问日志进行处理,提取用户行为)

第六课:if-then语句、if-then-else语句、if嵌套语句、符合条件检查、case结构的使用(实例:编写一个nginx的服务脚本)

第七课:for循环、while循环、until循环、嵌套循环、文件数据的循环 (实例:编写脚本实时监控公司内的所有主机的在线情况、并实时监控服务器提供的服务是否正常)

第八课:常用的Linux系统信号、捕获Linux系统信号、怎么以后台模式运行脚本、制定Linux的任务计划、Linux脚本编程的函数使用(实例:每天的00:00对mysql数据库进行备份)

课程第二阶段:高级shell脚本编程(案例实战)

第九课:编写shell脚本实现hadoop集群的搭建

第十课:编写shell脚本实现mysql高可用集群的安装(corosync+pacemaker+mysql+nfs)

第十一课:编写shell脚本实现lamp架构的lvs net模型负载均衡集群的安装(lvs+apache+mysql+php+nfs)

第十二课:编写bash脚本 实现跳板机,只允许用户执行少量允许的命令

案例需求:

1、很多大公司的服务器都不允许直接登录,而是通过一个跳板机才能登录过去。在跳板机中,通常只能执行几个少数命令(如SSH),而其他命令是不允许执行的,那么怎样才能实现这个功能呢?

2、一些小公司,由于服务器比较少,不需要什么跳板机之类的说法,公司的开发运维人员加起来也就那么十几二十人,通常大家都知道root密码,所有人都是直接root登录上去,但是有时有人由于失误,把什么服务弄挂了,这时是肯定抓不到人的,因为所有人都知道密码,那么怎样才能知道谁都执行过什么命令呢?或者干脆只让他们执行少数允许的命令呢?


第十三课:编写shell脚本监控服务器状态案例

案例需求:为了持续观察服务器每天的基本运行状态,提供方便方便易读的集中的日志记录数据,需要结合shell脚本的任务计划设置,定期记录不同时间段服务器的CPU负载、内存和交换空间、磁盘使用率等各种信息。

1、每隔15分钟记录一次服务器的基本运行状况,包括:CPU负载、内存和交换空间、磁盘空间信息

2、最近用户等情况

3、记录当时的时间信息(以YYYY-mm-dd HH:MM的格式输出所有信息追加到文件/var/log/runrec/running.log中)

4、每天晚上00:00分时备份running.log文件;进行压缩备份,保存到/var/log/tuntec目录中;备份的文件名参考:runing.log-YYYYmmdd.tar.bz2;备份完成删除当天的记录文件(running.log)

授课时间:

课程预计2016年6月7日开课,预计课程持续时间为15周。

授课对象:

本课程适应于所有学生,完全可以零基础入学

课程环境:

操作系统:centos6.6

物理机尽量4g以上内存

讲师介绍:

本次课程将由zouhg讲师完成。zouhg讲师从2010年开始,从事大型web站点的运维工作,曾经任职多家互联网担任资深运维工程师的职位,对大型web站点运维有相当丰富的经验。

新颖的课程收费形式:“逆向收费”约等于免费学习,仅收取100元固定收费+300元暂存学费,学习圆满则全额奖励返还给学员!


本门课程本来打算完全免费,某位大神曾经说过“成功就是正确的方向再加上适度的压力”。考虑到讲师本身要付出巨大的劳动,为了防止一些朋友在学习途中半途而废,浪费了讲师的付出,为此我们计划模仿某些健身课程,使用“逆向收费”的方法。

在报名时每位报名者收取400元,其中100元为固定 收费,另外300是暂存学费,即如果学员能完成全部课程要求,包括完成全部的书面和互动作业,则300元全款退回,优秀的学员还可以获得礼品 奖励。如果学员未能坚持到完全所有的学习计划任务,则会被扣款。期望这种方式可以转化为大家强烈的学习愿望和驱动力!
课程授课方式:

1、 学习方式:老师发布教学资料、教材,幻灯片和视频,学员通过网络下载学习。同时通过论坛互动中老师对学员进行指导及学员之间相互交流。

2、 学习作业:老师每周布置书面及互动作业,学员需按时按质完成作业。

3、 老师辅导:根据作业批改中发现的问题,针对性给予辅导,帮助大家掌握知识。

4、 结业测验:通过测验,完成学业。

您是否对此课程还有疑问,那么请 点击进入 FAQ,您的问题将基本得到解答全国统一咨询热线 4008-010-006

课程现开始接受报名,报名方式

网上报名 请点击:bash脚本编程咨询Email :edu01@dataguru.cn,edu02@dataguru.cn

课程入门讨论咨询群:485625800(群内有培训公开课视频供大家免费观看) 咨询QQ: 2222010006 (上班时间在线)

发表主题 回复主题
« 返回列表
«12345678910»
共10页
上一主题下一主题

限100 字节
如果您在写长篇帖子又不马上发表,建议存为草稿
 
验证问题: 62 + 24 = ?
上一个 下一个
      ×
      全新阿里云开发者社区, 去探索开发者的新世界吧!
      一站式的体验,更多的精彩!
      通过下面领域大门,一起探索新的技术世界吧~ (点击图标进入)

      版权声明

      开发者论坛为你提供“《bash脚本编程》运维工程师的必备技能,通过大量的实例讲解提升学员实战能力”的内容,论坛中还有更多关于 “《bash脚本编程》运维工程师的必备技能,通过大量的实例讲解提升学员实战能力” 的内容供你使用,该内容是网友上传,与开发者论坛无关,如果需要删除请联系zixun-group@service.aliyun.com,工作人员会在5个工作日内回复您。