Os backups devem de­sem­pe­nhar sempre um papel fun­da­men­tal no seu pla­ne­a­mento relativo aos ser­vi­do­res. A fer­ra­menta ou o protocolo de sin­cro­ni­za­ção gratuito rsync permite-lhe con­fi­gu­rar e realizar backups in­di­vi­du­ais de forma rápida.

Con­fi­gu­rar cópias de segurança rsync em ser­vi­do­res Linux: veja como fazer

Para utilizar o rsync em sistemas ope­ra­ti­vos Linux, deve instalar o protocolo através do pacote com o mesmo nome e criar as suas cópias de segurança através de comandos no terminal. A seguir, ex­pli­ca­mos os passos mais im­por­tan­tes para con­fi­gu­rar um processo de cópia de segurança com o rsync, uti­li­zando um exemplo no Ubuntu.

Nor­mal­mente, o rsync já vem instalado por pre­de­fi­ni­ção no Ubuntu. Caso contrário, utilize este comando para o instalar:

sudo apt-get install rsync
bash

Depois de instalar o rsync, utilize os comandos de terminal desejados para definir os di­re­tó­rios de origem e de destino, bem como as opções de cópia de segurança. Como caminho de origem e de destino, deve es­pe­ci­fi­car, res­pe­ti­va­mente, o diretório de origem e o diretório onde o rsync irá armazenar a cópia de segurança. O modo padrão («Archive») é executado da seguinte forma:

rsync -a directorio_de_origen directorio_de_destino
bash
Dica

Utilize a execução de teste -n para verificar se os pa­râ­me­tros e di­re­tó­rios indicados estão corretos; na pior das hipóteses, in­di­ca­ções erradas podem provocar uma perda de dados. Por vezes, nem todos os ficheiros são copiados, o que se deve fre­quen­te­mente à falta dos direitos de acesso ne­ces­sá­rios. Neste caso, tente executar o comando precedido do sudo como ad­mi­nis­tra­dor.

Backup com rsync: cinco cenários de uti­li­za­ção

Se dominar os comandos básicos, o rsync revelar-se-á uma fer­ra­menta muito eficaz para copiar ficheiros e criar cópias de segurança. Neste contexto, pode ex­pe­ri­men­tar con­fi­gu­ra­ções in­di­vi­du­ais de comandos ou recorrer às com­bi­na­ções es­ta­be­le­ci­das dos pa­râ­me­tros rsync dis­po­ní­veis. Nas secções seguintes, resumimos cinco cenários de uti­li­za­ção comuns para as cópias de segurança com o rsync.

Cópia de segurança padrão no modo de arquivo

Por pre­de­fi­ni­ção, o modo de arquivo copia todos os ficheiros do diretório de origem para o diretório de destino, incluindo todas as subpastas. Todos os direitos, marcas de tempo e dados do dis­po­si­tivo são mantidos. Esta é ge­ral­mente a solução mais simples e adequada, graças à com­bi­na­ção de várias opções num único parâmetro. Se, além disso, combinar este modo com o parâmetro -v, receberá também in­for­ma­ções de­ta­lha­das sobre o estado durante o processo de cópia de segurança.

rsync -av directorio_de_origen directorio_de_destino
bash

Como caminho de origem e destino, deve es­pe­ci­fi­car-se, res­pe­ti­va­mente, o diretório de origem e o diretório onde o rsync irá armazenar a cópia de segurança.

Cópias idênticas do diretório de origem

O programa rsync não serve apenas para trans­fe­rir ficheiros de A para B, mas também permite criar cópias idênticas de pastas e di­re­tó­rios completos. Após a cópia padrão, são eli­mi­na­dos todos os ficheiros que se en­con­tra­vam na pasta de destino antes da execução da cópia de segurança rsync, mas que não estão na pasta de origem.

rsync -av --delete directorio_de_origen directorio_de_destino
bash

Backup com o rsync sem ficheiros de um de­ter­mi­nado formato

Se quiser fazer uma cópia de segurança com o rsync que exclua ficheiros com um de­ter­mi­nado formato, pode fazê-lo com --exclude. Este parâmetro permite-lhe definir um padrão de ca­rac­te­res es­pe­cí­fico, que o rsync utilizará como indicador para ignorar um ficheiro. O código de exemplo a seguir destina-se ao formato de ficheiro de texto .txt:

rsync -av --exclude'*.txt' directorio_de_origen directorio_de_destino
bash

Cópia de segurança de ficheiros com tamanho máximo ou mínimo

