서버의 체크 결과를 메일로 발송하기이다.

어느정도 보시면 이해하실 것이라 믿고 ^^
좀 지저분해도 이해해주시길

 #!/bin/bash
REPORT_MAIL="jhkim@vanillabreeze.com"
REPORT_MAIL_CC="dev@vanillabreeze.com"
SENDER_MAIL="CRON-REPORT<bot@vanillabreeze.com>"
RESULT_FILE="./Check-DB-Result-log.txt"
pushd /root/jhkim

echo "Start Cron Process - Check DB"

Check_Result=0

./check-mysql.sh > $RESULT_FILE

if [ $? -eq 0 ]
then
Mail_Title="[Report] EC2-01 `date +%F` DB Check result OK"
Check_Result=0
mutt -e "set from=$SENDER_MAIL" -s "$Mail_Title" -a $RESULT_FILE -- $REPORT_MAIL < ./Message-OK.txt
else
Mail_Title="[Report] EC2-01 `date +%F` DB Check result FAIL"
Check_Result=1
mutt -e "set from=$SENDER_MAIL" -s "$Mail_Title" -c $REPORT_MAIL_CC -a $RESULT_FILE -- $REPORT_MAIL< ./Message-FAIL.txt
fi

popd
Posted by 눈빛마음
:
일단 여러가지로 메일 발송시 딜레이가 생기는 문제는 있지만,
간단히 구축할 수 있고 관리가 쉽고 디버깅이 쉬운 것으로 내가 권하는 조합은

ubuntu + ssmtp + mutt 이다

거기서 mutt 로 메일 발송을 테스트 해보는 것은

mutt -e "set from=jhkim@vanillabreeze.com" -s "TEST Mail Subject" jhkim@vanillabreeze.com < ../test.txt
이렇게 되겠다 첨부파일을 할때는

mutt -e "set from=iz4blue@gmail.com" -s "TEST Mail Subject" -a ./inspection.html --  iz4blue@gmail.com < /root/message.txt
이렇게  첨부파일 뒤에 -- 를 꼭 넣어주어야 한다.
Posted by 눈빛마음
:
하드 디스크 섹터에 에러가 생겼을때
그 섹터들을 찾아서 다시 한번 기록해주는 방법으로 마지막까지 살려보자.

그 bash 스크립트

#!/bin/bash

SECTOR=1

while [ $SECTOR -ne 1618235835 ]
do
hdparm --read-sector $SECTOR /dev/sdc > /dev/null 2>&1
if [ $? -ne 0 ]
then
sleep 1
hdparm --read-sector $SETOR /dev/sdc
fi

if [ $? -ne 0 ]
then
echo $SECTOR
hdparm --yes-i-know-what-i-am-doing --write-sector $SECTOR /dev/sdc
fi

let "SECTOR = $SECTOR + 1"
done
Posted by 눈빛마음
:

카테고리

분류 전체보기
Secret
일기
개인 기록
IT

최근에 올라온 글

최근에 달린 댓글

최근에 받은 트랙백

달력

«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31

글 보관함