Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- eigrp
- 헤더
- Etherchannel
- OSPF
- 스위치
- Inter VLAN
- ipv6
- tunneling
- GLBP
- stp
- ripng
- 명령어
- 장비
- CKA
- Chrony
- OSI 7 layer
- ACL
- rip
- ospfv3
- crontab
- NAT
- DHCP
- 라우터
- vrrp
- Vlan
- eigrpv2
- Redistribute
Archives
- Today
- Total
Net Eng
check_file.sh 본문
#!/bin/bash
#crontab -e
# 0 8 * * * 1-5 /root/bin/check_file >/var/log/file.log 2>&1
# cat /root/bin/file_list.txt
# /etc/passwd
# /etc/group
# /etc/hosts
# ...
# 1) 파일 초기화
# 2) 백업 or 파일 비교 작업 -> result_0824.txt
# 3) 결과 점검 -> 메일 전송
# 1) 파일 초기화
RESULT=result_$(date +%m%d).txt
> $RESULT
# 2) 백업 or 파일 비교 작업 -> result_0824.txt
BACKUPDIR=/backup
FILE_LIST=/root/bin/file_list.txt
TMP1=/tmp/tmp1
[ ! -d /backup ] && mkdir -p /backup
for FILE1 in $(cat $FILE_LIST)
do
FILEPATH=$(dirname $FILE1)
FILENAME=$(basename $FILE1)
BACKUPFILE=$BACKUPDIR/$FILENAME.OLD
# echo "$FILEPATH : $FILENAME
if [ -f $BACKUPFILE ]; then
diff $FILE1 $BACKUPFILE > $TMP1
if [ -s $TMP1 ]; then
echo "[ WARN ] $FILE1" >> $RESULT
cp -p $FILE1 $BACKUPFILE
else
echo "[ OK ] $FILE1" >> $RESULT
fi
else
cp -p $FILE1 $BACKUPFILE
fi
done
# 3) 결과 점검 -> 메일 전송
EMAIL=root
grep -w WARN $RESULT >/dev/null 2>&1
if [ $? -eq 0 ]; then
mailx -s "[ WARN ] 중요한 파일 내용 변경" $EMAIL < $RESULT
else
mailx -s "[ OK ] 오늘도 안전" $EMAIL < $RESULT
fi
'Language > Shell Script' 카테고리의 다른 글
check_service.sh (0) | 2024.06.08 |
---|---|
auto_telnet_ftp.sh (0) | 2024.06.08 |
auto_reboot.sh (0) | 2024.06.08 |
user_admin.sh (0) | 2024.06.08 |
userdel.sh (0) | 2024.06.08 |