Permissões para arquivos copiados para a pasta

0

Estou usando uma gota de oceano digital com o Ubuntu 16.04.3.

Uma das pastas é designada para uploads de FTP. O acesso a esta pasta é limitado a um usuário de upload chamado transferuser

Existe outra pasta chamada dataFolder, na qual o transferuser não possui permissões.

Quando logado como root, se eu copiar tudo da pasta FTP para o dataFolder, as permissões nos arquivos copiados ainda serão específicas para somente o transferuser.

Como posso definir permissões em uma pasta para que qualquer arquivo copiado para essa pasta obtenha as mesmas permissões?

    
por jotamon 24.08.2017 / 17:56

1 resposta

2

Quando você copia com privilégios de root (executando o comando com sudo) e usa a opção para preservar as permissões e a propriedade, você deve obter o que deseja.

De man cp :

   -p     same as --preserve=mode,ownership,timestamps

   --preserve[=ATTR_LIST]
          preserve the specified attributes (default: mode,ownership,time‐
          stamps), if  possible  additional  attributes:  context,  links,
          xattr, all

A linha de comando a seguir copia arquivos na pasta, mas não em subdiretórios

sudo cp -p source-folder/* target-folder

A seguinte linha de comando irá copiar os arquivos na pasta, assim como os subdiretórios e arquivos neles (recursivamente)

sudo cp -pr source-folder/* target-folder

Você também pode usar rsync para esta tarefa (preservando as permissões, incluindo os subdiretórios)

sudo rsync -Ha source-folder/ target-folder

em que -H significa que também gerencia links físicos (opcional).

Se não for o que você deseja, mas você deseja alterar a propriedade ou as permissões, explique com detalhes o que deseja.

    
por sudodus 24.08.2017 / 18:16