disabilita apt-listchanges (e altre cose interattive) durante gli aggiornamenti (in modo affidabile)


15

Devo ammetterlo, odio davvero gli apt-listchanges. Se ho intenzione di fare un enorme dist-upgrade, voglio lasciare lì il computer per alcune ore. Il richiedente di questa domanda serverfault aveva in mente un obiettivo simile, ma dopo aver implementato tutti i suggerimenti in quel post, ero ancora colpito apt-listchanges.

Perché è così difficile raggiungere la non interattività con aptun programma altrimenti eccellente, dato che la filosofia Unix aspira ad esso?

Spero che le modifiche che ho apportato /etc/apt/listchanges.confpossano aiutare, ma voglio suggerimenti su come eseguire gli aggiornamenti in modo affidabile senza alcuna interazione.

[apt]
frontend=none
email_address=root
confirm=0
save_seen=/var/lib/apt/listchanges.db
which=news

Questo è il comando che ho usato

DEBIAN_FRONTEND=noninteractive \
apt-get \
-o Dpkg::Options::="--force-confnew" \
--force-yes \
-fuy \
dist-upgrade

Ho anche aggiunto le seguenti righe a /etc/dpkg/dpkg.cfg

force-confold
force-confdef

2
Se non ti piace apt-listchanges, perché lo installi?
Gilles 'SO- smetti di essere malvagio' il

3
Non lo rimuovi con l' apt-get purge apt-listchangesaiuto di te?
margherita,

Warl0ck ha ragione. Disinstallalo. Uso apt-get in modo non interattivo per tutto il tempo.
bahamat,

4
è arrivato preinstallato con il mio ultimo debian ... d'oh!
ixtmixilix,

1
Sì, odio davvero che questo sembra essere predefinito.
UpTheCreek

Risposte:


11

Come hai trovato e impostato nella tua configurazione, apt-listchangesnon dovrebbe richiedere se imposti il ​​frontend su none. Puoi anche impostare la variabile d'ambiente APT_LISTCHANGES_FRONTEND=noneper ottenere la stessa cosa.

Sembra che quello che vuoi davvero fare sia usare il unattended-upgradespacchetto. Gestisce tutto per te: disabilitare apt-listchanges, impostare il frontend su noninteractive, controllare ed evitare i prompt di conffile, ecc. Se non altro, il contenuto dello script Python /usr/bin/unattended-upgradesdovrebbe rispondere alle tue domande su come fa la sua magia.


Come evita le richieste di conffile? Li ignora semplicemente mantenendo la configurazione o sostituendola?
Natalie Adams,

Se la tua aptconfigurazione contiene --force-confoldo --force-confnewdentro DPkg::Options, si comportano come previsto. Altrimenti, un pacchetto che attiverà un prompt di conffile non viene aggiornato e viene inviata un'e-mail (se l'e-mail è configurata in unattended-upgrades). Se l'e-mail non è disponibile, è registrato in /var/log/unattended-upgrades.
Jim Paris,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.