저번에 작성했던 쉘스크립트는 필요할 때마다 수동적으로 실행시켜줘야 한다.
물론 이 방법은 조금 귀찮은 정도지만 보고서를 받듯 자동으로 실행되면 좋을 거 같다.
Crontab 기능을 사용해 봤다.
리눅스 유틸리티인데 반복작업을 자동화할 수 있는 기능을 가지고 있다.
1. 준비
실행할 파일의 경로, 결과 파일이 저장될 경로를 알아 둔다.
원하는 작동 시간을 정해둔다. ex) 0시가 되면 한번 실행
2. 작성
$sudo crontab -e
위 명령어를 실행하면 텍스트 편집기를 선택하는 창이 나온다.
권장하는 건 nano 지만 난 vim을 사용했다. (아무거나 써도 됨)
※ nginx 로그파일 실행에 권한 문제가 발생할 수 있기 때문에 앞에 꼭 sudo를 넣어줘야 한다.
편집기 제일 아래로 내려가서 아래 명령어를 작성해 준다.
0 0 * * * [로그파일 경로] >> [저장 파일 이름과 경로] 2>&1
1. 0 0 * * *
원하는 시간을 설정할 수 있다. 앞에서부터 분(0-59), 시(0-23), 일(1-31), 월(1-12), 요일(0-7)이다.
매일 0시에 실행하길 원하기 때문에 0 0 * * * 으로 작성했다.
2. 경로
/home/계정명/log/nginxlog.sh 스크립트 경로
>> Append (로그 내용이 계속 쌓이길 원하기 때문)
/home/계정명/log/mylog.log 저장되는 로그파일
3. 에러메시지
2>&1
1은 정상 결과만 저장하는 mylog.log 일 때, &1은 mylog.log를 가리키는 목적지.
2는 에러 결과이다.
이 명령어는 에러 결과도 mylog.log에 같이 작성 이다.
3. 결과
작성한 명령어를 저장하면 이제 자동적으로 실행되는데, 다음 날 0시가 되어야 확인할 수 있다.
요약정리✨
1. 리눅스에서 반복작업 할 수 있는 유틸리티 Crontab
2. 권한 문제가 생길 수 있으므로 꼭 sudo를 사용하자.
3. 저장하고 나가면 끝
감사합니다.
'컴퓨터 공부 > 리눅스 자습서' 카테고리의 다른 글
| nginx를 사용한 웹페이지에서 동영상이나 사진을 볼 수 있게 만들기 (0) | 2026.04.19 |
|---|---|
| ngnix 서버 관리를 위해 쉘 스크립트를 만들어봤다. (0) | 2026.04.16 |
| nginx 웹페이지 접속 기록 확인하기 (0) | 2026.04.10 |
| 리눅스 원격 접속을 통해 웹페이지 구축 및 소유권분리(chown) 실습 (0) | 2026.04.05 |
| 보안을 위해 ssh접속 포트를 변경하는 이유와 방법 (0) | 2026.04.02 |
댓글