0x0102

1차 프로젝트 실습 본문

Study/System Engineer

1차 프로젝트 실습

jxx_yxjx 2024. 2. 21. 16:27
* * * * * /path/to/your/script.sh && mail -s "Subject" your_email@example.com < /path/to/your/logfile.log

2/21

크론탭을 활용해서 시간과 메세지가 같이 찍히는 형태의 로그파일을 생성

리눅스에서 로그파일을 메일로 보내는 스크립트 작성 후 크론탭에 등록, 메일 발신

 

1. 로그 생성 스크립트 작성

mail.sh

#!/bin/bash

# 현재 날짜와 시간을 얻습니다.
current_time=$(date "+%Y-%m-%d %H:%M:%S")

# 로그 파일에 날짜, 시간, 메시지를 추가합니다.
echo "$current_time - Your log message" >> /path/to/your/logfile.log

//여기서 경로는 수정해주어야한다. pwd로 로그파일의 경로를 정확히 알아낸 다음 수정해주자!

* 실습에서는 /home/seed/kdt/logfile.log 사용

 

 

2. 실행 권한 부여

chmod +x /path/to/your/script.sh

//여기서도 경로를 수정해준다.

/home/seed/kdt/mail.sh 사용

 

3. 크론탭 설정

# 크론탭 편집
crontab -e

가장 하단에 추가 작성

* * * * * /path/to/your/script.sh && mail -s "Subject" your_email@example.com < /path/to/your/logfile.log
mail -s "메일 제목" -A "/path/to/your/logfile.log" your_email@example.com < /path/to/message.txt

mail.sh와 logfile.log의 경로를 수정한 후 메일란에 본인과 팀원의 메일을 기입한다.

이 경우 빠른 확인을 위해 매분 메일을 전송하도록 설정했다.

-A 옵션은 첨부파일을 지정하며 < 연산자는 본문 내용을 파일에서 읽어온다.

/path/to/message.txt는 본문 내용이 있는 파일의 경로이다.

 

+) 초기 세팅

우분투의 경우 다음과 같은 명령어로 크론탭을 설치해준다.

sudo apt-get update
sudo apt-get install cron

다음 명령어로  mail을 위한 유틸리티를 받아준다.

sudo apt-get install mailutils