Linux Professional Institute Learning Logo.
Torna al contenuto principale
  • Home
    • Tutte le Risorse
    • LPI Learning Materials
    • Collabora
    • Publishing Partner
    • Diventa un Publishing Partner
    • FAQ
    • Collaboratori
    • Contatto
  • LPI.org
108.1 Lezione 1
Argomento 105: Shell e Script di Shell
105.1 Personalizzare e utilizzare l'ambiente di shell
  • 105.1 Lezione 1
  • 105.1 Lezione 2
  • 105.1 Lezione 3
105.2 Personalizzare o scrivere semplici script
  • 105.2 Lezione 1
  • 105.2 Lezione 2
Argomento 106: Interfacce Utente e Desktop
106.1 Installare e configurare X11
  • 106.1 Lezione 1
106.2 Desktop grafici
  • 106.2 Lezione 1
106.3 Accessibilità
  • 106.3 Lezione 1
Argomento 107: Attività Amministrative
107.1 Gestire account utente e gruppo e file di sistema correlati
  • 107.1 Lezione 1
  • 107.1 Lezione 2
107.2 Automatizzare le attività di amministrazione del sistema attraverso la pianificazione
  • 107.2 Lezione 1
  • 107.2 Lezione 2
107.3 Localizzazione e internazionalizzazione
  • 107.3 Lezione 1
Argomento 108: Servizi Essenziali di Sistema
108.1 Mantenere l'orario di sistema
  • 108.1 Lezione 1
  • 108.1 Lezione 2
108.2 Logging di sistema
  • 108.2 Lezione 1
  • 108.2 Lezione 2
108.3 Concetti base dei Mail Transfer Agent (MTA)
  • 108.3 Lezione 1
108.4 Gestire stampa e stampanti
  • 108.4 Lezione 1
Argomento 109: Fondamenti di Networking
109.1 Fondamenti dei protocolli Internet
  • 109.1 Lezione 1
  • 109.1 Lezione 2
109.2 Configurazione di rete persistente
  • 109.2 Lezione 1
  • 109.2 Lezione 2
109.3 Risoluzione dei problemi di base di una rete
  • 109.3 Lezione 1
  • 109.3 Lezione 2
109.4 Configurare un client DNS
  • 109.4 Lezione 1
Argomento 110: Sicurezza
110.1 Eseguire attività di amministrazione della sicurezza
  • 110.1 Lezione 1
110.2 Configurare la sicurezza dell'host
  • 110.2 Lezione 1
110.3 Proteggere i dati con la crittografia
  • 110.3 Lezione 1
  • 110.3 Lezione 2
How to get certified
  1. Argomento 108: Servizi Essenziali di Sistema
  2. 108.1 Mantenere l'orario di sistema
  3. 108.1 Lezione 1

108.1 Lezione 1

Certificazione:

LPIC-1 (102)

Versione:

5.0

Argomento:

108 Servizi Essenziali di Sistema

Obiettivo:

108.1 Mantenere l’orario di sistema

Lezione:

1 di 2

Introduzione

La misurazione accurata del tempo è assolutamente cruciale per l’informatica moderna. L’implementazione del mantenimento del tempo, tuttavia, è materia sorprendentemente complessa. La pratica di tenere il tempo sembra banale per un utente finale, ma il sistema deve essere in grado di gestire in modo intelligente molte idiosincrasie e casi limite. Considerate che i fusi orari non sono statici, ma possono essere cambiati da una decisione amministrativa o politica. Un paese può scegliere di smettere di osservare l’ora legale. Qualsiasi programma deve essere in grado di gestire questi cambiamenti in modo logico. Fortunatamente per gli amministratori di sistema, le soluzioni per la gestione del tempo sul sistema operativo Linux sono mature, robuste e di solito funzionano senza molte interferenze.

Quando un computer Linux si avvia, inizia a tenere il tempo. Ci riferiamo a questo come a un system clock, poiché è aggiornato dal sistema operativo. Inoltre, i computer moderni avranno anche un hardware o real time clock. Questo orologio hardware è spesso una caratteristica della scheda madre e tiene il tempo indipendentemente dal fatto che il computer sia in funzione o meno. Durante l’avvio, l’ora del sistema è impostata dall’orologio hardware, ma per la maggior parte questi due orologi funzionano indipendentemente l’uno dall’altro. In questa lezione discuteremo i metodi per interagire sia con l’orologio di sistema sia con quello hardware.

