rsync가 소유자와 그룹을 계속 덮어씁니다.

rsync가 소유자와 그룹을 계속 덮어씁니다.

소스 파일에는 다음 권한이 있습니다.jim:jim

원본 대상 파일에는 다음 권한이 있습니다.www-data:www-data

내 명령:rsync -Pav --no-p --no-o --no-g file ubuntu@ip_address:/path/file

그러나 대상 파일은 ubuntu:ubuntu다음과 같이 됩니다.www-data:www-data

그러나 원본 파일과 대상 파일이 다른 경우에도 권한은 유지됩니다. 무엇이 문제일까요?

노트: rsync는 MacOS에서 Ubuntu로 수행됩니다. 이것이 관련성이 있는지 확실하지 않습니다.

감사해요.

답변1

귀하의 대상 사용자 계정에는 ubuntu자신이 소유한 파일을 생성할 수 있는 권한이 없으므로 www-data원하는 효과를 얻을 수 없습니다.

대상 사용자 이름 www-data또는 을 사용 root하거나, 백업 전용인 경우 -M--fake-super명령에 추가하는 것을 고려하십시오.

답변2

당신은 그것을 유지하고 싶다고 말했지만 그것을 끄는 것을 www-data:www-data지정했습니다 :--no-o --no-g

   --owner, -o
          This option causes rsync to set the owner of the destination file to 
          be the same as the source file, but only if the receiving rsync is  
          being  run  as the super-user (see also the --super and --fake-super
          options).  Without this option, the owner of new and/or transferred 
          files are set to the invoking user on the receiving side.

(단체도 마찬가지)

이 작업을 수행하려면 원격 호스트에서도 루트여야 합니다. 다음 명령을 사용하여 이 작업을 수행할 수 있습니다( sudo원격 시스템에서 사용 하는 경우 NOPASSWD).

rsync -Pav --rsync-path="sudo rsync" file ubuntu@ip_address:/path/file

관련 정보