Como garantir que o rsync defina as permissões de arquivo corretas?

1

Estou transferindo dados de uma caixa de sinologia para uma caixa debian com rsync.

Infelizmente, as permissões de todos os arquivos transferidos estão definidas para rwxrwxrwx na caixa debian. Eu quero ter certeza de que esses arquivos podem ser vistos apenas pelo usuário proprietário. Existe uma maneira de dizer à caixa de debian para definir as permissões para algo como rwx------ ?

O trabalho rsync é configurado através da GUI do DSM. Se possível, prefiro evitar hackear a caixa de sinologia e fazer algo na linha de comando. Isso significa que estou procurando uma maneira de definir as permissões no lado do servidor (caixa debian). Estou usando a versão mais recente do DSM (4.1).

    
por BetaRide 05.11.2012 / 10:20

2 respostas

3

O rsync (3.0.9, pelo menos) tem uma opção --chmod , eis o que ele faz:

This option tells rsync to apply one or more comma-separated "chmod" modes to the permission of the files in the transfer. The resulting value is treated as though it were the permissions that the sending side supplied for the file,

    
por 17.01.2013 / 23:09
0

Tanto quanto sei, o rsync não tem essa funcionalidade. Você pode configurar seu UMASK antes de iniciar a transferência usando:

$ umask 077

Em seguida, execute a transferência rsync. Verifique se você não está usando a opção de permissões de preservação (-p) ou qualquer coisa que defina permissões de preservação, por exemplo, -uma. Se você estiver usando isso como parte de um script e usando um subshell, não será necessário redefinir o umask quando o shell sair, ele será revertido. Se você continuar usando o shell, eu recomendo que você restaure sua umask para uma configuração mais permissiva, como 022.

    
por 05.11.2012 / 10:51