Como copiar ficheiros para um VPS Linux com rsync ou scp

scp e rsync copiam ficheiros via SSH. Use-os para configs, scripts, backups, mundos e pastas de servidor quando o SFTP não é conveniente.

scp é melhor para cópias rápidas e pontuais. rsync é melhor para sincronizações repetidas porque pode copiar apenas ficheiros alterados, preservar permissões, excluir pastas, pré-visualizar alterações e espelhar eliminações quando solicitado.

 

Copiar um ficheiro com scp

scp ./server.cfg username@VPS_IP_ADDRESS:/home/username/server.cfg

 

Copiar uma pasta com scp

scp -r ./world username@VPS_IP_ADDRESS:/home/username/world

 

Usar uma porta SSH personalizada com scp

scp usa um -P maiúsculo para a porta SSH:

scp -P 2222 ./server.cfg username@VPS_IP_ADDRESS:/home/username/server.cfg

 

Usar uma chave SSH com scp

scp -i ~/.ssh/mykey ./server.cfg username@VPS_IP_ADDRESS:/home/username/server.cfg

 

Sincronizar uma pasta com rsync

rsync -avz ./world/ username@VPS_IP_ADDRESS:/home/username/world/

A barra final é importante. ./world/ copia o conteúdo da pasta para a pasta de destino. Sem a barra final, rsync copia a própria pasta para o destino.

 

Pré-visualizar um rsync antes de copiar

Use --dry-run quando quiser verificar o que mudaria antes de alterar os ficheiros remotos:

rsync -avz --dry-run ./world/ username@VPS_IP_ADDRESS:/home/username/world/

Terminal Linux mostrando uma execução a seco do rsync antes de copiar ficheiros para um VPS

 

Espelhar uma pasta exatamente

--delete remove ficheiros remotos que já não existem localmente. Isto é útil para espelhos exatos, mas perigoso se apontar para a pasta errada.

rsync -avz --delete ./world/ username@VPS_IP_ADDRESS:/home/username/world/

Execute o mesmo comando com --dry-run primeiro se estiver a usar --delete.

 

Excluir ficheiros ou pastas

Exclua logs, pastas de cache, ficheiros temporários ou ficheiros gerados que não deseja copiar:

rsync -avz --exclude "logs/" --exclude "*.tmp" ./server/ username@VPS_IP_ADDRESS:/home/username/server/

 

Usar uma porta SSH personalizada com rsync

rsync passa opções SSH através de -e:

rsync -avz -e "ssh -p 2222" ./server/ username@VPS_IP_ADDRESS:/home/username/server/

 

Usar uma chave SSH com rsync

rsync -avz -e "ssh -i ~/.ssh/mykey" ./server/ username@VPS_IP_ADDRESS:/home/username/server/

 

Copiar do VPS de volta para o seu PC

Inverta a origem e o destino ao descarregar uma pasta do VPS:

rsync -avz username@VPS_IP_ADDRESS:/home/username/world/ ./world-backup/

 

Opções úteis do rsync

OpçãoO que faz
-aModo de arquivo. Preserva pastas, permissões, timestamps e symlinks.
-vSaída detalhada, para que possa ver o que está a ser copiado.
-zComprime dados durante a transferência. Útil em ligações mais lentas.
--progressMostra o progresso da cópia para ficheiros grandes.
--dry-runMostra o que aconteceria sem alterar ficheiros.
--deleteElimina ficheiros remotos que não estão presentes na origem.
--excludeIgnora ficheiros ou pastas correspondentes.

 

Quando usar cada um

FerramentaMelhor para
scpCópias simples e pontuais de ficheiros ou pastas.
rsyncSincronizações repetidas, pastas maiores, backups, exclusões, execuções a seco e cópia apenas de ficheiros alterados.

Pare o servidor de jogos antes de substituir ficheiros de mundo ativos, ficheiros de base de dados ou saves. Faça um backup primeiro se estiver a usar --delete ou a copiar sobre um mundo existente.

  • 0 Utilizadores acharam útil
Esta resposta foi útil?

Artigos Relacionados

Como conectar-se a um VPS Linux com SSH

SSH é a forma normal de gerir um VPS Linux. Ele fornece um terminal no servidor para que possa...

Como atualizar pacotes em um VPS Linux

Manter os pacotes atualizados ajuda a corrigir problemas de segurança e mantém as ferramentas do...

Como criar um utilizador sudo num VPS Linux

Um utilizador sudo permite-lhe gerir um VPS Linux sem ter de iniciar sessão como root para cada...

Como proteger o SSH num VPS Linux

O SSH é a principal forma de gerir um VPS Linux, por isso deve ser protegido antes de o servidor...

Como verificar o uso de disco em um VPS Linux

Problemas de uso de disco podem impedir que atualizações, backups, logs, bases de dados e...