自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(207)
  • 收藏
  • 关注

原创 LINUX awk扩展应用

问题本案例要求使用awk工具完成下列两个任务:去除文件重复行:提取/etc/passwd文件的第7列,保存为a1.txt;然后排除a1.txt文件的重复行,将结果另存为a2.txt分析Web日志的访问量排名,要求获得客户机的地址、访问次数,并且按照访问次数排名方案1)awk经典去重基本用法:awk ‘!a[$0]++’ filename 。其中a为数组名,$0为处理对象,表示要去除...

2019-06-04 21:27:04 277

原创 LINUX awk流程控制

问题本案例要求了解awk的流程控制操作,可自行设置awk语句来有验证以下操作:if分支结构(双分支、多分支)while/for循环结构break、continue、next等其他控制语句步骤实现此案例需要按照如下步骤进行。步骤一:awk过滤中的if分支结构1)单分支统计/etc/passwd文件中UID小于或等于500的用户个数:[root@svr5 ~]# awk -F: '...

2019-06-04 21:25:56 288

原创 LINUX awk综合脚本应用

问题本案例要求编写脚本getupwd-awk.sh,实现以下需求:找到使用bash作登录Shell的本地用户列出这些用户的shadow密码记录按每行“用户名 --> 密码记录”保存到getupwd.log,如图-2所示图-2步骤实现此案例需要按照如下步骤进行。步骤一:任务需求及思路分析编写getupwd-awk.sh脚本的任务要求如下:分析出使用bash作登录Shell...

2019-06-04 21:23:05 386

原创 LINUX awk处理条件

问题本案例要求使用awk工具完成下列过滤任务,注意awk处理条件的设置:列出UID间于501~505的用户详细信息输出/etc/hosts文件内以127或192开头的记录列出100以内整数中7的倍数或是含7的数步骤实现此案例需要按照如下步骤进行。步骤一:认识awk处理条件的设置创建测试文件passwd.txt文件:[root@svr5 ~]# head -7 /etc/passw...

2019-06-04 21:21:27 1050 1

原创 LINUX 使用awk提取文本

问题本案例要求使用awk工具完成下列过滤任务:练习awk工具的基本用法提取本机的IP地址、根分区使用率格式化输出/etc/passwd文件中的用户名、UID、宿主目录信息格式化输出passwd文件内容时,要求第一行为列表标题,最后一行提示一共已处理文本的总行数,如图-1所示。图-1步骤实现此案例需要按照如下步骤进行。步骤一:awk文本过滤的基本用法1)基本操作方法格式:...

2019-06-04 21:16:01 6118

原创 LINUX sed综合脚本应用

问题本案例要求编写脚本getupwd.sh,实现以下需求:找到使用bash作登录Shell的本地用户列出这些用户的shadow密码记录按每行“用户名 --> 密码记录”保存到getupwd.log,如图-1所示图-1方案基本思路如下:1)先用sed工具取出登录Shell为/bin/bash的用户记录,保存为临时文件/tmp/urec.tmp,并计算记录数量2)再结合whi...

2019-06-04 21:07:03 361

原创 LINUX sed多行文本处理

问题本案例要求使用sed工具来完成下列任务操作:修改主机名配置文件修改hosts文件,添加两条映射记录:192.168.4.5 与 svr5.tarena.com、svr5,还有119.75.217.56与www.baidu.com方案sed工具的多行文本处理操作:i:在指定的行之前插入文本a:在指定的行之后追加文本c:替换指定的行步骤实现此案例需要按照如下步骤进行。步骤一:...

2019-06-04 21:05:47 1641

原创 LINUX 使用sed修改系统配置

问题本案例要求熟悉课上的sed应用案例,并编写脚本anonftp.sh,实现以下功能:通过yum安装vsftpd软件包修改vsftpd服务配置,开启匿名上传调整/var/ftp/pub目录权限,允许ftp写入启动vsftpd服务,并设置开机自运行方案步骤实现此案例需要按照如下步骤进行。步骤一:认识课堂上的sed练习1)修改默认运行级别确认当前的运行级别配置(以id:开头的行)...

2019-06-04 21:04:10 925

原创 LINUX sed基本用法

