Tabela de Conteúdos
Página desactualizada Esta página contém uma versão anterior deste guia que pode estar desatualizada. Para a consultar a versão mais recente clique aqui.
2.2.7 Atualizações automáticas
Para notificar por email o administrador do sistema, o pacote unattended-upgrades depende da instalação de um agente de transporte de e-mail ou MTA (Mail Transfer Agent). É portanto necessária a instalação de um 5.2.1 Servidor SMTP antes proceder à instalação deste pacote.
Objetivo
Uma preocupação do administrador é manter sempre o sistema com as mais recentes atualizações e correções de software. O pacote unattended-upgrades permite a instalação das atualizações dos pacotes de software de uma forma totalmente automática.
Instalação
root@server:~# aptitude install unattended-upgrades
Configuração
Por uma questão de segurança, a instalação do pacote unattended-upgrades não activa imediatamente as atualizações automáticas. Estas devem ser activadas no ficheiro /etc/apt/apt.conf.d/20auto-upgrades. Um exemplo desse ficheiro está disponível na pasta /usr/share/unattended-upgrades/, bastando copiá-lo para a pasta /etc/apt/apt.conf.d/:
root@server:~# cp /usr/share/unattended-upgrades/20auto-upgrades /etc/apt/apt.conf.d/
O ficheiro de configuração /etc/apt/apt.conf.d/20auto-upgrades deverá ativar a atualização da base de dados dos pacotes disponíveis, ativar a atualização automática dos pacotes instalados e efetuar uma limpeza semanal dos ficheiros descarregados:
- /etc/apt/apt.conf.d/20auto-upgrades
APT::Periodic::Update-Package-Lists "1"; APT::Periodic::Unattended-Upgrade "1"; APT::Periodic::AutocleanInterval "7";
No ficheiro de configuração /etc/apt/apt.conf.d/50unattended-upgrades podemos configurar a versão do Debian utilizada para a atualizações:
- /etc/apt/apt.conf.d/50unattended-upgrades
// Automatically upgrade packages from these origin patterns Unattended-Upgrade::Origins-Pattern { // Archive or Suite based matching: // Note that this will silently match a different release after // migration to the specified archive (e.g. testing becomes the // new stable). "o=Debian,a=stable"; "o=Debian,a=stable-updates"; // "o=Debian,a=proposed-updates"; "origin=Debian,archive=stable,label=Debian-Security"; }; # [...]
Notificar por email o administrador do sistema sempre que são efetuadas atualizações:
- /etc/apt/apt.conf.d/50unattended-upgrades
# [...] // Send email to this address for problems or packages upgrades // If empty or unset then no email is sent, make sure that you // have a working mail setup on your system. A package that provides // 'mailx' must be installed. E.g. "user@example.com" Unattended-Upgrade::Mail "root"; # [...]
Reinicar o serviço para ter em conta as alterações:
root@server:~# /etc/init.d/unattended-upgrades restart
A lista de pacotes disponível será atualizada diariamente e, caso hajam atualizações disponíveis, estas serão instaladas de modo automático.
Verificação
Sempre que for efetuada uma atualização, é enviado um email ao administrador do sistema:
Subject: unattended-upgrades result for 'server' To: root@home.lan Date: Wed, 29 May 2013 21:35:56 +0100 (WEST) From: root@home.lan (root) Unattended upgrade returned: True Packages that are upgraded: libgnutls26 Package installation log: Reading changelogs... (Reading database ... 51019 files and directories currently installed.) Preparing to replace libgnutls26:i386 2.12.20-6 (using .../libgnutls26_2.12.20-7_i386.deb) ... Unpacking replacement libgnutls26:i386 ... Setting up libgnutls26:i386 (2.12.20-7) ... Unattended-upgrades log: Initial blacklisted packages: Starting unattended upgrades script Allowed origins are: ['o=Debian,a=wheezy', 'o=Debian,a=wheezy-updates', 'origin=Debian,archive=wheezy,label=Debian-Security'] Packages that are upgraded: libgnutls26 Writing dpkg log to '/var/log/unattended-upgrades/unattended-upgrades-dpkg_2013-05-29_21:35:54.555333.log' All upgrades installed
Periodicamente, poderá ser verificado se houve atualizações, bastando consultar os ficheiros de registo:
root@server:~# tail /var/log/unattended-upgrades/unattended-upgrades.log 2013-05-29 21:35:52,586 INFO Initial blacklisted packages: 2013-05-29 21:35:52,586 INFO Starting unattended upgrades script 2013-05-29 21:35:52,586 INFO Allowed origins are: ['o=Debian,a=wheezy', 'o=Debian,a=wheezy-updates', 'origin=Debian,archive=wheezy,label=Debian-Security'] 2013-05-29 21:35:54,555 INFO Packages that are upgraded: libgnutls26 2013-05-29 21:35:54,555 INFO Writing dpkg log to '/var/log/unattended-upgrades/unattended-upgrades-dpkg_2013-05-29_21:35:54.555333.log' 2013-05-29 21:35:56,485 INFO All upgrades installed