anacron이 예약된 작업을 실행하지 않는 이유는 무엇입니까?

anacron이 예약된 작업을 실행하지 않는 이유는 무엇입니까?

여러 작업을 실행하도록 설정 했지만 anacron이상한 권한 오류로 인해 실패하는 것 같습니다.

이 내 꺼야 anacrontab:

# /etc/anacrontab: configuration file for anacron

# See anacron(8) and anacrontab(5) for details.

SHELL=/bin/sh
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
# the maximal random delay added to the base delay of the jobs
RANDOM_DELAY=45
# the jobs will be started during the following hours only
START_HOURS_RANGE=3-22

#period in days   delay in minutes   job-identifier   command
1   5   cron.daily      nice run-parts /etc/cron.daily
7   25  cron.weekly     nice run-parts /etc/cron.weekly
@monthly 45 cron.monthly        nice run-parts /etc/cron.monthly

@daily  1   bashrc.daily    rsync -aAX $HOME/.bashrc /run/media/MYUSER/samsung/home/MYUSER/.bashrc
@daily  1   bash_aliases.daily  rsync -aAX $HOME/.bash_aliases /run/media/MYUSER/samsung/home/MYUSER/.bash_aliases
@daily  5   variety.daily   rsync -aAX $HOME/.config/variety/ /run/media/MYUSER/samsung/home/MYUSER/.config/variety/
@daily  3   testfile.daily  rsync -aAX $HOME/Documents/flag.hs /run/media/MYUSER/samsung/flag.hs
@weekly 5   st_apps.daily   rsync -aAX $HOME/.local/share/Steam/steamapps/ /run/media/MYUSER/samsung/home/MYUSER/.local/share/Steam/steamapps/
@weekly 15  st_ud.daily rsync -aAX $HOME/.local/share/Steam/userdata/ /run/media/MYUSER/samsung/home/MYUSER/.local/share/Steam/userdata/
@weekly 1   anacrontab.weekly   rsync -aAX /etc/anacrontab /run/media/MYUSER/samsung/home/anacrontab

이것은의 출력입니다journalctl -b --no-pager --catalog | grep anacron

jan. 14 00:02:09 MYPC anacron[73073]: Anacron started on 2022-01-14
jan. 14 00:02:09 MYPC anacron[73073]: Can't open timestamp file for job cron.daily: Permission denied
jan. 14 00:02:09 MYPC anacron[73073]: Aborted
jan. 14 00:02:42 MYPC sudo[73113]:     MYUSER : TTY=pts/0 ; PWD=/home/MYUSER ; USER=root ; COMMAND=/usr/bin/dd bs=4k of=/etc/anacrontab
jan. 14 00:02:50 MYPC sudo[73124]:     MYUSER : TTY=pts/0 ; PWD=/home/MYUSER ; USER=root ; COMMAND=/usr/bin/dd bs=4k of=/etc/anacrontab

누구든지 제발제발나를 올바른 방향으로 밀어주나요?

시스템: 페도라 35

답변1

이전에는 일 했지만 anacron더 이상 일하지 않았기 때문에 다른 접근 방식을 취하기로 결정했습니다. 권한을 승격하지 않고 실행할 수 있으려면 다음을 수행해야 합니다.

  1. 다음 명령을 사용하여 홈 디렉토리에 .anacron폴더와 두 개의 하위 디렉토리( 및)를 만듭니다 etc.spoolmkdir -p ~/.anacron/{etc,spool}
  2. etc원본 파일과 유사한 것을 실행하여 touch $HOME/.anacron/etc/anacrontab디렉터리에 새 파일을 만듭니다 /etc/anacrontab. 예를 들어:
# Personal anacrontab

SHELL=/bin/bash
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

#period in days   delay in minutes   job-identifier   command
@daily  1   bashrc.daily    rsync -aAXr $HOME/.bashrc /run/media/myuser/samsung/home/myuser/.bashrc
@daily  1   bash_aliases.daily  rsync -aAXr $HOME/.bash_aliases /run/media/myuser/samsung/home/myuser/.bash_aliases
  1. 터미널에서 crontab -e다음을 입력하고 추가합니다.
@hourly /usr/sbin/anacron -s -t $HOME/.anacron/etc/anacrontab -S $HOME/.anacron/spool

cron이 시간별 작업을 실행할 때까지 기다리는 것을 테스트하거나 anacron를 실행하여 즉시 강제로 실행 되도록 할 수 있습니다 anacron -fnd -t $HOME/.anacron/etc/anacrontab -S $HOME/.anacron/spool/.

이것이 앞으로 다른 사람들에게 도움이 되기를 바랍니다!

관련 정보