termux ubunto crontab 설치 및 [Ubuntu]Cron 그리고 Crontab (스케줄링)
♨ 카랜더 일정 :
컨텐츠 정보
- 8,257 조회
본문
termux ubunto crontab 설치
apt-get install cron
ubuntu 진입
데비안 /etc/crontab 파일에 수정 crontab 작성예
nano /etc/crontab
-----------
내용입력
===========
00 6 * * * root reboot
-----
저장 ctrl + o
나가기 ctrl +x
===========
시작
systemctl restart cron
참조 자료
=========
[Ubuntu]Cron 그리고 Crontab (스케줄링)
출처: https://lunightstory.tistory.com/8 [생각정리..]
https://lunightstory.tistory.com/8
1. Cron & crontab
cron은 소프트웨어 데몬으로 유닉스 계열에서 시간 기반 작업 스케줄로 소프트웨어 환경을 설정 및 관리하고 관리자가 원하는 시간, 날짜에 주기적으로 실행할 수 있도록 해준다.
cron은 셸 명령어들이 주어진 스케줄에 실행하도록 규정해 놓은 crontab이라는 파일(cron table)에 의해 구동된다.
crontab은 작업 목록 및 cron 데몬에 대한 명령어들이 보관된 위치에 저장되어 있다.
리눅스 User는 자신만의 개개의 crontab 파일을 가질 수 있다.
< cron 운영 스케줄 >
cron은 시작할 때 모든 곳에 저장된 설정파일들을 읽어 메모리에 저장해두고 대기모드로 들어갔다가 매 분마다 할성화되 변경된 crontab 파일들이 있는지 체크하고 변경된 경우 다시 메모리에 저장하고 실행작업이 있는지 확인한 후에 다시 대기모드로 들어간다.
# ┌───────────── min (0 - 59)
# │ ┌────────────── hour (0 - 23)
# │ │ ┌─────────────── day of month (1 - 31)
# │ │ │ ┌──────────────── month (1 - 12)
# │ │ │ │ ┌───────────────── day of week (0 - 6) (0 to 6 are Sunday to Saturday, or use names; 7 is Sunday, the same as 0)
# │ │ │ │ │
# │ │ │ │ │
# * * * * * command to execute
< crontab 스케줄 구조 >
2. Cron 파일
cronid(패키지) = crond(데몬) + crontab(cron table) |
cron이 참조하는 crontab 파일 위치
/var/spool/cron
시스템 개별 사용자를 위한 crontab 파일 위치이며 일반적으로 root 계정용 하나와 계정 사용자당 1개의 파일을 갖게된다.
파일명은 사용자의 계정명이며 cron은 이이름을 바탕으로 설정 파일에 지정된 작업을 실행시 사용할 UID를 결정한다. 이 곳에 있는 설정파일들은 crontab 명령어으로 관리하게 된다./etc/cron.d
소프트웨어 패키지를 설치할 때 필요한 주기적 작업을 등록하는 공간으로 사용./etc/crontab
관리자가 직접 지정한 작업을 설정하며 , 임의의 사용자 권한으로 실행할 수 있다. 시스템 관련 작업을 등록하는 곳이다./etc/cron.allow
파일 내 지정된 사용자만 crontab을 등록할 수 있다. 지정하지 않은 사용자는 crontab 명령을 실행할 수 없다./etc/cron.deny
허용파일이 없는 경우에는 이 deny 파일을 사용. 이 파일을 제외한 나머지 사용자에게 crontab 명령 실행 권한이 주어진다.
두 파일이 없는경우 root 관리자만 허용된다. 단 데비안, 우분투 배포판은 모든 사용자에게 실행권한을 준다.그외..
cron.hourly : 시간
cron.daily : 일별
cron.weekly : 주별
cron.monthly : 월별
해당 디렉토리 아래 cron 작업파일들을 실행하도록 설정되어 있다.
예제 :
45,5 10 * * 1-5 root /usr/bin/rdate -s time.bora.net && clock -w
* : 범위 내 모든 경우
숫자 : 정확히 일치하는 그 시각, 날짜
'-' 기호로 연결된 두 숫자 : 두 숫자 사이에 포함된 범위를 뜻함
콤마(,)로 구분돼 나열된 숫자 : 나열된 숫자 중 일치하는 경우를 뜻함
syslog 재시작
# sudo service rsyslog restart
5. 실습
사용자 계정으로 # crontab -e로 수정하는 경우 cron이 정상적으로 동작되지 않았다. 그래서 직접 /etc/crontab에 추가하고 그 결과를 살펴보았다.
이유는 아무래도 경로와 명령어가 root권한이 없이 시작되는 것 같아서 직접 해당 경로에 작성하고 cron을 재시작 해주었다.
실습 명령은 앞에서 사용중인 gitlab을 마운트한 백업 하드디스크에 매 10분때 백업을 하도록 설정하였다.
2018/03/05 리포트
gitlab-ctl reconfigure를 할 때 자동으로 generate되는 파일이다.
# /var/opt/gitlab/gitlab-rails/etc/gitlab.yml
때문에 원래 default 백업경로(/var/opt/gitlab/backups)에 신나게 백업되고 있었다...ㅠㅠ
그래서 /var/opt/gitlab/gitlab-rails/etc/gitlab.yml을 다시 수정하고 확인해보니 정상적으로 백업되었다.
그리고 cron을 설정할때 사용자 계정으로 crontab -e를 통해 수정하지말고 직접 sudo /etc/crontab을 수정해서 사용하자
어차피 중요 시스템 백업 , 검사를 주기적으로 할거니까..^^
출처: https://lunightstory.tistory.com/8 [생각정리..]
■ ▶ ☞ 정보찾아 공유 드리며 출처는 링크 참조 바랍니다 ♠ . ☞ 본자료는 https://11q.kr 에 등록 된 자료 입니다♠.
뷰PDF 1,2
office view
관련자료
-
링크
댓글목록
등록된 댓글이 없습니다.