Sulla maggior parte dei moderni sistemi Linux, l’ora del sistema e l’ora dell’hardware sono sincronizzati con il network time, che è implementato dal Network Time Protocol (NTP). Nella stragrande maggioranza dei casi, l’unica configurazione che un normale utente dovrà fare è impostare il proprio fuso orario e l’NTP si occuperà del resto. Comunque, tratteremo alcuni modi manuali di lavorare con il tempo; le specifiche della configurazione del network time saranno trattate nella prossima lezione.

Tempo Locale e Tempo Universale a Confronto

L’orologio del sistema è impostato sul Coordinated Universal Time (UTC), che è l’ora locale di Greenwich, Regno Unito. Di solito un utente vuole sapere il suo local time. L’ora locale è calcolata prendendo l’ora UTC e applicando un offset basato sul fuso orario e sull’ora legale. In questo modo, si possono evitare parecchie complessità.

L’orologio di sistema può essere impostato sia sull’ora UTC sia sull’ora locale, ma si raccomanda che sia impostato sull’ora UTC.

La Data

date è un’utilità di base che visualizza semplicemente l’ora locale:

$ date
Sun Nov 17 12:55:06 EST 2019

Modificando le opzioni del comando date si cambia il formato dell’output.

Per esempio, un utente può usare date -u per vedere l’ora UTC corrente.

$ date -u
Sun Nov 17 18:02:51 UTC 2019

Alcune altre opzioni comunemente usate restituiranno l’ora locale in un formato che aderisce a un formato RFC accettato:

-I

Data/ora nel formato ISO 8601. L’aggiunta di date (-Idate) limiterà l’output alla sola data. Altri formati sono hours, minutes, seconds e ns per i nanosecondi.

-R

Restituisce data e ora nel formato RFC 5322.

--rfc-3339

Restituisce data e ora nel formato RFC 3339.

Il formato di date può essere personalizzato dall’utente con sequenze specificate indicate nella sua pagina man. Per esempio, l’ora corrente può essere formattata come ora Unix in questo modo:

$ date +%s
1574014515

Dalla pagina man di date possiamo vedere che %s si riferisce al tempo di Unix.

Lo Unix time è usato internamente sulla maggior parte dei sistemi Unix-like. Memorizza il tempo UTC come numero di secondi dall'Epoch, corrispondente al 1 gennaio 1970.

Note

Al momento attuale il numero di bit richiesto per memorizzare il tempo di Unix è di 32 bit. C’è un problema futuro quando 32 bit diventeranno insufficienti per contenere l’ora corrente in formato Unix. Questo causerà seri problemi per qualsiasi sistema Linux a 32 bit. Fortunatamente, questo non accadrà fino al 19 gennaio 2038.

Usando queste sequenze siamo in grado di formattare data e ora in quasi tutti i formati richiesti da qualsiasi applicazione. Naturalmente, nella maggior parte dei casi è di gran lunga preferibile attenersi a uno standard accettato.

Inoltre, date --date può essere usato per formattare un’ora che non è quella corrente. In questo scenario, un utente può specificare la data da applicare al sistema usando l’ora di Unix, per esempio:

$ date --date='@1564013011'
Wed Jul 24 20:03:31 EDT 2019

L’uso dell’opzione --debug può essere molto utile per assicurarsi che una data possa essere analizzata con successo. Osserva cosa succede quando si passa una data valida al comando:

$ date --debug --date="Fri, 03 Jan 2020 14:00:17 -0500"
date: parsed day part: Fri (day ordinal=0 number=5)
date: parsed date part: (Y-M-D) 2020-01-03
date: parsed time part: 14:00:17 UTC-05
date: input timezone: parsed date/time string (-05)
date: using specified time as starting value: '14:00:17'
date: warning: day (Fri) ignored when explicit dates are given
date: starting date/time: '(Y-M-D) 2020-01-03 14:00:17 TZ=-05'
date: '(Y-M-D) 2020-01-03 14:00:17 TZ=-05' = 1578078017 epoch-seconds
date: timezone: system default
date: final: 1578078017.000000000 (epoch-seconds)
date: final: (Y-M-D) 2020-01-03 19:00:17 (UTC)
date: final: (Y-M-D) 2020-01-03 14:00:17 (UTC-05)