问题本案例要求熟悉sed命令的p、d、s等常见操作,并结合正则表达式,完成以下任务:删除文件中每行的第二个、最后一个字符删除文件中每行的第二个、最后一个单词将文件中每行的第一个、第二个字符互换将文件中每行的第一个、第二个单词互换删除文件中所有的数字、行首的空格为文件中每个大写字母添加括号方案sed文本处理工具的用法:用法1:前置命令 | sed [选项] '编辑指令'用法...

2019-06-04 20:59:30 696

原创 LINUX 使用正则表达式

问题本案例要求熟悉正则表达式的编写,完成以下任务:利用egrep工具练习正则表达式的基本用法提取出httpd.conf文件的有效配置行编写正则表达式,分别匹配MAC地址、E-Mail邮箱地址、IP地址、主机名方案步骤实现此案例需要按照如下步骤进行。步骤一:正则表达式匹配练习1)典型的应用场合:grep、egrep检索文本行使用不带-E选项的grep命令时,支持基本正则匹配模式。...

2019-06-04 08:20:12 819

原创 LINUX expect预期交互

问题本案例要求编写一个expect脚本,实现SSH登录的自动交互:提前准备好目标主机,IP地址为192.168.4.5用户名为mike、密码为1234567执行脚本后自动登入,并且在目标主机建立测试文件 /tmp/mike.txt方案expect是基于TCL编写的自动交互式程序,可以为交互式过程(比如FTP、SSH等登录过程)自动输送预先准备的文本或指令,而无需人工干预。触发的依据是预...

2019-06-04 08:08:24 223

原创 LINUX 使用Shell数组

问题本案例要求编写一个Shell脚本getips.sh,相关要求如下:能够反复从键盘输入IP地址,保存到数组当用户输入“EOF”后结束输入,显示数组IPADDS各元素的值最后报告本次录入的IP地址个数、其中第1个录入的地址方案建立数组的方法:格式1,整体赋值:数组名=(值1 值2 … … 值n)格式2,单个元素赋值:数组名[下标]=值查看数组元素的方法:获取单个数组元素:...

2019-06-04 08:06:35 282

原创 LINUX 字符串初值的处理

