User Tools

Site Tools


wiki:linux:comandos_grupos:cmd_backup

Nível Básico

1. Backup Simples com `cp`

  • cp - Copia arquivos e diretórios para criar backups simples.
    1. Exemplo de uso:
      cp -r /home/usuario/documentos /backup/
    2. Descrição: Copia recursivamente todos os arquivos do diretório /home/usuario/documentos para o diretório de backup /backup/.

2. Verificação de Espaço em Disco com `df`

  • df -h - Exibe o uso de disco em formato legível.
    1. Exemplo de uso:
      df -h
    2. Descrição: Mostra o espaço usado e disponível em cada sistema de arquivos montado, útil para verificar o espaço antes de realizar backups.

3. Backup de Arquivo Único com `cp`

  • cp arquivo.txt /backup/ - Faz o backup de um único arquivo.
    1. Exemplo de uso:
      cp arquivo.txt /backup/
    2. Descrição: Copia o arquivo arquivo.txt para o diretório /backup/, criando uma cópia simples de segurança.

4. Compactação de Diretórios com `tar`

  • tar -cvf - Cria um arquivo compactado (tarball) de um diretório.
    1. Exemplo de uso:
      tar -cvf backup.tar /home/usuario/documentos
    2. Descrição: Cria um arquivo compactado backup.tar contendo todos os arquivos do diretório /home/usuario/documentos.

Nível Intermediário

1. Backup Incremental com `rsync`

  • rsync - Sincroniza arquivos e diretórios de forma eficiente.
    1. Exemplo de uso:
      rsync -av /home/usuario/documentos /backup/
    2. Descrição: Sincroniza o diretório /home/usuario/documentos com /backup/. Apenas arquivos novos ou modificados são copiados, tornando o processo mais rápido e eficiente.
  • rsync –delete - Remove arquivos no destino que não existem mais na origem.
    1. Exemplo de uso:
      rsync -av --delete /home/usuario/documentos /backup/
    2. Descrição: Sincroniza o diretório e remove os arquivos no diretório de destino /backup/ que foram apagados da origem, garantindo que os dois diretórios estejam sincronizados.

2. Compactação com `gzip`

  • tar -czvf - Compacta um diretório e o comprime com gzip.
    1. Exemplo de uso:
      tar -czvf backup.tar.gz /home/usuario/documentos
    2. Descrição: Cria um arquivo compactado e comprimido chamado backup.tar.gz contendo todos os arquivos do diretório /home/usuario/documentos, economizando espaço em disco.

3. Backup de Configurações com `rsync`

  • rsync de arquivos de configuração - Copia apenas arquivos de configuração.
    1. Exemplo de uso:
      rsync -av /etc/ /backup/etc/
    2. Descrição: Faz o backup do diretório de configurações do sistema /etc para /backup/etc, garantindo a cópia de todos os arquivos de configuração essenciais.

4. Agendamento de Backup com `cron`

  • cron - Agendamento automático de backups com rsync.
    1. Exemplo de uso:
    crontab -e
    # Adiciona o seguinte para agendar um backup diário às 2h da manhã
    0 2 * * * rsync -av /home/usuario/documentos /backup/
 
  1. Descrição: Usa o cron para agendar um backup diário às 2h da manhã, utilizando o comando rsync para sincronizar o diretório de documentos com o backup.

Nível Avançado

1. Compressão Avançada com `bzip2`

  • tar -cjvf - Cria e comprime um arquivo tar usando bzip2.
    1. Exemplo de uso:
      tar -cjvf backup.tar.bz2 /home/usuario/documentos
    2. Descrição: Compacta o diretório /home/usuario/documentos em um arquivo backup.tar.bz2 usando o algoritmo bzip2, que oferece melhor compressão do que gzip, mas pode ser mais lento.

2. Backup Diferencial com `rsync`

  • rsync com links simbólicos - Faz backups diferenciais.
    1. Exemplo de uso:
    rsync -av --link-dest=/backup/dia_anterior/ /home/usuario/documentos /backup/hoje/
 
  1. Descrição: Sincroniza o diretório de origem com o diretório de backup do dia atual, mas usando links simbólicos para arquivos que não mudaram desde o backup do dia anterior, economizando espaço.

3. Backup de Rede com `rsync`

  • rsync sobre SSH - Sincroniza arquivos entre máquinas remotas.
    1. Exemplo de uso:
    rsync -avz -e ssh /home/usuario/documentos usuario@192.168.1.100:/backup/
 
  1. Descrição: Sincroniza o diretório /home/usuario/documentos com uma máquina remota no endereço IP 192.168.1.100 usando SSH para garantir a segurança da transferência.

4. Verificação de Integridade com `md5sum`

  • md5sum - Gera checksums para verificação de integridade de arquivos.
    1. Exemplo de uso:
    md5sum backup.tar.gz > backup.md5
    md5sum -c backup.md5
 
  1. Descrição: O primeiro comando gera um checksum MD5 do arquivo backup.tar.gz e o armazena no arquivo backup.md5. O segundo comando verifica a integridade do backup comparando o checksum original com o atual.