Questo può essere uno strumento utile nella risoluzione dei problemi di un’applicazione che genera una data.

Hardware Clock

Un utente può eseguire il comando hwclock per vedere l’ora mantenuta nell’orologio in tempo reale. Questo comando richiede privilegi elevati, quindi useremo sudo per eseguire il comando:

$ sudo hwclock
2019-11-20 11:31:29.217627-05:00

Usando l’opzione --verbose si ottengono più output, il che potrebbe essere utile per la risoluzione di problemi:

$ sudo hwclock --verbose
hwclock from util-linux 2.34
System Time: 1578079387.976029
Trying to open: /dev/rtc0
Using the rtc interface to the clock.
Assuming hardware clock is kept in UTC time.
Waiting for clock tick...
...got clock tick
Time read from Hardware Clock: 2020/01/03 19:23:08
Hw clock time : 2020/01/03 19:23:08 = 1578079388 seconds since 1969
Time since last adjustment is 1578079388 seconds
Calculated Hardware Clock drift is 0.000000 seconds
2020-01-03 14:23:07.948436-05:00

Nota il Calculated Hardware Clock drift. Questo output può dirti se il tempo di sistema e il tempo dell’hardware stanno deviando l’uno dall’altro. === timedatectl

timedatectl è un comando che può essere usato per controllare lo stato generale dell’ora e della data, incluso se l’ora della rete è stata sincronizzata o meno (il Network Time Protocol sarà trattato nella prossima lezione).

Per default timedatectl restituisce informazioni simili a quelle di date, ma con l’aggiunta dell’ora RTC (hardware) e dello stato del servizio NTP:

$ timedatectl
               Local time: Thu 2019-12-05 11:08:05 EST
           Universal time: Thu 2019-12-05 16:08:05 UTC
                 RTC time: Thu 2019-12-05 16:08:05
                Time zone: America/Toronto (EST, -0500)
System clock synchronized: yes
              NTP service: active
          RTC in local TZ: no

Impostare l’Ora con timedatectl

Se NTP non è disponibile, si raccomanda di usare timedatectl piuttosto che date o hwclock per impostare data e ora:

# timedatectl set-time '2011-11-25 14:00:00'

Il processo è simile a quello di date. L’utente può anche impostare il tempo indipendentemente dalla data usando il formato HH:MM:SS.

Impostare il Fuso Orario con timedatectl

timedatectl è il modo preferito per impostare il fuso orario locale sui sistemi Linux basati su systemd quando non esiste una GUI. timedatectl elencherà i possibili fusi orari e il fuso orario può essere impostato di conseguenza usando uno di essi come argomento.

Per prima cosa elenchiamo i possibili fusi orari:

$ timedatectl list-timezones
Africa/Abidjan
Africa/Accra
Africa/Algiers
Africa/Bissau
Africa/Cairo
...

La lista dei possibili fusi orari è lunga, quindi l’uso del comando grep è raccomandato in questo caso.

Poi possiamo impostare il fuso orario usando uno degli elementi della lista che è stata restituita:

$ timedatectl set-timezone Africa/Cairo
$ timedatectl
               Local time: Thu 2019-12-05 18:18:10 EET
           Universal time: Thu 2019-12-05 16:18:10 UTC
                 RTC time: Thu 2019-12-05 16:18:10
                Time zone: Africa/Cairo (EET, +0200)
System clock synchronized: yes
              NTP service: active
          RTC in local TZ: no

Tieni presente che il nome del fuso orario deve essere esatto. Africa/Cairo per esempio cambierà il fuso orario, ma cairo o africa/cairo no.

Disabilitare NTP Utilizzando timedatectl

In alcuni casi potrebbe essere necessario disabilitare NTP. Questo potrebbe essere fatto usando systemctl, ma noi lo dimostreremo usando timedatectl:

# timedatectl set-ntp no
$ timedatectl
             Local time: Thu 2019-12-05 18:19:04 EET Universal time: Thu 2019-12-05 16:19:04 UTC
               RTC time: Thu 2019-12-05 16:19:04
              Time zone: Africa/Cairo (EET, +0200)
            NTP enabled: no
       NTP synchronized: no
        RTC in local TZ: no
             DST active: n/a

Configurare il Fuso Oraio senza timedatectl

Impostare le informazioni sul fuso orario è un passo standard quando si installa Linux su una nuova macchina. Se c’è un processo di installazione grafico, questo sarà molto probabilmente gestito senza alcun ulteriore input da parte dell’utente.

