Linux: crontab 설정

윈도우 스케줄러와 비슷한 개념의 리눅스 crontab은 주기적으로 홈페이지 및 DB 데이터를 백업해야 하거나 특정 시간에 로그 파일 등을 삭제해서 서버 유지 관리가 필요한 경우에 사용되는 스케줄러입니다.

크론탭은 특정 시간주기적으로 작업이 자동으로 이루어지도록 설정하는 것을 의미합니다.

1. 크론탭 자주 사용되는 명령어

~]# crontab -e

vi 명령어처럼 편집할 수 있는 명령어입니다. 직접 편집한 후에 콜론(:) 입력 후 [wq] 명령어를 입력해서 저장할 수 있습니다. 기본 설정(실행) 경로는 /var/spool/cron/crontab 경로에 만들어지며, /var/spool/cron/root 등과 같은 형식으로 만들어집니다.

~]# crontab -l

cat 명령어처럼 표준 출력으로 설정된 내용을 확인할 수 있습니다.

2. 리눅스 크론탭 명령어 목록

크론탭에서 실제 사용하는 명령어는 다른 명령어에 비해 적습니다. 하지만 리눅스 서버를 운영할 때 필수라고 할 수 있는 명령어이기도 합니다.

리눅스(Linux)

3. 크론탭 주기 설정

※ 요일에서 0,7은 일요일을 의미하며 1부터 월요일, 6이 토요일입니다.

4. 크론탭 연산자

크론탭 구문은 연산자를 사용합니다. 필수로 사용해야 하는 부분입니다.

5. 크론탭 백업

실수로 크론탭을 삭제할 경우를 대비해서 크론탭을 텍스트 파일로 백업하는 것을 권장 드립니다.

crontab -l > /home/bak/cron_tab_bak.txt
# 기본 백업 파일 명령어를 만들어 준 후에 매일 오전 5시 50분에 백업 가능하도록 설정 #
50 05 * * * cron_tab -l > /home/bak/cron_tab_bak.txt

6. crontab 설치-CentOS

리눅스에서 크론탭은 cron이란 시스템 데몬에 의해 수행됩니다.

# cron 설치 
~]# yum update -y
~]# yum install -y cronie

# cron 시작
~]# systemctl start crond

# cron systemctl 활성화
~]# systemctl enable crond

# cron systemctl 등록 확인
~]# systemctl list-unit-files | grep crond

7. 크론 로그 및 설정 확인

크론 로그를 확인해서 정상적으로 크론 작업이 실행 되었는지 확인할 수 있습니다.

# 로그 확인
~]# cat /var/log/cron
# 설정 확인
cat /var/spool/cron/root

cron은 주기적으로 실행할 내용을 디렉터리에 넣고 작동합니다. 디랙토리 구조는 아래와 같습니다.

crontab 디렉토리 구조
핸드폰 안의 리눅스

Similar Posts

  • 리눅스 YUM 개념과 기본 명령어

    YUM(Yellow dog Updater, Modified)은 레드햇(RPM) 계열 리눅스 배포판에서 사용되는 패키지 설치 및 관리 도구입니다. 기존의 RPM 방식은 패키지 설치 시 의존성 문제로 사용자가 필요한 도구를 일일이 설치해야 하는 번거로움이 있었습니다. YUM은 이러한 의존성 문제를 자동으로 해결해 주며, 필요한 패키지와 관련된 의존 패키지를 함께 설치하여 오류를 최소화합니다. 의존성이 존재할 때 관련된 다른 패키지들을 자동으로…

  • 리눅스 서버 시간 동기화: timedatectl(CentOS7 이상)

    리눅스에서 날짜 및 시간 설정이 필요한 이유는 서버 운영 중 시간이 잘못되면, 입력되는 DB데이터, 로그 데이터, 웹 서버에 접속한 기록 등의 시간이 맞지 않는 경우가 발생할 수 있기 때문입니다. 리눅스 서버 시간 동기화를 사용하는데 있어 OS는 두 개의 시계를 가지고 있습니다.시스템 시계(소프트웨어 시계), 하드웨어 시계(실시간 시계, BIOS 시계)입니다. 목차1. 크론탭 자주 사용되는 명령어2….

  • [Linux] ifcfg: IP 네트워크 인터페이스 구성(이더넷) | CentOS 7 ver.

    레드헷 계열 리눅스에서 네트워크 구성은 /etc/sysconfig/network-scripts/ifcfg-* 파일에서 설정합니다. ifcfg(interface configuration)는 “이더넷” 장치를 어떻게 네트워크에 연결할지 설정하는 게 ifcfg-* 파일의 목적입니다. 네트워크 인터페이스는 컴퓨터가 네트워크에 연결되는 물리적 또는 가상 장치입니다. 유선(이더넷 카드), 무선(Wi-Fi 어댑터) 등이 이에 해당합니다. 리눅스에서는 eth0, wlan0, enp0s3 등 이름으로 식별하며 고유하게 관리합니다. 네트워크 인터페이스를 통해 데이터가 송수신 되어 인터넷이나 로컬…

  • Linux snapd | Rocky Linux에서 snapd 설치

    스냅크래프트(Snapcraft) 또는 스냅(Snap)은 캐노니컬(Canonical)이 시작한 Ubuntu 스마트폰 운영 체제를 위한 소프트웨어 배포 및 패키지 도구로서 개발되었으며, 패키지 관리 시스템이다. 스냅(snap)이라고 불리는 패키지와 snapd를 사용하는 도구는 업스트림 소프트웨어 패키징을 간편화하여 다양한 리눅스 배포판에서 사용할 수 있도록 도와준다. Linux snapd은 앱 패키지로 데스크톱, 클라우드, IoT에서 사용 가능하며, 설치가 용이하고 안전하며 다양한 플랫폼에서 사용할 수 있으며…

  • 리눅스 셸 환경(Shell Environment) 정의 및 이해와 쉘 환경변수 | Shell 시작 파일 2가지

    셸 세션을 이용해서 서버와 상호 작용을 할 때 해당 동작과 리소스에 대한 연결을 결정하기 위해 컴파일 하는 많은 정보가 있습니다. 이러한 서정 중 일부는 구성 설정에 포함되어 있으며, 다른 설정은 사용자 입력에 의해 결정됩니다. 리눅스 셸 환경은 셸의 구성 설정과 사용자 입력에 의해 결정된 설정을 유지관리 영역을 이용해 관리하는 가장 일반적인 방법을 이용하게…

  • [Linux] usermod 명령어

    usermod 명령어는 user modification(사용자 수정)의 약자로 이미 존재하는 사용자 계정의 속성을 변경할 때 사용됩니다. usermod는 사용자의 로그인 이름, UID (사용자 ID), 홈 디렉토리, 로그인 셸, 그룹 등의 속성을 변경할 수 있는 명령어입니다. 목차1. 크론탭 자주 사용되는 명령어2. 리눅스 크론탭 명령어 목록3. 크론탭 주기 설정4. 크론탭 연산자5. 크론탭 백업6. crontab 설치-CentOS7. 크론 로그 및 설정…

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

Prove your humanity: 1   +   10   =