5. Backup Completo do Sistema com `dd`

  • dd - Cria uma imagem de disco do sistema completo.
    1. Exemplo de uso:
      sudo dd if=/dev/sda of=/backup/imagem_sistema.img bs=64K
    2. Descrição: Cria uma imagem completa do disco /dev/sda e a salva no arquivo imagem_sistema.img. Esse comando faz uma cópia bit a bit de todo o disco, útil para backups completos ou clonagem.

6. Divisão de Arquivos Grandes com `split`

  • split - Divide um arquivo grande em partes menores.
    1. Exemplo de uso:
      split -b 500M backup.tar.bz2 backup_part_
    2. Descrição: Divide o arquivo backup.tar.bz2 em partes de 500 MB cada, criando arquivos sequenciais chamados backup_part_aa, backup_part_ab, etc., útil para mover arquivos grandes para sistemas com limitações de tamanho de arquivo.

Nível Especializado

1. Backup Incremental com `borgbackup`

  • borg init - Inicializa um repositório de backup criptografado.
    1. Exemplo de uso:
      borg init --encryption=repokey /backup/repositorio
    2. Descrição: Cria um repositório de backup no diretório /backup/repositorio com criptografia habilitada. O borg é uma ferramenta eficiente para backups incrementais com deduplicação e criptografia.
  • borg create - Cria um backup incremental.
    1. Exemplo de uso:
      borg create /backup/repositorio::backup-{now} /home/usuario/
    2. Descrição: Cria um backup incremental do diretório /home/usuario/ no repositório /backup/repositorio, deduplicando dados já salvos e compactando apenas arquivos novos ou modificados.

2. Backup e Recuperação com `restic`

  • restic init - Inicializa um repositório de backup seguro.
    1. Exemplo de uso:
      restic init -r /backup/repositorio
    2. Descrição: Inicializa um repositório de backup no diretório /backup/repositorio. O restic é uma ferramenta que suporta backups criptografados e deduplicação de dados.
  • restic backup - Faz o backup de diretórios.
    1. Exemplo de uso:
      restic backup /home/usuario -r /backup/repositorio
    2. Descrição: Realiza o backup do diretório /home/usuario para o repositório em /backup/repositorio, garantindo que os dados estejam seguros e criptografados.
  • restic restore - Restaura arquivos a partir de um backup.
    1. Exemplo de uso:
      restic restore latest -r /backup/repositorio --target /home/usuario/recuperado
    2. Descrição: Restaura o backup mais recente para o diretório /home/usuario/recuperado, permitindo a recuperação dos dados em caso de perda.

3. Backup em Nuvem com `rclone`

  • rclone sync - Sincroniza dados com serviços de armazenamento em nuvem.
    1. Exemplo de uso:
      rclone sync /home/usuario/documentos remote:/backup_nuvem/
    2. Descrição: Sincroniza o diretório /home/usuario/documentos com o armazenamento em nuvem configurado no remote:/backup_nuvem, garantindo uma cópia segura e remota dos dados.
  • rclone crypt - Usa criptografia para backups em nuvem.
    1. Exemplo de uso:
      rclone sync /home/usuario/documentos crypt:/backup_nuvem/
    2. Descrição: Sincroniza os dados com criptografia habilitada no destino remoto, adicionando uma camada de segurança ao backup em nuvem.

4. Backup Automático com `cron` e `rsnapshot`

  • rsnapshot - Backup automatizado com retenção de versões.
    1. Exemplo de uso:
    crontab -e
    # Adiciona a linha para um backup diário
    0 3 * * * /usr/bin/rsnapshot daily
 
  1. Descrição: Usa rsnapshot para automatizar backups diários e gerenciar várias versões (diárias, semanais, mensais) sem duplicação de dados. O rsnapshot usa rsync e hard links para economizar espaço em disco.

5. Backup de Máquinas Virtuais com `virt-backup`

  • virt-backup - Backup de VMs (Máquinas Virtuais) no KVM.
    1. Exemplo de uso:
    virt-backup --domain vm01 --backup-dir /backup/vms --mode snapshot
 
  1. Descrição: Faz o backup da máquina virtual vm01 usando o modo snapshot para garantir que a VM esteja em um estado consistente, salvando os dados em /backup/vms.

6. Verificação e Recuperação de Arquivos com `par2`

  • par2create - Gera arquivos de paridade para recuperação de dados.
    1. Exemplo de uso:
      par2create backup.par2 backup.tar.gz
    2. Descrição: Cria arquivos de paridade que podem ser usados para verificar e recuperar o arquivo backup.tar.gz em caso de corrupção.
  • par2verify - Verifica a integridade de um arquivo de backup.
    1. Exemplo de uso:
      par2verify backup.par2
    2. Descrição: Verifica se o arquivo backup.tar.gz está íntegro e não sofreu corrupção ao longo do tempo. Em caso de corrupção, pode-se tentar uma recuperação usando os arquivos de paridade.
wiki/linux/comandos_grupos/cmd_backup.txt · Last modified: by Wiki Administrator