Aggiornamento di GLPI tramite riga di comando su Linux

In questo tutorial spiegherò come aggiornare GLPI (10 o 11) direttamente dalla riga di comando sul server Linux su cui è installato.

L’obiettivo qui è aggiornare GLPI senza utilizzare un computer di terze parti per trasferire i file al server web; in questo modo si evita di dover utilizzare un client FTP o SSH (SCP) per il trasferimento dei file.

Per me questo è il metodo più veloce.

Prima di iniziare qualsiasi aggiornamento, è necessario assicurarsi di poter ripristinare la versione precedente in caso di problemi; per farlo, sono disponibili diverse opzioni:

  • Backup di GLPI e del database dal server Linux
  • Se ti trovi su una macchina virtuale, assicurati di avere un backup
  • Se ti trovi su una macchina virtuale dedicata a GLPI, puoi creare uno snapshot, che garantisce un rollback rapido e semplice.

A seconda delle dimensioni del database GLPI, l’aggiornamento potrebbe richiedere più o meno tempo, soprattutto nel caso di un aggiornamento della versione se è necessario aggiornare i record, quindi sarà necessario pianificare un periodo di inattività dell’applicazione.

Qui aggiornerò GLPI dalla versione 11.0.0-beta4 alla versione 11.0.0-beta5.

Per iniziare, metteremo GLPI in modalità di manutenzione, andando alla posizione in cui si trovano le cartelle e i file GLPI sul server.

cd /var/www/glpi

Attiva la modalità di manutenzione:

# utente non root
sudo php bin/console glpi:maintenance:enable
#utente root
php bin/console glpi:maintenance:enable --allow-superuser

Ora che GLPI è in manutenzione, torna alla cartella dell’utente corrente:

cd

Vai a Deposito Github per recuperare l’URL della versione desiderata.

Scarica l’archivio GLPI:

sudo wget https://github.com/glpi-project/glpi/releases/download/11.0.0-beta5/glpi-11.0.0-beta5.tgz

Nella tua posizione attuale, controlla se esiste già una cartella denominata glpi; in tal caso, eliminala!

Decomprimi l’archivio:

tar -xvzf glpi-11.0.0-beta5.tgz

Come puoi vedere nello screenshot qui sotto, i file sono stati estratti in una cartella denominata glpi.

Ora sposteremo la cartella GLPI corrente:

sudo mv /var/www/glpi /var/www/glpi_old

Ricreeremo la cartella glpi:

sudo mkdir -p /var/www/glpi

Sposta i file dall’archivio scaricato:

sudo mv glpi/* /var/www/glpi

Ora rimetteremo i file di configurazione originali, i plugin, ecc. nella cartella GLPI:

sudo cp -r /var/www/glpi_old/files /var/www/glpi
sudo cp -r /var/www/glpi_old/config /var/www/glpi
sudo cp -r /var/www/glpi_old/marketplace /var/www/glpi
sudo cp -r /var/www/glpi_old/plugins /var/www/glpi

Come misura di sicurezza, controlla la cartella config per assicurarti che i file siano presenti e verifica anche il contenuto del file di configurazione:

Ripristinare le autorizzazioni corrette per la cartella GLPI:

sudo chown www-data:www-data /var/www/glpi -R

Da un browser, vai all’URL del tuo programma di installazione GLPI e avvia l’aggiornamento seguendo la procedura guidata.

Se si preferisce rimanere nel terminale, è possibile aggiornare il database GLPI tramite la riga di comando.

Vai alla cartella GLPI:

cd /var/www/glpi

Avvia il controllo dei prerequisiti:

# utente non root
sudo php bin/console glpi:system:check_requirements
#utente root
php bin/console glpi:system:check_requirements --allow-superuser

Avviare l’aggiornamento se non ci sono problemi:

# utente non root
sudo php bin/console db:update
#utente root
php bin/console db:update --allow-superuser

Una volta completato l’aggiornamento, eliminare la cartella di installazione glpi:

sudo rm /var/www/glpi/install -r

Uscita da GLPI dalla modalità di manutenzione:

# utente non root
sudo php bin/console glpi:maintenance:disable
#utente root
php bin/console glpi:maintenance:disable --allow-superuser

Ora sai come aggiornare GLPI online; leggere le informazioni potrebbe sembrare lungo, ma è comunque più veloce che farlo da un computer utilizzando un client FTP.

Romain Drouche
Architetto di sistema | MCSE: Infrastruttura di base
Esperto di infrastrutture IT con oltre 15 anni di esperienza sul campo. Attualmente Project Manager Sistemi e Reti ed esperto di Sicurezza dei Sistemi Informativi, utilizzo la mia competenza per garantire l'affidabilità e la sicurezza degli ambienti tecnologici.

Lascia un commento