erro rsync: failed to conjunto vezes em “/ foo / bar”: Operação não permitida

StackOverflow https://stackoverflow.com/questions/667992

  •  21-08-2019
  •  | 
  •  

Pergunta

Estou recebendo um erro de confundir a partir rsync e as coisas iniciais que estou encontrando de pesquisas na web (assim como todo o chmod'ing habitual) não são resolvê-lo:

rsync: failed to set times on "/foo/bar": Operation not permitted (1)
rsync error: some files could not be transferred (code 23) 
  at /SourceCache/rsync/rsync-35.2/rsync/main.c(992) [sender=2.6.9]

Ele parece estar funcionando, apesar de que o erro, mas seria bom para se livrar disso.

Foi útil?

Solução

Se /foo/bar está em NFS (ou possivelmente algum sistema de ficheiros FUSE), que pode ser o problema.

De qualquer maneira, acrescentando -O / --omit-dir-times a sua linha de comando vai evitá-lo a tentar definir horários de modificação em diretórios.

Outras dicas

O problema é provavelmente devido a / foo / bar não sendo de propriedade do processo de escrita em um darwin remoto (OS X) do sistema. A solução para a questão é definir proprietário adequada no site remoto.

Uma vez que esta resposta tem sido votado, e, portanto, tem sido espero que útil para alguém, eu estou estendendo-o para torná-lo mais claro.

A razão pela qual isso acontece é que o rsync é provavelmente a tentar definir um tempo de modificação arbitrária (mtime) ao copiar arquivos.

Para fazer utime sistema deste darwin () função requer que o processo de escrita uid efetiva ou é o mesmo que o uid arquivo ou um super-usuário, consulte OpenGroup de utime página . Verifique esta discussão na lista de discussão rsync como referência.

O problema no meu caso era que o "ponto de montagem receptor" foi montado incorretamente. Ele estava em modo de somente leitura (por algum motivo Extrange). Parecia rsync estava copiando os arquivos, mas não foi. Eu verifiquei meu arquivo fstab e mudou montar opções para padrão, sistema de arquivos re-montar e executar rsync novamente. Tudo bem, então.

Eu tive o mesmo problema. Para mim a solução é excluir o arquivo remoto e deixe rsync criar novamente.

Eu vi esse problema quando estou escrevendo para um sistema de arquivos que não faz (corretamente) vezes punho -. Eu penso partilhas de SMB ou FAT ou algo

Qual é o seu sistema de arquivos alvo?

Pode ser que você não tem privilégios para alguns dos arquivos. A partir de uma conta de administrador, tente "sudo rsync-av" Como alternativa, permitir que a conta root e fazer login como raiz. Isso deve permitir que você mangueira completamente seu sistema e força bruta seu rsync! ;-) Eu não tenho certeza se o acima --extended-atributos mencionados vai ajudar, mas eu joguei em muito, apenas para uma boa medida.

Isto aconteceu-me em uma partição do tipo xfs (rw,relatime,seclabel,attr2,inode64,noquota), onde os diretórios onde de propriedade de outro usuário em um grupo que eram membros do. Os membros do grupo já estava estabelecido antes de login, e toda a estrutura de diretório era o grupo-gravável. Eu tinha executado manualmente sudo chown -R otheruser.group directory e sudo chmod -R g+rw directory para confirmar isso.

Eu ainda não tenho idéia porque ele não funcionou inicialmente, mas tomar posse com sudo chown -R myuser.group directory fixa-lo. Talvez SELinux relacionadas com a?

Este erro também pode pop-up se você executar o processo de rsync para arquivos que não são modificados recentemente na origem ou destino ... porque ele não pode definir a hora para os arquivos modificados recentemente.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top