스테이징 -> 프로덕션 게시 스크립트를위한 PHP 웹 인터페이스를 만들려고합니다. 웹 인터페이스는 보안되어 있으므로 (인트라넷, 암호 등) rsync를 수행하는 루트 사용자로서 아파치 역할을 맡아 행복합니다. 루트 사용자에게는 암호가없고 SSH 액세스에는 키 파일이 사용됩니다.PHP shell_exec - 암호없이 root로 RSYNC 사용
나는 시도 sudo는 - 보내고 쉘 스크립트에서 rysnc 명령을 ...
sudo rsync --verbose --recursive --times --perms --links --delete /tmp/dir1/* /tmp/dir2/
그리고 아파치이 (가)의 sudoers 파일에 다음을 추가하여 rsync를 실행할 수 있도록 ...
apache ALL=(ALL) NOPASSWD:/usr/bin/rsync
내가 스크립트를 호출하는 PHP의 shell_exec를 사용하고
... 나는 다음과 같은 오류가
$result = shell_exec('bash /tmp/syncscript.sh 2>&1');
...
sorry, you must have a tty to run sudo
루트 사용자 인 것처럼 rsync 명령을 실행할 수 있도록 설정하려면 어떻게해야합니까?
감사합니다.
답변을 주셔서 감사합니다. 결국 내가 취한 접근 방식이 아니었지만 유용했습니다. 충분한 담당자를 얻을 때 돌아와서 투표 할 수 있습니다. –