다음 위치에 스크립트가 있습니다./home/user/backup.sh
내 루트 crontab을 통해 이 스크립트를 실행하려고 합니다. 실행되고 있지 않습니다. 내 계정에 crontab을 생성하면 user
스크립트가 작동합니다 .
이 스크립트를 루트 crontab으로 실행할 수 있는 방법이 있습니까? 제가 사용하고 있는 라인입니다.
25 20 * * * sh /home/user/backup.sh
스크립트 내용:
tar -czvf /home/user/backup/backup.tar.gz /var/www/
mysqldump -u root -p password --all-databases > /home/user/backup/backup.sql
rsync -avz /home/user/backup user@myserver:/home/user/
답변1
root
전체 액세스 권한을 갖습니다.당신의시스템이지만 일반 사용자 계정이 가지고 있는 다른 시스템에 대한 모든 키를 반드시 가질 필요는 없습니다.
질문은 다음과 같습니다.
rsync -avz /home/user/backup user@myserver:/home/user/
^^^^
root
이 명령을 다음과 같이 실행 하면너, 키가 사용되고 명령이 성공합니다.
sudo -u user rsync -avz /home/user/backup user@myserver:/home/user/
또는 root
공개 키를 시스템 user
에 허용된 SSH 키로 설치할 수 있습니다 myserver
.