La directory /usr/share/zoneinfo contiene informazioni per i diversi fusi orari possibili. Nella directory zoneinfo, ci sono sottodirectory che contengono i nomi dei continenti così come altri collegamenti simbolici. Si raccomanda di trovare la zoneinfo della tua regione partendo dal tuo continente.

I file zoneinfo contengono le regole necessarie per calcolare l’offset dell’ora locale rispetto all’UTC, e sono anche importanti se la tua regione osserva l’ora legale. Il contenuto di /etc/localtime sarà letto quando Linux ha bisogno di determinare il fuso orario locale. Per impostare il fuso orario senza l’uso di una GUI, l’utente dovrebbe creare un collegamento simbolico per la propria posizione da /usr/share/zoneinfo a /etc/localtime. Per esempio:

$ ln -s /usr/share/zoneinfo/Canada/Eastern /etc/localtime

Dopo aver impostato il fuso orario corretto, si raccomanda di eseguire:

# hwclock --systohc

Questo imposterà l'hardware clock dal system clock (cioè, l’orologio real-time sarà impostato alla stessa ora di date). Si noti che questo comando viene eseguito con i privilegi di root, in questo caso facendo il login come root.

/etc/timezone è simile a /etc/localtime. È una rappresentazione di dati del fuso orario locale, e come tale può essere letto usando cat:

$ cat /etc/timezone
America/Toronto

Si noti che questo file non è usato da tutte le distribuzioni Linux.

Impostare Data e Ora senza timedatectl

Note

La maggior parte dei moderni sistemi Linux usa systemd per la sua configurazione e i suoi servizi e quindi non si raccomanda di usare date o hwclock per impostare l’ora. systemd usa timedatectl per questo. Tuttavia è importante conoscere questi comandi legacy nel caso in cui si debba amministrare un vecchio sistema.

Utilizzare date

date ha un’opzione per impostare l’ora di sistema. Usa --set o -s per impostare la data e l’ora. Puoi anche scegliere di usare --debug per verificare la corretta analisi del comando:

# date --set="11 Nov 2011 11:11:11"

Si noti che sono necessari i privilegi di root per impostare la data qui. Possiamo anche scegliere di cambiare l’ora o la data in modo indipendente:

# date +%Y%m%d -s "20111125"

Qui dobbiamo specificare le sequenze in modo che la nostra stringa sia elaborata correttamente. Per esempio %Y si riferisce all’anno, e quindi le prime quattro cifre 2011 saranno interpretate come l’anno 2011. Allo stesso modo, %T è la sequenza per il tempo, ed è dimostrato qui impostando il tempo:

# date +%T -s "13:11:00"

Dopo aver cambiato l’orario di sistema, si raccomanda di impostare anche l’orologio hardware in modo che entrambi gli orologi, di sistema e hardware, siano sincronizzati:

# hwclock --systohc

systohc significa “da system clock a hardware clock”.

Utilizzare hwclock

Invece di impostare l’orologio di sistema e aggiornare l’orologio hardware, si può scegliere di invertire il processo. Inizieremo impostando l’orologio hardware:

# hwclock --set --date "4/12/2019 11:15:19"
# hwclock
Fri 12 Apr 2019 6:15:19 AM EST -0.562862 seconds

Nota che hwclock si aspetta l’ora UTC, ma restituisce l’ora locale per default.

Dopo aver impostato l’orologio hardware, avremo bisogno di aggiornare l’orologio di sistema da esso. hctosys può essere inteso come “da orologio hardware a orologio di sistema”.

# hwclock --hctosys

