본문으로 건너뛰기

[Amazon Linux 2023] crontab: command not found

Amazon Linux 2023에서 crontab: command not found 오류가 날 때 cronie 패키지를 설치해 crontab 명령을 사용하는 방법입니다.

요약

  • Amazon Linux 2023에는 crontab이 기본 설치되어 있지 않아 crontab: command not found 오류가 발생합니다.
  • sudo yum -y install cronie로 crontab을 제공하는 cronie 패키지를 설치하면 바로 crontab 명령을 사용할 수 있습니다.

테스트 환경 Amazon Linux 2023, cronie-1.5.7-1.amzn2023.0.2

   ,     #_
   ~\_  ####_        Amazon Linux 2023
  ~~  \_#####\
  ~~     \###|
  ~~       \#/ ___   https://aws.amazon.com/linux/amazon-linux-2023
   ~~       V~' '->
    ~~~         /
      ~~._.   _/
         _/ _/
       _/m/'

간단 메모

요즘은 Amazon Linux 2023 을 써보면서, 기존 Amazon Linux 2 와 다른 부분에 대해 알아가보고 있습니다.
EC2 Image Builder 를 통해, AMI 빌드 및 테스트를 수행하다가 crontab 명령이 수행이 안되서 빌드에 실패하는 현상이 발생하여 이 이슈에 대해 자세히 살펴보았습니다.

[ec2-user@ip-172-31-39-169 ~]$ cat /etc/os-release
NAME="Amazon Linux"
VERSION="2023"
ID="amzn"
ID_LIKE="fedora"
VERSION_ID="2023"
PLATFORM_ID="platform:al2023"
PRETTY_NAME="Amazon Linux 2023"
ANSI_COLOR="0;33"
CPE_NAME="cpe:2.3:o:amazon:amazon_linux:2023"
HOME_URL="https://aws.amazon.com/linux/"
BUG_REPORT_URL="https://github.com/amazonlinux/amazon-linux-2023"
SUPPORT_END="2028-03-01"
[ec2-user@ip-172-31-39-169 ~]$ crontab -l
-bash: crontab: command not found

위와 같이 AL2023 에서는 명령어가 없는 것을 확인 할 수 있었습니다.

[ec2-user@ip-172-31-39-169 ~]$ sudo yum provides crontab
cronie-1.5.7-1.amzn2023.0.2.x86_64 : Cron daemon for executing programs at set times
Repo        : amazonlinux
Matched from:
Filename    : /usr/bin/crontab
[ec2-user@ip-172-31-39-169 ~]$ sudo yum -y install cronie

위와 같이 crontab 패키지인 cronie 를 추가로 설치를 해주면 문제 없이 명령어 사용이 가능합니다.

[ec2-user@ip-172-31-39-169 ~]$ crontab -l
no crontab for ec2-user

기존에 기본적으로 AMI 에 설치가 되던 부분이였는데, 이미지의 경량화를 위한 것인지 다른 배포판에서 기본 설치가 되던 패키지가 누락된 패키지가 있었습니다.
기억을 하기 위해 간단하게 메모를 남깁니다.

참고 자료

자주 묻는 질문

Amazon Linux 2023에서 crontab 명령이 없다고 나오면 어떻게 하나요?

sudo yum -y install cronie로 cronie 패키지를 설치합니다. 설치 후 crontab -l을 실행하면 정상 동작합니다.

crontab 명령은 어떤 패키지에 포함되어 있나요?

sudo yum provides crontab으로 확인하면 /usr/bin/crontab을 제공하는 패키지는 cronie입니다.

EC2 Image Builder로 AL2023 AMI를 빌드할 때 crontab 때문에 실패하는 이유는 무엇인가요?

Amazon Linux 2와 달리 AL2023 AMI에는 cronie가 기본 설치되어 있지 않아 crontab 명령이 실행되지 않기 때문입니다. 빌드 과정에서 cronie를 먼저 설치하면 됩니다.