코인데일리넷

가상화폐 / NFT / 경제

기타/1432

[DAY11] 리눅스 시스템작업 예약 CRON

코인데일리넷 매니저 2021. 10. 5. 22:49

주기적으로 반복되는 작업에 대한 예약을 설정하는 명령어를 CRON 이라고 한다.

 

-----------------------------------
CRON 과 AT           <- 예약 작업
-----------------------------------
CRON - 주기적으로 반복해야 되는 작업
서비스(데몬) - crond 
관련 파일   - /etc/crontab

AT - 한번만 실행해야되는 작업

실습
매월 15일 새벽 3시 1분에 /home 디렉토리와 그 하위 디렉토리를 /backup 디렉토리 백업
cp /home /backup
/home 압축해서 /backup 백업
tar cfJ /backup/backupfilename.xz /home

1. cron 서비스 실행
시간설정
wget http://download.hanbit.co.kr/centos/8/openrdate-1.2-14.fc30.x86_64.rpm
dnf -y install openrdate*.rpm 

systemctl status crond    <- 서비스 작업의 동작 상태 확인
systemctl start crond      <- crond 데몬의 시작
systemctl stop crond       <- crond 데몬의 중지


cd /etc
ls -l cron*

gedit /etc/crontab

*  *  *  *  * user-name  command to be executed
분 시 일 월 요일 사용자 명령어
01 3 15 * * root  run-parts /etc/cron.monthly

저장 후 나가기
cron.monthly 폴더에 백업 파일 작성
cd /etc/cron.monthly
touch myBackup.sh
chmod 755 myBackup.sh
ls -l

gedit myBackup.sh
#!/bin/sh

set $(date)
fname="Serverbackup-$2$3$4$5tar.xz"

tar cfJ /backup/$fname /home
저장후 나가기

mkdir /backup             <- 백업 디렉토리 생성
systemctl restart crond  <- crond 재시작

스크립트 실행
./myBackup.sh 

매월 15일 새벽 3시 1분에 백업
date 101503002021
systemctl restart crond
1~2분 기다렸다가
ls -l /backup

date 111503002021
systemctl restart crond
1~2분 기다렸다가
ls -l /backup
----------------------------------------------------
at - 한번 만 예약
rdate -s time.bora.net   <- 시스템 시간 동기화

at 4:00 am tomorrow
dnf -y update
reboot
Ctrl + D 
at -l
atrm 작업번호
at -l