Atualizando pacotes automaticamente

5

Sou relativamente novo no uso de servidores (debian 7) e atualmente estou executando o cron-apt para me enviar um e-mail quando houver novas atualizações disponíveis.

O seguinte comando é seguro para ser executado quando novas atualizações são exibidas?

sudo apt-get dist-upgrade

Existe alguma verificação que devo fazer antes de atualizar?

Estou um pouco preocupado que simplesmente atualizar tudo toda vez que recebo um e-mail pode causar falhas.

    
por dan983 06.05.2015 / 10:22

2 respostas

7

sudo apt-get dist-upgrade é muito seguro para ser executado, pois não fará nada ao sistema, parando para solicitar sua confirmação;) Você teria que adicionar uma opção -y , que é destinada a atualizações automáticas e torna apt suponha que você sempre responda 'sim' a perguntas: sudo apt-get -y dist-upgrade . A página man afirma que

If an undesirable situation, such as changing a held package, trying to install a unauthenticated package or removing an essential package occurs then apt-get will abort

mas executar dist-upgrade sem acompanhamento é sempre arriscado, então você pode querer evitar isso.

Você sempre pode verificar o que o apt faria adicionando uma opção -s , assim: sudo apt-get -s dist-upgrade . Isso alterna o apt para o modo de simulação, no qual nenhuma alteração é feita e você pode rever com segurança todas as alterações que o apt faria no sistema.

Há também um modo mais conservador de executar o apt, ou seja, apt-get upgrade . A página man do apt-get é muito clara sobre o que faz:

Packages currently installed with new versions available are retrieved and upgraded; under no circumstances are currently installed packages removed, or packages not already installed retrieved and installed. New versions of currently installed packages that cannot be upgraded without changing the install status of another package will be left at their current version.

Na minha resposta original, de alguma forma eu presumi que você iria rodar dist-upgrade via cron, o que, depois de ler com mais cuidado, não parece ser o caso. No entanto, estou deixando o parágrafo relevante como um comentário geral:

Não é aconselhável executar sudo apt-get -y dist-upgrade via cron, especialmente se suas fontes apt apontarem para uma ramificação de teste (o que geralmente não deve acontecer em servidores, especialmente na produção), pois você pode acabar com um sistema inutilizável. Você é relativamente seguro se estiver usando o ramo estável do Debian, mas eu ainda recomendaria participar de upgrades.

De qualquer forma, se você está fazendo um dist-upgrade que vai realizar mudanças sérias, você deve sempre ter um backup. Apenas no caso.

    
por 06.05.2015 / 10:35
8

Existe um pacote para isso; -).

Além de cron-apt , que pode ser configurado para realizar certas atualizações automaticamente, outro pacote útil é unattended-upgrades projetado para aplicar com segurança atualizações de segurança automaticamente.

Além disso, como Erathiel diz que não é seguro executar dist-upgrade automaticamente, mas é seguro o suficiente execute-o manualmente toda vez que houver algo para atualizar, contanto que você não responda cegamente "Sim".

    
por 06.05.2015 / 11:00