Início
» LINUX
»
Como configurar atualizações Debian automatizadas sem interface gráfica com o Unattended-Upgrades
Como configurar atualizações Debian automatizadas sem interface gráfica com o Unattended-Upgrades
O que o unattended-upgrades faz em um servidor Debian sem interface gráfica?
unattended-upgradesé o pacote do Debian para baixar e instalar automaticamente atualizações selecionadas do APT sem a necessidade de login interativo. Em um servidor sem interface gráfica, isso o torna útil para manutenção de segurança quando não há sessão de desktop disponível e ninguém precisa executar o comando apt upgradediariamente.
A partir de outubro de 2026, o Debian 13 "trixie" é a versão estável do Debian, e o unattended-upgradespacote estável é a versão 2.12. O pacote destina-se a atualizações normais de pacotes, especialmente atualizações de segurança e de estabilidade. Ele não substitui o processo separado e planejado de atualização de uma versão principal do Debian para outra.
O modelo prático é simples: o mecanismo periódico do APT atualiza os índices de pacotes, apt-daily-upgrade.serviceinvoca o backend de atualização automática conforme agendado e sua política decide quais origens de pacotes são permitidas. O Debian registra o resultado em /var/log/unattended-upgrades/.
A instalação do pacote pode ser repetida sem problemas: o APT simplesmente informará que ele já está instalado se o sistema já o possuir. O Debian descreve o pacote como um instalador automático para atualizações de segurança e outras atualizações selecionadas por política.
Exemplo de visualização do terminal para instalação do unattended-upgrades. Os nomes dos repositórios e a quantidade de pacotes variam de acordo com a versão do Debian e o host.
Para uma frota, não assuma que todas as imagens tenham o mesmo estado padrão. Algumas instalações do Debian já incluem atualizações automatizadas; outras não, e uma configuração existente pode ter sido desativada. Após a instalação, inspecione a configuração efetiva em vez de presumir que a presença de um pacote significa que a política desejada está ativa.
2. Ative as atualizações periódicas da lista de pacotes e as execuções autônomas.
O arquivo README do Debian indica que uma configuração manual requer estes dois valores periódicos do APT:
Configurações periódicas do APT que solicitam atualizações diárias da lista de pacotes e execuções de atualização não supervisionadas.
Não interprete isso como uma promessa de que uma tarefa começará exatamente à meia-noite todos os dias. Em sistemas Debian baseados em systemd, o APT usa temporizadores e um comportamento de agendamento aleatório. Para operações, verifique o estado real do temporizador e o próximo gatilho no host, em vez de projetar o monitoramento com base em uma estimativa de horário.
3. Defina quais repositórios podem atualizar pacotes automaticamente.
A política principal reside em `/etc/apt/apt/` Unattended-Upgrade::Origins-Patternou na Allowed-Originsforma mais antiga. A documentação do Debian 2.12 recomenda a criação de um fragmento APT local que execute o comando após o 50unattended-upgradesarquivo empacotado, por exemplo:
Isso é preferível a editar permanentemente o arquivo fornecido, pois as atualizações de pacotes podem substituir ou entrar em conflito com a configuração gerenciada pelo fornecedor. Antes de escrever padrões, inspecione os metadados da versão que o APT realmente vê:
apt-cache policy
Para a maioria dos servidores sem interface gráfica, uma política conservadora é manter as atualizações automáticas limitadas aos canais estáveis e de segurança normais do Debian. Os padrões exatos podem variar de acordo com o layout do seu repositório, espelhos, fornecedores terceirizados e regras de fixação de versões, portanto, considere-os apt-cache policycomo a fonte de verdade em cada ambiente.
Exemplo de visualização do editor de políticas. Combine as origens com os repositórios relatados pela política do apt-cache em seu servidor, em vez de copiar rótulos indiscriminadamente.
Controles opcionais que vale a pena conhecer
A configuração 2.12 oferece suporte a listas negras e brancas de pacotes, reinicializações automáticas, relatórios por e-mail, remoção de dependências não utilizadas, limites de largura de banda, restrições de dia de atualização e saída de syslog. Algumas opções são especialmente relevantes em servidores remotos:
Configure o e-mail somente se a máquina tiver um serviço de transporte de e-mail funcionando. Se você habilitar a reinicialização automática, o comportamento padrão do Debian é relevante: quando Automatic-Reboot`is_true` e `is_true` /var/run/reboot-requiredexiste, o host pode reiniciar sem confirmação. Você pode configurar o sistema Unattended-Upgrade::Automatic-Reboot-Timepara agendar essa reinicialização para uma janela de manutenção.
Para muitos sistemas de produção, manter a reinicialização automática desativada é mais seguro, a menos que o serviço seja redundante, as janelas de manutenção estejam definidas e as verificações de integridade pós-reinicialização sejam automatizadas.
4. Verifique os temporizadores do systemd e execute um teste a seco.
Em uma instalação Debian normal baseada em systemd, verifique os temporizadores do APT em vez de procurar por uma unidade inventada unattended-upgrades.timer:
systemctl status apt-daily.timer apt-daily-upgrade.timer
systemctl list-timers apt-daily.timer apt-daily-upgrade.timer
apt-daily.timerestá associado à atividade rotineira de download/indexação de pacotes, enquanto apt-daily-upgrade.timeraciona o caminho de serviço de atualização/limpeza usado por atualizações não assistidas.
Status do temporizador do Systemd para o trabalho diário do APT. As datas mostradas são ilustrativas; use `systemctl list-timers` para a próxima execução real em seu host.
Em seguida, teste a política sem alterar os pacotes:
sudo unattended-upgrade --debug --dry-run
Esta é a verificação prévia mais útil, pois avalia a configuração real do APT e registra detalhes de depuração. Analise a saída para identificar pacotes que seriam selecionados ou retidos, origens de terceiros inesperadas, problemas de dependência e solicitações de configuração do arquivo.
Se a simulação não selecionar nada, isso pode ser perfeitamente normal quando o servidor está atualizado. Confirme se realmente existem atualizações pendentes com o comando `ls -l` apt list --upgradable, e compare suas origens e políticas com os padrões configurados.
5. Monitore atualizações não supervisionadas e gerencie reinicializações de forma deliberada.
O pacote grava seu registro de atividades principal e a saída do dpkg em:
sudo tail -n 100 /var/log/unattended-upgrades/unattended-upgrades.log
sudo journalctl -u apt-daily-upgrade.service --since "7 days ago"
test -f /var/run/reboot-required && cat /var/run/reboot-required
Para um único computador de laboratório doméstico, revisar os registros periodicamente pode ser suficiente. Para sistemas empresariais, envie as falhas para monitoramento central ou syslog para que um erro silencioso no repositório, um sistema de arquivos cheio, uma dependência quebrada ou um estado interrompido do dpkg não passem despercebidos.
Configurações de referência para políticas de servidor comuns
Cenário
Política
Nota operacional
Servidor com foco em segurança
Permitir atualizações de segurança e estáveis do Debian; manter reinicialização manual.
Boa opção padrão quando uma interrupção é mais custosa do que uma reinicialização atrasada.
Nó sem estado ou redundante
Permitir atualizações e reinicialização automática agendada
Combine com verificações de integridade e drenagem do balanceador de carga.
aparelho sensível ao kernel
Utilize uma lista negra de pacotes somente com um processo de exceção documentado.
A inclusão em listas negras pode deixar vulnerabilidades conhecidas sem correção.
Servidor com repositório de fornecedores
Não permita a origem do fornecedor até que sua política de atualização seja revisada.
Verifique primeiro a assinatura, a política de suporte e as expectativas de reversão.
Guia rápido de resolução de problemas
O temporizador está ativo, mas nenhum pacote está instalado.
Verifique se há atualizações pendentes, se a origem do repositório corresponde à sua política permitida e se uma lista negra ou restrição de dependência está impedindo a seleção. Execute a sudo unattended-upgrade --debug --dry-runverificação para obter evidências, em vez de alterar a política aleatoriamente.
O servidor aguarda a configuração do pacote.
unattended-upgradesO objetivo é evitar atualizações que exijam solicitações de configuração do dpkg não resolvidas. Se um pacote for retido repetidamente, verifique o log e decida se a decisão sobre o arquivo de configuração deve ser tratada manualmente.
As atualizações nunca são executadas após a clonagem de uma imagem de máquina virtual.
Confirme se os temporizadores estão habilitados e ativos e, em seguida, inspecione-os apt-config dump. As imagens padrão geralmente contêm fragmentos APT locais, mascaramento ou substituições de políticas que diferem dos padrões do pacote.
Você precisa desativar as atualizações automáticas.
Utilize o caminho de reconfiguração suportado pelo Debian:
sudo dpkg-reconfigure -plow unattended-upgrades
Desativar o pacote não substitui o gerenciamento normal de patches; simplesmente devolve a responsabilidade ao seu processo de orquestração manual ou externa.
Lista de verificação de validação final
unattended-upgradesé instalado a partir de um repositório Debian confiável.
As opções de atualização periódica da lista de pacotes do APT e atualização automática estão ativadas.
A política local é armazenada em um arquivo de substituição posterior, como 52unattended-upgrades-local.
As origens permitidas foram verificadas em relação a apt-cache policy.