Esercizi Guidati

  1. Indica se i seguenti comandi stanno visualizzando o modificando il system time o l'hardware time:

    Comando(i) System Hardware Entrambi

    date -u

    hwclock --set --date "12:00:00"

    timedatectl

    timedatectl | grep RTC

    hwclock --hctosys

    date +%T -s "08:00:00"

    timedatectl set-time 1980-01-10

  2. Osserva il seguente output, e poi correggi il formato dell’argomento in modo che il comando abbia successo:

    $ date --debug --date "20/20/12 0:10 -3"
    
    date: warning: value 20 has less than 4 digits. Assuming MM/DD/YY[YY]
    date: parsed date part: (Y-M-D) 0002-20-20
    date: parsed time part: 00:10:00 UTC-03
    date: input timezone: parsed date/time string (-03)
    date: using specified time as starting value: '00:10:00'
    date: error: invalid date/time value:
    date:     user provided time: '(Y-M-D) 0002-20-20 00:10:00 TZ=-03'
    date:        normalized time: '(Y-M-D) 0003-08-20 00:10:00 TZ=-03'
    date:                                  ---- --
    date:      possible reasons:
    date:        numeric values overflow;
    date:        incorrect timezone
    date: invalid date ‘20/20/2 0:10 -3’
  3. Usa il comando date e le sequenze in modo che il mese del sistema sia impostato su febbraio. Lascia il resto della data e dell’ora invariati.

  4. Supponendo che il comando precedente abbia avuto successo, usa hwclock per impostare l’orologio hardware dall’orologio di sistema.

  5. C’è una località chiamata eucla. Di quale continente fa parte? Usa il comando grep per scoprirlo.

  6. Imposta il tuo fuso orario attuale su quello di eucla.

Esercizi Esplorativi

  1. Quale metodo di impostazione del tempo è ottimale? In quale scenario il metodo preferito potrebbe essere impossibile?

  2. Perché è necessario che ci siano così tanti metodi per realizzare la stessa cosa, cioè impostare il tempo del sistema?

  3. Dopo il 19 gennaio 2038, il Linux System Time richiederà un numero a 64 bit da memorizzare. Tuttavia, è possibile che si possa semplicemente scegliere di impostare una “Nuova Epoca (Epoch)”. Per esempio, il 1° gennaio 2038 a mezzanotte potrebbe essere impostato su un New Epoch Time di 0. Perché non è che questa non sia diventata la soluzione preferita?

Sommario

In questa lezione abbiamo imparato:

  • Come visualizzare l’ora in diversi formati dalla riga di comando.

  • La differenza tra l’orologio di sistema e l’orologio hardware in Linux.

  • Come impostare manualmente l’orologio di sistema.

  • Come impostare manualmente l’orologio hardware.

  • Come cambiare il fuso orario del sistema.

Comandi utilizzati in questa lezione:

date

Visualizza o cambia l’orologio di sistema. Altre opzioni:

-u

Visualizza l’ora UTC.

+%s

Utilizza una sequenza per visualizzare l’ora e data Unix.

--date=

Specifica un’ora da visualizzare, invece dell’ora corrente.

--debug

Visualizza messaggi di debug quando analizza una data inserita dall’utente.

-s

Imposta manualmente l’orologio di sistema.

hwclock

Visualizza o cambia l’orologio hardware.

--systohc

Utilizza l’orologio di sistema per impostare l’orologio hardware.

--hctosys

Utilizza l’orologio hardware per impostare l’orologio di sistema.

--set --date

Imposta manualmente l’orologio hardware.

timedatectl

Visualizza gli orologi di sistema e hardware, così come la configurazione NTP sui sistemi Linux basati su systemd.

set-time

Imposta l’ora manualmente.

list-timezones

Elenca i possibili fusi orari.

set-timezone

Imposta il fuso orario manualmente.

set-ntp

Abilita/disabilita NTP.

Risposte agli Esercizi Guidati

  1. Indica se i seguenti comandi stanno visualizzando o modificando il system time o l'hardware time:

    Comando(i) System Hardware Entrambi

    date -u

    X

    hwclock --set --date "12:00:00"

    X

    timedatectl

    X

    timedatectl | grep RTC

    X

    hwclock --hctosys

    X

    date +%T -s "08:00:00"

    X

    timedatectl set-time 1980-01-10

    X

  2. Osserva il seguente output, e poi correggi il formato dell’argomento in modo che il comando abbia successo:

    $ date --debug --date "20/20/12 0:10 -3"
    
    date: warning: value 20 has less than 4 digits. Assuming MM/DD/YY[YY]
    date: parsed date part: (Y-M-D) 0002-20-20
    date: parsed time part: 00:10:00 UTC-03
    date: input timezone: parsed date/time string (-03)
    date: using specified time as starting value: '00:10:00'
    date: error: invalid date/time value:
    date:     user provided time: '(Y-M-D) 0002-20-20 00:10:00 TZ=-03'
    date:        normalized time: '(Y-M-D) 0003-08-20 00:10:00 TZ=-03'
    date:                                  ---- --
    date:      possible reasons:
    date:        numeric values overflow;
    date:        incorrect timezone
    date: invalid date ‘20/20/2 0:10 -3’

    date --debug --set "12/20/20 0:10 -3"

  3. Usate il comando date e le sequenze in modo che il mese del sistema sia impostato su febbraio. Lascia il resto della data e dell’ora invariati.

    date +%m -s "2"

  4. Supponendo che il comando precedente abbia avuto successo, usa hwclock per impostare l’orologio hardware dall’orologio di sistema.

    hwclock -systohc

  5. C’è una località chiamata eucla. Di quale continente fa parte? Usa il comando grep per scoprirlo.

    timedatectl list-timezones \| grep -i eucla

    o

    grep -ri eucla /usr/share/zoneinfo

  6. Imposta il tuo fuso orario attuale su quello di eucla.

    timedatectl set-timezone 'Australia/Eucla'

    o

    ln -s /usr/share/zoneinfo/Australia/Eucla /etc/localtime

