Shell脚本实现自动巡检系统信息、网络信息、内存信息、磁盘信息

#!/bin/bash
while :
do
    #查看磁盘信息
    df -h | awk '/\/$/'{print "根分区系统可用容量" $4}
    #查看内存信息
    free -h | awk '/^Mem/'{print "可用内存容量" $4}
    #查看网卡信息
    ifconfig eth160 | awk '/^RX p/{print "当前网卡入栈流量为:"$5}'
    ifconfig eth160 | awk '/^TX P/{print "当前网卡出栈流量" $5}'
    
    sleep 2
done

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 实现自动巡检Linux文件系统、CPU和内存,并发送邮件的脚本可以通过以下步骤完成: 1. 首先,需要编写一个脚本来获取Linux文件系统的状态。可以使用df命令来获取文件系统使用情况,并将结果保存到一个变量中。 2. 接下来,可以使用top命令来获取CPU和内存的使用情况。可以使用grep命令来过滤出所需的信息,并将结果保存到两个变量中。 3. 然后,可以使用Python的smtplib库来发送邮件。首先需要设置邮件相关的配置信息,包括发件人、收件人、主题和正文等。可以使用Python内置的email库来创建邮件。 4. 最后,将获取到的Linux文件系统、CPU和内存的状态信息作为正文内容添加到邮件中,然后发送邮件。 以下是一个示例脚本的部分代码: ```python import subprocess import smtplib from email.mime.text import MIMEText from email.header import Header # 获取文件系统信息 df_output = subprocess.check_output("df -h", shell=True) filesystem_info = df_output.decode("utf-8") # 获取CPU和内存信息 top_output = subprocess.check_output("top -n 1 -b | grep -E 'CPU|Mem'", shell=True) cpu_info, mem_info = top_output.decode("utf-8").split("\n") # 邮件配置信息 smtp_server = "邮件服务器地址" sender = "发件人邮箱" receiver = "收件人邮箱" subject = "Linux巡检报告" # 创建邮件正文 content = f"文件系统信息:\n{filesystem_info}\n\nCPU信息:\n{cpu_info}\n\n内存信息:\n{mem_info}" # 创建邮件 message = MIMEText(content, "plain", "utf-8") message["From"] = Header(sender, "utf-8") message["To"] = Header(receiver, "utf-8") message["Subject"] = Header(subject, "utf-8") # 发送邮件 try: smtp_obj = smtplib.SMTP() smtp_obj.connect(smtp_server) smtp_obj.sendmail(sender, receiver, message.as_string()) print("邮件发送成功") except smtplib.SMTPException as e: print("邮件发送失败:" + str(e)) ``` 注意,以上代码是简化的示例,需要根据实际情况进行相应的调整和完善,如邮件服务器的具体配置、发送邮件的身份验证等。 ### 回答2: 自动巡检Linux 文件系统、CPU、内存脚本并发邮件可以通过以下步骤来实现。 首先,我们可以编写一个Shell脚本来执行巡检任务。该脚本可以使用诸如df、top等命令来获取文件系统、CPU和内存的相关信息。 对于文件系统巡检,我们可以使用df命令来获取磁盘空间利用率、已用空间和可用空间等信息。通过解析df命令的输出并与事先设定的阈值进行比较,我们可以确定是否需要发送告警邮件。 对于CPU和内存巡检,我们可以使用top命令来获取当前CPU和内存的利用率等信息。通过解析top命令的输出并与设定的阈值进行比较,我们可以判断是否需要发送告警邮件。 在脚本中,我们可以使用邮件发送命令来发送自动巡检结果的报告。可以使用诸如mailx或sendmail等命令来发送邮件。脚本可以将巡检结果生成为邮件正文,然后通过指定的邮件服务器和收件人地址等信息进行发送。 最后,我们可以将该脚本设置为定时任务,使其在固定的时间间隔内自动执行。可以使用crontab命令将该脚本添加到定时任务中,以便在每次巡检自动执行脚本。 通过以上步骤,我们可以实现一个自动巡检Linux文件系统、CPU和内存脚本,并将结果通过邮件发送出来。这样可以方便地监控系统状态并及时发现问题,以便采取相应的措施。 ### 回答3: 要实现自动巡检Linux文件系统、CPU和内存脚本并能发送邮件,可以采用以下步骤: 1. 导入所需的Python库,如os、subprocess和smtplib等。 2. 定义一个函数,用于检查文件系统使用情况。可以使用df命令获取文件系统的使用情况信息,然后将数据进行解析处理,判断磁盘空间使用率是否超过设定的阈值。 3. 定义一个函数,用于检查CPU使用情况。可以使用top、psutil或/proc/stat等工具获取CPU的使用率信息,根据设定的阈值进行判断。 4. 定义一个函数,用于检查内存使用情况。可以使用free命令获取内存使用情况信息,然后将数据进行解析处理,判断内存使用率是否超过设定的阈值。 5. 定义一个函数,用于发送邮件。需要指定SMTP服务器地址、发件人和收件人的邮箱地址、邮件主题和内容等信息,通过smtplib库的SMTP类实现邮件的发送。 6. 在主函数中,依次调用文件系统、CPU和内存检查的函数,根据检查结果决定是否发送邮件。 7. 可以设置一个定时任务,比如使用cron来定时执行这个脚本,以实现自动巡检。 值得注意的是,以上只是一个简单的框架,具体实现需要根据具体需求进行调整和扩展。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值