Que sistema de upgrades não supervisionados tem precedência e como?

4

Acabei de encontrar uma resposta que me fez questionar como o sistema de atualização autônoma funciona. Parece haver pelo menos dois sistemas no meu computador:

  1. unattended-upgrades com /etc/apt/apt.conf.d/50unattended-upgrades , chamado de /etc/cron.daily/apt e

  2. As configurações do Gerenciador de Atualização da GUI ( software-properties-kde et al). Não sei como esse segundo sistema agenda ou executa, mas observei que alterar as configurações na GUI não não atualiza as configurações em /etc/apt/apt.conf.d/50unattended-upgrades .

Isso me leva a acreditar que esses são, na verdade, dois sistemas concorrentes. Se estiver correto, os dois correm em seu próprio horário ou um entra em curto-circuito no outro? E como a configuração de atualização autônoma das Propriedades de Software da GUI é acionada?

    
por Oli 03.08.2015 / 15:12

1 resposta

1
  1. CRON

    Trecho de /etc/cron.daily/apt :

    # This file understands the following apt configuration variables:
    # Values here are the default.
    
    ...
    
    #  APT::Periodic::Unattended-Upgrade "0";
    #  - Run the "unattended-upgrade" security upgrade script 
    #    every n-days (0=disabled)
    #    Requires the package "unattended-upgrades" and will write
    #    a log in /var/log/unattended-upgrades
    
    ...
    
    UnattendedUpgradeInterval=0
    eval $(apt-config shell UnattendedUpgradeInterval APT::Periodic::Unattended-Upgrade)
    
    ...
    
    # auto upgrade all upgradeable packages
    UPGRADE_STAMP=/var/lib/apt/periodic/upgrade-stamp
    if which unattended-upgrade >/dev/null && check_stamp $UPGRADE_STAMP $UnattendedUpgradeInterval; then
        if unattended-upgrade $XUUPOPT; then
            update_stamp $UPGRADE_STAMP
            debug_echo "unattended-upgrade (success)"
        else
            debug_echo "unattended-upgrade (error)"
        fi
    else
        debug_echo "unattended-upgrade (not run)"
    fi
    

    Descrição do pacote unattended-upgrades :

      

    Este pacote pode baixar e instalar atualizações de segurança automaticamente e sem supervisão, tomando cuidado para instalar somente pacotes da origem do APT configurada, e verificando se há solicitações do dpkg sobre alterações no arquivo de configuração.

         

    Este script é o backend para a opção APT :: Periodic :: Unattended-Upgrade.

    A tarefa cron do APT executa unattended-upgrade , que é o programa que baixa e instala as atualizações, mas apenas se a variável APT::Periodic::Unattended-Upgrade do APT não for 0 .

  2. Propriedades do software

    Configurações para as opções Verificações automáticas de atualizações e Quando houver atualizações de segurança são salvas no arquivo /etc/apt/apt.conf.d/10periodic .

    Verifica automaticamente as atualizações mapeia para a variável APT APT::Periodic::Update-Package-Lists .

    Quando houver atualizações de segurança mapeia para as variáveis APT::Periodic::Download-Upgradeable-Packages e APT::Periodic::Unattended-Upgrade .

    Selecionar Baixar e instalar automaticamente (as atualizações de segurança) definirá APT::Periodic::Unattended-Upgrade como 1. Isso é o que informa o trabalho cron do APT para executar unattended-upgrade , que executa todo o trabalho de instalação do pacote.

    A janela Propriedades do software controla apenas o cronograma para as três tarefas periódicas do APT: verifique atualizações, baixe pacotes atualizáveis e execute unattended-upgrade . Na verdade, não executa nada, todo o trabalho árduo é feito por /etc/cron.daily/apt e unattended-upgrade .

  3. unattended-upgrade

    O programa que realmente executa a tarefa de atualização. O arquivo /etc/apt/apt.conf.d/50unattended-upgrades contém as configurações que afetam o comportamento de unattended-upgrade . Não é lido por nenhum outro programa. Se você quiser personalizar como as atualizações estão instaladas, você precisa editar manualmente este arquivo.

Existe apenas um sistema de atualização autônoma ( unattended-upgrade ) que é chamado pela tarefa cron do APT ( /etc/cron.daily/apt ) somente se for habilitado por meio da janela Propriedades do Software (ou edição manual de /etc/apt/apt.conf.d/10periodic ).

    
por Eric Carvalho 03.08.2015 / 19:06