shell脚本综合练习

习题:

一.检查两主机中的目录下的文件是否一致

环境准备:

1.两台主机:端口22号开放,且root用户能被SSH远程登陆:

建议直接从当前已经连接SSH服务的虚拟机进行链接克隆,

2.确保两主机有相同相同的目录:
  • 建议两主机在一个相同的目录创建一个相同或不同的普通文件;
  • 也可以用本地拥有的目录,在相同目录下进行更改;
3.确保两个主机开机:

A机编写脚本,B机待机;

实验内容:

(此脚本用来检查文件是否一致)

(此脚本用来直观的查看上一个脚本的结果)

二.定时清空文件内容和记录大小

环境准备:

准备一个文本文件,为后续清零判断是否成功;

实验内容:

三.检测网卡流量,并按规定格式记录在日志中

(用来检测网卡流量)

(此脚本用来直观的查看上一个脚本的结果)

① 日志存在性

  • 日志文件已生成,37 kB 有内容

② 格式检查

  • 每 1 分钟一条时间戳 + 分隔线,格式正确;

③ 时间连续性

  • 每分钟都有记录,间隔连续(重复是因脚本 1 分钟触发 2 次,影响不大);

④ 数值变化(流量验证)

  • pv 跑出 ≈15 MB/s 出方向流量

  • 下一分钟日志(20:52)已落盘,带宽数值明显上涨;

四.计算文档每行出现的数字个数和整个文档的数字总数

五.监测 Nginx 访问日志 502 情况,并完成以下要求

假设服务器环境为 lnmp,近期访问经常出现 502 现象,

且 502 错误在重启 php-fpm 服务后消失,因此需要编写监控脚本,

一旦出现 502,则自动重启 php-fpm 服务。

环境准备:

实验内容:

(此脚本仅保存,不启动)

(此脚本检测文件 + 启动 + 验证)

六.扫描主机端口状态

(验证脚本)

(结果查看脚本)

七.创建10个用户,并分别设置密码,密码要求10位且包含大小写字母以及数字,最后需要把每个用户的密码存在指定文件中(?)

八.批量修改服务器用户密码

环境准备:

先创建一个装有旧密码的old_pass.txt文件和空文件new_pass.text:

实验内容:

九.查看CPU资源占用率的

(此脚本查看 CPU 占用率)

十.生成磁盘使用情况的日志文件

(此脚本生成磁盘使用日志)

十 一.监控 httpd 的进程数,根据监控情况做相应处理

1.每隔10s监控httpd的进程数,若进程数大于等于500,则自动重启Apache服务,并检测服务是否重启成功;

2.若未成功则需要再次启动,若重启5次依旧没有成功,则向管理员发送告警邮件,并退出检测;

3.如果启动成功,则等待1分钟后再次检测httpd进程数,若进程数正常,则恢复正常检测(10s一次),否则放弃重启并向管理员发送告警邮件,并退出检测;

环境准备:

先安装http软件包;

实验内容:

十二.根据web访问日志,封禁请求量异常的IP,如IP在半小时后恢复正常,则解除封禁(?)

环境准备:

先准备4个普通空文件

实验内容:

相关推荐
YuMiao4 小时前
gstatic连接问题导致Google Gemini / Studio页面乱码或图标缺失问题
服务器·网络协议
碳基沙盒1 天前
OpenClaw 多 Agent 配置实战指南
运维
Sinclair3 天前
简单几步,安卓手机秒变服务器,安装 CMS 程序
android·服务器
Rockbean4 天前
用40行代码搭建自己的无服务器OCR
服务器·python·deepseek
蝎子莱莱爱打怪4 天前
Centos7中一键安装K8s集群以及Rancher安装记录
运维·后端·kubernetes
茶杯梦轩4 天前
CompletableFuture 在 项目实战 中 创建异步任务 的核心优势及使用场景
服务器·后端·面试
海天鹰5 天前
【免费】PHP主机=域名+解析+主机
服务器
DianSan_ERP5 天前
电商API接口全链路监控:构建坚不可摧的线上运维防线
大数据·运维·网络·人工智能·git·servlet
呉師傅5 天前
火狐浏览器报错配置文件缺失如何解决#操作技巧#
运维·网络·windows·电脑
不是二师兄的八戒5 天前
Linux服务器挂载OSS存储的完整实践指南
linux·运维·服务器