问题本案例要求编写一个脚本sumx.sh,求从1-x的和,相关要求如下:从键盘读入x值当用户未输入任何值时,默认按1计算方案步骤实现此案例需要按照如下步骤进行。步骤一:认识字符串初值的最常见处理方法1)只取值,${var:-word}若变量var已存在且非Null,则返回 $var 的值;否则返回字串“word”,原变量var的值不受影响。变量值已存在的情况:[root@sv...

2019-06-04 08:02:40 385

原创 LINUX 字符串截取及切割

问题使用Shell完成各种Linux运维任务时,一旦涉及到判断、条件测试等相关操作时,往往需要对相关的命令输出进行过滤,提取出符合要求的字符串。本案例要求熟悉字符串的常见处理操作,完成以下任务练习:参考PPT示范操作,完成子串截取、替换等操作根据课上的批量改名脚本,编写改进版renfilex.sh:能够批量修改当前目录下所有文件的扩展名,修改前/后的扩展名通过位置参数$1、$2提供方...

2019-06-04 08:00:41 8403

原创 LINUX 脚本退出及参数迁移

问题本案例要求编写两个Shell脚本,相关要求如下:整数检测脚本chkint.sh:能够检查从键盘键入的值,如果是整数(利用expr运算的返回值来检测)则显示输入的整数结果,否则报错退出整数求和脚本mysum.sh:整数值以位置参数提供,个数不定方案由于Shell默认不支持小数运算,因此可以利用expr对提供的整数值进行运算,若执行报错,则说明提供的值不合法。比如:[root@svr5...

2019-06-04 07:54:30 570

原创 LINUX 使用Shell函数

问题本案例要求编写两个Shell脚本,相关要求如下:一个funexpr.sh脚本:由用户在执行时提供2个整数值参数,计算这2个整数的加、减、乘、除结果为源码安装的Web服务编写服务脚本myhttpd:启动、停止操作都使用函数实现;已知httpd安装路径位于/usr/local/httpd方案在Shell脚本中,将一些需重复使用的操作,定义为公共的语句块,即可称为函数。通过使用函数,可以使...

2019-06-04 07:52:44 214

原创 LINUX 基于case分支编写服务脚本

问题本案例要求编写myprog服务脚本,相关要求如下:能支持start、stop、restart等控制参数控制参数通过位置变量$1传入能通过chkconfig命令来管理此服务服务操作为sleep进程的开启/关闭/重启方案case分支属于匹配执行的方式,它针对指定的变量预先设置一个可能的取值,判断该变量的实际取值是否与预设的某一个值相匹配,如果匹配上了,就执行相应的一组操作,如果没有任...

2019-06-04 07:49:41 199

原创 LINUX 使用while循环结构

问题本案例要求编写三个使用while循环的脚本程序,分别实现以下目标:批量添加用户账号:stu1-stu20批量删除用户账号:stu1-stu20检测192.168.4.0/24网段,列出不在线的主机地址方案while循环属于条件式的执行流程,会反复判断指定的测试条件,只要条件成立即执行固定的一组操作,直到条件变化为不成立为止。所以while循环的条件一般通过变量来进行控制,在循环体内...

2019-06-04 07:46:41 3406

原创 LINUX 使用for循环结构

问题本案例要求编写一个Shell脚本chkhosts.sh,利用for循环来检测多个主机的存活状态,相关要求及说明如下:待检测的多个目标IP地址,存放在ipadds.txt文件内ping检测可参考前一天的pinghost.sh脚本脚本能遍历ping各主机,并反馈存活状态执行检测脚本以后,反馈结果如图-1所示。图-1方案在Shell脚本应用中,常见的for循环采用遍历式、列表式的执...

2019-06-04 07:44:57 1094

原创 LINUX 使用if选择结构

问题本案例要求编写3个Shell脚本,分别实现以下目标:检测/media/cdrom目录,若不存在则创建检测并判断指定的主机是否可ping通从键盘读取一个分数,判断成绩分档(优秀、良好、不合格)方案if单分支的语法组成:if 条件测试 then 命令序列fiif双分支的语法组成:if 条件测试 then 命令序列1 else 命令序列2fi...

2019-06-04 07:42:28 604

原创 LINUX 条件测试操作

问题本案例要求参考PPT上的示例,分别练习以下条件测试操作:识别文件/目录的状态比较整数值的大小字符串匹配多个条件/操作的逻辑组合步骤实现此案例需要按照如下步骤进行。步骤一:条件测试的基本用法1)一般用法使用“test 表达式”或者[ 表达式 ]都可以,表达式两边至少要留一个空格。比如,判断变量X的值是否大于5,操作如下:[root@svr5 ~]# X=10[root@s...

2019-06-04 07:39:43 262

原创 LINUX 条件测试操作

问题本案例要求参考PPT上的示例,分别练习以下条件测试操作:识别文件/目录的状态比较整数值的大小字符串匹配多个条件/操作的逻辑组合步骤实现此案例需要按照如下步骤进行。步骤一:条件测试的基本用法1)一般用法使用“test 表达式”或者[ 表达式 ]都可以,表达式两边至少要留一个空格。比如,判断变量X的值是否大于5,操作如下:[root@svr5 ~]# X=10[root@s...

2019-06-04 07:39:43 336

原创 LINUX Shell中的数值运算

问题本案例要求熟悉Linux Shell环境的特点,主要练习以下操作:使用expr、KaTeX parse error: Expected 'EOF', got '\*' at position 160: …expr命令乘法操作应采用 \̲*̲ 转义,避免被作为Shell通…符号。首先定义变量X=1234,然后分别计算与78的加减乘除和求模运算结果:[root@svr5 ~]# X=12...

2019-06-04 07:34:37 609

原创 LINUX 变量的扩展应用

问题本案例要求进一步熟悉Shell变量的赋值控制,主要练习或验证下列内容:1)三种引号对赋值的影响2)使用read命令从键盘读取变量值3)使用export发布全局变量步骤实现此案例需要按照如下步骤进行。步骤一:三种引号对变量赋值的影响1)双引号的应用使用双引号可以界定一个完整字符串,也允许在范围内通过$调用其他变量的值。大多数情况下双引号可以省略,但包含空格等特殊字符的情况下例外...

2019-06-03 08:12:28 231

原创 LINUX 使用Shell变量

问题本案例要求熟悉Shell变量的使用,主要练习或验证下列内容:1)定义/赋值/查看变量2)环境/预定义/位置变量的应用除了学会建立和引用变量以外,还要认识环境变量PWD、USER、HOME、SHELL,还有预定义变量0、0、0、、、、?、KaTeX parse error: Expected 'EOF', got '#' at position 1: #̲、*,以及位置变量$1、$2、$...

