Editor, Editors, USER, admin, Bureaucrats, Check users, dev, editor, founder, Interface administrators, member, oversight, Suppressors, Administrators, translator
11,492
edits
(29 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
== | =Progetto di configurazione per MediaWiki e Masticationpedia: = | ||
< | L'idea di configurare un'installazione locale di MediaWiki nasce dalla necessità di creare un ambiente collaborativo e facilmente accessibile per lo sviluppo e la gestione di contenuti scientifici avanzati, connessi al progetto Masticationpedia. Il percorso intrapreso non è stato lineare: ogni tappa ha richiesto riflessione, tentativi e risoluzioni di problemi tecnici. Ma partiamo dall'inizio. | ||
Il nostro punto di partenza è stato l'installazione di '''Ubuntu 22.04 LTS''', una scelta dettata dalla stabilità e sicurezza offerte da questo sistema operativo. Una volta installato, abbiamo subito verificato che fosse aggiornato eseguendo i comandi fondamentali <code>sudo apt update</code> e <code>sudo apt upgrade</code>. Questo passaggio ha garantito che il sistema fosse pronto per ospitare le applicazioni e i servizi successivi. Abbiamo anche controllato la versione di Ubuntu con <code>lsb_release -a</code>, confermando di essere su una piattaforma solida e compatibile con i nostri obiettivi. | |||
Il passo successivo è stato l'installazione di '''MySQL''', un elemento fondamentale per la gestione del database che MediaWiki utilizza per archiviare i dati. Con il comando <code>sudo apt install mysql-server</code> abbiamo avviato il processo di installazione. Subito dopo, sono emersi i primi ostacoli: problemi legati ai permessi e alla directory <code>/var/run/mysqld</code>. Dopo diverse verifiche e correzioni, come l'utilizzo di <code>sudo chown mysql:mysql /var/run/mysqld</code>, siamo riusciti a risolverli e a far funzionare correttamente il servizio MySQL, verificando il suo stato con <code>sudo systemctl status mysql</code>. | |||
La configurazione di MySQL si è rivelata un passo cruciale. Abbiamo modificato il file <code>/etc/mysql/my.cnf</code> per consentire connessioni da qualsiasi indirizzo IP, impostando il parametro <code>bind-address = 0.0.0.0</code>. Per risolvere problemi di accesso e password, abbiamo avviato MySQL in modalità sicura con <code>sudo mysqld_safe --skip-grant-tables --skip-networking</code>. Questo approccio ci ha permesso di reimpostare password e configurazioni, superando ostacoli legati al plugin <code>auth_socket</code>. | |||
Con MySQL pronto, ci siamo concentrati su '''PHP''', indispensabile per far funzionare l'interfaccia di MediaWiki. L'installazione è stata semplice grazie al comando <code>sudo apt install php php-mysql</code>. Abbiamo poi verificato che il modulo <code>mysqli</code> fosse attivo usando <code>php -m | grep mysqli</code>. Questi passaggi hanno garantito la piena compatibilità tra PHP e MySQL. | |||
Successivamente, '''Apache''' è stato configurato come server web. Dopo averlo installato con <code>sudo apt install apache2</code>, abbiamo abilitato il modulo <code>mod_rewrite</code> con <code>sudo a2enmod rewrite</code> e riavviato Apache. Questo passaggio era essenziale per ospitare MediaWiki e renderlo accessibile tramite browser. Abbiamo confermato che Apache fosse attivo e funzionante utilizzando <code>sudo systemctl status apache2</code>. | |||
Con il server web pronto, siamo passati all'installazione di MediaWiki. Abbiamo scaricato l'ultima versione disponibile con <code>wget https://releases.wikimedia.org/mediawiki/1.39/mediawiki-1.39.0.tar.gz</code> e l'abbiamo estratta nella directory di Apache <code>/var/www/html</code>. La configurazione iniziale di MediaWiki è stata effettuata tramite l'interfaccia web, accessibile all'indirizzo <code>http://localhost/mediawiki</code>. Questo passaggio ha richiesto la creazione del file <code>LocalSettings.php</code>, che collega MediaWiki al database MySQL. | |||
Dopo aver verificato che MediaWiki fosse funzionante, abbiamo esplorato la possibilità di connetterlo al progetto Masticationpedia. Questo ha richiesto la configurazione di chiavi API e la sincronizzazione tra MediaWiki locale e il server remoto. Abbiamo monitorato i log di Apache con <code>tail -f /var/log/apache2/error.log</code> per identificare e risolvere eventuali problemi di configurazione o connessione. | |||
Ogni tappa di questo viaggio ha avuto il suo ruolo nella costruzione di un sistema stabile, sicuro e funzionale. Attraverso un'attenta gestione dei permessi, il controllo delle directory, la configurazione di password e l'integrazione tra diversi servizi, abbiamo creato un ambiente che non solo supporta le operazioni locali, ma è anche pronto per collaborare con progetti più ampi come Masticationpedia. La strada è stata lunga e complessa, ma ogni passo ha contribuito a costruire una soluzione robusta e scalabile.<br /> | |||
==1. Sistema operativo (Ubuntu 22.04 LTS)== | |||
* | *Descrizione: Installazione di Ubuntu come sistema operativo principale. Questo step crea il punto di partenza per l'intero processo, fornendo un ambiente sicuro e stabile. | ||
* | *Azioni: | ||
<blockquote>Configurazione iniziale del sistema. | <blockquote>Configurazione iniziale del sistema. | ||
Line 14: | Line 28: | ||
<code>sudo apt update</code> | <code>sudo apt update</code> | ||
<code>sudo apt upgrade</code>.</blockquote | <code>sudo apt upgrade</code>.</blockquote> | ||
<blockquote><small>'''parallels@ubuntu-linux-22-04-02-desktop''':'''~'''$ lsb_release -a</small> | '''Controlla la versione di Ubuntu:'''<blockquote><small>'''parallels@ubuntu-linux-22-04-02-desktop''':'''~'''$ lsb_release -a</small> | ||
<small>No LSB modules are available.</small> | <small>No LSB modules are available.</small> | ||
Line 27: | Line 40: | ||
<small>Description: Ubuntu 22.04.5 LTS</small> | <small>Description: Ubuntu 22.04.5 LTS</small> | ||
<small>Release: 22.04</small> </blockquote> | <small>Release: 22.04</small> </blockquote>{{Tooltip|2={{Tooltip|Informazioni sulla distribuzione Linux|Il comando <code>lsb_release -a</code> mostra informazioni sulla distribuzione Linux in uso. L'output indica: 1) Nessun modulo LSB disponibile, che non influisce sulle informazioni. 2) La distribuzione è <code>Ubuntu</code>. 3) La versione installata è <code>22.04.5 LTS</code>, supportata a lungo termine. Questo comando è utile per identificare il sistema operativo in uso.}}}} | ||
Assicurati che il sistema sia aggiornato | '''Assicurati che il sistema sia aggiornato''':<blockquote><small>parallels@ubuntu-linux-22-04-02-desktop''':~$ sudo apt update && sudo apt upgrade'''</small> | ||
<small>[sudo] password for parallels:</small> | <small>[sudo] password for parallels:</small> | ||
Line 81: | Line 93: | ||
<small>Calculating upgrade... Done</small> | <small>Calculating upgrade... Done</small> | ||
<small>0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.</small> </blockquote> | <small>0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.</small> </blockquote>{{Tooltip|2={{Tooltip|Aggiornamento del sistema con apt|Il comando <code>sudo apt update && sudo apt upgrade</code> aggiorna l'indice dei pacchetti e installa eventuali aggiornamenti disponibili. L'output indica: 1) L'indice dei pacchetti è stato aggiornato dai repository (es. <code>http://security.ubuntu.com/ubuntu</code>). 2) Tutti i pacchetti sono già aggiornati. Questo comando è essenziale per mantenere il sistema sicuro e aggiornato.}}}} | ||
==2. Installazione di MySQL== | |||
Descrizione: Installazione del database MySQL, necessario per archiviare i dati di MediaWiki. | |||
Azioni: | |||
Installazione con il comando:<code>sudo apt install mysql-server</code>. | |||
Configurazione iniziale di MySQL, inclusa la creazione di directory e file di configurazione. | |||
Risoluzione di problemi legati ai permessi e alla directory <code>/var/run/mysqld</code>. | |||
'''Controlla se MySQL è installato:''' | |||
parallels@ubuntu-linux-22-04-02-desktop:'''~$ mysql --version''' | |||
mysql Ver 8.0.40-0ubuntu0.22.04.1 for Linux on x86_64 ((Ubuntu)) | |||
'''Controlla lo stato del servizio MySQL:'''<blockquote><small>parallels@ubuntu-linux-22-04-02-desktop''':~$ sudo systemctl status mysql'''</small> | |||
Controlla lo stato del servizio MySQL: | |||
<small>[sudo] password for parallels:</small> | <small>[sudo] password for parallels:*********</small> | ||
<small>● mysql.service - MySQL Community Server</small> | <small>● mysql.service - MySQL Community Server</small> | ||
Line 119: | Line 128: | ||
<small> Process: 135568 ExecStartPre=/usr/share/mysql/mysql-systemd-start pre (code=exited, status=0/SUCCESS)</small> | <small> Process: 135568 ExecStartPre=/usr/share/mysql/mysql-systemd-start pre (code=exited, status=0/SUCCESS)</small> | ||
<small> | <small> '''Main PID: 135576''' (mysqld)</small> | ||
<small> Status: "Server startup in progress"</small> | <small> Status: "Server startup in progress"</small> | ||
Line 133: | Line 142: | ||
<small> └─135576 /usr/sbin/mysqld</small> | <small> └─135576 /usr/sbin/mysqld</small> | ||
<small>Jan 04 16:48:38 ubuntu-linux-22-04-02-desktop systemd[1]: Starting MySQL Community Server...</small></blockquote> | <small>Jan 04 16:48:38 ubuntu-linux-22-04-02-desktop systemd[1]: Starting MySQL Community Server...</small></blockquote>{{Tooltip|2={{Tooltip|Testo breve che mostra l'analisi del risultato del comando|La risposta che hai riportato mostra lo stato del servizio MySQL su un sistema Ubuntu. Ecco un'analisi dettagliata: Comando eseguito: <code>sudo systemctl status mysql</code>, che controlla lo stato del servizio MySQL. Richiesta di password: <code>[sudo] password for parallels:</code>, normale per comandi amministrativi. Stato del servizio: <code>● mysql.service - MySQL Community Server</code>, attualmente in fase di avvio (<code>activating</code>). Dettagli del processo: PID principale <code>135576 (mysqld)</code>, risorse utilizzate: 256.1 MB memoria, 12 task, CPU 330ms. Log recenti mostrano che il servizio è stato avviato. Conclusione: il server è in fase di avvio e potrebbe richiedere tempo in base alla configurazione. Per approfondire: <code>sudo journalctl -u mysql.service</code> per i log dettagliati o <code>sudo tail -n 50 /var/log/mysql/error.log</code> per controllare eventuali errori.}}}} | ||
= | |||
<blockquote> | '''Se MySQL non è installato, usa:'''<blockquote> | ||
<small>parallels@ubuntu-linux-22-04-02-desktop:~$ sudo apt install mysql-server</small> | <small>parallels@ubuntu-linux-22-04-02-desktop''':~$ sudo apt install mysql-server'''</small> | ||
<small>[sudo] password for parallels:</small> | <small>[sudo] password for parallels:</small> | ||
Line 152: | Line 158: | ||
<small>mysql-server is already the newest version (8.0.40-0ubuntu0.22.04.1).</small> | <small>mysql-server is already the newest version (8.0.40-0ubuntu0.22.04.1).</small> | ||
<small>0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.</small></blockquote> | <small>0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.</small> | ||
</blockquote>{{Tooltip|2={{Tooltip|Comando per installare MySQL Server|Il comando <code>sudo apt install mysql-server</code> è stato eseguito per installare il pacchetto MySQL Server. La risposta del sistema indica che: 1) La password amministrativa è stata richiesta tramite <code>sudo</code>. 2) Sono state lette le liste dei pacchetti e controllato lo stato. 3) Il pacchetto <code>mysql-server</code> è già installato nella versione più recente (<code>8.0.40-0ubuntu0.22.04.1</code>). Nessun aggiornamento o modifica ai pacchetti è stata effettuata.}}}} | |||
==3. Configurazione di MySQL== | |||
Descrizione: Personalizzazione del server MySQL per la gestione del database | |||
<blockquote>Configurazione del file <code>/etc/mysql/my.cnf</code>, con l’aggiunta di parametri come: | <blockquote>Configurazione del file <code>/etc/mysql/my.cnf</code>, con l’aggiunta di parametri come: | ||
Line 167: | Line 174: | ||
<code>sudo mysqld_safe --skip-grant-tables --skip-networking</code> | <code>sudo mysqld_safe --skip-grant-tables --skip-networking</code> | ||
Creazione di utenti e modifica delle password, inclusi problemi legati a plugin (<code>auth_socket</code>).</blockquote> | Creazione di utenti e modifica delle password, inclusi problemi legati a plugin (<code>auth_socket</code>).</blockquote>'''Controlla il file di configurazione di MySQL:''' <blockquote><small>parallels@ubuntu-linux-22-04-02-desktop''':~$ cat /etc/mysql/my.cnf'''</small> | ||
<blockquote><small>parallels@ubuntu-linux-22-04-02-desktop:~$ cat /etc/mysql/my.cnf</small> | |||
<small>[mysqld]</small> | <small>[mysqld]</small> | ||
<small>bind-address = 0.0.0.0 | <small>'''bind-address = 0.0.0.0'''</small> | ||
<small># The MySQL database server configuration file.</small> | <small># The MySQL database server configuration file.</small> | ||
<small># You can copy this to one of:</small> | <small># You can copy this to one of:</small> | ||
Line 190: | Line 187: | ||
<small># - "~/.my.cnf" to set user-specific options.</small> | <small># - "~/.my.cnf" to set user-specific options.</small> | ||
<small># One can use all long options that the program supports.</small> | <small># One can use all long options that the program supports.</small> | ||
Line 198: | Line 193: | ||
<small># --print-defaults to see which it would actually understand and use.</small> | <small># --print-defaults to see which it would actually understand and use.</small> | ||
<small># For explanations see</small> | <small># For explanations see</small> | ||
<small># <nowiki>http://dev.mysql.com/doc/mysql/en/server-system-variables.html</nowiki></small> | <small># <nowiki>http://dev.mysql.com/doc/mysql/en/server-system-variables.html</nowiki></small> | ||
<small># * IMPORTANT: Additional settings that can override those from this file!</small> | <small># * IMPORTANT: Additional settings that can override those from this file!</small> | ||
<small># The files must end with '.cnf', otherwise they'll be ignored.</small> | <small># The files must end with '.cnf', otherwise they'll be ignored.</small> | ||
<small>!includedir /etc/mysql/conf.d/</small> | <small>!includedir /etc/mysql/conf.d/</small> | ||
<small>!includedir /etc/mysql/mysql.conf.d/</small></blockquote> | <small>!includedir /etc/mysql/mysql.conf.d/</small></blockquote> | ||
{{Tooltip|2=<nowiki>{{Tooltip|Visualizzazione del file di configurazione di MySQL|Il comando </nowiki><code>cat /etc/mysql/my.cnf</code> mostra il contenuto del file di configurazione principale di MySQL. La sezione <code>[mysqld]</code> include la direttiva <code>bind-address = 0.0.0.0</code>, che consente connessioni da tutte le interfacce. Il file fornisce istruzioni per configurazioni globali (<code>/etc/mysql/my.cnf</code>) o specifiche dell'ut}} | |||
Cerca parametri come <code>bind-address</code> e assicurati che sia impostato correttamente. | Cerca parametri come <code>bind-address</code> e assicurati che sia impostato correttamente. | ||
'''Prova a connetterti a MySQL:''' | '''Prova a connetterti a MySQL:'''<blockquote> | ||
<small>parallels@ubuntu-linux-22-04-02-desktop:~$ mysql -u root -p</small> | <small>parallels@ubuntu-linux-22-04-02-desktop:'''~$ mysql -u root -p'''</small> | ||
<small>Enter password:</small> | <small>Enter password:</small> | ||
<small>ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)</small></blockquote> | <small>ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)</small></blockquote>{{Tooltip|2={{Tooltip|Errore di connessione al server MySQL|Il comando <code>mysql -u root -p</code> viene utilizzato per accedere al server MySQL con l'utente <code>root</code>. Dopo aver richiesto la password, il sistema restituisce l'errore: <code>ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)</code>. Questo errore può indicare che il server MySQL non è in esecuzione, il file socket<code>/var/run/mysqld/mysqld.sock</code> non esiste o ci sono problemi di configurazione. Soluzioni comuni includono controllare lo stato del servizio con <code>sudo systemctl status mysql</code> o verificare i log di errore in <code>/var/log/mysql/error.log</code>.}}}} | ||
= | |||
<blockquote><small>parallels@ubuntu-linux-22-04-02-desktop:~$ sudo mysqld_safe --skip-grant-tables --skip-networking</small> | '''Se non riesci a connetterti, verifica:'''<blockquote><small>parallels@ubuntu-linux-22-04-02-desktop:'''~$ sudo mysqld_safe --skip-grant-tables --skip-networking'''</small> | ||
<small>[sudo] password for parallels:</small> | <small>[sudo] password for parallels:</small> | ||
Line 236: | Line 224: | ||
<small>2025-01-04T16:30:53.534928Z mysqld_safe Logging to '/var/log/mysql/error.log'.</small> | <small>2025-01-04T16:30:53.534928Z mysqld_safe Logging to '/var/log/mysql/error.log'.</small> | ||
<small>2025-01-04T16:30:53.635250Z mysqld_safe A mysqld process already exists</small></blockquote>Una volta dentro MySQL, esegui:{{Tooltip|2={{Tooltip|Errore nei comandi MySQL da terminale|I comandi <code>USE mysql;</code> e <code>SELECT User, Host, plugin FROM user;</code> sono stati eseguiti direttamente nel terminale invece che all'interno del client MySQL. Questo ha causato gli errori <code>USE: command not found</code> e <code>SELECT: command not found</code>, poiché il terminale Bash non riconosce comandi SQL. Per eseguire correttamente questi comandi, è necessario accedere al client MySQL con <code>mysql -u [username] -p</code> e poi digitare i comandi SQL.}}}}<blockquote><small>parallels@ubuntu-linux-22-04-02-desktop:~$ USE mysql;</small> | <small>2025-01-04T16:30:53.635250Z mysqld_safe A mysqld process already exists</small></blockquote>{{Tooltip|2={{Tooltip|Errore nell'avvio di mysqld_safe|Il comando <code>sudo mysqld_safe --skip-grant-tables --skip-networking</code> è stato utilizzato per avviare MySQL in modalità sicura senza controllo delle credenziali e connessioni di rete. L'output mostra che: 1) La password amministrativa è stata richiesta tramite <code>sudo</code>. 2) L'operazione è stata registrata nel log di MySQL (<code>/var/log/mysql/error.log</code>). 3) L'errore <code>A mysqld process already exists</code> indica che un altro processo MySQL è già in esecuzione. Per risolvere, è possibile verificare i processi attivi con <code>ps aux | grep mysqld</code> e terminare quello in conflitto con <code>sudo kill [PID]</code> prima di riprovare.}}}}Una volta dentro MySQL, esegui:{{Tooltip|2={{Tooltip|Errore nei comandi MySQL da terminale|I comandi <code>USE mysql;</code> e <code>SELECT User, Host, plugin FROM user;</code> sono stati eseguiti direttamente nel terminale invece che all'interno del client MySQL. Questo ha causato gli errori <code>USE: command not found</code> e <code>SELECT: command not found</code>, poiché il terminale Bash non riconosce comandi SQL. Per eseguire correttamente questi comandi, è necessario accedere al client MySQL con <code>mysql -u [username] -p</code> e poi digitare i comandi SQL.}}}} === | ||
<blockquote><small>parallels@ubuntu-linux-22-04-02-desktop:~$ USE mysql;</small> | |||
<small>SELECT User, Host, plugin FROM user;</small> | <small>SELECT User, Host, plugin FROM user;</small> | ||
Line 244: | Line 233: | ||
<small>SELECT: command not found</small></blockquote> | <small>SELECT: command not found</small></blockquote> | ||
==4. Installazione di PHP== | |||
Descrizione: PHP è necessario per l’interfaccia di MediaWiki.<blockquote>Installazione con il comando: <code>sudo apt install php php-mysql</code>. | |||
<blockquote>Installazione con il comando: <code>sudo apt install php php-mysql</code>. | |||
Configurazione di PHP per la compatibilità con MediaWiki.</blockquote> | Configurazione di PHP per la compatibilità con MediaWiki.</blockquote> | ||
Controlla la versione di PHP:{{Tooltip|2={{Tooltip|Informazioni sulla versione di PHP|Il comando <code>php -v</code> mostra la versione di PHP installata sul sistema. L'output indica che la versione corrente è <code>8.1.2-1ubuntu2.20</code> con supporto CLI (Command Line Interface). Viene utilizzato il motore Zend <code>v4.1.2</code>, con il modulo di caching <code>Zend OPcache</code> attivo. Questo modulo migliora le prestazioni memorizzando bytecode precompilati.}}}}=== | |||
Controlla la versione di PHP:{{Tooltip|2={{Tooltip|Informazioni sulla versione di PHP|Il comando <code>php -v</code> mostra la versione di PHP installata sul sistema. L'output indica che la versione corrente è <code>8.1.2-1ubuntu2.20</code> con supporto CLI (Command Line Interface). Viene utilizzato il motore Zend <code>v4.1.2</code>, con il modulo di caching <code>Zend OPcache</code> attivo. Questo modulo migliora le prestazioni memorizzando bytecode precompilati.}}}}<blockquote><small>parallels@ubuntu-linux-22-04-02-desktop:~$ php -v</small> | <blockquote><small>parallels@ubuntu-linux-22-04-02-desktop:~$ php -v</small> | ||
<small>PHP 8.1.2-1ubuntu2.20 (cli) (built: Dec 3 2024 20:14:35) (NTS)</small> | <small>PHP 8.1.2-1ubuntu2.20 (cli) (built: Dec 3 2024 20:14:35) (NTS)</small> | ||
Line 264: | Line 249: | ||
<small> with Zend OPcache v8.1.2-1ubuntu2.20, Copyright (c), by Zend Technologies</small></blockquote> | <small> with Zend OPcache v8.1.2-1ubuntu2.20, Copyright (c), by Zend Technologies</small></blockquote> | ||
Assicurati che PHP abbia il modulo MySQL:{{Tooltip|2={{Tooltip|Verifica del modulo mysqli in PHP|Il comando <code>php -m | grep mysqli</code> verifica se il modulo <code>mysqli</code>, utilizzato per connettersi a database MySQL, è abilitato in PHP. L'output <code>mysqli</code> conferma che il modulo è attivo. Questo modulo è fondamentale per eseguire query su database MySQL utilizzando PHP.}}}}<blockquote><small>parallels@ubuntu-linux-22-04-02-desktop:~$ php -m | grep mysqli</small> | Assicurati che PHP abbia il modulo MySQL:{{Tooltip|2={{Tooltip|Verifica del modulo mysqli in PHP|Il comando <code>php -m | grep mysqli</code> verifica se il modulo <code>mysqli</code>, utilizzato per connettersi a database MySQL, è abilitato in PHP. L'output <code>mysqli</code> conferma che il modulo è attivo. Questo modulo è fondamentale per eseguire query su database MySQL utilizzando PHP.}}}}=== | ||
<blockquote><small>parallels@ubuntu-linux-22-04-02-desktop:~$ php -m | grep mysqli</small> | |||
<small>mysqli</small></blockquote>Se PHP non è installato, usa:{{Tooltip|2={{Tooltip|Verifica installazione di PHP e php-mysql|Il comando <code>sudo apt install php php-mysql</code> è stato utilizzato per installare PHP e il modulo <code>php-mysql</code>, che consente a PHP di interagire con database MySQL. L'output indica che entrambi i pacchetti sono già installati nella versione più recente (<code>2:8.1+92ubuntu1</code>) e non sono necessarie ulteriori azioni.}}}}<blockquote><small>parallels@ubuntu-linux-22-04-02-desktop:~$ sudo apt install php php-mysql</small> | <small>mysqli</small></blockquote> | ||
Se PHP non è installato, usa:{{Tooltip|2={{Tooltip|Verifica installazione di PHP e php-mysql|Il comando <code>sudo apt install php php-mysql</code> è stato utilizzato per installare PHP e il modulo <code>php-mysql</code>, che consente a PHP di interagire con database MySQL. L'output indica che entrambi i pacchetti sono già installati nella versione più recente (<code>2:8.1+92ubuntu1</code>) e non sono necessarie ulteriori azioni.}}}} === | |||
<blockquote><small>parallels@ubuntu-linux-22-04-02-desktop:~$ sudo apt install php php-mysql</small> | |||
<small>[sudo] password for parallels:</small> | <small>[sudo] password for parallels:</small> | ||
Line 282: | Line 273: | ||
<small>0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.</small></blockquote> | <small>0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.</small></blockquote> | ||
==5. Installazione di Apache== | |||
Descrizione: Apache è utilizzato come server web per ospitare MediaWiki. | |||
Azion: | |||
<blockquote>Installazione con il comando: <code>sudo apt install apache2</code>. | <blockquote>Installazione con il comando: <code>sudo apt install apache2</code>. | ||
Configurazione per abilitare moduli necessari come <code>mod_rewrite</code>.</blockquote> | Configurazione per abilitare moduli necessari come <code>mod_rewrite</code>.</blockquote> | ||
Controlla se Apache è attivo:{{Tooltip|2={{Tooltip|Stato del servizio Apache HTTP|Il comando <code>sudo systemctl status apache2</code> verifica lo stato del servizio Apache HTTP. L'output mostra che il servizio è attivo (<code>active (running)</code>) e in esecuzione da 18 ore. Il processo principale ha <code>PID 61322</code> e utilizza 10 task, 11.3 MB di memoria, e 15.329 secondi di CPU. Sono elencati i processi figli e i log di avvio indicano che Apache è stato avviato correttamente. Per ulteriori informazioni, consultare la documentazione ufficiale: <code>https://httpd.apache.org/docs/2.4/</code>.}}}}=== | |||
<blockquote><small>arallels@ubuntu-linux-22-04-02-desktop:~$ sudo systemctl status apache2</small> | <blockquote><small>arallels@ubuntu-linux-22-04-02-desktop:~$ sudo systemctl status apache2</small> | ||
Line 341: | Line 329: | ||
Verifica i moduli abilitati: | Verifica i moduli abilitati: | ||
Se Apache non è installato, usa:<blockquote><small>sudo apt install apache2</small></blockquote>Abilita i moduli necessari:{{Tooltip|2={{Tooltip|Abilitazione del modulo rewrite in Apache|Il comando <code>sudo a2enmod rewrite</code> abilita il modulo <code>rewrite</code> di Apache, utilizzato per riscrivere URL. L'output conferma che il modulo è stato attivato e specifica che è necessario riavviare Apache con <code>sudo systemctl restart apache2</code> per applicare la nuova configurazione.}}}}<blockquote><small>parallels@ubuntu-linux-22-04-02-desktop:~$ sudo a2enmod rewrite</small> | Se Apache non è installato, usa: | ||
<blockquote><small>sudo apt install apache2</small></blockquote> | |||
Abilita i moduli necessari:{{Tooltip|2={{Tooltip|Abilitazione del modulo rewrite in Apache|Il comando <code>sudo a2enmod rewrite</code> abilita il modulo <code>rewrite</code> di Apache, utilizzato per riscrivere URL. L'output conferma che il modulo è stato attivato e specifica che è necessario riavviare Apache con <code>sudo systemctl restart apache2</code> per applicare la nuova configurazione.}}}} | |||
<blockquote><small>parallels@ubuntu-linux-22-04-02-desktop:~$ sudo a2enmod rewrite</small> | |||
<small>sudo systemctl restart apache2</small> | <small>sudo systemctl restart apache2</small> | ||
Line 351: | Line 345: | ||
<small> systemctl restart apache2</small></blockquote> | <small> systemctl restart apache2</small></blockquote> | ||
== 6. Download e configurazione di MediaWiki == | == 6. Download e configurazione di MediaWiki== | ||
Descrizione: Installazione e configurazione di MediaWiki come piattaforma collaborativa. | |||
Azioni: | |||
Line 367: | Line 359: | ||
<code>http://localhost/mediawiki</code>.</blockquote> | <code>http://localhost/mediawiki</code>.</blockquote> | ||
Controlla se MediaWiki è presente nella directory:{{Tooltip|2={{Tooltip|Contenuto della directory /var/www/html|Il comando <code>ls /var/www/html</code> elenca i file e le directory nella directory principale del server Apache. L'output mostra: 1) <code>index.html</code>, il file predefinito di Apache; 2) <code>info.php</code>, probabilmente un file per verificare la configurazione PHP; 3) <code>mediawiki</code>, una directory che sembra contenere un'installazione di MediaWiki.}}}}<blockquote><small>parallels@ubuntu-linux-22-04-02-desktop:~$ ls /var/www/html</small> | Controlla se MediaWiki è presente nella directory:{{Tooltip|2={{Tooltip|Contenuto della directory /var/www/html|Il comando <code>ls /var/www/html</code> elenca i file e le directory nella directory principale del server Apache. L'output mostra: 1) <code>index.html</code>, il file predefinito di Apache; 2) <code>info.php</code>, probabilmente un file per verificare la configurazione PHP; 3) <code>mediawiki</code>, una directory che sembra contenere un'installazione di MediaWiki.}}}}=== | ||
<blockquote><small>parallels@ubuntu-linux-22-04-02-desktop:~$ ls /var/www/html</small> | |||
<small>index.html info.php mediawiki</small></blockquote | <small>index.html info.php mediawiki</small></blockquote> | ||
Accedi all’interfaccia web:{{Tooltip|2={{Tooltip|Errore nell'uso di un URL nel terminale|Il comando <code>http://localhost/mediawiki</code> è stato digitato direttamente nel terminale Bash, ma gli URL devono essere aperti in un browser web. Il terminale ha cercato un file o una directory con quel nome e ha restituito l'errore <code>No such file or directory</code>. Per accedere all'URL, aprilo in un browser web.}}}}=== | |||
<blockquote><small>parallels@ubuntu-linux-22-04-02-desktop:~$ <nowiki>http://localhost/mediawiki</nowiki></small> | |||
<small> | <small>bash: <nowiki>http://localhost/mediawiki</nowiki>: No such file or directory</small></blockquote> | ||
Se MediaWiki non è installato, scaricalo:{{Tooltip|2={{Tooltip|Scaricamento ed estrazione di MediaWiki|I comandi scaricano ed estraggono MediaWiki nella directory del server web. 1) <code>wget https://releases.wikimedia.org/mediawiki/1.39/mediawiki-1.39.0.tar.gz</code> scarica l'archivio di MediaWiki versione 1.39.0. 2) <code>tar -xvzf mediawiki-1.39.0.tar.gz -C /var/www/html/</code> estrae i file nella directory <code>/var/www/html/</code>. Questo rende i file di MediaWiki disponibili per la configurazione tramite il server Apache.}}}}=== | |||
<blockquote><small>wget <nowiki>https://releases.wikimedia.org/mediawiki/1.39/mediawiki-1.39.0.tar.gz</nowiki></small> | |||
<small>tar -xvzf mediawiki-1.39.0.tar.gz -C /var/www/html/</small></blockquote> | |||
==7. Connessione a MediaWiki locale== | |||
Descrizione''': Verifica che il setup MediaWiki sia funzionante e collegato a MySQL.''' | |||
Azioni''':''' | |||
<blockquote>* Configurazione del file <code>LocalSettings.php</code> per collegare MediaWiki al database MySQL. | <blockquote>* Configurazione del file <code>LocalSettings.php</code> per collegare MediaWiki al database MySQL. | ||
Line 388: | Line 385: | ||
<code>http://localhost/mediawiki</code>. | <code>http://localhost/mediawiki</code>. | ||
</blockquote> | </blockquote> | ||
Controlla il file <code>LocalSettings.php</code>:{{Tooltip|2={{Tooltip|Errore: LocalSettings.php non trovato|Il comando <code>cat /var/www/html/mediawiki/LocalSettings.php</code> cerca di visualizzare il file <code>LocalSettings.php</code> di MediaWiki, ma restituisce l'errore <code>No such file or directory</code>. Questo file non viene creato automaticamente durante l'installazione. È necessario completare la configurazione iniziale di MediaWiki tramite il browser per generare il file. Una volta completata, il file sarà disponibile nella directory specificata.}}}}<blockquote><small>parallels@ubuntu-linux-22-04-02-desktop:~$ cat /var/www/html/mediawiki/LocalSettings.php</small> | Controlla il file <code>LocalSettings.php</code>:{{Tooltip|2={{Tooltip|Errore: LocalSettings.php non trovato|Il comando <code>cat /var/www/html/mediawiki/LocalSettings.php</code> cerca di visualizzare il file <code>LocalSettings.php</code> di MediaWiki, ma restituisce l'errore <code>No such file or directory</code>. Questo file non viene creato automaticamente durante l'installazione. È necessario completare la configurazione iniziale di MediaWiki tramite il browser per generare il file. Una volta completata, il file sarà disponibile nella directory specificata.}}}} === | ||
<blockquote><small>parallels@ubuntu-linux-22-04-02-desktop:~$ cat /var/www/html/mediawiki/LocalSettings.php</small> | |||
<small>cat: /var/www/html/mediawiki/LocalSettings.php: No such file or directory</small></blockquote> | <small>cat: /var/www/html/mediawiki/LocalSettings.php: No such file or directory</small></blockquote> | ||
Testa la connessione al database dal terminale:{{Tooltip|2={{Tooltip|Errore di connessione a MySQL|Il comando <code>mysql -u mediawiki_user -p</code> tenta di accedere al server MySQL con l'utente <code>mediawiki_user</code>, ma restituisce l'errore <code>Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock'</code>. Questo errore può essere causato da: 1) Il server MySQL non è in esecuzione. Verifica con <code>sudo systemctl status mysql</code>. 2) Il file socket <code>/var/run/mysqld/mysqld.sock</code> non esiste. Controlla i log in <code>/var/log/mysql/error.log</code>. 3) Problemi di configurazione. Assicurati che MySQL sia configurato correttamente.}}}}<blockquote><small>parallels@ubuntu-linux-22-04-02-desktop:~$ mysql -u mediawiki_user -p</small> | Testa la connessione al database dal terminale:{{Tooltip|2={{Tooltip|Errore di connessione a MySQL|Il comando <code>mysql -u mediawiki_user -p</code> tenta di accedere al server MySQL con l'utente <code>mediawiki_user</code>, ma restituisce l'errore <code>Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock'</code>. Questo errore può essere causato da: 1) Il server MySQL non è in esecuzione. Verifica con <code>sudo systemctl status mysql</code>. 2) Il file socket <code>/var/run/mysqld/mysqld.sock</code> non esiste. Controlla i log in <code>/var/log/mysql/error.log</code>. 3) Problemi di configurazione. Assicurati che MySQL sia configurato correttamente.}}}}=== | ||
<blockquote><small>parallels@ubuntu-linux-22-04-02-desktop:~$ mysql -u mediawiki_user -p</small> | |||
<small>Enter password:</small> | <small>Enter password:</small> | ||
<small>ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)</small></blockquote>Se il file di configurazione non è presente, esegui la configurazione web da:{{Tooltip|2={{Tooltip|Errore nell'uso di un URL nel terminale|Il comando <code>http://localhost/mediawiki</code> è stato digitato nel terminale Bash, ma gli URL devono essere aperti in un browser web. L'errore <code>No such file or directory</code> indica che Bash ha cercato un file o una directory con quel nome. Per accedere al sito, inserisci l'URL <code>http://localhost/mediawiki</code> nella barra degli indirizzi di un browser.}}}}<blockquote><small>parallels@ubuntu-linux-22-04-02-desktop:~$ <nowiki>http://localhost/mediawiki</nowiki></small> | <small>ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)</small></blockquote> | ||
Se il file di configurazione non è presente, esegui la configurazione web da:{{Tooltip|2={{Tooltip|Errore nell'uso di un URL nel terminale|Il comando <code>http://localhost/mediawiki</code> è stato digitato nel terminale Bash, ma gli URL devono essere aperti in un browser web. L'errore <code>No such file or directory</code> indica che Bash ha cercato un file o una directory con quel nome. Per accedere al sito, inserisci l'URL <code>http://localhost/mediawiki</code> nella barra degli indirizzi di un browser.}}}}=== | |||
<blockquote><small>parallels@ubuntu-linux-22-04-02-desktop:~$ <nowiki>http://localhost/mediawiki</nowiki></small> | |||
<small>bash: <nowiki>http://localhost/mediawiki</nowiki>: No such file or directory</small></blockquote> | <small>bash: <nowiki>http://localhost/mediawiki</nowiki>: No such file or directory</small></blockquote> | ||
== 8. Connessione a Masticationpedia == | ==8. Connessione a Masticationpedia== | ||
Descrizione''': Connessione al server di Masticationpedia partendo dall’installazione locale.''' | |||
Azioni''':'''<blockquote>* Configurazione delle chiavi API di Masticationpedia (se applicabile). | |||
Verifica della sincronizzazione tra MediaWiki locale e Masticationpedia per esportare contenuti e configurazioni.</blockquote>Verifica eventuali log per errori di sincronizzazione:{{Tooltip|2={{Tooltip|Monitoraggio dei log di errore di Apache|Il comando <code>tail -f /var/log/apache2/error.log</code> consente di monitorare in tempo reale i log di errore di Apache. L'output mostra: 1) Spegnimenti e riavvii di Apache con segnali <code>SIGWINCH</code>. 2) Messaggi di configurazione relativi al comando <code>/usr/sbin/apache2</code>. 3) Errori che indicano che il file <code>/var/www/html/mediawiki/info.php</code> non è stato trovato, con dettagli sugli indirizzi client (<code>10.211.55.2</code>) e le porte utilizzate. Questo comando è utile per diagnosticare problemi e monitorare l'attività del server.}}}} | |||
<blockquote><small>parallels@ubuntu-linux-22-04-02-desktop:~$ tail -f /var/log/apache2/error.log</small> | |||
<small>[Fri Jan 03 23:26:35.868057 2025] [mpm_prefork:notice] [pid 59969] AH00170: caught SIGWINCH, shutting down gracefully</small> | <small>[Fri Jan 03 23:26:35.868057 2025] [mpm_prefork:notice] [pid 59969] AH00170: caught SIGWINCH, shutting down gracefully</small> | ||
Line 437: | Line 432: | ||
<small>[Sat Jan 04 18:02:49.535547 2025] [mpm_prefork:notice] [pid 149151] AH00163: Apache/2.4.52 (Ubuntu) configured -- resuming normal operations</small> | <small>[Sat Jan 04 18:02:49.535547 2025] [mpm_prefork:notice] [pid 149151] AH00163: Apache/2.4.52 (Ubuntu) configured -- resuming normal operations</small> | ||
<small>[Sat Jan 04 18:02:49.535593 2025] [core:notice] [pid 149151] AH00094: Command line: '/usr/sbin/apache2'</small></blockquote> | <small>[Sat Jan 04 18:02:49.535593 2025] [core:notice] [pid 149151] AH00094: Command line: '/usr/sbin/apache2'</small></blockquote>== =Revisione e modifiche= 1. V'''erifica la connessione di rete:'''{{Tooltip|2={{Tooltip|Verifica connessione con ping|Il comando <code>ping -c 4 google.com</code> verifica la connessione al server <code>google.com</code> inviando 4 pacchetti ICMP. L'output mostra: 1) Indirizzo IP risolto (<code>142.251.209.14</code>). 2) Risposte ricevute con dettagli come <code>ttl</code> (time to live) e <code>time</code> (tempo di andata e ritorno). 3) Statistiche finali, con 0% di perdita di pacchetti e tempi di andata e ritorno (minimo: 17.444 ms, medio: 19.270 ms, massimo: 20.462 ms). Questo comando è utile per diagnosticare problemi di rete.}}}} == | ||
<blockquote><small>parallels@ubuntu-linux-22-04-02-desktop:'''~$ ping -c 4 google.com'''</small> | |||
<small>PING google.com (142.251.209.14) 56(84) bytes of data.</small> | |||
<small>64 bytes from mil04s50-in-f14.1e100.net (142.251.209.14): icmp_seq=1 ttl=128 time=20.5 ms</small> | |||
<small>64 bytes from mil04s50-in-f14.1e100.net (142.251.209.14): icmp_seq=2 ttl=128 time=17.4 ms</small> | |||
<small>64 bytes from mil04s50-in-f14.1e100.net (142.251.209.14): icmp_seq=3 ttl=128 time=20.4 ms</small> | |||
<small>64 bytes from mil04s50-in-f14.1e100.net (142.251.209.14): icmp_seq=4 ttl=128 time=18.8 ms</small> | |||
<small>--- google.com ping statistics ---</small> | |||
<small>4 packets transmitted, 4 received, 0% packet loss, time 3004ms</small> | |||
<small>rtt min/avg/max/mdev = 17.444/19.270/20.462/1.254 ms</small></blockquote> | |||
'''Controlla i log di <code>apt</code>''':{{Tooltip|2={{Tooltip|Log di manutenzione del sistema|Il log mostra operazioni di manutenzione del sistema con la rimozione di pacchetti kernel. 1) <code>linux-modules-extra-5.19.0-50-generic</code> e <code>linux-modules-5.19.0-50-generic</code> vengono rimossi. 2) Il database dei pacchetti viene letto (progresso dal 5% al 100%). 3) Le operazioni sono completate con i log che iniziano e terminano rispettivamente il <code>2025-01-04 09:43:38</code> e il <code>2025-01-04 09:43:55</code>. Questi log documentano l'aggiornamento o la pulizia del sistema.}}}}<blockquote>parallels@ubuntu-linux-22-04-02-desktop:'''~$ cat /var/log/apt/term.log | less''' | |||
<small>Log started: 2025-01-04 09:43:38</small> | |||
<small>(Reading database ... ^M(Reading database ... 5%^M(Reading database ... 10%^M(Reading database ... 15%^M(Reading database ... 20%^M(Reading database ... 25%^M(Reading database ... 30%^M(Reading database ... 35%^M(Reading database ... 40%^M(Reading database ... 45%^M(Reading database ... 50%^M(Reading database ... 55%^M(Reading database ... 60%^M(Reading database ... 65%^M(Reading database ... 70%^M(Reading database ... 75%^M(Reading database ... 80%^M(Reading database ... 85%^M(Reading database ... 90%^M(Reading database ... 95%^M(Reading database ... 100%^M(Reading database ... 247516 files and directories currently installed.)</small> | |||
<small>Removing linux-modules-extra-5.19.0-50-generic (5.19.0-50.50) ...</small> | |||
<small>Log ended: 2025-01-04 09:43:44</small> | |||
<small>Log started: 2025-01-04 09:43:54</small> | |||
<small>(Reading database ... ^M(Reading database ... 5%^M(Reading database ... 10%^M(Reading database ... 15%^M(Reading database ... 20%^M(Reading database ... 25%^M(Reading database ... 30%^M(Reading database ... 35%^M(Reading database ... 40%^M(Reading database ... 45%^M(Reading database ... 50%^M(Reading database ... 55%^M(Reading database ... 60%^M(Reading database ... 65%^M(Reading database ... 70%^M(Reading database ... 75%^M(Reading database ... 80%^M(Reading database ... 85%^M(Reading database ... 90%^M(Reading database ... 95%^M(Reading database ... 100%^M(Reading database ... 241413 files and directories currently installed.)</small> | |||
<small>Removing linux-modules-5.19.0-50-generic (5.19.0-50.50) ...</small> | |||
<small>Log ended: 2025-01-04 09:43:55</small></blockquote>'''Aggiorna la lista dei pacchetti con un mirror alternativo:'''{{Tooltip|2={{Tooltip|File di configurazione dei repository APT|Il file <code>/etc/apt/sources.list</code> definisce i repository da cui il sistema scarica pacchetti e aggiornamenti. Contiene: 1) Repository principali (<code>main</code> e <code>restricted</code>), per software supportato ufficialmente. 2) Repository <code>universe</code> e <code>multiverse</code> per software comunitario o non libero. 3) Repository <code>backports</code> per pacchetti aggiornati non inclusi nel rilascio originale. 4) Repository <code>security</code> per aggiornamenti critici. Questo file è fondamentale per gestire i pacchetti software su Ubuntu.}}}}<blockquote>parallels@ubuntu-linux-22-04-02-desktop''':~$ tail /var/log/apt/term.log''' | |||
Log started: 2025-01-04 09:43:38 | |||
(Reading database ... 247516 files and directories currently installed.) | |||
Removing linux-modules-extra-5.19.0-50-generic (5.19.0-50.50) ... | |||
Log ended: 2025-01-04 09:43:44 | |||
Log started: 2025-01-04 09:43:54 | |||
(Reading database ... 241413 files and directories currently installed.) | |||
Removing linux-modules-5.19.0-50-generic (5.19.0-50.50) ... | |||
Log ended: 2025-01-04 09:43:55</blockquote> | |||
== 2. Problemi con MySQL == | |||
'''Errore comune:''' <code>Can't connect to local MySQL server through socket</code>. | |||
'''Controlla lo stato del servizio MySQL:'''{{Tooltip|2={{Tooltip|Stato del servizio MySQL|Il comando <code>sudo systemctl status mysql</code> verifica lo stato del servizio MySQL. L'output indica: 1) Il servizio è caricato e abilitato per l'avvio automatico. 2) Attualmente è in fase di avvio (<code>activating</code>), con lo stato <code>"Server startup in progress"</code>. 3) Il processo principale <code>mysqld</code> ha il PID <code>172943</code>. 4) Il server utilizza 12 task, 255.1 MB di memoria, e 477 ms di CPU. Questo comando è utile per monitorare l'avvio o eventuali problemi del server MySQL.}}}}<blockquote><small>parallels@ubuntu-linux-22-04-02-desktop:'''~$ sudo systemctl status mysql'''</small> | |||
<small>● mysql.service - MySQL Community Server</small> | |||
<small> Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)</small> | |||
<small> Active: activating (start) since Sun 2025-01-05 10:42:35 CET; 1min 11s ago</small> | |||
<small> Process: 172935 ExecStartPre=/usr/share/mysql/mysql-systemd-start pre (code=exited, status=0/SUCCESS)</small> | |||
<small> Main PID: 172943 (mysqld)</small> | |||
<small> Status: "Server startup in progress"</small> | |||
<small> Tasks: 12 (limit: 2258)</small> | |||
<small> Memory: 255.1M</small> | |||
<small> CPU: 477ms</small> | |||
<small> CGroup: /system.slice/mysql.service</small> | |||
<small> └─172943 /usr/sbin/mysqld</small></blockquote>'''Verifica il log degli errori di MySQL''':{{Tooltip|2={{Tooltip|Errore di blocco del file InnoDB|Il comando <code>sudo tail -n 50 /var/log/mysql/error.log</code> mostra che MySQL non riesce a bloccare il file <code>ibdata1</code>, con l'errore <code>[MY-012574] Unable to lock ./ibdata1 error: 11</code>. Questo errore può essere causato da: 1) Un altro processo che sta accedendo al file. 2) Un arresto non corretto del server MySQL. Per risolvere, verifica i processi attivi con <code>ps aux | grep mysqld</code> e termina eventuali processi in conflitto con <code>sudo kill [PID]</code>.}}}} | |||
<small>parallels@ubuntu-linux-22-04-02-desktop:'''~$ sudo tail -n 50 /var/log/mysql/error.log'''</small> | |||
<small>2025-01-05T09:45:58.228564Z 0 [System] [MY-010116] [Server] /usr/sbin/mysqld (mysqld 8.0.40-0ubuntu0.22.04.1) starting as process 173527</small> | |||
<small>2025-01-05T09:45:58.238366Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.</small> | |||
<small>2025-01-05T09:45:58.261113Z 1 [ERROR] [MY-012574] [InnoDB] Unable to lock ./ibdata1 error: 11</small> | |||
<small>2025-01-05T09:45:59.262471Z 1 [ERROR] [MY-012574] [InnoDB] Unable to lock ./ibdata1 error: 11</small> | |||
<small>2025-01-05T09:46:00.275078Z 1 [ERROR] [MY-012574] [InnoDB] Unable to lock ./ibdata1 error: 11</small> | |||
<small>2025-01-05T09:46:01.302288Z 1 [ERROR] [MY-012574] [InnoDB] Unable to lock ./ibdata1 error: 11</small> | |||
<small>2025-01-05T09:46:02.303078Z 1 [ERROR] [MY-012574] [InnoDB] Unable to lock ./ibdata1 error: 11</small> | |||
<small>.................</small> | |||
'''Controlla i processi in esecuzione:'''{{Tooltip|2={{Tooltip|Processi relativi a MySQL|Il comando <code>ps aux | grep mysqld</code> elenca i processi relativi a MySQL in esecuzione. L'output mostra: 1) Processi <code>mysqld_safe</code>, che avviano MySQL in modalità sicura. 2) Processi principali <code>mysqld</code>, potenzialmente in conflitto se ce ne sono più di uno. 3) Il comando <code>grep</code>, che filtra i risultati. Per risolvere i conflitti, verifica e termina i processi non necessari con <code>sudo kill [PID]</code>.}}}}<blockquote><small>parallels@ubuntu-linux-22-04-02-desktop:'''~$ ps aux | grep mysqld'''</small> | |||
<small>root 114399 0.0 0.2 14352 5120 pts/0 S 05:25 0:00 sudo mysqld_safe --skip-grant-tables --skip-networking</small> | |||
<small>root 114400 0.0 0.0 14352 1464 pts/1 Ss+ 05:25 0:00 sudo mysqld_safe --skip-grant-tables --skip-networking</small> | |||
<small>root 114401 0.0 0.0 2892 1664 pts/1 S 05:25 0:00 /bin/sh /usr/bin/mysqld_safe --skip-grant-tables --skip-networking</small> | |||
<small>mysql 114585 0.8 1.1 1782884 22568 pts/1 Sl 05:25 2:42 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib/mysql/plugin --user=mysql --skip-grant-tables --skip-networking --log-error=/var/log/mysql/error.log --pid-file=ubuntu-linux-22-04-02-desktop.pid</small> | |||
<small>root 118991 0.0 0.2 13908 4992 pts/0 T 05:49 0:00 sudo mysqld_safe --skip-grant-tables --skip-networking</small> | |||
<small>mysql 174116 0.9 14.3 734504 288512 ? Ssl 10:49 0:00 /usr/sbin/mysqld</small> | |||
<small>paralle+ 174237 0.0 0.1 9212 2432 pts/0 S+ 10:49 0:00 grep --color=auto mysqld</small></blockquote> | |||
'''Nota di risoluzione importante:''' | |||
{{Tooltip|2={{Tooltip|Gestione dei processi MySQL in modalità sicura|L'analisi dei processi MySQL mostra:1) **Processi root**: <code>sudo mysqld_safe --skip-grant-tables --skip-networking</code>, avviati con privilegi root, bypassano il controllo delle credenziali e disabilitano le connessioni di rete, utili per risolvere problemi ma inadatti per operazioni standard. | |||
2) **Processo MySQL**:<code>/usr/sbin/mysqld</code> in modalità sicura con opzioni <code>--skip-grant-tables</code> e <code>--skip-networking</code> disabilita l'autenticazione e le connessioni standard richieste da MediaWiki.**Azioni consigliate**: | |||
1) **Identifica i processi attivi**: Usa <code>ps aux | grep mysql</code>.2) **Termina processi non necessari**: Usa <code>sudo kill -9 [PID]</code> per terminare duplicati e processi in modalità sicura. | |||
3) **Riavvia MySQL in modalità normale**: <code>sudo systemctl restart mysql</code>.4) **Verifica lo stato di MySQL**: <code>sudo systemctl status mysql</code> dovrebbe indicare <code>Active: active (running)</code>.5) **Testa la connessione MySQL**: Usa <code>mysql -u root -p</code> e inserisci la password di root configurata.6) **Controlla la connessione con MediaWiki**: Verifica il file<code>LocalSettings.php</code> per parametri di connessione al database corretti (host, database, username, password).}}}} | |||
'''Termina i processi di root duplicati:'''<blockquote><small>parallels@ubuntu-linux-22-04-02-desktop''':~$ sudo kill -9 114399'''</small> | |||
'''<small>sudo kill -9 114400</small>''' | |||
'''<small>sudo kill -9 114401</small>''' | |||
<small>[sudo] password for parallels: *******</small> | |||
<small>[1]- Killed sudo mysqld_safe --skip-grant-tables --skip-networking</small></blockquote>'''Termina il processo MySQL in modalità sicura:''' | |||
parallels@ubuntu-linux-22-04-02-desktop:~$ sudo kill -9 114585 | |||
'''Conclusioni di pulitora:''' | |||
<blockquote><small>parallels@ubuntu-linux-22-04-02-desktop:'''~$ ps aux | grep mysql'''</small> | |||
<small>root 118991 0.0 0.2 13908 4992 pts/0 T 05:49 0:00 sudo mysqld_safe --skip-grant-tables --skip-networking</small> | |||
<small>mysql 178025 2.2 19.6 1783964 393068 ? Ssl 11:11 0:03 /usr/sbin/mysqld</small> | |||
<small>paralle+ 178472 0.0 0.1 9212 2432 pts/0 S+ 11:13 0:00 grep --color=auto mysql</small></blockquote> | |||
===='''Riavvia MySQL in modalità normale'''==== | |||
Dopo aver terminato i processi problematici, riavvia il servizio MySQL in modalità standard:<blockquote><small>parallels@ubuntu-linux-22-04-02-desktop:'''~$ sudo systemctl restart mysql'''</small></blockquote> | |||
==3. Problemi con la configurazione del file MySQL== | |||
'''Errore comune:''' Parametro <code>bind-address</code> mal configurato. | |||
'''Verifica il contenuto del file di configurazione:''' {{Tooltip|2={{Tooltip|Configurazione di MySQL|Il file <code>/etc/mysql/my.cnf</code> imposta l'indirizzo <code>bind-address = 0.0.0.0</code> per consentire connessioni da qualsiasi IP e include configurazioni aggiuntive da <code>/etc/mysql/conf.d/</code> e <code>/etc/mysql/mysql.conf.d/</code>. Consultare la documentazione ufficiale per dettagli: <code>http://dev.mysql.com/doc/mysql/en/server-system-variables.html</code>.}}}}<blockquote><small>parallels@ubuntu-linux-22-04-02-desktop:'''~$ cat /etc/mysql/my.cnf'''</small> | |||
<small>[mysqld]</small> | |||
<small>'''bind-address = 0.0.0.0'''</small> | |||
<small>#</small> | |||
<small># The MySQL database server configuration file.</small> | |||
<small>#</small> | |||
<small># You can copy this to one of:</small> | |||
<small># - "/etc/mysql/my.cnf" to set global options,</small> | |||
<small># - "~/.my.cnf" to set user-specific options.</small> | |||
<small>#</small> | |||
<small># One can use all long options that the program supports.</small> | |||
<small># Run program with --help to get a list of available options and with</small> | |||
--- | <small># --print-defaults to see which it would actually understand and use.</small> | ||
<small>#</small> | |||
<small># For explanations see</small> | |||
<small># <nowiki>http://dev.mysql.com/doc/mysql/en/server-system-variables.html</nowiki></small> | |||
< | <small>#</small> | ||
<small># * IMPORTANT: Additional settings that can override those from this file!</small> | |||
<small># The files must end with '.cnf', otherwise they'll be ignored.</small> | |||
<small>#</small> | |||
<small>!includedir /etc/mysql/conf.d/</small> | |||
<blockquote> | <small>!includedir /etc/mysql/mysql.conf.d/</small></blockquote>'''Controlla eventuali file inclusi:'''{{Tooltip|2={{Tooltip|File di configurazione aggiuntivi di MySQL|La directory <code>/etc/mysql/conf.d/</code> contiene configurazioni aggiuntive per MySQL, tra cui: 1) <code>mysql.cnf</code>, un file per configurazioni generali. 2) <code>mysqldump.cnf</code>, per configurare il comportamento del comando <code>mysqldump</code>.}}}}<blockquote><small>parallels@ubuntu-linux-22-04-02-desktop:'''~$ ls /etc/mysql/conf.d/'''</small> | ||
<small>mysql.cnf mysqldump.cnf</small></blockquote> | |||
==4. Problemi con PHP== | |||
'''Errore comune:''' Moduli mancanti o versioni non compatibili. | |||
'''Controlla la versione di PHP installata:'''{{Tooltip|2={{Tooltip|Informazioni sulla versione di PHP|Il comando <code>php -v</code> mostra che PHP versione <code>8.1.2-1ubuntu2.20</code> con supporto CLI è installato. Utilizza <code>Zend Engine v4.1.2</code> e ha il modulo <code>Zend OPcache</code> abilitato per ottimizzare le prestazioni.}}}}<blockquote><small>parallels@ubuntu-linux-22-04-02-desktop:'''~$ php -v'''</small> | |||
<small>PHP 8.1.2-1ubuntu2.20 (cli) (built: Dec 3 2024 20:14:35) (NTS)</small> | |||
<small>Copyright (c) The PHP Group</small> | |||
<small>Zend Engine v4.1.2, Copyright (c) Zend Technologies</small> | |||
<small> with Zend OPcache v8.1.2-1ubuntu2.20, Copyright (c), by Zend Technologies</small></blockquote>'''Verifica i moduli PHP disponibili:'''{{Tooltip|2={{Tooltip|Elenco dei moduli PHP attivi|Il comando <code>php -m</code> elenca i moduli PHP attivi, tra cui: 1) Moduli di base come <code>Core</code>, <code>mbstring</code>, e <code>json</code>. 2) Moduli per database come <code>mysqli</code> e <code>PDO</code>. 3) Moduli di rete e sicurezza come <code>openssl</code> e <code>sockets</code>. Inoltre, il modulo Zend <code>Zend OPcache</code> è attivo per migliorare le prestazioni.}}}}<blockquote><small>parallels@ubuntu-linux-22-04-02-desktop:~$ php -m</small> | |||
<small>[PHP Modules]</small> | |||
<small>calendar</small> | |||
<small>Core</small> | |||
<small>ctype</small> | |||
<small>date</small> | |||
<small>dom</small> | |||
<small>exif</small> | |||
<small>FFI</small> | |||
<small>fileinfo</small> | |||
<small>filter</small> | |||
<small>ftp</small> | |||
<small>gettext</small> | |||
<small>hash</small> | |||
<small>iconv</small> | |||
<small>intl</small> | |||
<small>json</small> | |||
<small>libxml</small> | |||
<small>mbstring</small> | |||
<small>mysqli</small> | |||
<small>mysqlnd</small> | |||
<small>openssl</small> | |||
<small>pcntl</small> | |||
<small>pcre</small> | |||
<small>PDO</small> | |||
<small>pdo_mysql</small> | |||
<small>Phar</small> | |||
<small>posix</small> | |||
<small>readline</small> | |||
<small>Reflection</small> | |||
<small>session</small> | |||
<small>shmop</small> | |||
<small>SimpleXML</small> | |||
<small>sockets</small> | |||
<small>sodium</small> | |||
<small>SPL</small> | |||
<small>standard</small> | |||
<small>sysvmsg</small> | |||
<small>sysvsem</small> | |||
<small>sysvshm</small> | |||
<small>tokenizer</small> | |||
<small>xml</small> | |||
<small>xmlreader</small> | |||
<small>xmlwriter</small> | |||
<small>xsl</small> | |||
<small>Zend OPcache</small> | |||
<small>zlib</small> | |||
<small>[Zend Modules]</small> | |||
<small>Zend OPcache</small></blockquote>'''Verifica se <code>mysqli</code> è abilitato:'''{{Tooltip|2={{Tooltip|Verifica del modulo mysqli|Il comando <code>php -m | grep mysqli</code> conferma che il modulo <code>mysqli</code> è attivo, permettendo a PHP di interagire con database MySQL utilizzando l'estensione MySQL Improved.}}}}<blockquote><small>parallels@ubuntu-linux-22-04-02-desktop:'''~$ php -m | grep mysqli'''</small> | |||
<small>mysqli</small></blockquote>'''Installa i moduli mancanti:'''{{Tooltip|2={{Tooltip|Verifica del modulo php-mysql|Il comando <code>sudo apt install php-mysql</code> conferma che il modulo <code>php-mysql</code> è già installato nella versione più recente (<code>2:8.1+92ubuntu1</code>), permettendo a PHP di connettersi a database MySQL. Nessuna modifica è stata effettuata sul sistema.}}}}<blockquote><small>parallels@ubuntu-linux-22-04-02-desktop:'''~$ sudo apt install php-mysql'''</small> | |||
<small>[sudo] password for parallels:</small> | |||
<small>Reading package lists... Done</small> | |||
<small>Building dependency tree... Done</small> | |||
<small>Reading state information... Done</small> | |||
<small>php-mysql is already the newest version (2:8.1+92ubuntu1).</small> | |||
<small>0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.</small></blockquote> | |||
==5. Problemi con Apache== | |||
'''Errore comune:''' Apache non attivo o moduli disabilitati. | |||
'''Controlla lo stato del servizio Apache:'''{{Tooltip|2={{Tooltip|Stato del servizio Apache|Il comando <code>sudo systemctl status apache2</code> conferma che Apache è attivo (<code>active (running)</code>) da 17 ore. Il processo principale ha il PID <code>149151</code>, utilizza 6 task e 13 MB di memoria. È stato avviato correttamente il 4 gennaio e ricaricato il 5 gennaio.}}}}<blockquote><small>parallels@ubuntu-linux-22-04-02-desktop:'''~$ sudo systemctl status apache2'''</small> | |||
<small>● apache2.service - The Apache HTTP Server</small> | |||
<small> Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)</small> | |||
<small> Active: active (running) since Sat 2025-01-04 18:02:49 CET; 17h ago</small> | |||
<small> Docs: <nowiki>https://httpd.apache.org/docs/2.4/</nowiki></small> | |||
<small> Process: 149146 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS)</small> | |||
<small> Process: 164284 ExecReload=/usr/sbin/apachectl graceful (code=exited, status=0/SUCCESS)</small> | |||
<small> '''Main PID: 149151 (apache2)'''</small> | |||
<small> Tasks: 6 (limit: 2258)</small> | |||
<small> Memory: 13.0M</small> | |||
<small> CPU: 1.109s</small> | |||
<small> CGroup: /system.slice/apache2.service</small> | |||
<small> ├─149151 /usr/sbin/apache2 -k start</small> | |||
<small> ├─164306 /usr/sbin/apache2 -k start</small> | |||
<small> ├─164307 /usr/sbin/apache2 -k start</small> | |||
<small> ├─164308 /usr/sbin/apache2 -k start</small> | |||
<small> ├─164309 /usr/sbin/apache2 -k start</small> | |||
<small> └─164310 /usr/sbin/apache2 -k start</small> | |||
<small>Jan 04 18:02:49 ubuntu-linux-22-04-02-desktop systemd[1]: Starting The Apache HTTP Server...</small> | |||
<small>Jan 04 18:02:49 ubuntu-linux-22-04-02-desktop systemd[1]: Started The Apache HTTP Server.</small> | |||
<small>Jan 05 09:58:35 ubuntu-linux-22-04-02-desktop systemd[1]: Reloading The Apache HTTP Server...</small> | |||
<small>Jan 05 09:58:35 ubuntu-linux-22-04-02-desktop systemd[1]: Reloaded The Apache HTTP Server.</small></blockquote>'''Verifica i log degli errori di Apache:'''{{Tooltip|2={{Tooltip|Log di Apache|Il comando <code>sudo tail -n 50 /var/log/apache2/error.log</code> mostra che Apache (versione <code>2.4.52</code>) è configurato correttamente e ha ripreso le operazioni normali. Il processo principale (<code>PID 149151</code>) è stato avviato con il comando <code>/usr/sbin/apache2</code>.}}}}<blockquote><small>parallels@ubuntu-linux-22-04-02-desktop:'''~$ sudo tail -n 50 /var/log/apache2/error.log'''</small> | |||
<small>[Sun Jan 05 09:58:35.733627 2025] [mpm_prefork:notice] '''[pid 149151]''' AH00163: Apache/2.4.52 (Ubuntu) configured -- resuming normal operations</small> | |||
<small>[Sun Jan 05 09:58:35.733655 2025] [core:notice] [pid 149151] AH00094: Command line: '/usr/sbin/apache2'</small></blockquote>'''Riavvia Apache:'''<blockquote><small>parallels@ubuntu-linux-22-04-02-desktop:'''~$ sudo systemctl restart apache2'''</small></blockquote>'''Abilita i moduli richiesti:'''<blockquote><small>parallels@ubuntu-linux-22-04-02-desktop:'''~$ sudo a2enmod rewrite'''</small> | |||
<small>Module rewrite already enabled</small></blockquote> | |||
=='''6. Problemi con MediaWiki'''== | |||
'''Errore comune:''' Mancanza del file <code>LocalSettings.php</code>. | |||
'''Controlla la directory di MediaWiki:'''{{Tooltip|2={{Tooltip|Contenuto della directory di MediaWiki|La directory <code>/var/www/html/mediawiki/</code> contiene file e directory essenziali per MediaWiki: 1) File principali come <code>index.php</code>, <code>api.php</code>, e <code>rest.php</code>. 2) Directory per estensioni, immagini, e risorse (<code>extensions</code>, <code>images</code>, <code>skins</code>). 3) File di documentazione come <code>README.md</code> e <code>INSTALL</code>. Il file <code>LocalSettings.php</code>, necessario per la configurazione, sembra mancare.}}}}<blockquote><small>parallels@ubuntu-linux-22-04-02-desktop:'''~$ ls /var/www/html/mediawiki/'''</small> | |||
<small>api.php composer.json docker-compose.yml HISTORY index.php load.php README.md SECURITY thumb.php</small> | |||
<small>autoload.php composer.local.json-sample docs images INSTALL maintenance RELEASE-NOTES-1.39 skins UPGRADE</small> | |||
<small>cache COPYING extensions img_auth.php jsduck.json mw-config resources tests vendor</small> | |||
<small>CODE_OF_CONDUCT.md CREDITS FAQ includes languages opensearch_desc.php rest.php thumb_handler.php</small></blockquote> | |||
Risulta mancante nella lista il LocalSettings.php che deve essere configurato in MediaWiki | |||
a | |||
'''Accedi alla configurazione iniziale tramite il browser:''' | |||
http://localhost/mediawiki | |||
==7. Problemi di sincronizzazione con Masticationpedia== | |||
'''Errore comune:''' Errori API o configurazioni mancanti | |||
'''Verifica i log di Apache per errori correlati:'''{{Tooltip|2={{Tooltip|Log in tempo reale di Apache|Il comando <code>sudo tail -f /var/log/apache2/error.log</code> mostra eventi importanti: 1) Apache (<code>2.4.52</code>) è configurato e operativo (<code>PID 149151</code>). 2) Apache è stato arrestato con il segnale <code>SIGWINCH</code> e riavviato correttamente con un nuovo PID (<code>184298</code>). Questi eventi indicano una gestione ordinata del servizio.}}}}<blockquote><small>parallels@ubuntu-linux-22-04-02-desktop:'''~$ sudo tail -f /var/log/apache2/error.log'''</small> | |||
<small>[Sun Jan 05 09:58:35.733627 2025] [mpm_prefork:notice] '''[pid 149151]''' AH00163: Apache/2.4.52 (Ubuntu) configured -- resuming normal operations</small> | |||
<small>[Sun Jan 05 09:58:35.733655 2025] [core:notice] '''[pid 149151]''' AH00094: Command line: '/usr/sbin/apache2'</small> | |||
<small>[Sun Jan 05 11:48:55.676063 2025] [mpm_prefork:notice] '''[pid 149151]''' AH00170: caught SIGWINCH, shutting down gracefully</small> | |||
<small>[Sun Jan 05 11:48:56.032307 2025] [mpm_prefork:notice] '''[pid 184298]''' AH00163: Apache/2.4.52 (Ubuntu) configured -- resuming normal operations</small> | |||
<small>[Sun Jan 05 11:48:56.032352 2025] [core:notice] '''[pid 184298]''' AH00094: Command line: '/usr/sbin/apache2'</small></blockquote> | |||
=Installazione e configurazione MadiaWiki= | |||
==Scarica la versione 1.43:== | |||
Usa il comando <code>wget</code> per scaricare la versione indicata: | |||
<blockquote><small>parallels@ubuntu-linux-22-04-02-desktop:'''~$ wget <nowiki>https://releases.wikimedia.org/mediawiki/1.43/mediawiki-1.43.0.tar.gz</nowiki>'''</small> | |||
<small>--2025-01-05 15:51:19-- <nowiki>https://releases.wikimedia.org/mediawiki/1.43/mediawiki-1.43.0.tar.gz</nowiki></small> | |||
<small>Resolving releases.wikimedia.org (releases.wikimedia.org)... 185.15.58.224</small> | |||
<small>Connecting to releases.wikimedia.org (releases.wikimedia.org)|185.15.58.224|:443... connected.</small> | |||
<small>HTTP request sent, awaiting response... 200 OK</small> | |||
<small>Length: 91947888 (88M) [application/x-gzip]</small> | |||
<small>Saving to: ‘mediawiki-1.43.0.tar.gz’</small> | |||
<small>mediawiki-1.43.0.tar.gz 100%[==============================================================================================>] 87.69M 5.41MB/s in 18s </small> | |||
<small>2025-01-05 15:51:37 (4.89 MB/s) - ‘mediawiki-1.43.0.tar.gz’ saved [91947888/91947888]</small></blockquote> | |||
'''Estrai l'archivio scaricato''': Questo creerà una directory chiamata <code>'''mediawiki-1.43.0'''</code>. | |||
llels@ubuntu-linux-22-04-02-desktop:'''~$ tar -xvzf mediawiki-1.43.0.tar.gz''' | |||
Sostituisci la directory esistente: | |||
<blockquote><small>parallels@ubuntu-linux-22-04-02-desktop:'''~$ sudo mv /var/www/html/mediawiki /var/www/html/mediawiki_old'''</small> | |||
<small>sudo mv mediawiki-1.43.0 /var/www/html/mediawiki</small> | |||
<small>[sudo] password for parallels:</small> </blockquote> | |||
'''Verifica i permessi''': Assicurati che Apache possa accedere ai file: | |||
ffffffff | |||
==2. Configurazione del database== | |||
<p>'''Verifica la connessione al database''': MediaWiki 1.43 dovrebbe essere compatibile con il database esistente. Accedi al database per verificare: | |||
<small>parallels@ubuntu-linux-22-04-02-desktop:'''~$ mysql -u root -p'''</small> | |||
<small>Enter password:</small> {{Rosso inizio}}Errore {{Rosso Fine}}</p> | |||
fffff | |||
<small>ERROR 1698 (28000): Access denied for user 'root'@'localhost'</small>Desccrizione errore e risoluzione {{Tooltip|Errore "Access denied for user 'root'@'localhost"|L'errore si verifica quando MySQL nega l'accesso all'utente <code>root</code>. Cause comuni includono: 1) Autenticazione tramite <code>auth_socket</code>, 2) Password errata, 3) Privilegi insufficienti. Soluzione: Accedi con <code>sudo mysql</code>, cambia il metodo di autenticazione con <code>ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'nuova_password';</code>, oppure resetta la password avviando MySQL in modalità sicura (<code>mysqld_safe --skip-grant-tables</code>). Verifica sempre i privilegi e riavvia il servizio MySQL.}} | |||
Passaggi fondamentali: | |||
parallels@ubuntu-linux-22-04-02-desktop:'''~$ sudo mv /var/www/html/mediawiki /var/www/html/mediawiki_old''' sudo mv mediawiki-1.43.0 /var/www/html/mediawiki [sudo] password for parallels: ---- | |||
#parallels@ubuntu-linux-22-04-02-desktop:'''~$ sudo chown -R www-data:www-data /var/www/html/mediawiki''' sudo chmod -R 755 /var/www/html/mediawiki ---- | |||
#parallels@ubuntu-linux-22-04-02-desktop:'''~$ mysql -u root -p''' Enter password: '''ERROR 1698 (28000)''': Access denied for user 'root'@'localhost' ---- | |||
#parallels@ubuntu-linux-22-04-02-desktop:'''~$ sudo mysql''' Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 9 Server version: 8.0.40-0ubuntu0.22.04.1 (Ubuntu) Copyright (c) 2000, 2024, Oracle and/or its affiliates. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. ---- | |||
#parallels@ubuntu-linux-22-04-02-desktop:'''~$ sudo mysql''' Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 10 Server version: 8.0.40-0ubuntu0.22.04.1 (Ubuntu) Copyright (c) 2000, 2024, Oracle and/or its affiliates. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'Rosa!01011925'; Query OK, 0 rows affected (0.27 sec) mysql> FLUSH PRIVILEGES; Query OK, 0 rows affected (0.04 sec) mysql> EXIT; ---- | |||
#parallels@ubuntu-linux-22-04-02-desktop:'''~$ mysql -u root -p''' Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 11 Server version: 8.0.40-0ubuntu0.22.04.1 (Ubuntu) Copyright (c) 2000, 2024, Oracle and/or its affiliates. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql> Exit | |||
#parallels@ubuntu-linux-22-04-02-desktop:'''~$ cd /var/www/html/mediawiki''' ---- | |||
#parallels@ubuntu-linux-22-04-02-desktop:'''/var/www/html/mediawiki$ ls -l''' ---- | |||
<small> | |||
<blockquote> | |||
*total 2184 | |||
*-rwxr-xr-x 1 www-data www-data 1511 Dec 5 16:41 api.php | |||
*-rwxr-xr-x 1 www-data www-data 352410 Dec 5 16:42 autoload.php | |||
*drwxr-xr-x 2 www-data www-data 4096 Jan 5 15:58 cache | |||
*-rwxr-xr-x 1 www-data www-data 168 Dec 5 16:41 CODE_OF_CONDUCT.md | |||
*-rwxr-xr-x 1 www-data www-data 8358 Dec 5 16:42 composer.json | |||
* -rwxr-xr-x 1 www-data www-data 125 Dec 5 16:41 composer.local.json-sample | |||
*-rwxr-xr-x 1 www-data www-data 19421 Dec 5 16:41 COPYING | |||
*-rwxr-xr-x 1 www-data www-data 15957 Dec 5 16:42 CREDITS | |||
*-rwxr-xr-x 1 www-data www-data 1762 Dec 20 19:45 docker-compose.yml drwxr-xr-x 5 www-data www-data 4096 Jan 5 15:58 docs | |||
*drwxr-xr-x 35 www-data www-data 4096 Jan 5 15:58 extensions | |||
* -rwxr-xr-x 1 www-data www-data 95 Dec 5 16:41 FAQ -rwxr-xr | |||
*-x 1 www-data www-data 1639880 Dec 5 16:42 HISTORY | |||
* drwxr-xr-x 2 www-data www-data 4096 Jan 5 15:58 images | |||
*-rwxr-xr-x 1 www-data www-data 2221 Dec 5 16:41 img_auth.php | |||
*drwxr-xr-x 96 www-data www-data 4096 Jan 5 15:58 includes | |||
*-rwxr-xr-x 1 www-data www-data 2213 Dec 5 16:41 index.php | |||
*-rwxr-xr-x 1 www-data www-data 3685 Dec 5 16:42 INSTALL | |||
* -rwxr-xr-x 1 www-data www-data 1302 Dec 5 16:41 jsdoc.json | |||
* drwxr-xr-x 5 www-data www-data 4096 Jan 5 15:58 languages | |||
*-rwxr-xr-x 1 www-data www-data 1464 Dec 5 16:41 load.php | |||
* drwxr-xr-x 11 www-data www-data 12288 Jan 5 15:58 maintenance | |||
* drwxr-xr-x 4 www-data www-data 4096 Jan 5 15:58 mw-config | |||
* -rwxr-xr-x 1 www-data www-data 1761 Dec 5 16:41 opensearch_desc.php | |||
*-rwxr-xr-x 1 www-data www-data 1643 Dec 5 16:41 README.md | |||
*-rwxr-xr-x 1 www-data www-data 54673 Dec 20 19:45 RELEASE-NOTES-1.43 | |||
*drwxr-xr-x 5 www-data www-data 4096 Jan 5 15:58 resources | |||
*-rwxr-xr-x 1 www-data www-data 1239 Dec 5 16:41 rest.php | |||
* -rwxr-xr-x 1 www-data www-data 199 Dec 5 16:41 SECURITY | |||
*drwxr-xr-x 6 www-data www-data 4096 Jan 5 15:58 skins | |||
* drwxr-xr-x 11 www-data www-data 4096 Jan 5 15:58 tests | |||
* -rwxr-xr-x 1 www-data www-data 1659 Dec 5 16:41 thumb_handler.php | |||
*-rwxr-xr-x 1 www-data www-data 1357 Dec 5 16:41 thumb.php | |||
*-rwxr-xr-x 1 www-data www-data 4394 Dec 5 16:41 UPGRADE | |||
*drwxr-xr-x 21 www-data www-data 4096 Jan 5 15:58 vendor ---- | |||
<br /> | |||
<br /> | <br /> | ||
</small> | |||
A questo punto hai già scaricato e configurato i file di MediaWiki nella directory <code>/var/www/html/mediawiki</code>. Ora, il prossimo passaggio è completare l'installazione e configurazione di MediaWiki tramite il browser | |||
== 1. Verifica che Apache e MySQL siano in esecuzione'''e''' == | |||
Assicurati che il server Apache e il database MySQL siano attivi | |||
lels@ubuntu-linux-22-04-02-desktop:/var/www/html/mediawiki$ sudo systemctl status apache2 | |||
sudo systemctl status mysql | |||
[sudo] password for parallels: | |||
● apache2.service - The Apache HTTP Server | |||
Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled) | |||
Active: active (running) since Sun 2025-01-05 11:48:55 CET; 5h 37min ago | |||
<nowiki> | Docs: <nowiki>https://httpd.apache.org/docs/2.4/</nowiki> | ||
Process: 184294 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS) | |||
Main PID: 184298 (apache2) | |||
Tasks: 6 (limit: 2258) | |||
Memory: 12.1M | |||
CPU: 837ms | |||
CGroup: /system.slice/apache2.service | |||
├─184298 /usr/sbin/apache2 -k start | |||
├─184299 /usr/sbin/apache2 -k start | |||
├─184300 /usr/sbin/apache2 -k start | |||
- | ├─184301 /usr/sbin/apache2 -k start | ||
├─184302 /usr/sbin/apache2 -k start | |||
└─184303 /usr/sbin/apache2 -k start | |||
Jan 05 11:48:55 ubuntu-linux-22-04-02-desktop systemd[1]: Starting The Apache HTTP Server... | |||
Jan 05 11:48:55 ubuntu-linux-22-04-02-desktop systemd[1]: Started The Apache HTTP Server. | |||
● mysql.service - MySQL Community Server | |||
Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled) | |||
Active: active (running) since Sun 2025-01-05 11:15:31 CET; 6h ago | |||
Process: 178773 ExecStartPre=/usr/share/mysql/mysql-systemd-start pre (code=exited, status=0/SUCCESS) | |||
Main PID: 178781 (mysqld) | |||
Status: "Server is operational" | |||
Tasks: 38 (limit: 2258) | |||
Memory: 366.2M | |||
CPU: 1min 49.336s | |||
CGroup: /system.slice/mysql.service | |||
└─178781 /usr/sbin/mysqld | |||
Jan 05 11:15:30 ubuntu-linux-22-04-02-desktop systemd[1]: Starting MySQL Community Server... | |||
--- | Jan 05 11:15:31 ubuntu-linux-22-04-02-desktop systemd[1]: Started MySQL Community Server. | ||
=== | === '''2. Apri il browser e accedi all'installazione''' === | ||
Vai al browser e digita l'indirizzo: | |||
<nowiki>:</nowiki> | |||
==Installazione e Configurazione del 'Localsetting.php'== | |||
==Cosa Fare Ora== | |||
Se devi modificare il file di configurazione di MediaWiki, il percorso corretto è: | |||
<code>/var/www/html/mediawiki/LocalSettings.php</code> | |||
Puoi aprirlo per modificarlo con un editor di testo, ad esempio: | |||
===Usando nano=== | |||
<code>sudo nano /var/www/html/mediawiki/LocalSettings.php</code> | |||
===Usando vim=== | |||
<code>sudo vim /var/www/html/mediawiki/LocalSettings.php</code> | |||
</ | |||
===Per verificare rapidamente il contenuto=== | |||
<code>cat /var/www/html/mediawiki/LocalSettings.php</code> | |||
</ | |||
*< | ==Nota== | ||
< | *Assicurati di avere i permessi necessari per modificare il file. Se non sei sicuro, utilizza <code>sudo</code> come mostrato sopra. | ||
*Prima di apportare modifiche, è consigliabile eseguire un backup del file: | |||
</ | <code>sudo cp /var/www/html/mediawiki/LocalSettings.php /var/www/html/mediawiki/LocalSettings.php.bak</code> | ||
Se hai bisogno di aiuto per modificare o configurare il file, fammi sapere! | |||
<nowiki>*</nowiki> ** | == Per iniziare a settare il Mediawiki == | ||
<nowiki/>* ** | Per entrare nella directory del MediaWiki in Ubuntu: parallels@ubuntu-linux-22-04-02-desktop:'''~$ cd /var/www/html/mediawiki''' | ||
*<nowiki>** | Per modifica necessita di un editor: parallels@ubuntu-linux-22-04-02-desktop:'''/var/www/html/mediawiki$ sudo nano /var/www/html/mediawiki/LocalSettings.php''' | ||
[sudo] password for parallels: Rosa01011925 | |||
<?php | |||
<nowiki>#</nowiki> This file was automatically generated by the MediaWiki 1.43.0 installer. | |||
<nowiki>#</nowiki> Manual changes should be tracked in case you need to recreate them. | |||
<nowiki>#</nowiki> ============================================================================= | |||
<nowiki>#</nowiki> **PROTEZIONE CONTRO ACCESSI NON AUTORIZZATI** | |||
<nowiki>#</nowiki> ============================================================================= | |||
if ( !defined( 'MEDIAWIKI' ) ) { | |||
exit; | |||
} | |||
<nowiki>#</nowiki> ============================================================================= | |||
<nowiki>#</nowiki> **CONFIGURAZIONE DEL SITO** | |||
<nowiki>#</nowiki> ============================================================================= | |||
$wgSitename = "Masticationpedia"; | |||
<nowiki>#</nowiki> URL base del sito e directory degli script | |||
$wgScriptPath = ""; | |||
$wgServer = "<nowiki>http://10.211.55.3</nowiki>"; | |||
$wgResourceBasePath = $wgScriptPath; | |||
<nowiki>#</nowiki> Configurazione del logo | |||
$wgLogos = [ | |||
'1x' => "$wgResourceBasePath/resources/assets/change-your-logo.svg", | |||
'icon' => "$wgResourceBasePath/resources/assets/change-your-logo-icon.svg", | |||
]; | |||
<nowiki>#</nowiki> ============================================================================= | |||
<nowiki>#</nowiki> **CONFIGURAZIONE EMAIL** | |||
<nowiki>#</nowiki> ============================================================================= | |||
$wgEnableEmail = true; | |||
$wgEnableUserEmail = true; # UPO (User Preference Option) | |||
$wgEmergencyContact = ""; # Email di emergenza | |||
$wgPasswordSender = ""; # Mittente delle email di sistema | |||
<nowiki>#</nowiki> Notifiche email | |||
$wgEnotifUserTalk = false; # Notifiche sulle discussioni utente | |||
$wgEnotifWatchlist = false; # Notifiche sulla watchlist | |||
$wgEmailAuthentication = true; # Richiesta autenticazione per email | |||
<nowiki>#</nowiki> ============================================================================= | |||
<nowiki>#</nowiki> **CONFIGURAZIONE DATABASE** | |||
<nowiki>#</nowiki> ============================================================================= | |||
$wgDBtype = "mysql"; # Tipo di database | |||
$wgDBserver = "localhost"; # Server database | |||
$wgDBname = "mediawiki_db"; # Nome del database | |||
$wgDBuser = "root"; # Utente del database | |||
$wgDBpassword = "Rosa!01011925"; # Password del database | |||
<nowiki>#</nowiki> Opzioni specifiche per MySQL | |||
$wgDBprefix = "Wiki"; # Prefisso per le tabelle | |||
$wgDBssl = false; # SSL disabilitato per il database | |||
$wgDBTableOptions = "ENGINE=InnoDB, DEFAULT CHARSET=binary"; # Opzioni per le tabelle | |||
<nowiki>#</nowiki> Tabelle condivise | |||
$wgSharedTables[] = "actor"; | |||
<nowiki>#</nowiki> ============================================================================= | |||
<nowiki>#</nowiki> **PRESTAZIONI E CACHE** | |||
<nowiki>#</nowiki> ============================================================================= | |||
$wgMainCacheType = CACHE_NONE; # Nessuna cache abilitata | |||
$wgMemCachedServers = []; # Nessun server di memorizzazione configurato | |||
<nowiki>#</nowiki> ============================================================================= | |||
<nowiki>#</nowiki> **CONFIGURAZIONE DEI FILE E RISORSE** | |||
<nowiki>#</nowiki> ============================================================================= | |||
$wgEnableUploads = false; # Caricamenti disabilitati | |||
<nowiki>#</nowiki>$wgUseImageMagick = true; # Abilitare ImageMagick (commentato) | |||
<nowiki>#</nowiki>$wgImageMagickConvertCommand = "/usr/bin/convert"; # Percorso di ImageMagick | |||
<nowiki>#</nowiki> InstantCommons | |||
$wgUseInstantCommons = false; # Disabilita utilizzo immagini da Commons | |||
<nowiki>#</nowiki> ============================================================================= | |||
<nowiki>#</nowiki> **LINGUA E FUSO ORARIO** | |||
<nowiki>#</nowiki> ============================================================================= | |||
$wgLanguageCode = "it"; # Lingua del sito | |||
$wgLocaltimezone = "Europe/Berlin"; # Fuso orario | |||
<nowiki>#</nowiki> ============================================================================= | |||
<nowiki>#</nowiki> **SICUREZZA E CHIAVI DI CONFIGURAZIONE** | |||
<nowiki>#</nowiki> ============================================================================= | |||
$wgSecretKey = "2157bf3f06ccf1cd0be352687f133e3fe15a7ba6a5f951bcce3ed74d18964259"; # Chiave segreta | |||
$wgAuthenticationTokenVersion = "1"; # Versione del token di autenticazione | |||
<nowiki>#</nowiki> ============================================================================= | |||
<nowiki>#</nowiki> **LICENZE E DIRITTI** | |||
<nowiki>#</nowiki> ============================================================================= | |||
$wgRightsPage = ""; # Pagina Wiki con informazioni sulla licenza | |||
$wgRightsUrl = ""; # URL della licenza | |||
$wgRightsText = ""; # Testo sulla licenza | |||
$wgRightsIcon = ""; # Icona della licenza | |||
<nowiki>#</nowiki> ============================================================================= | |||
<nowiki>#</nowiki> **SKINS (TEMI GRAFICI)** | |||
<nowiki>#</nowiki> ============================================================================= | |||
$wgDefaultSkin = "vector-2022"; # Skin predefinita | |||
<nowiki>#</nowiki> Skin abilitati | |||
wfLoadSkin( 'MinervaNeue' ); | |||
wfLoadSkin( 'MonoBook' ); | |||
wfLoadSkin( 'Timeless' ); | |||
wfLoadSkin( 'Vector' ); | |||
<nowiki>#</nowiki> ============================================================================= | |||
<nowiki>#</nowiki> **ALTRE CONFIGURAZIONI** | |||
<nowiki>#</nowiki> ============================================================================= | |||
<nowiki>#</nowiki> Aggiungere configurazioni personalizzate qui sotto. | |||
<nowiki> | <nowiki>#</nowiki> End of automatically generated settings. | ||
<nowiki>#</nowiki> Add more configuration options below. | |||
{{:Score:Ubuntu_Roadmap}} | |||
{{:Score:Ubuntu_Localsetting config}} |
edits