Cron은 지정된 간격으로 작업 실행을 예약할 수 있는 스케줄링 데몬입니다. 이러한 작업을 크론 작업이라고 하며 분, 시간, 요일, 월, 요일 또는 이러한 작업을 조합하여 실행하도록 예약할 수 있습니다.
크론 작업은 일반적으로 시스템 유지 관리 작업을 수행하는 데 사용됩니다. 예를 들어 데이터베이스 백업, 최신 보안 패치로 시스템 업데이트, 캐시 지우기, 이메일 보내기 등과 같은 반복 작업을 자동화하도록 크론 작업을 설정할 수 있습니다.
크론 작업을 나열하는 방법에 대해 설명합니다.
사용자 크론 작업을 나열
사용자의 crontab 파일은 사용자 이름에 따라 이름이 지정되며 운영 체제에 따라 위치가 달라집니다. CentOS와 같은 Red Hat 기반 배포판에서는 crontab 파일이 /var/spool/cron 디렉토리에 저장되고, Debian 및 Ubuntu 파일은 /var/spool/cron/crontabs 디렉토리에 저장됩니다.
현재 로그인한 사용자에 대한 모든 크론 작업 목록을 가져오려면 crontab 명령을 사용합니다.
crontab -l
사용자가 크론 작업을 설정한 경우 사용자 크론탭의 내용이 화면에 표시됩니다. 그렇지 않으면 명령은 <사용자 이름>에 대해 crontab을 출력하지 않습니다.
다른 사용자 크론 작업을 나열하려면 -u 옵션을 사용하여 명령 끝에 사용자 이름을 지정합니다. 예를 들어 "표시"라는 사용자의 크론 작업을 나열하려면 다음을 사용합니다.
sudo crontab -u mark -l
각 사용자 crontab 파일에는 600개의 권한이 있으며 사용자가 소유합니다. 루트 및 sudo 권한이 있는 사용자만 다른 사용자의 크론 작업을 볼 수 있습니다.
크론 작업을 생성한 사용자를 확인하려면 스풀 디렉토리의 내용을 루트 또는 sudo 사용자로 나열합니다.
sudo ls -1 /var/spool/cron/crontabs
# root
# mark
시스템의 크론 작업을 나열
/etc/crontab 및 /etc/crontab.d 디렉터리에 있는 파일은 시스템 관리자만 편집할 수 있는 시스템 차원의 크론탭 파일입니다.
파일 내용을 보려면 cat , lessor 또는 임의의 텍스트 편집기를 사용하십시오.
cat /etc/crontab /etc/cron.d/*
대부분의 Linux 배포판에서는 스크립트를 /etc/cron 안에 넣을 수도 있습니다.{daily, weekly, weekly, weekly}개의 디렉토리가 실행되며 스크립트는 매 시간/일/주/월마다 실행됩니다.
이러한 디렉토리 내의 각 스크립트에는 실행 권한이 있어야 합니다. 그렇지 않으면 크론 작업이 실행되지 않습니다.
예를 들어 주간 크론 작업을 모두 보려면 다음을 입력합니다.
ls -l /etc/cron.weekly/
# -rwxr-xr-x 1 root root 813 Feb 10 2019 man-db
출력이 비어 있으면 주간 크론 작업이 없음을 의미합니다.
시스템드 타이머스
Systemd 타이머는 *.timer 접미사로 끝나는 단위 파일이며 시간을 기준으로 서비스 단위를 실행할 수 있습니다.
init 시스템으로 systemd를 사용하는 Linux 배포판에서 타이머는 표준 크론 데몬의 대안으로 사용됩니다.
컴퓨터의 모든 systemd 타이머 목록을 보려면 다음 명령을 실행합니다.
systemctl list-timers
# NEXT LEFT LAST PASSED UNIT ACTIVATES
# Sun 2020-02-16 00:00:00 UTC 1h 53min left Sat 2020-02-15 17:04:11 UTC 5h 2min ago logrotate.timer logrotate.service
# Sun 2020-02-16 00:00:00 UTC 1h 53min left Sat 2020-02-15 17:04:11 UTC 5h 2min ago man-db.timer man-db.service
# Sun 2020-02-16 03:50:52 UTC 5h 44min left Sat 2020-02-15 17:04:11 UTC 5h 2min ago apt-daily.timer apt-daily.service
# Sun 2020-02-16 06:12:38 UTC 8h left Sat 2020-02-15 17:04:11 UTC 5h 2min ago apt-daily-upgrade.timer apt-daily-upgrade.service
# Sun 2020-02-16 18:44:56 UTC 20h left Sat 2020-02-15 17:16:10 UTC 4h 50min ago systemd-tmpfiles-clean.timer systemd-tmpfiles-clean.service
'SW > 리눅스' 카테고리의 다른 글
Linux : Pgrep 명령어, 예제, 사용 방법 (0) | 2022.07.09 |
---|---|
Linux : Debian 10 : VirtualBox Guest Additions 설치 방법, 예제, 명령어 (0) | 2022.07.08 |
Linux : CentOS 8 : Curl 설치, 사용 방법, 예제, 명령어 (0) | 2022.07.05 |
Linux : CentOS 8 : Elasticsearch 설치 방법, 예제, 명령어 (0) | 2022.07.04 |
Linux : CentOS 8 : Python 3.8 설치 방법, 예제, 명령어 (0) | 2022.07.03 |