Se não quiser utilizar um de­ter­mi­nado padrão de ca­rac­te­res, mas sim o tamanho do ficheiro, como critério para ignorar de­ter­mi­na­dos ficheiros no processo de backup do rsync, deve utilizar os pa­râ­me­tros --max-size ou --min-size. Com o comando seguinte, serão copiados apenas os ficheiros com um tamanho mínimo de 10 MB e um tamanho máximo de 100 MB:

rsync -av --min-size=10MB --max-size=100MB directorio_de_origen directorio_de_destino
bash

Backups rsync com conversão do formato de ca­rac­te­res

É possível que, no diretório de destino, precises dos dados noutro formato de ca­rac­te­res, por exemplo, se pre­ten­de­res enviar dados de um servidor Mac para um servidor Linux. O dis­po­si­tivo da Apple utiliza por pre­de­fi­ni­ção o UTF8-MAC, que não está dis­po­ní­vel no sistema Linux e que causaria problemas com ca­rac­te­res especiais e acentos. Através da opção --iconv, pode adaptar fa­cil­mente a co­di­fi­ca­ção dos ca­rac­te­res (no nosso exemplo, de UTF8-MAC para UTF8):

rsync -av --iconv=UTF8-MAC,UTF8 directorio_de_origen directorio_de_destino
bash

Visão geral das opções mais im­por­tan­tes do rsync backup

Podes per­so­na­li­zar as con­fi­gu­ra­ções das tuas cópias de segurança rsync através de opções, que podes abreviar com uma letra ou escrever por extenso. A tabela que te apre­sen­ta­mos a seguir resume os pa­râ­me­tros mais im­por­tan­tes, que podem ser com­bi­na­dos sempre que ne­ces­sá­rio:

Opção Função
-r, --recursive O backup rsync terá em conta todas as subpastas incluídas
-u, --update Instrução para não con­si­de­rar os ficheiros que são mais recentes no diretório de destino do que no diretório de origem
-c, --checksum Distinção entre ficheiros de origem e de destino através de somas de ve­ri­fi­ca­ção
-l, --links Os atalhos sim­bó­li­cos são copiados como tal (e não como ficheiros)
-p, --perms As per­mis­sões dos ficheiros são mantidas
-g, --group As per­mis­sões de grupo dos ficheiros são mantidas
-t, --times As marcas temporais (última mo­di­fi­ca­ção) dos ficheiros são mantidas
-o, --owner O pro­pri­e­tá­rio dos ficheiros é mantido (apenas se for ad­mi­nis­tra­dor)
-D, --devices Os dados do dis­po­si­tivo são mantidos
-z, --compress Com­pres­são au­to­má­tica dos dados trans­mi­ti­dos
--compress-level=NUM De­ter­mi­na­ção do grau de com­pres­são; é permitido um valor (“NUM”) entre 0 (sem com­pres­são) e 9 (com­pres­são máxima)
-v, --verbose In­for­ma­ções de­ta­lha­das durante o processo de cópia de segurança
-q, --quiet Todas as in­for­ma­ções relativas ao processo de cópia de segurança são ocultadas (com exceção das mensagens de erro)
-a, --archive Modo de arquivo utilizado como padrão e que é idêntico à com­bi­na­ção de opções -rlptgoD
-n, --dry-run Execução de teste em que não são feitas al­te­ra­ções reais
-h, --help Menu de ajuda (só pode ser utilizado sem indicação dos di­re­tó­rios de origem e de destino ou de outros ar­gu­men­tos)
--bwlimit=KBPS Limitação da largura de banda (kilobytes por segundo), por exemplo, --bwlimit=30 (limite de 30 kbit/s)
--exclude=MUSTER Exclusão de um padrão da sin­cro­ni­za­ção, por exemplo, --exclude carpeta de ejemplo (a pasta “Pasta de exemplo” não será sin­cro­ni­zada.)
--delete Eli­mi­na­ção de todos os ficheiros que se encontram no diretório de destino, mas que não estão no diretório de origem
--progress Indicação da duração do backup rsync e da ve­lo­ci­dade de trans­mis­são
--list-only Enu­me­ra­ção dos ficheiros em vez de efetuar uma cópia de segurança
--stats Relatório detalhado sobre os dados trans­fe­ri­dos (quan­ti­dade, tamanho)
--max-size=SIZE Definição de um tamanho máximo de ficheiro, por exemplo, --max-size=10MB (só serão trans­fe­ri­dos ficheiros com um tamanho até 10 MB.)
--ignore-errors Evita a in­ter­rup­ção do processo de cópia de segurança em caso de erro
Ir para o menu principal