Advertisement

使用shell脚本监控磁盘空间,并发送邮件通知。

  •  5星
  •     浏览量: 0
  •     大小:None
  •      文件类型:None


简介:
在使用此代码时,请务必留意以下几点:首先,`users_cc.conf`、`users_to.conf`以及`diskName.conf`这三个配置文件必须与脚本位于同一目录下,并且它们必须实际存在。其次,脚本中用于邮件发送者的名称可根据您的个人偏好进行自定义修改;具体而言,代码的第十行 `user_from=<master@linux.com>` 采用的邮件发送者方案的详细说明,可参考来自博客的链接:https://blog..net/TAB_YLS/article/details/80597773。

全部评论 (0)

还没有任何评论哟~
客服
客服
  • 使Shell进行
    优质
    本项目利用Shell脚本来自动化监测系统磁盘空间,并在空间不足时通过电子邮件发出警告通知。 在使用此代码时,请注意以下几点:1. 确保users_cc.conf、users_to.conf、diskName.conf这几个文件与脚本在同一目录下且必须存在。2. 脚本中的邮件发送者名字可以根据个人喜好进行更改,具体位置为代码的第十行:user_from=master@linux.com # 邮件的发送者。
  • Linux/Unix Shell剩余
    优质
    简介:本文介绍如何使用Linux/Unix Shell编写脚本来监控系统磁盘的剩余空间,并在空间不足时发出警告。 在Linux环境下监控磁盘的空闲空间对于系统管理员或数据库管理员来说非常重要。下面提供了一个用于监测磁盘空间阈值的Shell脚本示例供参考: ``` #!/bin/bash # 检查文件系统的空间,根据设定的阈值进行判断 ```
  • 使Shell自动的示例
    优质
    本教程提供了一个实用的Shell脚本案例,演示如何自动化地通过命令行接口发送电子邮件。适合需要高效管理服务器或进行数据备份等任务的技术人员阅读和应用。 本段落主要介绍了通过Shell脚本实现自动发送邮件的方法,并展示了如何使用.muttrc文件配合shell脚本来完成这一任务。需要相关帮助的读者可以参考此内容。
  • Shellswap识别占swap的进程
    优质
    本文介绍如何使用Shell脚本来监控系统中的swap空间使用情况,并进一步分析和识别哪些进程正在占用swap资源。 在Linux系统管理过程中,有效监控资源使用情况至关重要,尤其是内存的交换空间(swap space)。当物理内存不足时,操作系统会将部分数据暂时移到硬盘上的交换区域来释放更多内存供其他程序使用。然而,如果进程长期占用大量swap空间,则可能会导致性能显著下降。 本段落详细介绍了如何通过Shell脚本来监控swap空间使用情况,并识别出消耗swap的进程。首先创建一个名为`swap.sh`的简单示例脚本: ```bash #!bin/bash echo -e `date +%Y%m%d%H%M` echo -e PID\tSwapttProc_Name for pid in $(ls -l /proc | grep ^d | awk { print $9 } | grep -v [^0-9]) do if [ $pid == 1 ]; then continue; fi if grep -q Swap /proc/$pid/smaps 2>/dev/null then swap=$(grep Swap /proc/$pid/smaps | gawk { sum+=$2; } END{ print sum }) proc_name=$(ps aux | awk $2 == $pid { for(i=11;i<=NF;i++){ printf(%s , $i); }}) if [ $swap -gt 0 ];then echo -e ${pid}\t${swap}\t${proc_name} fi fi done | sort -k2 -n | awk -F\t { pid[NR]=$1; size[NR]=$2; name[NR]=$3; }END{ for(id=1;id<=length(pid);id++) { if(size[id]<1024) printf(%-10s%15.0fKB\t%s\n,pid[id],size[id],name[id]); else if(size[id]<1048576) printf(%-10s%15.2fMB\t%s\n,pid[id],size[id]/1024,name[id]); else printf(%-10s%15.2fGB\t%s\n,pid[id],size[id]/1048576,name[id]); } } ``` 此脚本首先获取当前时间戳,然后遍历所有进程,并检查每个进程的`/proc/$pid/smaps`文件来判断是否占用swap空间。如果有,则计算总swap量并获取进程名称,根据大小以KB、MB或GB格式输出结果。 为了定期执行这个脚本,可以将其添加到cron定时任务中: ```bash crontab -e ``` 然后在编辑器中加入以下行来每分钟运行一次`swap.sh`脚本,并将输出追加至日志文件: ```bash * * * * * /bin/bash /path/to/swap.sh >> /path/to/rootswap.log 2>&1 ``` 通过这种方式,我们可以持续监控系统中的swap空间使用情况并及时发现占用大量swap的进程。这有助于优化性能或采取其他措施来避免不必要的系统崩溃和性能下降问题。 在实际运维场景中,监控交换空间是防止系统出现瓶颈的重要步骤之一。编写及执行类似的脚本可以帮助管理员更好地理解资源消耗状况,并迅速解决问题,从而提高系统的稳定性和效率,特别是在服务器资源紧张的情况下尤为重要。
  • 在Linux中利Shell检测和清理
    优质
    本文将介绍如何使用Shell脚本来监控和释放Linux系统中的磁盘空间,帮助用户自动化日常维护工作。 内容概要: 1. 该shell脚本用于检查磁盘使用率。根据挂载的目录路径查找对应的磁盘,并获取其使用情况参数。 2. 当磁盘使用率达到预设阈值时,将启动清理流程。 3. 清理操作分为两种情形:(1)如果要删除的文件被其他程序打开且仍在写入,则不能直接执行rm命令。因为即使删除了该文件,进程仍持有其描述符并可继续写入,导致磁盘空间无法释放。此时应使用echo -n “” > file的方式覆盖文件内容。(2)若文件长时间未进行任何写操作,并无其他程序以读取方式打开,则可以直接通过rm命令清理。 4. 上述两种情形分别由两个shell函数实现,支持自定义参数输入。 5. 这两个函数的第一个参数为待处理的文件列表,可以是包含具体路径或正则表达式的数组变量形式传递给脚本。 6. 为了便于调试,在脚本中设有全局变量debug_mode控制是否开启调试模式。当处于该模式下时,不会实际删除任何文件而是仅输出相关信息以验证目标对象正确性。
  • Shell进行系统的构建
    优质
    本项目旨在通过编写Shell脚本来实现对Linux系统中磁盘使用情况的实时监控,并提供警报机制以确保系统稳定运行。 利用shell脚本实现每隔60秒监控磁盘内存数据 ```bash #!/bin/bash # 作者:高宏宇 # 时间:2019-12-24 18:43:22 # 脚本名:ncjk.sh # 版本号:V1.0 clear xtip=$(hostname -I) cprl=$(df -Th |head -2|tail -1|cut -d -f 6) # 磁盘使用率百分比字段可能为第6列,具体根据实际情况调整 cpky=$(df -Th |head -2|tail -1|cut -d -f 8) cpbfb=$(df -Th |head -2|tail -1|cut -d -f 10) # 磁盘使用率百分比字段可能为第10列,具体根据实际情况调整 ``` 注意:在提取磁盘信息时,请确保`cut`命令中的分隔符和字段索引正确匹配实际输出格式。
  • 使PythonSVN变更
    优质
    本教程介绍如何利用Python编写脚本自动发送包含SVN更新信息的通知邮件,提高版本控制系统管理效率。 本段落介绍的是一个使用Python编程语言实现的系统,该系统能够监控Subversion(SVN)版本控制系统中的变动,并在检测到任何更新或提交时自动发送电子邮件通知。这个功能对于团队协作尤其有用,因为它确保了所有团队成员都能即时了解到代码库的最新状态。 我们需要理解SVN的基本概念。SVN是一种开源的版本控制系统,用于管理项目的文件和目录历史记录。它允许用户跟踪和记录文件和目录的修改,以便于多人协同工作并回滚错误更改。当有人对SVN仓库进行提交操作时,系统会记录下这些变化。 在这个场景中,post-commit.bat是一个批处理脚本,通常与SVN的钩子机制关联。SVN的钩子是在特定事件(如提交)发生时执行的脚本,它们可以是任何可执行文件,例如bash脚本、批处理文件等。在此案例中,post-commit.bat在每次提交后被调用,并触发Python脚本来检查是否有新的变化并发送邮件。 接下来,sendEmail.py是实现邮件发送功能的核心Python脚本。这个脚本可能包含了以下步骤: 1. 连接SMTP服务器:使用smtplib库来建立与SMTP服务器的连接,通常需要提供服务器地址、端口号、用户名和密码。 2. 创建邮件:利用`email.mime`模块创建邮件对象,并设置发件人、收件人、主题及正文内容。 3. 检查SVN变化:可能通过执行SVN命令行工具(如svn log或svn diff)来获取最近的提交信息,或者直接访问SVN仓库的日志数据。 4. 将变化信息添加到邮件中:将获取的SVN变更详情插入至邮件正文内,以便接收者了解具体的更改情况。 5. 发送电子邮件:使用smtplib库发送邮件给指定收件人。 6. 断开SMTP连接:在完成邮件发送之后关闭与SMTP服务器之间的链接。 标签包括了SVN变化、通知和集成等关键功能。这个系统通过Python实现了对SVN仓库的实时监控,一旦发现有新的提交就会自动向相关人员发出电子邮件提醒,从而提高了团队协作效率。开发者可以通过定制post-commit.bat及sendEmail.py以适应不同的邮件服务与SVN配置需求,并满足不同项目的要求。
  • Python于RTX
    优质
    这段简介可以描述为:Python脚本用于RTX通知发送是一款利用Python编程语言开发的小工具,它能够自动将消息通过企业通讯软件RTX进行高效、快捷的通知推送。 使用Python脚本群发通知到RTX用户。
  • shell和钉钉进行Oracle数据库警告
    优质
    本项目通过编写Shell脚本来监控Oracle数据库的空间使用情况,并在超过预设阈值时,自动向指定用户发送钉钉通知警报。 通过编写Shell脚本并结合钉钉告警功能可以实现Oracle数据库空间的监控报警。此方法仅需约100行代码,并且可以通过定时任务轻松实施,无需使用庞大的客户端软件。这种方式特别适合小规模公司进行简单有效的系统监控和警告通知,没有必要采用像Zabbix这样的复杂解决方案。
  • Tomcat健康检查异常时工具.rar
    优质
    该资源提供了一个针对Apache Tomcat服务器的健康状况监控脚本。当检测到异常情况时,此工具自动通过电子邮件向管理员发出警报通知,便于及时处理问题。 可配置化的Shell脚本用于健康检查Tomcat服务,如果检测到Tomcat运行异常,则会及时发送邮件通知一个或多个管理员。