Atualizações automáticas e Atualizações de software

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:~# apt-get install unattended-upgrades

Configuração

Por uma questão de segurança, a instalação do pacote unattended-upgrades não ativa imediatamente as atualizações automáticas. Estas devem ser ativadas no arquivo /etc/apt/apt.conf.d/20auto-upgrades. Um exemplo desse arquivo 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 arquivo 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 arquivos descarregados:
/etc/apt/apt.conf.d/20auto-upgrades
APT::Periodic::Update-Package-Lists "1";
APT::Periodic::Unattended-Upgrade "1";
APT::Periodic::AutocleanInterval "7";
No arquivo 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
# [...]

// Within lines unattended-upgrades allows 2 macros whose values are
// derived from /etc/debian_version:
//   ${distro_id}            Installed origin.
//   ${distro_codename}      Installed codename (eg, "jessie")
Unattended-Upgrade::Origins-Pattern {
        // Codename based matching:
        // This will follow the migration of a release through different
        // archives (e.g. from testing to stable and later oldstable).
        "o=Debian,n=jessie";
        "o=Debian,n=jessie-updates";
//      "o=Debian,n=jessie-proposed-updates";
        "o=Debian,n=jessie,l=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";

# [...]
Reiniciar o serviço para ter em conta as alterações:

root@server:~# service 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': 'True'
To: root@home.lan
Date: Thu, 30 Apr 2015 01:27:55 +0100 (WEST)
From: root@home.lan (root)

Unattended upgrade returned: True

Packages that were upgraded:
 curl libcurl3 libcurl3-gnutls=20

Unattended-upgrades log:
Initial blacklisted packages:=20
Initial whitelisted packages:=20
Starting unattended upgrades script
Allowed origins are: ['o=3DDebian,n=3Djessie', 'o=3DDebian,n=3Djessie-propo=
sed-updates', 'o=3DDebian,n=3Djessie,l=3DDebian-Security', 'origin=3DDebian=
,archive=3Djessie,label=3DDebian-Security']
Packages that will be upgraded: curl libcurl3 libcurl3-gnutls
Writing dpkg log to '/var/log/unattended-upgrades/unattended-upgrades-dpkg.=
log'
All upgrades installed
 
Periodicamente, poderá ser verificado se houve atualizações, bastando consultar os arquivos de registo  
/var/log/unattended-upgrades/unattended-upgrades.log:
root@server:~# tail /var/log/unattended-upgrades/unattended-upgrades.log
2015-04-29 01:46:14,723 INFO Initial blacklisted packages:
2015-04-29 01:46:14,723 INFO Initial whitelisted packages:
2015-04-29 01:46:14,723 INFO Starting unattended upgrades script
2015-04-29 01:46:14,723 INFO Allowed origins are: ['o=Debian,n=jessie', 'o=Debian,n=jessie-proposed-updates',
 'o=Debian,n=jessie,l=Debian-Security', 'origin=Debian,archive=jessie,label=Debian-Security']
2015-04-29 01:46:15,841 INFO No packages found that can be upgraded unattended
2015-04-30 01:27:50,586 INFO Initial blacklisted packages:
2015-04-30 01:27:50,587 INFO Initial whitelisted packages:
2015-04-30 01:27:50,588 INFO Starting unattended upgrades script
 2015-04-30 01:27:50,588 INFO Allowed origins are: ['o=Debian,n=jessie', 'o=Debian,n=jessie-proposed-updates'
'o=Debian,n=jessie,l=Debian-Security', 'origin=Debian,archive=jessie,label=Debian-Security']
2015-04-30 01:27:52,921 INFO Packages that will be upgraded: curl libcurl3 libcurl3-gnutls
2015-04-30 01:27:52,924 INFO Writing dpkg log to '/var/log/unattended-upgrades/unattended-upgrades-dpkg.log'
2015-04-30 01:27:55,055 INFO All upgrades installed
 
Atualização de software
 
 Para garantir que o sistema tenha as versões de software e correções de segurança mais recentes, as atualizações devem ser feitas com regularidade. A atualização do software é feita em duas partes: a atualização lista de software disponível nos repositórios e a instalação das eventuais evoluções. Ambas as operações são feitas utilizando o comando aptitude, com diferentes opções.
Atenção



É imperativo efetuar atualizações com bastante frequência, de modo a garantir que o sistema tenha sempre as mais recentes correções de bugs e atualizações de segurança.

Atualização dos repositórios

A atualização da lista de software disponível nos repositórios é muito simples:

root@server:~# apt-get update Hit http://ftp.pt.debian.org jessie InRelease Hit http://ftp.pt.debian.org jessie-updates InRelease Hit http://ftp.pt.debian.org jessie/main Sources Hit http://security.debian.org jessie/updates InRelease Hit http://ftp.pt.debian.org jessie/main amd64 Packages Hit http://ftp.pt.debian.org jessie/main Translation-en Hit http://ftp.pt.debian.org jessie-updates/main Sources Hit http://ftp.pt.debian.org jessie-updates/main amd64 Packages Hit http://ftp.pt.debian.org jessie-updates/main Translation-en Hit http://security.debian.org jessie/updates/main Sources Hit http://security.debian.org jessie/updates/main amd64 Packages Hit http://security.debian.org jessie/updates/main Translation-en Reading package lists... Done

Não existem atualmente atualizações disponíveis para o software instalado.

Instalação das atualizações

   

A instalação das atualizações é igualmente simples:


root@server:~# apt-get upgrade Reading package lists... Done Building dependency tree Reading state information... Done Calculating upgrade... Done 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.



 O sistema estaria agora atualizado.
 

Comentários

Postagens mais visitadas