Risposte agli Esercizi Esplorativi

  1. Quale metodo di impostazione del tempo è ottimale? In quale scenario il metodo preferito potrebbe essere impossibile?

    Nella maggior parte delle distribuzioni Linux, NTP è abilitato di default e dovrebbe essere lasciato per impostare l’ora del sistema senza interferenze. Tuttavia, se c’è un sistema Linux che non è connesso a Internet, NTP sarà inaccessibile. Per esempio, un sistema Linux embedded che gira su apparecchiature industriali potrebbe non avere connettività di rete.

  2. Perché è necessario che ci siano così tanti metodi per realizzare la stessa cosa, cioè impostare il tempo del sistema?

    Poiché l’impostazione dell’ora è stata un requisito di tutti i sistemi *nix per decenni, ci sono molti metodi legacy per l’impostazione dell’ora che sono ancora mantenuti.

  3. Dopo il 19 gennaio 2038, il Linux System Time richiederà un numero a 64 bit da memorizzare. Tuttavia, è possibile che si possa semplicemente scegliere di impostare una “Nuova Epoca (Epoch)”. Per esempio, il 1° gennaio 2038 a mezzanotte potrebbe essere impostato su un New Epoch Time di 0. Perché pensi che questa non sia diventata la soluzione preferita?

    Entro il 2038 la stragrande maggioranza dei computer sarà già dotata di CPU a 64 bit, e l’uso di un numero a 64 bit non degraderà le prestazioni in modo significativo. Tuttavia, sarebbe impossibile stimare i rischi di “resettare” l’Epoch time in questo modo. C’è molto software legacy che potrebbe esserne colpito. Le banche e le grandi aziende, per esempio, hanno spesso una grande quantità di vecchi programmi su cui fanno affidamento per uso interno. Quindi questo scenario, come molti altri, è uno studio sui compromessi. Qualsiasi sistema a 32 bit ancora in funzione nel 2038 sarebbe colpito da un overflow di Epoch Time, ma il software legacy sarebbe colpito dal cambiamento del valore di Epoch.

Linux Professional Institute Inc. Tutti i diritti riservati. Visita il sito Learning Materials: https://learning.lpi.org
Quest'opera è sotto la licenza 'Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License'.

Prossima Lezione

108.1 Mantenere l'orario di sistema (108.1 Lezione 2)

Leggi la prossima Lezione

Linux Professional Institute Inc. Tutti i diritti riservati. Visita il sito Learning Materials: https://learning.lpi.org
Quest'opera è sotto la licenza 'Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License'.

LPI è una organizzazione non-profit.

© 2023 Linux Professional Institute (LPI) è lo standard di certificazione globale e l'organizzazione di supporto alla carriera per i Professionisti Open Source. Con più di 200,000 titolari di Certificazione, è il primo e il più grande ente di Certificazione Open Source e Linux vendor-neutral. LPI ha professionisti certificati in oltre 180 Paesi, offre i suoi Esami in più lingue e ha centinaia di Partner di formazione in tutto il mondo.

La nostra missione è promuovere l'uso dell'Open Source supportando le persone che vi lavorano.

  • LinkedIn
  • flogo-RGB-HEX-Blk-58 Facebook
  • Twitter
  • Contattaci
  • Privacy & Cookie Policy

Trovato un errore? Per favore scrivi a contattaci.

© 1999–2023 The Linux Professional Institute Inc. Tutti i diritti riservati.