Copiando um diretório para o diretório home de vários usuários e alterando a propriedade do usuário / grupo

1

No meu servidor Ubuntu existem cerca de 150 contas de shell. Todos os nomes de usuários começam com o prefixo u12 .. Eu tenho acesso root e estou tentando copiar um diretório chamado "somefiles" para todos os diretórios home. Depois de copiar o diretório, a propriedade do usuário e do grupo do diretório deve ser alterada para o usuário. Nome de usuário, grupo e nome do dir home são os mesmos. Como isso pode ser feito?

    
por nixnotwin 21.09.2012 / 07:11

1 resposta

2

Faça a cópia como o usuário de destino. Isso fará automaticamente os arquivos de destino. Certifique-se de que os arquivos originais sejam legíveis por todo o mundo (ou pelo menos legíveis por todos os usuários-alvo). Execute chmod depois se você não quiser que os arquivos copiados sejam legíveis para o mundo.

getent passwd |
awk -F : '$1 ~ /^u12/ {print $1}' |
while IFS= read -r user; do
  su "$user" -c 'cp -Rp /original/location/somefiles ~/'
done
    
por 22.09.2012 / 01:44