Quale sistema di upgrade automatico ha la precedenza e come?

4

Mi sono imbattuto in una risposta che mi ha fatto interrogare in che modo funziona il sistema di aggiornamento automatico. Sembra che ci siano almeno due sistemi sul mio computer:

  1. unattended-upgrades con /etc/apt/apt.conf.d/50unattended-upgrades , chiamato da /etc/cron.daily/apt e

  2. Le impostazioni del Gestore degli aggiornamenti della GUI ( software-properties-kde et al). Non so in che modo questo secondo sistema pianifica o gira, ma ho notato che cambiando le impostazioni nella GUI non aggiorna le impostazioni in /etc/apt/apt.conf.d/50unattended-upgrades .

Questo mi porta a credere che questi siano in realtà due sistemi concorrenti. Se è corretto, entrambi corrono secondo il loro programma, o fa un cortocircuito sull'altro? E come vengono eseguite le impostazioni di aggiornamento automatico dalle proprietà del software della GUI?

    
posta Oli 03.08.2015 - 15:12

1 risposta

1
  1. CRON

    Estratto di /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
    

    Descrizione del pacchetto unattended-upgrades :

      

    Questo pacchetto può scaricare e installare gli aggiornamenti di sicurezza automaticamente e in modo automatico, avendo cura di installare solo i pacchetti dall'origine APT configurata e controllare i prompt di dpkg sulle modifiche ai file di configurazione.

         

    Questo script è il back-end per l'opzione APT :: Periodic :: Unattended-Upgrade.

    Il processo cron APT esegue unattended-upgrade , che è il programma che scarica e installa gli aggiornamenti, ma solo se la variabile APT APT::Periodic::Unattended-Upgrade non è 0 .

  2. Proprietà software

    Le impostazioni per le opzioni Controlla automaticamente gli aggiornamenti e Quando ci sono aggiornamenti di sicurezza sono salvate nel file /etc/apt/apt.conf.d/10periodic .

    Controlla automaticamente gli aggiornamenti mappe nella variabile APT APT::Periodic::Update-Package-Lists .

    Quando ci sono aggiornamenti di sicurezza esegue il mapping alle variabili APT::Periodic::Download-Upgradeable-Packages e APT::Periodic::Unattended-Upgrade .

    Selezionando Scarica e installa automaticamente (gli aggiornamenti di sicurezza) imposterà APT::Periodic::Unattended-Upgrade a 1. Questo è ciò che dice al processo cron di APT di eseguire unattended-upgrade , che esegue tutto il lavoro di installazione del pacchetto.

    La finestra Proprietà software controlla solo la pianificazione per le attività periodiche di questi tre APT: controlla gli aggiornamenti, scarica i pacchetti aggiornabili ed esegui unattended-upgrade . In realtà non esegue nulla, tutto il duro lavoro è fatto da /etc/cron.daily/apt e unattended-upgrade .

  3. unattended-upgrade

    Il programma che esegue effettivamente l'operazione di aggiornamento. Il file /etc/apt/apt.conf.d/50unattended-upgrades contiene le impostazioni che influiscono sul comportamento di unattended-upgrade . Non viene letto da nessun altro programma. Se si desidera personalizzare la modalità di installazione degli aggiornamenti, è necessario modificare manualmente questo file.

Esiste solo un sistema di aggiornamento automatico ( unattended-upgrade ) chiamato dal processo cron APT ( /etc/cron.daily/apt ) solo se lo abilitiamo tramite la finestra Proprietà software (o modificando manualmente /etc/apt/apt.conf.d/10periodic ).

    
risposta data Eric Carvalho 03.08.2015 - 19:06

Leggi altre domande sui tag