서버에서 주기적으로 Ping 하고 이메일 알람 전송

다음과 같은 스크립트 추가 후,

crontab 에

* * * * * 사용자 실행

추가

#!/bin/sh
HOSTS=”SERVER ADDRESS”
COUNT=1
EMAIL=”EMAIL ADDRESS”

pingtest(){
  for myhost in “$@”
  do
    echo “host ping : $HOSTS”
    ping -c “$COUNT” “$HOSTS” -w 5 && return 1
  done
  return 0
}
pingtest $HOSTS
if [ $? -eq 1 ]
then
  #echo “Everyting is fine” | mail -s “Server is OK ” $EMAIL
  echo “Everyting is fine”
else
  echo “Server ($HOSTS) Pint Test Failed at $(date)” | mail -s “Server is down from KPOPMART DB” $EMAIL
  echo “Host ($HOSTS) is down (PING failed) at $(date)”
fi

리눅스 파일 검색/찾기, 파일 내부 문자열 찾기/검색

# 리눅스 파일명으로 검색하는법.

사용법

find [찾을위치] -name [파일명]

예) 최상위 폴더부터 하위로 ‘apache’로 시작하는 파일 찾기.

find / -name ‘apache*’

예) usr 폴더부터 하위로 ‘apa’로 시작하는 파일 찾기.

find /usr/ -name ‘apa*’

 

# 리눅스 파일 내부 문자열 검색하는법.

grep 을 이럴때 유용하게 쓸 수 있습니다.

사용법

grep -r [찾을 문자열] [대상파일들]

예) 현재 폴더에 있는 test.log 파일내부에 ‘apache’ 라는 문자열 찾기.

grep -r ‘apache’ ./test.log

예) ‘var’ 폴더부터 하위 모든 파일내부에서 ‘apache’ 라는 문자열 찾기.

grep -r ‘apache’ /var/* [–include ‘*.conf’] (include 옵션으로 특정 확장자에서만 검색도 가능하다)

 

# 파일 내부 문자열 검색 다른 방법 (Feat. 강조색)

find . -type f -print | xargs grep -i “phpMyAdmin” /dev/null

현재위치부터 하위폴더의 모든 파일중에서 ‘phpMyAdmin’ 이라는 문자열을 검색한다.

find . -name ‘*.conf’ | xargs grep -r –color=auto -n 2>dev/null ‘phpMyAdmin’

현재 부터 하위 모두를 검색하되,

conf 라는 확장자를 가진 파일중에서 ‘phpMyAdmin’ 이라는 문자열을 검색한다.

그리고 일치 문자열은 강조색으로 표시!