redhat9 shell脚本判断磁盘、判断web运行、curl测试web(及一些报错纠正)

news/2024/10/18 18:26:34/
  1. 1、判断当前磁盘剩余空间是否有20G,如果小于20G,则将报警邮件发送给管理员,每天检查一次磁盘剩余空间。 2、判断web服务是否运行(1、查看进程的方式判断该程序是否运行 2、通过查看端口的方式判断该程序是否运行),如果没有运行,则启动该服务。 3、使用curl命令访问第二题的web服务,看能否正常访问,如果能正常访问,则返回web server is running;如果不能正常访问,返回12状态码。思路:

 

#!/bin/bash

cipan=20
email="2530689312@qq.com"  

space=$(df -BG / | awk 'NR==2 {print $4}' | sed 's/G//')

# 比较剩余空间是否小于阈值
if (( cipan < space )); then
    echo "磁盘剩余空间不足 ${cipan}GB,请及时处理。" | mail -s "磁盘空间报警" $email
fi
 

报错了最后一行的mail功能出现问题

找到问题redhat9中无法支持使用mail和mailx功能发送邮件

 

我们下载一下sendmail

 更改一下脚本文件

 实现。crontab -e

0 0 * * * /path/to/checkdisk.sh(12点运行)
 

2.

 

这里发现少个空格  更改

 服务出错 先不管,脚本运行正常了

3.

实现这里定义了一个output 报错直接显示这个变量

成功 



#!/bin/bash
url="192.168.42.131"
output=$(curl $url 2>&1)
if [ $? -eq 0 ]; then
    echo "Web server is running!"
else
    echo "Error: $output"
    exit 12
fi
 


http://www.ppmy.cn/news/149392.html

相关文章

C# 静态构造函数

静态构造函数用于初始化任何静态数据&#xff0c;或执行仅需要执行一次的特定操作。在创建第一个实例或引用任何静态成员之前&#xff0c;将自动调用它。 静态构造函数是在构造函数方法前面添加了static关键字之后形成的&#xff0c;并且没有修饰符(public,private),没有参数。…

Android异常篇 Manifest merger failed : Attribute application@label value=() from AndroidM

一、问题复现 导入某个第三方依赖后&#xff0c;出现label冲突 一般是项目中使用的第三方依赖库中的AndroidManifest.xml中跟当前App的AndroidManifest.xml中有重复的某些属性时AS会提示这个&#xff0c;按照提示添加就可以解决 二、解决方案 以上蓝色框就是error错误给出的…

Android 11 报错 java.io.IOException: Cleartext HTTP traffic to xxx not permitted

Android 11 应用 POST 网络请求报错 ( java.io.IOException: Cleartext HTTP traffic to xxx not permitted ) 在 AndroidManifest.xml 清单文件中 , 在 application 节点设置 android:usesCleartextTraffic“true” 属性即可 ;

git项目提交报rejected问题解决

问题&#xff1a; Push rejected: Push master to origin/master was rejected by remote 解决&#xff1a; Settting--》Repository--》Protected Branches 中的Allowed to push设置为 Developers Masters

macos 下 vmware fusion 安装 vmware tools

在mac下安装过 vmware fusion , 然后装了个win7的虚拟机&#xff0c;装vmtools发现菜单是灰色的&#xff0c;没法直接装。印象中这个菜单是找到相应的光盘镜像并加载的功能。 然后在vmware fusiion 程序包里果然找到了&#xff0c;后工复制出来并加载它。在虚拟机里就能安装了…

jenkins配置git报错 failed to connect to repositary

解决办法&#xff1a;配置github/gitlab的SSH keys 1.在电脑目录下C:\Users\username\.ssh找到id_rsa.pub文件&#xff0c;将其中内容复制 如果没有该文件&#xff0c;则登录github/gitlab&#xff0c;进入个人设置&#xff0c;找到SSH and GPG keys,点击生成 2.登录github/gi…

成功解决urllib.error.URLError: <urlopen error [Errno 11001] getaddrinfo failed>

成功解决urllib.error.URLError: <urlopen error [Errno 11001] getaddrinfo failed> 目录 解决问题 解决思路 解决方法 解决问题 raise URLError(err) urllib.error.URLError: <urlopen error [Errno 11001] getaddrinfo failed> 解决思路 网址错误&#xff…

git解决ssh: Could not resolve hostname github: Name or service not known的问题

git解决ssh: Could not resolve hostname github: Name or service not known的问题 在使用Git上传代码到远程仓库时&#xff0c;走到git push origin master推送这一步的时候&#xff0c;可能某一天突然就会出现这样的错误&#xff1a; 碰到这种情况&#xff0c;第一种方法是…