一、安裝Linux下面的一個(gè)郵件客戶端Msmtp軟件(類似于一個(gè)Foxmail的工具)
創(chuàng)新互聯(lián)公司專注于屏邊網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠(chéng)為您提供屏邊營(yíng)銷型網(wǎng)站建設(shè),屏邊網(wǎng)站制作、屏邊網(wǎng)頁(yè)設(shè)計(jì)、屏邊網(wǎng)站官網(wǎng)定制、微信平臺(tái)小程序開發(fā)服務(wù),打造屏邊網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供屏邊網(wǎng)站排名全網(wǎng)營(yíng)銷落地服務(wù)。1、下載安裝:http://downloads.sourceforge.net ... 206451&big_mirror=0
#tarjxvfmsmtp-1.4.16.tar.bz2#cdmsmtp-1.4.16#./configure--prefix=/usr/local/msmtp#make#makeinstall
2、創(chuàng)建msmtp配置文件和日志文件(host為郵件域名,郵件用戶名test,密碼123456)
#vim~/.msmtprcaccountdefaulthost126.comfromtest@126.comauthloginusertestpassword123456logfile~/.msmtp.log#chmod600~/.msmtprc#touch~/.msmtp.log
3、mutt安裝配置:(一般linux下有默認(rèn)安裝mutt)
#vim~/.muttrcsetsendmail=/usr/local/msmtp/bin/msmtpsetuse_from=yessetrealname=memorysetfrom=test@126.comsetenvelope_from=yessetrfc2047_parameters=yessetcharset=utf-8
4、郵件發(fā)送測(cè)試(-s郵件標(biāo)題,-a表加附件)
#echo郵件內(nèi)容123456|mutt-s郵件標(biāo)題測(cè)試郵件-a/scripts/test.txttest@126.com
二、使用Free命令監(jiān)控系統(tǒng)內(nèi)存
1、使用free命令查看linux系統(tǒng)內(nèi)存使用情況:(以M為單位)
#free-m(執(zhí)行結(jié)果如下樣式)totalusedfreesharedbufferscachedMem:395234145380168484-/+buffers/cache:27601191Swap:8191868105
2、查看截取剩余內(nèi)存free的數(shù)值命令:
(1) 物理內(nèi)存free值:# free -m | grep Mem | awk \'{print $4}\'(2) 緩沖區(qū)的free值:# free -m | grep - | awk \'{print $4}\'(3) Swap分區(qū)free值:# free -m | grep Swap | awk \'{print $4}\'
3、編寫內(nèi)存監(jiān)控的腳本文件:
#vim/scripts/free-mem.sh#!/bin/bash#使用free命令監(jiān)控linux系統(tǒng)內(nèi)存變化#取系統(tǒng)當(dāng)前時(shí)間(以追加的方式寫入文件>>)date>>/scripts/date-time.txt#抓取物理內(nèi)存free值(以追加的方式寫入文件>>)echoMem-free:`free-m|grepMem|awk\'{print$4}\'`M>>/scripts/mem-free.txt#抓取緩沖區(qū)的free值(以追加的方式寫入文件>>)echobuffers/cache-free:`free-m|grep-|awk\'{print$4}\'`M>>/scripts/buffers-free.txt#抓取Swap分區(qū)free值(以追加的方式寫入文件>>)echoSwap-free:`free-m|grepSwap|awk\'{print$4}\'`M>>/scripts/swap-free.txt#逐行連接上面的時(shí)間和內(nèi)存相關(guān)行數(shù)據(jù)(每次重新寫入文件>)paste/scripts/date-time.txt/scripts/mem-free.txt/scripts/buffers-free.txt/scripts/swap-free.txt>/scripts/freemem.txt#chmoda+x/scripts/free-mem.sh#/scripts/free-mem.sh
4、查看內(nèi)存監(jiān)控的結(jié)果文件:
#cat/scripts/freemem.txt
5、編寫free結(jié)果文件郵件發(fā)送腳本:
#vim/scripts/sendmail-mem.sh#!/bin/bash#把生成的freemem.txt文件通過(guò)郵件發(fā)送給用戶#提取本服務(wù)器的IP地址信息IP=`ifconfigeth0|grepinetaddr|cut-f2-d:|cut-f1-d`#提取當(dāng)前日期時(shí)間today=`date-d0day+%Y年%m月%d日`#發(fā)送內(nèi)存監(jiān)控結(jié)果郵件echo這是$IP服務(wù)器$today的內(nèi)存監(jiān)控報(bào)告,請(qǐng)下載附件。|mutt-s$IP服務(wù)器$today內(nèi)存監(jiān)控報(bào)告-a/scripts/freemem.txttest@126.com#chmoda+x/scripts/sendmail-mem.sh
三、監(jiān)控系統(tǒng)交換分區(qū)Swap的情況,當(dāng)使用超過(guò)80%的時(shí)候發(fā)告警郵件
#vim/scripts/swap-warning.sh#!/bin/bash#提取本服務(wù)器的IP地址信息IP=`ifconfigeth0|grepinetaddr|cut-f2-d:|cut-f1-d`#系統(tǒng)分配的交換分區(qū)總量swap_total=`free-m|grepSwap|awk\'{print$2}\'`#當(dāng)前剩余的交換分區(qū)free大小swap_free=`free-m|grepSwap|awk\'{print$4}\'`#當(dāng)前已使用的交換分區(qū)used大小swap_used=`free-m|grepSwap|awk\'{print$3}\'`if((swap_used!=0));then#如果交換分區(qū)已被使用,則計(jì)算當(dāng)前剩余交換分區(qū)free所占總量的百分比,用小數(shù)來(lái)表示,要在小數(shù)點(diǎn)前面補(bǔ)一個(gè)整數(shù)位0swap_per=0`echoscale=2;$swap_free/$swap_total|bc`#設(shè)置交換分區(qū)的告警值為20%(即使用超過(guò)80%的時(shí)候告警)。swap_warn=0.20#當(dāng)前剩余交換分區(qū)百分比與告警值進(jìn)行比較(當(dāng)大于告警值(即剩余20%以上)時(shí)會(huì)返回1,小于(即剩余不足20%)時(shí)會(huì)返回0)swap_now=`expr$swap_per>$swap_warn`#如果當(dāng)前交換分區(qū)使用超過(guò)80%(即剩余小于20%,上面的返回值等于0),立即發(fā)郵件告警if(($swap_now==0));thenecho$IP服務(wù)器swap交換分區(qū)只剩下$swap_freeM未使用,剩余不足20%,使用率已經(jīng)超過(guò)80%,請(qǐng)及時(shí)處理。|mutt-s$IP服務(wù)器內(nèi)存告警test@126.comfifi#chmoda+x/scripts/swap-warning.sh
四、加入任務(wù)計(jì)劃:內(nèi)存每十分鐘檢測(cè)一次,有告警則立即發(fā)郵件(十分鐘發(fā)一次),內(nèi)存檢測(cè)結(jié)果郵件每天早上8點(diǎn)發(fā)一次
#crontab-e*/10****/scripts/free-mem.sh*/10****/scripts/swap-warning.sh08***/scripts/sendmail-mem.sh#servicecrondrestart文章來(lái)源: 良許Linux