Copie uma pasta completa para outro local no mesmo servidor

0

Eu gostaria de fazer um backup de uma pasta de uploads do WordPress de um site mestre para um site de desenvolvimento.

Eu pensei em experimentar este código:

cp -urp / home / meu_site / public_html / wp-content / uploads / * / home / meu_site / public_html / dev / wp-conteúdo / uploads

Você pode confirmar que isso está correto antes de eu causar algum dano, ou aconselhar sobre como devo proceder com essa tarefa?

    
por alemur 13.10.2015 / 16:04

2 respostas

2

Se você quiser manter em sincronia com duas pastas, usar o comando cp é a abordagem errada. Só fará uma cópia, que é sincronizada apenas no momento em que você executa esse comando.

Depende dos seus propósitos, mas para manter sincronizado com duas pastas eu usaria o comando rsync dentro de um cronjob

De qualquer forma, se você quiser fazer isso manualmente, seu comando está quase bom, apenas uma pequena correção:

cp -urp /home/my_site/public_html/wp-content/uploads/ /home/my_site/public_html/dev/wp-content/
    
por 13.10.2015 / 16:12
1

Seu comando cp e sinalizadores parecem atender aos requisitos declarados, exceto por um que você não declarou, mas que está implícito. Se você excluir um arquivo da pasta de origem, o comando CP não fará nada com a pasta de destino, o que pode ser a ação desejada. A palavra "sync" sugere que você deseja que as duas pastas sejam idênticas, o que significa que deixar uma cópia "órfã" de um arquivo não atenderia a esse requisito implícito.

Sugiro que você considere rsync para executar a tarefa. Ele tem muitas opções e recursos e é especificamente para sincronizar arquivos entre dois locais. O seguinte provavelmente funcionará muito bem para as suas necessidades:

rsync -avhd /source /target
    
por 13.10.2015 / 16:13

Tags