Table of Contents
Aggiornamento da Debian 12 Bookworm a 13 Trixie
Update e upgrade
Aggiornamento corrente
apt update apt upgrade apt --purge autoremove
Cambio dei repository
deb http://deb.debian.org/debian/ trixie main contrib non-free non-free-firmware deb-src http://deb.debian.org/debian/ trixie main contrib non-free non-free-firmware deb http://security.debian.org/debian-security trixie-security main contrib non-free non-free-firmware deb-src http://security.debian.org/debian-security trixie-security main contrib non-free non-free-firmware deb http://deb.debian.org/debian/ trixie-updates main contrib non-free non-free-firmware deb-src http://deb.debian.org/debian/ trixie-updates main contrib non-free non-free-firmware
Upgrade
apt update apt upgrade --without-new-pkgs apt full-upgrade
Syslog
Cambiamenti nei comandi
ifconfig
Il comando ifconfig non viene installato per default, un sostituto moderno potrebbe essere:
ip address show
Per chi volesse avere il comando legacy compatibile, si installa il pacchetto net-tools, che installa l'eseguibile in /usr/sbin/ e /sbin/.
sniffit
Il pacchetto sniffit era presente in Debian 12 Bookworm con la versione 0.5, ma non è entrato in Debain 13 Trixie.
Per fortuna il vecchio pacchetto sniffit_0.5-3_amd64.deb di Debian 12 si installa senza problemi nella nuova release e funziona correttamente.
Pare che anche il pacchetto sniffit_0.6-1_amd64.deb di testing/forky si installi e funzioni senza problemi. Invece il pacchetto sniffit_0.7-1_amd64.deb non funziona (non produce i file con il dump della session).
mitmproxy
Il pacchetto mitmproxy era presente con la versione 8.1.1 in Debian 12 Bookworm, ma non è entrato in Trixie. Per fortuna in testing/forky esiste il pacchetto mitmproxy_8.1.1-4_all.deb che si installa in Trixie, con la semplice aggiunta di un apt install --fix-broken.
ntp
Già in Debian 12 alcuni pacchetti relativi a ntp erano transitional packages utilizzati per passare ai pacchetti ntpsec, questo l'elenco completo delle transizioni:
- ntp ⇒ ntpsec
- ntpdate ⇒ ntpsec-ntpdate
- sntp ⇒ ntpsec-ntpdig
In generale sarà sufficiente aver installato i pacchetti
- ntpsec - Contiene il demone principale ntpd e diverse utility come ntptime, ntptrace, ecc.
- ntpsec-ntpdig - Contiene l'utility ntpdig.
Se ci si accontenta di un servizio minimalista per la sincronizzazione dell'ora è sufficiente installare il singolo pacchetto (alternativo a ntpsec):
- systemd-timesyncd
last
Il comando last dal pacchetto util-linux non c'è più: The last, lastb and lastlog commands have been replaced.
Il comando alternativo è:
wtmpdb last
Una installazione ex-novo dovrebbe creare il link simbolico che riproduce il vecchio comportamento:
lrwxrwxrwx 1 root root 6 Oct 20 20:32 /usr/bin/last -> wtmpdb
gamin
gamin and libgamin0
SSH key exchange
Alcuni client non troppo aggiornati potrebbero avere problemi a collegarsi via SSH alla nuova Debian 13 Trixie, journalctl potrebbe indicare un messaggio di errore del tipo:
sshd-session[98743]: Unable to negotiate with 14.156.24.17 port 60053:
no matching key exchange method found. Their offer:
diffie-hellman-group-exchange-sha256,diffie-hellman-group-exchange-sha1,
diffie-hellman-group14-sha1,diffie-hellman-group1-sha1 [preauth]
Per vedere i key exchange methods abilitati:
sshd -T | grep kexalgorithms
Per aggiungerne uno si può aggiungere una riga a /etc/ssh/sshd_config.d/90-local.conf:
KexAlgorithms +diffie-hellman-group-exchange-sha256
Python
La nuova versione di Python è più stringente su alcune sintassi, ad esempio quando si usano espressioni regolari contenenti caratteri escape si potrebbe incappare in warning del tipo:
SyntaxWarning: invalid escape sequence '\s'
Tutte le stringhe utilizzate in espressioni del tipo:
re.compile('\regex-string\')
devono usare stringhe raw, quindi con la sintassi:
re.compile('r\regex-string\')
Errore in Bash completion
Quando si esegue il completamento-tab di un comando Bash si ottiene in alcuni casi l'errore _split_longopt: command not found.
Pare che il problema derivi dal fatto che la funzione _split_longopt() è stata tolta dal file /usr/share/bash-completion/bash_completion, ma diversi file in /usr/share/bash-completion/completions/* fanno riferimento ancora ad essa.
Il workaround più veloce è definire la funzione mancante in $HOME/.bashr:
# Workaround for bug "bash: _split_longopt: command not found"
_split_longopt() { _comp__split_longopt "$@"; }
OpenVPN
Come per l'aggiornamento da Debian 11 a Debian 12 una connessione OpenVPN potrebbe non partire con questo messaggio d'errore:
Cipher BF-CBC not supported
Nel corrispondente file .conf è possibile aggiungere la seguente opzione, che ovviemente deve essere supportata anche dall'altra estremità:
cipher AES-256-CBC
iproute2
Sono scomparsi i file di configurazione /etc/iproute2/*. ad esempio il file /etc/iproute2/rt_tables usato per configurare il source routing con un host dual-homed.
udisks2.service
Il servizio udisks2.service viene attivato di default e monta automaticamente .
Pager e ANSI color escape sequences
Alcuni comandi - ad esmepio apt search oppure git - mostrano il loro output su terminale testuale utilizzando i colori tramite codici escape ANSI. Quando tale output viene visualizzato una pagina per volta tramite un ridirezione pipe su pager (programma che è normalmente linkato a less su Debian) il programma se ne accorge e non produce i codici colore ANSI.
In Debian 13 Trixie alcuni comandi - come appunto apt search - hanno attivato la funzione di pager per default e l'output viene automaticamente dato in pasto a pager. Se per caso l'utente ha configurato la variabile d'ambiente $LESS (nel caso mio era impostata a -i per ignorare la capitalizzazione nelle ricerche) il pager non interpreta i codici colore ANSI e produce un risultato del tipo:
apt search kodi ESC[32mkodiESC[0m/testing,now 3:21.2+dfsg-4+rpt1 arm64 [installed] Open Source Home Theatre (executable binaries) ESC[32mkodi-addons-devESC[0m/testing 3:21.2+dfsg-4+rpt1 arm64 Open Source Home Theatre (addon development package)
La soluzione è aggiungere il parametro -R alla variabile $LESS:
export LESS='-iR'
