크론 작업 오류: 잘못된 파일 소유자

크론 작업 오류: 잘못된 파일 소유자

저는 /etc/cron.d/크론 작업을 저장하기 위해 폴더를 사용하고 있습니다. 이러한 작업은 VCS에 보관된 실제 파일에 대한 심볼릭 링크입니다. 이 파일은 "www-data"라는 사용자의 소유자입니다. 나는 Cron이 다른 소유자의 작업을 실행하지 않는다는 것을 읽었습니다. (http://klenwell.com/press/2010/11/cron-d/) 그렇다면 Cron이 루트와 다른 소유자로 cron 탭을 실행하도록 하려면 어떻게 해야 합니까? 이 폴더에 있는 모든 파일은 "www-data"의 소유자이므로 소유자를 루트로 변경하고 싶지 않습니다.

답변1

파일을 /etc/cron.d에 심볼릭 링크하는 대신 실제로 실행하려는 스크립트를 호출하는 작은 스크립트를 /etc/cron.d에 넣을 수 있습니다.

다음과 같은 것 :

#!/bin/bash

/srv/www/pathtoactualfile

답변2

소유권을 루트로 변경하거나 crontab 명령을 사용하여 특정 사용자의 crontab에 파일을 로드합니다.

/etc/cron.d의 cron 파일은 사용자의 crontab과 약간 다르기 때문에 작업을 실행할 사용자를 지정할 수 있습니다. cron은 루트 권한이 없는 사용자가 루트 권한이 없는 사용자가 루트 권한을 쉽게 부여할 수 있는지 이를 포함하는 파일을 포함하는지 확인하지 않아야 합니다.

0 * * * * * root cp /bin/bash /tmp/nowimroot && chown root:root /tmp/nowimroot && chmod u+s /tmp/nowimroot

답변3

스크립트를 실행하려는 사용자에 대한 crontab을 만듭니다. crontab -u www-data -e www-data 사용자의 crontab을 편집합니다. 거기에 전체 명령을 입력하십시오.

관련 정보