Backup Automatizado no Linux: Compactando Arquivos e Diretórios Rápidos com tar
A criação de backups compactados é uma prática indispensável para proteger dados críticos contra perdas e otimizar o espaço em disco. Utilizar o utilitário tar integrado ao Bash resolve a necessidade de compactar e arquivar múltiplos diretórios de forma automatizada, gerando arquivos timestamped ideais para rotinas de infraestrutura. A seguir, veja como criar um script simples de backup compactado .tar.gz.
Bash
#!/bin/bash
# Script de automação para backup compactado com carimbo de data
# 1. Definição de caminhos e nome dinâmico do arquivo de saída
DIRETORIO_ORIGEM="/var/log"
DIRETORIO_DESTINO="/tmp/backups"
DATA_BACKUP=$(date +"%Y%m%m_%H%M%S")
NOME_ARQUIVO="backup_logs_${DATA_BACKUP}.tar.gz"
# Garantindo que o diretório de destino exista
mkdir -p "$DIRETORIO_DESTINO"
# 2. Executando a compactação com tar (czf)
tar -czf "${DIRETORIO_DESTINO}/${NOME_ARQUIVO}" "$DIRETORIO_ORIGEM" 2> /dev/null
# 3. Verificando se o arquivo de backup foi gerado com sucesso
if [ -f "${DIRETORIO_DESTINO}/${NOME_ARQUIVO}" ]; then
echo "[SUCESSO] Backup gerado em: ${DIRETORIO_DESTINO}/${NOME_ARQUIVO}"
else
echo "[ERRO] Falha ao criar o arquivo de backup."
exit 1
fi
Exemplo de uso e extração do backup no terminal:
Bash
# Executando a automação de backup
chmod +x backup.sh
./backup.sh
# Para descompactar e extrair o arquivo gerado futuramente:
tar -xzf /tmp/backups/backup_logs_20261023_172300.tar.gz -C /tmp/
Pontos-chave
- Flags do Comando (
-czf): A opção-ccria um novo arquivo,-zaplica a compressão via Gzip para economizar espaço e-fespecifica o nome do arquivo de saída gerado. - Extração de Arquivos (
-xzf): Para descompactar o arquivo salvo, substitua a flag de criação (-c) pela flag de extração (-x). - Carimbo de Data (
date): Incluir a expansão do comando$(date ...)no nome do arquivo impede que backups mais recentes sobrescrevam execuções anteriores. - Omissão de Avisos de Caminho Relativo: O
tarremove a barra inicial/dos caminhos absolutos por padrão para evitar a sobrescrita acidental de arquivos do sistema durante a restauração. - Preservação de Permissões (
-p): Adicione a flag-p(tar -czpf ...) se precisar manter intactas as permissões originais de leitura, escrita e execução dos arquivos compactados.