2019-06-03 08:09:45 146

原创 LINUX 简单Shell脚本的设计

问题本案例要求编写三个脚本程序,分别实现以下目标:1)在屏幕上输出一段文字“Hello World”2)能够为本机快速配好Yum仓库3)能够为本机快速装配好vsftpd服务方案当脚本的代码量较大,或者脚本需要传递给其他合作者使用时,规范的脚本可以显著降低代码维护的难度(可能几个月以后需要更改功能)、提高代码的易读性(小伙伴不会频繁的来问你“这个变量用来干吗的”之类的问题)。注意:在学...

2019-06-03 08:04:11 287

原创 LINUX Shell基础应用

问题本案例要求熟悉Linux Shell环境的特点,主要练习以下操作:1)切换用户的Shell环境2)练习命令历史、命令别名3)重定向标准输入/输出/错误输出4)管道操作实践方案步骤实现此案例需要按照如下步骤进行。步骤一:切换用户的Shell环境若需要临时使用另一种Shell环境,可以直接执行对应的Shell解释器程序,比如只要执行zsh可以切换到zsh命令行环境。[root...

2019-06-03 08:01:37 294

原创 LINUX EMOS部署及管理

问题XX公司使用了好几年的263企业邮箱,当时的费用比较昂贵(100用户版,2万/年),而且在邮件数量、附件大小等方便存在限制;随着公司规模不断扩大,员工数已迅速突破至300多人,未分配企业邮箱的员工只能使用网易、新浪等免费邮箱,导致企业内部的业务沟通存在一定延迟。鉴于上述情况,公司急需建立统一的、低成本的邮件系统平台。而且因为员工的计算机水平不一,除了支持邮件客户端软件以外,还希望能通过We...

2019-06-03 07:52:36 521

原创 LINUX 网站实时镜像

问题公司的网站服务器有两个镜像站点,分别放在北京和上海的IDC机房。现在要求利用rsync同步机制实现“服务器A–>服务器B”的实时镜像同步。需要完成的配置任务如下:1)双方的目录均为 /var/www/html/2)以 svr5 为同步发起方,配置 inotify+rsync 同步操作3)以 pc205 为同步目标,基于SSH方式进行验证方案使用两台RHEL6虚拟机,其中一台...

2019-06-03 07:48:57 334

原创 LINUX rsync+rsync同步

问题采用rsync+SSH的远程同步时,使用起来是最简单的,但是目标用户也被允许SSH登录到远程主机的Shell环境。在某些情况下,企业会希望只提供需要认证的同步目录资源,但并不希望提供远程登录,这时候就可以采用rsync+rsync同步。沿用练习一,需要完成的配置任务如下:1)在rsync源端将/usr/src 目录发布为同步资源:共享名为tools,仅允许用户 ruser 以密码 pwd...

2019-06-03 07:46:52 108

原创 本地及远程rsync同步

问题本案例要求通过rsync命令工具来完成本地、远程同步操作,了解增量同步的效果、相关命令选项的用途。需要完成的配置任务如下:测试rsync上传、下载同步的基本用法测试rsync的命令选项-a、-v、–delete、-n的用途使用rsync从SSH服务器下载 /boot/ 目录使用rsync将本地的/etc/ 目录到上传到SSH服务器方案rsync的备份方式是增量备份,只传输本地与...

2019-06-03 07:45:15 122

原创 LINUX 防火墙脚本设计

问题本案例要求熟悉防火墙脚本的典型构成,完成以下任务:1)针对Linux网关编写脚本,提供SNAT共享上网策略、DNAT发布Web、FTP服务的策略2)编写网络型、主机型防护规则3)使用IP地址黑/白名单方案Linux防火墙脚本的典型构成:1)定义基本环境变量2)必要的内核模块和 /proc 参数调整3)具体的防火墙策略设计,包括各链的默认规则,按表、链组织的规则沿用练习三,采...

2019-05-31 08:08:53 350

原创 LINUX 配置DNAT发布内网服务器

