User Tools

Site Tools


doc:appunti:linux:sa:debian_upgrade_12_13

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
doc:appunti:linux:sa:debian_upgrade_12_13 [2025/12/09 17:23] – [Syslog] niccolodoc:appunti:linux:sa:debian_upgrade_12_13 [2026/04/16 11:51] (current) – [PHP] niccolo
Line 48: Line 48:
 Al restart del servizio systemd-journald viene creato la directory **/run/log/journal/** in **tmpfs**. Al restart del servizio systemd-journald viene creato la directory **/run/log/journal/** in **tmpfs**.
  
-Per limitare lo spazio utilizzato su memoria permanente (filesystem su disco) si possono usare diverse opzioni **%%System*%%**, per gestire lo spazio in memoria volatici si usano le omologhe **%%Runtime*%%**:+Per limitare lo spazio utilizzato su memoria permanente (filesystem su disco) si possono usare diverse opzioni **%%System*%%**, per gestire lo spazio in memoria volatile si usano le omologhe **%%Runtime*%%**:
  
 ^  For persistent file system  ^^ ^  For persistent file system  ^^
Line 133: Line 133:
 lrwxrwxrwx 1 root root 6 Oct 20 20:32 /usr/bin/last -> wtmpdb lrwxrwxrwx 1 root root 6 Oct 20 20:32 /usr/bin/last -> wtmpdb
 </code> </code>
 +
 +===== Problema ping =====
 +
 +Dopo l'aggiornamento l'utente non privilegiato non riesce a fare un ping:
 +
 +<code>
 +:~$ ping 8.8.8.8
 +ping: socktype: SOCK_RAW
 +ping: socket: Operation not permitted
 +ping: => missing cap_net_raw+p capability or setuid?
 +</code>
 +
 +Questo ha diverse conseguenze nefaste, ad esempio Icinga2 fallisce tutti i test sugli host attivi, con il messaggio di errore:
 +
 +<code>
 +/bin/ping -6 -n -U -w 30 -c 5 samos.rigacci.org
 +CRITICAL - Could not interpret output from ping command
 +</code>
 +
 +In Debian 13 i permessi di ping non dipendono più dalla capability **CAP_NET_RAW** di Linux, ma utilizza un socket **ICMP_PROTO** il cui accesso viene controllato dal GID e da **sysctl net.ipv4.ping_group_range**. In una installazione normale il pacchetto **linux-sysctl-defaults** imposta questo valore in modo tale che il ping funzioni come ci si aspetta.
 +
 +Può essere necessario reinstallare il pacchetto per sistemare i permessi:
 +
 +<code>
 +apt install linux-sysctl-defaults
 +</code>
 +
 +===== PostgreSQL =====
 +
 +La procedura di aggiornamento lascia due cluster PostgreSQL in funzione, la versione 15 e la versione 17. Per verificare anzitutto si cambia utente in postgres:
 +
 +<code>
 +su - postgres
 +</code>
 +
 +quindi si verifica i cluster esistenti:
 +
 +<code>
 +pg_lsclusters 
 +Ver Cluster Port Status Owner    Data directory              Log file
 +15  main    5433 online postgres /var/lib/postgresql/15/main /var/log/postgresql/postgresql-15-main.log
 +17  main    5432 online postgres /var/lib/postgresql/17/main /var/log/postgresql/postgresql-17-main.log
 +</code>
 +
 +Come si vede il **nuovo cluster è già stato spostato sulla porta predefinita 5432** e i database sono stati copiati automaticamente nel cluster nuovo. Verificare con:
 +
 +<code>
 +psql --cluster 17/main
 +postgres=# \l
 +</code>
 +
 +In pratica la procedura di aggiornamento ha provveduto ad eseguire il comando **pg_upgradecluster**.
 +
 +Dopo aver verificato che il nuovo cluster stia funzionando correttamente è possibile rimuovere del tutto il vecchio:
 +
 +<code>
 +pg_dropcluster --stop 15 main
 +pg_dropcluster 15 main
 +</code>
 +
 +Infine si possono disinstallare i vecchi pacchetti:
 +
 +<code>
 +dpkg --purge postgresql-15 postgresql-client-15
 +</code>
 +
 +===== PHP 8.2 => 8.4 =====
 +
 +Si passa dalla versione 8.2 alla versione 8.4. Verificare se ci sono delle impostazioni da riportare ad esempio da **/etc/php/8.2/apache2/php.ini** a **/etc/php/8.4/apache2/php.ini**.
  
 ===== gamin ===== ===== gamin =====
Line 239: Line 308:
 export LESS='-iR' export LESS='-iR'
 </code> </code>
 +
 +===== Impostazioni locale LANG =====
 +
 +Nelle versioni precedenti di Debian era possibile impostare una singola variabile **LC_** con il comando **localectl**. Ad esempio avendo impostato **LANG=en_US.UTF-8** (che prevede l'ora nel formato AM/PM) era comunque possibile impostare il formato a 24 ore con il comando:
 +
 +<code>
 +localectl set-locale LC_TIME=C.UTF-8
 +</code>
 +
 +Tale comando aggiungeva la variabile di ambiente al file **/etc/default/locale**. Con Debian Trixie lo stesso comando produce un errore:
 +
 +<code>
 +localectl set-locale LC_TIME=C.UTF-8
 +Failed to issue method call: Access denied
 +</code>
 +
 +Si tratta di una scelta intenzionale perché Debian ha il tool **update-locale**, che può essere usato ad esempio in questo modo:
 +
 +<code>
 +update-locale LANG=en_US.UTF-8 LC_TIME=C.UTF-8
 +</code>
 +
 +Le impostazioni vengono salvate in **/etc/locale.conf** e il vecchio ''/etc/default/locale'' è diventato un link simbolico ad esso.
 +
 +
  
doc/appunti/linux/sa/debian_upgrade_12_13.1765297414.txt.gz · Last modified: by niccolo