Configuração Global

O arquivo config.toml contém a configuração global do BackupAlly.

Localização

/etc/backupally/config.toml

Estrutura Completa

[global]
local_pipeline_path = "/etc/backupally/pipeline"
default_temp_path = "/var/lib/backupally/temp"
remote_pipeline_url = "https://repository.backupally.com/"
remote_pipeline_auth = true
remote_pipeline_apikey = "xxxxxxxxxxxxxx"
chunk_algo = "fastcdc"
avg_chunk_mb = 8
max_concurrent_backups = 2
backup_verification = true

[logging]
level = "info"
format = "json"
destination = "file"
file_path = "/var/log/backupally/backupally.log"
rotate = "daily"
max_files = 14
log_retention_days = 30

[crypto]
key_mode = "default"
default_key_src = "file"
default_key_ref = "/etc/backupally/keys/default.key"

[network]
max_global_mbps = 100
retry_policy = "exponential"
max_retries = 3
timeout_seconds = 300

[sys]
enabled = false
url = "https://sys.backupally.com"
agent_id = "agent_prod_001"
api_key = "ak_xxxxxxxxxxxxx"
polling_interval_seconds = 60

[central]
enabled = false
server_url = "https://central.backupally.io"
api_key = "seu-api-key"
auto_sync = true
sync_interval = 3600

[mcp]
enabled = false
socket_path = "/var/run/backupally/mcp.sock"

Seções

[global]

Configurações gerais do sistema.

Opção Tipo Padrão Descrição
local_pipeline_path string /etc/backupally/pipeline Diretório das tasks
default_temp_path string /var/lib/backupally/temp Diretório temporário (área de trabalho de quick, verify --deep, rollback de restore — fora de /tmp desde a 0.33.0)
remote_pipeline_url string - URL do repositório remoto
remote_pipeline_auth bool false Requer autenticação
remote_pipeline_apikey string - API key do repositório
chunk_algo string fastcdc Obrigatório pelo parser, sem efeito. Deixe fastcdc
avg_chunk_mb int 8 Obrigatório pelo parser, sem efeito
max_concurrent_backups int 2 Backups simultâneos máximos

Estado saiu do /tmp (0.33.0). default_temp_path, o histórico (/var/lib/backupally/logs, desde a 0.25.0) e a cópia de segurança pré-restore de banco (/var/lib/backupally/restore_backups) moram fora de /tmp — nesses servidores /tmp é tmpfs: arquivo parado ali ocupa RAM enquanto existe e some no reboot, o oposto do que se quer de um registro de backup. Instalação existente com dado no lugar antigo é migrada automaticamente na primeira execução, só quando o destino novo está vazio. Sem permissão em nenhum diretório persistente, o legado ainda é usado, mas com aviso de que é volátil. | backup_verification | bool | true | Verificar após upload |

[logging]

Configuração de logs.

Opção Tipo Padrão Descrição
level string info Nível: trace, debug, info, warn, error
format string text Formato: text, json
destination string stdout Destino: stdout, file, journald, syslog
file_path string - Caminho do arquivo de log
rotate string daily Rotação: hourly, daily, size:MB
max_files int 14 Arquivos de log a manter
log_retention_days int 30 Dias de retenção de logs

[crypto]

Configuração de criptografia.

Opção Tipo Padrão Descrição
key_mode string default Modo: default, ephemeral, none
default_key_src string file Fonte: file, env, kms
default_key_ref string - Referência da chave

Modos de chave:

Modo Descrição
default Usa chave configurada para todos os backups
ephemeral Gera nova chave para cada backup
none Sem criptografia (não recomendado)

[network]

Configuração de rede.

Opção Tipo Padrão Descrição
max_global_mbps int 100 Limite de banda global (Mbps)
retry_policy string exponential Política: exponential, linear, none
max_retries int 3 Tentativas máximas
timeout_seconds int 300 Timeout de operações

[guard]

Prevenções (desde 0.26.0). Tudo opcional: ausente = sem limite, que é o comportamento histórico.

Opção Tipo Descrição
max_load_1m float Load average de 1 minuto, absoluto
max_load_normalized float Load average ÷ número de CPUs — comparável entre máquinas de tamanhos diferentes
min_free_memory_mb int Memória livre mínima, em MB
min_free_disk_gb int Espaço livre mínimo em disco, em GB
[guard]
max_load_normalized = 1.5
min_free_memory_mb = 512
min_free_disk_gb = 5

Um backup não começa com a máquina acima de qualquer limite. A mensagem diz o recurso, o valor medido e o limite:

servidor sobrecarregado: load average (1m) em 3.10 (limite: 1.50)

Independente desses limites, o [guard] também impede o self-update de trocar o binário com backup em andamento — ver Upgrade.

[sys]

Integração com backend centralizado.

Opção Tipo Padrão Descrição
enabled bool false Habilitar integração
url string - URL do backend
agent_id string - ID deste agente
api_key string - Chave de API
polling_interval_seconds int 60 Intervalo de polling

[central]

Servidor central para backup de chaves.

Opção Tipo Padrão Descrição
enabled bool false Habilitar servidor central
server_url string - URL do servidor
api_key string - Chave de API
auto_sync bool true Sincronizar automaticamente
sync_interval int 3600 Intervalo de sync (segundos)

[mcp]

MCP Server para integração com AI.

Opção Tipo Padrão Descrição
enabled bool false Habilitar MCP Server
socket_path string - Caminho do socket Unix

Exemplos

Configuração Mínima

[global]
local_pipeline_path = "/etc/backupally/tasks.d"

[logging]
level = "info"

[crypto]
key_mode = "default"
default_key_ref = "/etc/backupally/keys/default.key"

Configuração de Produção

[global]
local_pipeline_path = "/etc/backupally/tasks.d"
max_concurrent_backups = 4
backup_verification = true

[logging]
level = "info"
format = "json"
destination = "file"
file_path = "/var/log/backupally/backupally.log"
rotate = "daily"
max_files = 30

[crypto]
key_mode = "default"
default_key_ref = "/etc/backupally/keys/production.key"

[network]
max_global_mbps = 500
max_retries = 5
timeout_seconds = 600

[central]
enabled = true
server_url = "https://central.backupally.io"
api_key = "${secret:central_api_key}"
auto_sync = true

Validação

Verifique a configuração:

backupally config verify

Recarregar

O scheduler detecta mudanças automaticamente. Para forçar:

sudo systemctl reload backupally-scheduler
By Borlot.com.br on 11/02/2026