티스토리 뷰

728x90

 
 
 
작업 예약하기
 
① 정해진 시간에 한 번 실행하기(at)
 
at 명령 설치: sudo apt install at
메일 설치: sudo apt install mailutils (at 명령의 결과를 파일에 저장 또는 메일로 보내므로)
 
at 명령 설정 순서:
- 시간 지정 ex) at 4pm + 3 days, at 10am Jul 31, at 1am tomorrow, at 10:00am today
- 명령 지정 ex) /bin/ls -l ~user1 > ~user1/at.out
- Ctrl + d로 종료 
- 예약한 작업의 결과는 지정된 파일 at.out에 저장.
 
at 작업 파일 확인하기:
/var/spool/at 또는 /var/spool/cron/atjobs
 
at 작업 목록 확인하기:
at -l 또는 atq 명령
 
at 작업 삭제하기:
at -d 작업 번호 또는 atrm 작업 번호
 
at 명령 사용 제한하기:
at 명령의 사용이 허용된 사용자들은 /etc/at.allow 파일에 저장. (기본적으로 존재하는 파일)
at 명령의 사용이 제한된 사용자들은 /etc/at.deny 파일에 저장. (관리자가 필요시에 파일을 생성해야 함)
* /etc/at.allow 파일을 먼저 참조. 즉, 사용자가 두 파일 모두에 속해 있다면 /etc/at.allow 파일을 적용하기 때문에 at 명령을 사용할 수 있음. 
* /etc/at.allow 파일이 없다면 /etc/at.deny 파일에 지정된 사용자를 제외한 모든 사용자가 at 명령 사용 가능.
* /etc/at.deny 파일이 비어있다면 모든 사용자가 at 명령 사용 가능.
* 두 파일 모두 없다면 root만 at 명령 사용 가능.
 
 
② 정해진 시간에 반복 실행하기(crontab)
 
crontab 파일의 형식:
분(0~59)  시(0~23)  일(1~31)  월(1~12)  요일(0~6)  작업 내용
ex) 30 23 1 *(매월) *(매요일) /bin/ls -l ~user1 > ~user1/cron.out
 
crontab 파일 생성하고 편집하기:
crontab -e 명령으로 생성과 편집. 편집기는 EDITOR 환경 변수에 지정된 편집기 사용.
편집한 파일을 저장하면 자동적으로 /var/spool/cron/crontabs 디렉터리에 사용자 이름으로 생성.
 
crontab 파일 내용 확인하기:
crontab -l 명령으로 파일 내용 출력.
 
crontab 파일 삭제하기:
crontab -r 명령으로 crontab 파일 삭제.
crontab -u 사용자명 -r 명령으로 해당 사용자의 crontab 파일 삭제.
 
crontab 명령 사용 제한하기:
crontab 명령의 사용이 허용된 사용자들은 /etc/cront.allow 파일에 저장. (기본적으로 존재하는 파일)
crontab 명령의 사용이 제한된 사용자들은 /etc/cron.deny 파일에 저장. (관리자가 필요시에 파일을 생성해야 함)
* /etc/cron.allow 파일을 먼저 참조. 즉, 사용자가 두 파일 모두에 속해 있다면 /etc/cron.allow 파일을 적용하기 때문에 at 명령을 사용할 수 있음. 
* /etc/cron.allow 파일이 없다면 /etc/at.deny 파일에 지정된 사용자를 제외한 모든 사용자가 at 명령 사용 가능.
* 두 파일 모두 없다면 설정에 따라 root 또는 모든 사용자가 crontab 명령 사용 가능.

728x90
250x250
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2025/01   »
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
글 보관함