-
๐ Ch11 Running program at specified times ๐๐ ํ๊ต ๊ณต๋ถ/๐ ์ ๋์ค ์์คํ 2025. 4. 12. 00:16
System clock
์ด์์ฒด์ ๊ฐ ํ์ฌ ์๊ฐ์ ๊ด๋ฆฌํ๋ ํต์ฌ ์์ / ํ์ผ ํ์์คํฌํ ๊ธฐ๋ก, ํ๋ก์ธ์ค ์ค์ผ์ค๋ง ๋ฑ ๋ค์ํ ์์ ์ ์ฌ์ฉ๋จ
date
์ธ์ X - ํ์ฌ ์์คํ ์ ๋ ์ง, ์๊ฐ ์ถ๋ ฅ
์ธ์ O - ๊ฐ ์ด์ฉํด ์์คํ ํด๋ฝ ์ค์ ex) date 201505050001.30
Scheduling commands
์์คํ ์์ ์์ ์ ๋ฏธ๋ฆฌ ์์ฝํด ์ฃผ๊ธฐ์ ๋๋ ๋จ๋ฐ์ฑ์ผ๋ก ์คํํ๊ฒ ํด์ฃผ๋ ๋๊ตฌ
cron
์ฃผ๊ธฐ์ ์ธ ์์ ์์ฝ
Periodic
Crond(daemon) - ๋ฐฑ๊ทธ๋ผ์ด๋์์ ํญ์ ์คํ๋๋ฉด์ crontab ํ์ผ์ ์ ์๋ ์์ฝ ์์ ๋ค์ ์ง์ ๋ ์๊ฐ์ ์คํ
crontab(file) - ๊ฐ ์ฌ์ฉ์๋ ์์ ์ crontab ํ์ผ์ ๊ฐ์ง๊ณ ์์ผ๋ฉฐ, ํ์ผ ๋ด์ ์์ฝ ์์ (๋ช ๋ น์ด์ ์คํ ์๊ฐ ์ง์ ํ ํ๋ค)์ด ์ ์ฅ๋จ
crontab -e (edit) - ํ์ฌ ์ฌ์ฉ์์ crontab ํ์ผ์ ํธ์ง / ์ํ๋ ์์ ์ ์คํ ์๊ฐ๊ณผ ๋ช ๋ น์ด ๊ธฐ๋ก
crontab -l (list) - ํ์ฌ ์ฌ์ฉ์๊ฐ ์ค์ ํ ์์ฝ ์์ ๋ชฉ๋ก ์ถ๋ ฅ
crontab -r (remove) - ํ์ฌ ์ฌ์ฉ์์ crontab ํ์ผ ์ญ์
At
๋จ๋ฐ ์์ ์์ฝ
One time
Atd - at ๋ช ๋ น์ด๋ก ์์ฝํ ๋จ๋ฐ์ฑ ์์ ๋ค์ ์ฒ๋ฆฌํ๋ ๋ฐฑ๊ทธ๋ผ์ด๋ ๋ฐ๋ชฌ
At -t - ์์ฝ ์คํ ์๊ฐ์ ์ง์ ํ์ฌ ๋จ ํ ๋ฒ ์คํํ ์์ ์ ์์ฝ
crontab
ํน์ ์๊ฐ๋์ ์์ฝ๋ ์์ ์๋์ผ๋ก ์คํ๋จ
crontab ํธ์ง ํ๊ฒฝ ์ค์
EDITOR=vi
Export EDITOR
EDITOR ํ๊ฒฝ ๋ณ์ ์ค์
crontab ํธ์ง ๋ฐ ์์ ๋ฑ๋ก
Crontab -e ์ฌ์ฉ์์ crontab ํ์ผ ํธ์งํ ์ ์์ / ํ์ผ์ ์์ฝ ์์ ์ถ๊ฐํ๋ฉด ์ง์ ๋ ์๊ฐ๋์ ์๋์ผ๋ก ํด๋น ์์ ์คํ
์์ฝ ์๊ฐ ์ง์
Minute(0-59) Hour(0-23) Day of Month(1-31) Month(1-12) Day of week(0-7) command
ex) 30 15 * * * /home/user/backup.sh
crontab expression
์ฌ๋ฌ ๊ฐ ๋์ด comma and no space - 0,2,5,7,9
๋ฒ์ ์ฌ์ฉ through - 1 ~ 5
๋ณํ ์ฌ์ฉ ๋ชจ๋ ๊ฐ ์ ํ every - *
์ฌ๋์ ์ฌ์ฉ ์คํ ์ง์ step - 10~16/2, 10 12 14 16 (2์ฉ ์ฆ๊ฐ)
Managing out from cron
cron ์์ ์์ ์ถ๋ ฅ ๊ฒฐ๊ณผ๋ฅผ ๊ด๋ฆฌํ๋ ๋ฐฉ๋ฒ
์ด๋ฉ์ผ๋ก ์ ์กํ๊ธฐ
commands | mail -s "..." username
-s - ์ด๋ฉ์ผ์ ์ ๋ชฉ ์ง์
username - ์ด๋ฉ์ผ์ ๋ฐ์ ๋์ ์ฌ์ฉ์๋ช ๋๋ ์ด๋ฉ์ผ ์ฃผ์
๋ก๊ทธ ํ์ผ๋ก ๋ฆฌ๋ค์ด๋ ์ redirect to log file
command >> log.file
๊ธฐ์กด ๋ก๊ทธ ํ์ผ์ ๋ด์ฉ ๋ค์ ์ถ๋ ฅ ๊ฒฐ๊ณผ ์ถ๊ฐ
์์ ์คํ ๊ฒฐ๊ณผ๋ฅผ ์๋ก์ด ๋ก๊ทธ ํ์ผ๋ก ๋ฎ์ด์ฐ๋ ค๋ฉด > ๊ธฐํธ ์ฌ์ฉ
Controlling access to cron/st
cron, at๊ณผ ๊ฐ์ ์ค์ผ์ค๋ง ๋๊ตฌ์ ์ฌ์ฉ ๊ถํ ์ ์ด๋ฅผ ์ํด ์์คํ ์ /etc/cron.allow, /etc/cron.deny ์ฌ์ฉ
์ด๋ค ์ฌ์ฉ์๊ฐ ์์ฝ ์์ ์ ์คํํ ์ ์๋์ง๋ฅผ ์ง์ ๊ฐ๋ฅ
/etc/cron.allow
์ด ํ์ผ์ ๋ช ์๋ ์ฌ์ฉ์๋ค์ ์์ฝ ์์ ์ฌ์ฉ ๊ฐ๋ฅ
์ด ํ์ผ์ด ์กด์ฌํ๋ฉด, ์ค์ง ์ด ํ์ผ์ ๋์ด๋ ์ฌ์ฉ์๋ค๋ง cron ์์ ์ ๋ฑ๋กํ๊ฑฐ๋ ์คํ ๊ฐ๋ฅ
->
/etc/cron.deny
์ด ํ์ผ์ ๋ช ์๋ ์ฌ์ฉ์๋ค์ ์์ฝ ์์ ์ฌ์ฉ ๋ถ๊ฐ
/etc/cron.allow ํ์ผ ์๊ณ , /etc/cron.deny ํ์ผ๋ง ์กด์ฌํ๋ฉด, /etc/cron.deny์ ํฌํจ๋์ง ์์ ์ฌ์ฉ์๋ค์ ์์ฝ ์์ ์ฌ์ฉ ๊ฐ๋ฅ
at
one time execution
atq - ์์ฝ๋ at ์์ ๋ค์ ๋ชฉ๋ก ํ์ธ
atrm - ํน์ at ์์ ์ ์ญ์
at -f at.file - ํ์ผ at.file์ ์ ์ฅ๋ ๋ช ๋ น์ด๋ค์ ์ฝ์ด์ ์์ฝ ์์ ์ผ๋ก ๋ฑ๋ก
at 17:00
at 5pm
at noon
at 4pm + 3 days - ์ค๋ ๊ธฐ์ค 3์ผ ํ ์คํ 4์
'๐ ํ๊ต ๊ณต๋ถ > ๐ ์ ๋์ค ์์คํ ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๐ Ch10 Job Control & Process Management ๐ (0) 2025.04.11 ๐ Ch08 Advanced Tools ๐ (1) 2025.04.11 ๐ Ch07 vi ๐ (0) 2025.04.03 ๐ Ch06 Unix Commands In-Depth ๐ (0) 2025.04.03 ๐ Ch05 Customizing Working Environment ๐ (0) 2025.04.03