Como posso automatizar o processo de copiar arquivos de uma pasta para outra em Centos?

3

Eu tenho um aplicativo estatístico que é executado a cada minuto e cria gráficos adequadamente.

Para disponibilizar esses gráficos para outros usuários, eu preciso copiar toda a pasta que contém os gráficos e colá-la em uma pasta compartilhada onde outros usuários possam ver o conteúdo.

Como posso automatizar esse processo para que, por exemplo, a cada 5 minutos, os arquivos e pastas sejam atualizados?

    
por Breeze 10.10.2012 / 11:08

3 respostas

3

Isso soa como algo que talvez pudesse ser perfeitamente resolvido com o rsync. Na sua forma mais simples, pode ser chamado assim

rsync sourceFolder destinationFolder

Chamado em um crontab a cada 5 minutos:

*/5 * * * * /usr/bin/rsync sourceFolder destinationFolder

Para opções, permissões, exclusão de arquivos ou diretórios especiais, consulte man rsync .

    
por 10.10.2012 / 11:41
2

Use um cron job, supondo que você tenha permissões para adicionar um.

crontab -e

0-59/5 * * * * cp -r folder1 folder2

Você pode querer usar sinalizadores melhores no cp, como cp -ur para atualizar apenas os arquivos alterados.

    
por 10.10.2012 / 11:17
2

Com licença, mas por que você precisa dos arquivos copiados ?

Se os usuários estão apenas abrindo / lendo arquivos e não precisam executar atividades neles (como vários usuários editando o mesmo arquivo, etc) ... você pode apenas fazer um link para a pasta, você não poderia ? E então, para cada novo arquivo dentro dele, seus usuários teriam acesso instantâneo.

tente:

ln -s /original_folder/logs /shared_folder/logs

e evite perder espaço ...

    
por 10.10.2012 / 16:35