Indice
A volte i cambiamenti introdotti da un nuovo rilascio comportano effetti collaterali che non si possono ragionevolmente evitare o che espongono errori da altre parti. In questa sezione sono documentati i problemi noti. Si leggano anche le errata corrige, la documentazione dei pacchetti interessati, le segnalazioni di errori e altre informazioni riportate in Sezione 6.1, «Ulteriori letture».
Questa sezione tratta le voci relative all'aggiornamento da stretch a buster.
È noto che l'opzione di montaggio hidepid
per
/proc
causa problemi con l'attuale versione di systemd
ed è considerata dagli autori originali di systemd come una configurazione
non supportata. Agli utenti che hanno modificato
/etc/fstab
per abilitare questa opzione viene suggerito
di disabilitarla prima dell'aggiornamento, per assicurare che le sessioni di
login funzionino su buster. (Una possibile soluzione per riabilitarla
è descritta nella pagina Hardening
del wiki.)
Le opzioni predefinite di ypbind
sono cambiate. Tuttavia, se questo file è stato modificato i vecchi valori
predefiniti non verranno aggiornati e ci si deve accertare che l'opzione
YPBINDARGS=
in /etc/default/nis
non
includa -no-dbus
. Se -no-dbus
è
presente l'avvio di ypbind fallirà e potrebbe non essere
possibile fare il login. Per maggiori informazioni vedere il bug n.906436.
The default behavior of rpcbind
has
changed to no longer answer remote calls from NIS clients. On NIS servers
you will need to add the (Debian-specific) -r
flag to the
command line options of rpcbind, otherwise users will not
be able to log into your NIS client machines. For more info see bug #935492.
La semantica di PubkeyAcceptedKeyTypes
e delle opzioni
simili HostbasedAcceptedKeyTypes
per sshd
è cambiata. Ora specificano algoritmi di
firma che sono accettati per i rispettivi meccanismi di autenticazione,
mentre prima specificavano i tipi di chiave accettati. Questa distinzione è
importante quando si usano algoritmi di firma RSA/SHA2
rsa-sha2-256
, rsa-sha2-512
e le loro
controparti certificato. Le configurazioni che sovrascrivono queste opzioni,
ma omettono questi nomi di algoritmi possono causare fallimenti inattesi
delle autenticazioni.
Non è necessaria alcuna azione per le configurazioni che accettano i valori predefiniti per queste opzioni.
Poiché systemd
ha bisogno di
entropia durante l'avvio e il kernel tratta tali chiamate come bloccanti
quando l'entropia disponibile è poca, il sistema può bloccarsi per un tempo
da qualche minuto fino ad ore fino a che il sottosistema della casualità è
sufficientemente inizializzato (random: crng init
done
). Per i sistemi amd64
con supporto per
l'istruzione RDRAND
questo problema viene evitato dal
kernel Debian che usa tale istruzione in modo predefinito
(CONFIG_RANDOM_TRUST_CPU
).
I sistemi non amd64
e alcuni tipi di macchine virtuali
devono fornire una fonte diversa di entropia per continuare l'avvio
velocemente. haveged
è stato scelto
a questo scopo all'interno del progetto dell'Installatore Debian e può
essere una valida opzione se l'entropia hardwae non è disponibile sul
sistema. Nelle macchine virtuali considerare l'inoltro dell'entropia
dall'host alle VM attraverso virtio_rng
.
Se si legge questo documento dopo aver fatto l'aggiornamento di un sistema remoto a buster, fare ping al sistema in rete continuamente dato che ciò aggiunge entropia al pool della casualità e il sistema diventerà da ultimo nuovamente raggiungibile via ssh.
Vedere il wiki e la panoramica di DLange sul problema per altre opzioni.
Se il proprio sistema è stato aggiornato da un rilascio precedente e usa
ancora i nomi delle interfacce di rete vecchio stile che sono stati
deprecati a partire da stretch (come eth0
o
wlan0
) si dovrebbe tenere a mente che il meccanismo di
definizione dei loro nomi attraverso
/etc/udev/rules.d/70-persistent-net.rules
non è più
ufficialmente supportato da udev
in
buster (sebbene possa ancora funzionare in alcuni casi). Per evitare il
pericolo che la macchina perda la connettività di rete dopo l'aggiornamento
a buster, è raccomandata la migrazione in anticipo al nuovo schema di nomi
(solitamente ciò significa nomi come enp0s1
o
wlp2s5
che incorporano bus PCI e numeri di
slot). Assicurarsi di aggiornare ogni nome di interfaccia codificato in modo
fisso nella configurazione per firewall, ifupdown
e così via.
L'alternativa è passare ad un meccanismo supportato per forzare il vecchio
schema dei nomi, come un file .link
di systemd (vedere
systemd.link(5)). Anche l'opzione
net.ifnames=0
per la riga di comando del kernel potrebbe
funzionare per i sistemi che hanno una sola interfaccia di rete (per ciascun
tipo).
Per trovare i nomi nel nuovo stile che saranno utilizzati, trovare prima i nomi attuali delle interfacce interessate:
$ echo /sys/class/net/[ew]*
Per ciascuno di questi nomi controllare se è utilizzato in file di
configurazione e quale nome udev
preferirebbe usare per esso:
$ sudo rgrep -weth0
/etc $ udevadm test-builtin net_id /sys/class/net/eth0
2>/dev/null
Ciò dovrebbe fornire abbastanza informazioni per definire un piano di
migrazione. (Se l'output di udevadm
include un nome
«onboard» o «slot», esso ha la precedenza; i nomi
basati su MAC sono normalmente trattati come ripiego, ma possono essere
necessari per l'hardware di rete USB.)
Una volta che si è pronti a fare il passaggio, disabilitare
70-persistent-net.rules
rinominandolo o commentando le
singole righe. Nelle macchine virtuali è necessario rimuovere i file
/etc/systemd/network/99-default.link
e (se si usano
devide di rete virtio)
/etc/systemd/network/50-virtio-kernel-names.link
. Poi
ricreare il file initrd
:
$ sudo update-initramfs -u
e riavviare. Il sistema dovrebbe avere ora i nomi di interfacce di rete nel nuovo stile. Aggiustare ogni file di configurazione rimanente e testare il sistema.
Vedere il wiki, la
documentazione originale a monte e il
README.Debian
di udev
per maggiori
informazioni.
I sistemi che usano interfacce fittizie ("dummy") e/o bonding dei canali per
esempio per configurare una macchina come router, possono incontrare
problemi nell'aggiornamento a buster. Le nuove versioni di systemd
installano un file
/lib/modprobe.d/systemd.conf
(pensato per semplificare
la configurazione attraverso systemd-networkd) contenente
le righe
options bonding max_bonds=0 options dummy numdummies=0
Gli amministratori che dipendo da valori diversi devono assicurarsi di
averli impostati in modo corretto in modo che abbiano la precedenza. Un file
in /etc/modprobe.d
scavalcherà uno con lo stesso nome
in /lib/modprobe.d
, ma i nomi sono elaborati in ordine
alfabetico, perciò /lib/modprobe.d/systemd.conf
segue e
sovrascrive le impostazioni (ad esempio) di
/etc/modprobe.d/dummy.conf
. Assicurarsi che qualsiasi
file locale abbia un nome che viene ordinato dopo
«systemd.conf
», come
«/etc/modprobe.d/zz-local.conf
».
Seguendo diverse raccomandazioni di sicurezza la versione minima predefinita di TLS è stata modificata da TLSv1 a TLSv1.2.
Anche il livello di sicurezza predefinito per le connessioni TLS è stato aumentato dal livello 1 al 2. Ciò sposta dal livello di sicurezza a 80 bit a quello a 112 bit e richiede chiavi RSA e DHE a minimo 2048, chiavi ECC a minimo 224 bit e SHA-2.
Le impostazioni a livello di sistema possono essere modificate in
/etc/ssl/openssl.cnf
. Inoltre le applicazioni possono
avere un modo specifico per ciascuna applicazione di scavalcare i valori
predefiniti.
Nel file /etc/ssl/openssl.cnf
predefinito è presente
una riga MinProtocol
e una
CipherString
. CipherString
può anche
impostare il livello di sicurezza. Informazioni sui livelli di sicurezza
possono essere trovate nella magina di manuale SSL_CTX_set_security_level(3ssl).
L'elenco delle stringhe valide per la versione minima del protocollo può
essere trovato in SSL_CONF_cmd(3ssl). Ulteriori
informazioni possono essere trovate in ciphers(1ssl) e config(5ssl).
Si possono modificare i valori predefiniti a livello di sistema in
/etc/ssl/openssl.cnf
ai loro valori precedenti
impostando:
MinProtocol = None CipherString = DEFAULT
È raccomandato contattare il sito remoto se i valori predefiniti causano problemi.
GNOME in buster ha cambiato il suo server di visualizzazione predefinito da
Xorg a Wayland (vedere Sezione 2.2.11, «GNOME usa in modo predefinito Wayland»). Alcune applicazioni, incluso il
popolare gestore di pacchetti synaptic
, il metodo di input predefinito per il
cinese semplificato, fcitx
, e la
maggior parte delle applicazioni per registrare lo schermo, non sono state
aggiornate per funzionare correttamente in Wayland. Per poter usare questi
pacchetti è necessario fare il login con una sessione di GNOME in
Xorg
.
Quello che segue è un elenco di pacchetti obsoleti noti e degni di nota (vedere Sezione 4.8, «Pacchetti obsoleti» per una descrizione).
L'elenco dei pacchetti obsoleti comprende:
Il pacchetto mcelog
non è più
supportato con le versioni del kernel più recenti di 4.12. rasdaemon
può essere usato come suo rimpiazzo.
Il pacchetto revelation
, che è usato
per archiviare password, non è incluso in buster. keepass2
può importare file XML di password
precedentemente esportati da revelation
. Assicurarsi di esportare i propri
dati da revelation prima dell'aggiornamento, per evitare di perdere
l'accesso alle proprie password.
ipsec-tools
e raconn
sono stati rimossi da buster dato che la
fonte originale è in ritardo con gli adattamenti ai nuovi pericoli.
È consigliato agli utente di migrare a libreswan
, che ha una più ampia compatibilità
del protocollo ed è attivamente mantenuto dagli autori originali a monte.
libreswan
dovrebbe essere
completamente compatibile in termini di protocolli di comunicazione dato che
implementa un sovrainsieme dei protocolli supportati da racoon
.
Il semplice MTA ssmtp
è stato
abbandonato per buster. Ciò a causa del fatto che attualmente con
convalida i certificati TLS; vedere il bug
n.662960.
Il pacchetto ecryptfs-utils
non fa
parte di buster a causa di un grave bug non risolto (nr. 765854). Al momento della stesura di
questo paragrafo non esiste un chiaro suggerimento per gli utenti di
eCryptfs, a parte non aggiornare.
Con il prossimo rilascio di Debian 11 (nome in codice bullseye) alcune funzionalità diventeranno deprecate. Gli utenti dovranno migrare ad altre alternative per evitare problemi nell'aggiornamento a Debian 11.
Ciò include le seguenti funzionalità:
Python 2 non verrà più supportato dagli autori a monte a partire dal 1° gennaio
2020. Debian spera di abbandonare python-2.7
per Debian 11. Se gli
utenti hanno funzionalità che si basano su python
dovrebbero prepararsi a migrare a python3.
Icinga 1.x ha raggiunto la sua fine vita (EOL) per gli autori originali a
partire dal 2018-12-31, mentre il pacchetto icinga
è sempre presente; gli utenti dovrebbero
usare la durata di vita di buster per migrare ad Icinga 2 (pacchetto
icinga2
) e Icinga Web 2 (pacchetto
icingaweb2
). Il pacchetto
icinga2-classicui
è ancora presente
per usare l'interfaccia web CGI di Icinga 1.x con Icinga 2, ma il supporto
per esso verrà rimosso in Icinga 2.11. Si dovrebbe usare invece Icinga Web
2.
La versione 3 della suite del gestore di mailing-list Mailman è disponibile
per la prima volta in questo rilascio. Mailman è stato diviso in vari
componenti; la parte principale è disponibile nel pacchetto mailman3
e la suite completa può essere ottenuta
tramite il metapacchetto mailman3-full
.
La versione datata 2.1 di Mailman rimane disponibile in questo rilascio nel
pacchetto mailman
, perciò è
possibile migrare le installazioni esistenti seguendo i propri ritmi. Il
pacchetto di Mailman 2.1 verrà mantenuto in buone condizioni per il prossimo
futuro, ma non vedrà grandi modifiche o migliorie. Verrà rimosso dal primo
rilascio di Debian successivo all'interruzione del supporto a tale ramo da
parte degli autori originali.
È raccomandato a tutti di aggiornare a Mailman 3, il rilascio moderno in fase di attivo sviluppo.
I pacchetti spf-milter-python
e
dkim-milter-python
non sono più
mantenuti dagli autori originali a monte, ma sono disponibili in buster i
loro rimpiazzi più ricchi di funzionalità: pyspf-milter
e dkimpy-milter
. Gli utenti dovrebbero migrare ai
nuovi pacchetti prima che i vecchi vengano rimossi in bullseye.
Quando apt full-upgrade
ha terminato, l'aggiornamento è
«formalmente» completo. Per l'aggiornamento a buster non
ci sono azioni speciali necessarie prima di effettuare un riavvio.
![]() | Nota |
---|---|
Questa sezione non si applica a coloro che hanno deciso di rimanere con sysvinit-core. |
Dopo il passaggio a systemd come sistema init predefinito avvenuto in Jessie e ulteriormente raffinato in Stretch, vari pacchetti relativi a SysV non sono più necessari e possono essere ora eliminati definitivamente usando
apt purge initscripts sysv-rc insserv startpar
Ci sono alcuni pacchetti per i quali Debian non può garantire di fornire i backport minimi per ragioni di sicurezza. Questi verranno trattati nelle sottosezioni che seguono.
![]() | Nota |
---|---|
Il pacchetto |
Debian 10 contiene diversi motori per browser che sono affetti da
varie vulnerabilità di sicurezza. L'alto tasso di vulnerabilità e la
parziale mancanza di supporto a lungo termine da parte degli autori
originali complica l'attività di supporto di questi browser e motori tramite
il backport delle correzioni di sicurezza alle versioni precedenti. Inoltre
la dipendenza reciproca delle librerie rende estremamente difficile
aggiornare a una nuova versione a monte. Perciò, in buster sono
presenti browser basati ad esempio sui motori webkit e khtml[6], ma non sono coperti dal supporto di sicurezza. Non
si dovrebbe usare questi browser con siti web non fidati. Il pacchetto
sorgente webkit2gtk
è coperto dal
supporto di sicurezza.
Per un browser web di uso generico vengono raccomandati Firefox o Chromium. Verranno mantenuti aggiornati ricompilando gli attuali rilasci ESR per stable. La stessa strategia verrà seguita per Thunderbird.
L'infrastruttura Debian attualmente non abilita in modo corretto la ricompilazione di pacchetti con link statico a parti di altri pacchetti su larga scala. Fino a buster questo non era in pratica un problema, ma con il crescere dell'ecosistema Go ciò significa che i pacchetti basati su Go non saranno coperti dal regolare supporto di sicurezza fino a che l'infrastruttura non sarà migliorata per poter lavorare con essi in modo mantenibile.
Se sono necessari aggiornmenti, questi possono solamente passare attraverso i regolari rilasi minori, che possono essere lenti ad arrivare.
Nella maggior parte dei casi i pacchetti dovrebbero aggiornarsi senza problemi da stretch a buster. C'è un numero limitato di casi dove può essere necessario un qualche intervento, prima o durante l'aggiornamento; questi casi sono descritti in dettaglio di seguito, pacchetto per pacchetto.
A partire da glibc
2.26 è necessario
un kernel Linux 3.2 o successivo. Per evitare di rendere il sistema
completamente inutilizzabile, lo script di preinstallazione di libc6
effettua un controllo. Se questo fallisce
l'installazione del pacchetto viene abortita, il che lascia l'aggiornamento
non terminato. Se il sistema ha in esecuzione un kernel più vecchio di 3.2,
aggiornarlo prima di avviare l'aggiornamento della distribuzione.
su
ha cambiato semantica in buster e non preserva
più le variabili d'ambiente DISPLAY
e
XAUTHORITY
. Se si devono eseguire applicazioni grafiche
con su
è necessario impostarle esplicitamente per
permettere l'accesso al display. Vedere il bug
n.905409 per una ampia discussione in merito.
Quando si aggiorna da stretch a buster i dati di localizzazione glibc
vengono aggiornati. Specificatamente ciò
cambia come PostgreSQL ordina i dati negli indici testuali. Per evitare
corruzioni, tali indici devono essere reindicizzati con
REINDEX
immediatamente dopo l'aggiornamento dei pacchetti
locales
o locales-all
, prima di rimettere il database in
produzione.
Comando suggerito:
sudo -u postgres reindexdb --all
In alternativa aggiornare i database a PostgreSQL 11 usando
pg_upgradecluster. (Questo usa pg_dump
in modo predefinito il quale recreerà tutti gli indici. L'uso di -m
upgrade
o pg_upgrade non è
sicuro perché preserva l'ordinamento degli indici ora sbagliato.)
Fare riferimento al Wiki di PostgreSQL per maggiori informazioni.
In stretch il pacchetto mutt
aveva
patch applicate ai sorgenti da https://neomutt.org. A partire da buster,
il pacchetto che fornisce /usr/bin/mutt
è invece basato
puramente sui sorgenti originali da http://www.mutt.org e un pacchetto
separato neomutt
è disponibile e
fornisce /usr/bin/neomutt
.
Ciò significa che alcune delle funzionalità che erano prima fornite da
mutt
ora non sono più
disponibili. Se ciò rende difettosa la propria configurazione si può invece
installare neomutt
.
Senza un dispositivo puntatore non esiste un modo diretto per cambiare le
impostazioni nell'applicazione Impostazioni di GNOME fornita da gnome-control-center
. Per aggirare il problema
si può navigare dalla barra laterale ai contenuti principali usando
freccia a destra due volte. Per ritornare alla barra
laterale si può avviare una ricerca con Ctrl+F, digitare
qualcosa, poi premere Esc per annullare la ricerca. Ora si
possono usare Freccia in su e Freccia in
giù per navigare nella barra laterale. Non è possibile selezionare
i risultati di una ricerca con la tastiera.
Gli utenti delle immagini del rilascio iniziale di buster non dovrebbero
cambiare la password LUKS dei dischi cifrati con l'interfaccia grafica di
GNOME per la gestione dei dischi. Il pacchetto gnome-disk-utility
in buster aveva un serissimo
bug (n.928893) che si verificava quando
usato per modificare la password LUKS: cancellava la vecchia password ma
l'impostazione corretta della nuova falliva, rendendo tutti i dati sul disco
inaccessibili. Questo problema è stato risolto nel primo rilascio minore.
Gli utenti che usano evolution
come
client di posta e si connettono ad un server con in esecuzione Exchange,
Office365 o Outlook usando il plugin evolution-ews
non dovrebbero aggiornare a buster
prima di aver fatto un backup dei dati e aver trovato una soluzione
alternativa, dato che evolution-ews è stato abbandonato a causa del bug n.926712 e le loro caselle di posta,
calendari, elenchi di contatti e attività verranno rimossi e non saranno più
accessibili con Evolution.
Il pacchetto evolution-ews
è stato
reintrodotto attraverso buster-backports. Gli utenti che aggiornano da
stretch a buster possono abilitare buster-backports dopo l'aggiornamento e
saranno quindi in grado di reinstallare evolution-ews
.
Quando si installa Debian da supporti live usando l'installatore Calamares (Sezione 2.2.13, «Novità dal Team Debian Live») e selezionando la funzionalità di cifratura dell'intero disco, la chiave di sblocco del disco viene memorizzata nell'initramfs che è leggibile da tutti. Ciò permette agli utenti con accesso al file system locale di leggere la chiave privata ed ottenere nuovamente accesso al file system in futuro.
Questo problema può essere aggirato aggiungendo
UMASK=0077
a
/etc/initramfs-tools/conf.d/initramfs-permissions
ed
eseguendo update-initramfs -u. Questo ricrea l'initramfs
senza i permessi di lettura per tutti.
Una risoluzione per l'installatore è già in programma (vedere il bug n.931373) e verrà caricata in debian-security. Nel frattempo gli utenti con cifratura dell'intero disco dovrebbero usare la soluzione temporanea descritta sopra.
Quando si usa s3ql
con bucket Amazon
S3 la configurazione deve essere aggiornata per un cambiamento nell'URL. Il
nuovo formato è:
s3://<regione>/<bucket>/<prefisso>
The shipped configurations for /var/log/btmp
and
/var/log/wtmp
have been split from the main
configuration file (/etc/logrotate.conf
) into separate
standalone files (/etc/logrotate.d/btmp
and
/etc/logrotate.d/wtmp
).
If you have modified /etc/logrotate.conf
in this
regard, make sure to re-adjust the two new files to your needs and drop any
references to (b|w)tmp from the main file, since duplicate definitions can
cause errors.
[6] Questi motori vengono forniti in svariati diversi pacchetti sorgenti e le
preoccupazioni valgono per tutti i pacchetti che li forniscono. La
preoccupazione si estende anche ai motori di rendering web qui non
menzionati esplicitamente, con l'eccezione di webkit2gtk
.