问题本案例要求熟悉DNAT策略的典型应用场景,完成以下任务:1)通过DNAT策略发布内网的Web服务器2)通过DNAT策略发布内网的SSH服务器3)通过DNAT策略发布内网的FTP服务器方案沿用练习二,采用三台RHEL6虚拟机svr5、gw1、pc120,如图-3所示。其中,虚拟机svr5作为局域网络的测试机,接入NAT网络(virbr0);虚拟机pc120作为Internet的测试机...

2019-05-31 08:06:15 1399

原创 LINUX 配置SNAT实现共享上网

问题本案例要求熟悉SNAT策略的典型应用场景,完成以下任务:1)搭建一套“局域网-Linux网关-互联网”的案例环境2)在Linux网关上配置SNAT策略,实现局域网主机的共享上网3)修改现有的SNAT策略,验证MASQUERAD伪装的有效性方案采用三台RHEL6虚拟机svr5、gw1、pc120,如图-2所示。其中,虚拟机svr5作为局域网络的测试机,接入NAT网络(virbr0);...

2019-05-31 08:03:11 1558

原创 LINUX 其他扩展匹配

问题本案例要求熟悉针对MAC地址、多端口匹配、IP范围等扩展条件的防火墙规则设置,完成以下任务操作:1)根据MAC地址封锁内网中指定的一些主机2)通过一条防火墙规则开放多个TCP服务,提高规则编写效率3)根据指定的IP地址范围设置封锁或放行规则方案采用三台RHEL6虚拟机svr5、gw1、pc120,如图-1所示。其中,虚拟机svr5作为局域网络的测试机,接入NAT网络(virbr0)...

2019-05-31 08:00:50 196

原创 LINUX 配置SMTP发信认证

问题沿用练习一、二、三,根据现有的Postfix服务配置,基本上任何人都可以连接到邮件服务器,随意提交电子邮件。为了提高邮件系统的安全性、减少垃圾邮件,本案例要求针对SMTP发信功能开启认证限制。需要完成的配置任务如下:1)启用saslauthd 认证服务2)调整postfix 服务配置,添加相关认证设置3)测试SMTP发信认证方案RHEL6系统自带了SASL(Simple Auth...

2019-05-31 07:55:15 1555

原创 LINUX 使用收发信工具

问题对于配好的邮件服务器来说,如果只能给本机来发信、收信,显然是非常不方便的。因此,我们还需要学会使用客户端的收发信工具。在服务器运维工作中,出于脚本和一些后台任务的需要,更多的会使用mail命令;而对于普通的邮箱用户来说,通常会安装Outlook、Foxmail、Thunderbird(雷鸟)等图形化的客户端软件,界面更加友好。本案例要求在客户机上分别使用mail命令、Thunderbird...

2019-05-31 07:53:44 395

原创 LINUX 配置dovecot服务

问题沿用练习一、二,在已实现Postfix发信功能的基础之上,为了方便邮箱用户收取各自的电子邮件,需要进一步提供专门的收信服务。本案例要求采用Dovecot软件来实现。需要完成的配置任务如下:1)安装 dovecot 软件包2)允许明文验证、指定tedu.cn邮箱路径3)启动 dovecot 服务方案步骤实现此案例需要按照如下步骤进行。步骤一:安装 dovecot 软件包[ro...

2019-05-31 07:51:10 1157

原创 LINUX 配置并验证postfix服务

问题某公司有员工700余人,分布在北京总部及全国各地的分公司,为保证电子信息传递的及时、稳定性,减少业务沟通故障,要求构建一套自主管理的电子邮件系统。本案例要求沿用练习一,基于Postfix软件来实现发信功能。需要完成的配置任务如下:1)安装并配置postfix软件,适用于tedu.cn 邮件域2)添加两个邮箱账号:nick、hunter3)用户nick可以通过 telnet 给用户hu...

2019-05-31 07:50:15 914

原创 LINUX 准备邮件案例环境

问题本案例要求为邮件服务准备案例环境,已经明确相关信息如下:1)服务器的主机名、IP地址:mail.tedu.cn、192.168.4.52)邮件域:@tedu.cn3)邮件帐号:服务器的本地系统用户4)发信服务软件:postfix5)收信服务软件:dovecot因此,除了主机名、IP地址等基本设置以外,还需要提供DNS解析。为了简单起见,直接在邮件服务器本机搭建DNS服务,需要完成...

2019-05-31 07:47:35 379

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除