Perché appare l’errore path /etc/mysql/mariadb.cnf doesn’t exist durante l’update di Ubuntu

Quando si esegue l’aggiornamento dei pacchetti su Ubuntu tramite il comando sudo apt update && apt upgrade -y può comparire il messaggio di errore path /etc/mysql/mariadb.cnf doesn’t exist. Questo problema è piuttosto comune in sistemi in cui è installato MariaDB oppure in cui sono rimaste configurazioni parziali dopo una disinstallazione o un aggiornamento incompleto.

L’errore indica chiaramente che il sistema si aspetta la presenza del file mariadb.cnf nella directory /etc/mysql/, ma in alcuni casi quel file non viene generato automaticamente oppure è stato rimosso accidentalmente.

Cosa significa realmente l’errore path /etc/mysql/mariadb.cnf doesn’t exist

Quando Ubuntu o i pacchetti legati a MariaDB cercano il file di configurazione principale, si aspettano di trovare /etc/mysql/mariadb.cnf. Se questo file non esiste, i pacchetti coinvolti non possono completare l’installazione o l’aggiornamento e mostrano l’avviso path /etc/mysql/mariadb.cnf doesn’t exist.

Questo file, anche se può essere vuoto, funge da riferimento essenziale per i processi di configurazione. Per questo motivo basta crearlo manualmente per eliminare l’errore.

Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
5 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Setting up mariadb-common (1:10.6.22-0ubuntu0.22.04.1) ...
update-alternatives: error: alternative path /etc/mysql/mariadb.cnf doesn't exist
dpkg: error processing package mariadb-common (--configure):
installed mariadb-common package post-installation script subprocess returned error exit status 2
dpkg: dependency problems prevent configuration of mariadb-client-core-10.6:
mariadb-client-core-10.6 depends on mariadb-common (>= 1:10.6.22-0ubuntu0.22.04.1); however:
Package mariadb-common is not configured yet.

dpkg: error processing package mariadb-client-core-10.6 (--configure):
dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of libmariadb3:amd64:
libmariadb3:amd64 depends on mariadb-common; however:
Package mariadb-common is not configured yet.

dpkg: error processing package libmariadb3:amd64 (--configure):
dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of mariadb-client-10.6:
mariadb-client-10.6 depends on mariadb-client-core-10.6 (>= 1:10.6.22-0ubuntu0.22.04.1); however:
Package mariadb-client-core-10.6 is not configured yet.

dpkg: error processing package mariadb-client-10.6 (--configure):
dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of mariadb-client:
mariadb-client depends on mariadb-client-10.6 (>= 1:10.6.22-0ubuntu0.22.04.1); however:
Package mariadb-client-10.6 is not configured yet.

dpkg: error processing package mariadb-client (--configure):
dependency problems - leaving unconfigured
Errors were encountered while processing:
mariadb-common
mariadb-client-core-10.6
libmariadb3:amd64
mariadb-client-10.6
mariadb-client
E: Sub-process /usr/bin/dpkg returned an error code (1)

Come risolvere rapidamente l’errore path /etc/mysql/mariadb.cnf doesn’t exist

La soluzione più immediata è creare un file vuoto chiamato mariadb.cnf nella directory /etc/mysql/. Non è necessario inserire contenuto: la sola presenza del file permette ai pacchetti di riconoscerlo e completare correttamente l’aggiornamento.

Ecco come fare.

Creare il file vuoto con un singolo comando

Il metodo più rapido è usare touch, che crea un file vuoto senza contenuto:

sudo touch /etc/mysql/mariadb.cnf

Una volta eseguito questo comando, ripetere l’aggiornamento:

sudo apt update && sudo apt upgrade -y

Se il file è stato creato correttamente, l’errore non comparirà più.

Creare il file vuoto tramite redirezione

In alternativa puoi utilizzare:

sudo sh -c 'echo "" > /etc/mysql/mariadb.cnf'

Questo comando crea lo stesso file vuoto e risolve il problema in modo identico.

Verificare che il file esista

Per assicurarti che il file sia stato creato correttamente puoi eseguire:

ls -l /etc/mysql/

Se vedi mariadb.cnf, la correzione è andata a buon fine.

Risolto!!!

sudo apt update && apt upgrade -y
Hit:1 http://asi-fs-d.contabo.net/ubuntu jammy InRelease
Hit:2 http://asi-fs-d.contabo.net/ubuntu jammy-updates InRelease
Hit:3 http://asi-fs-d.contabo.net/ubuntu jammy-backports InRelease
Ign:4 http://rpms.litespeedtech.com/debian jammy InRelease
Hit:5 http://security.ubuntu.com/ubuntu jammy-security InRelease
Hit:6 http://rpms.litespeedtech.com/debian jammy Release
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
All packages are up to date.
N: Skipping acquire of configured file 'main/binary-i386/Packages' as repository 'http://rpms.litespeedtech.com/debian jammy InRelease' doesn't support architecture 'i386'
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Calculating upgrade... Done
Get more security updates through Ubuntu Pro with 'esm-apps' enabled:
libmagickcore-6.q16-dev libmagick++-dev libmagickwand-dev libheif1
imagemagick libopenexr-dev libopenexr25 libmagick++-6.q16-8
libmagickcore-6.q16-6-extra libmagickwand-6.q16-6 imagemagick-6.q16
libmagickcore-6.q16-6 imagemagick-6-common libmagickcore-6-arch-config
libmagick++-6-headers libmagickwand-6-headers libmagick++-6.q16-dev
libde265-0 libmagickwand-6.q16-dev libmagickcore-6-headers
Learn more about Ubuntu Pro at https://ubuntu.com/pro
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
5 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Setting up mariadb-common (1:10.6.22-0ubuntu0.22.04.1) ...
update-alternatives: warning: alternative /etc/mysql/my.cnf.fallback (part of link group my.cnf) doesn't exist; removing from list of alternatives
update-alternatives: warning: forcing reinstallation of alternative /etc/mysql/mariadb.cnf because link group my.cnf is broken
Setting up libmariadb3:amd64 (1:10.6.22-0ubuntu0.22.04.1) ...
Setting up mariadb-client-core-10.6 (1:10.6.22-0ubuntu0.22.04.1) ...
Setting up mariadb-client-10.6 (1:10.6.22-0ubuntu0.22.04.1) ...
Setting up mariadb-client (1:10.6.22-0ubuntu0.22.04.1) ...
Processing triggers for libc-bin (2.35-0ubuntu3.11) ...

Perché basta creare un file vuoto per risolvere l’errore path /etc/mysql/mariadb.cnf doesn’t exist

MariaDB e alcuni pacchetti legati a MySQL utilizzano file di configurazione suddivisi in più parti. Il file mariadb.cnf rappresenta semplicemente un punto di riferimento all’interno della struttura. Anche se il file è vuoto, il sistema non segnalerà più l’errore.

Molti utenti pensano che il file debba contenere direttive specifiche, ma nel caso di questo errore non è necessario. L’obiettivo è soltanto evitare che il gestore pacchetti rilevi un file mancante, così da prevenire ulteriori problemi durante gli aggiornamenti futuri.

MariaDB Official

Amazon
Offerte ebay

Condividi se ti piace su...