크론이 XDG_RUNTIME_DIR을 상속받도록 합니다.

크론이 XDG_RUNTIME_DIR을 상속받도록 합니다.

설정 emacsclient해야 하는 크론 작업이 실행 중입니다 . XDG_RUNTIME_DIR변수를 /run/user/1000에서와 유사한 것으로 설정할 수 있지만 crontab이는 cron의 소유자가 로그인한 첫 번째 사용자라고 가정합니다(그렇지 XDG_RUNTIME_DIR않은 경우 /run/user/1001).

croncron 작업 소유자로부터 값을 상속받는 더 좋은 방법이 있습니까 ?XDG_RUNTIME_DIR

답변1

제안:

전용 cron 스크립트를 작성합니다.

현재 사용자의 환경 컨텍스트 및 기타 환경 변수를 포함합니다.

cat << EOF > $HOME/croned_script.sh
#!/bin/bash
source $HOME/.bash_profile
export XDG_RUNTIME_DIR=/run/user/1000
#
# your program and arguments from here:
emacsclient
EOF

crontab 목록에 전용 cron 스크립트를 추가합니다.

이 예에서 크론 모드는 매일 정오 12시에 한 번 실행됩니다.

contab -l| sed "-i * 11 * * * bash -c $HOME/croned_script.sh"| crontab

관련 정보