## page was renamed from Server/SincronizzazioneTempoNtp #format wiki #LANGUAGE it <
> <> <> = Introduzione = Questa pagina fornisce informazioni utili riguardo alla modalità attraverso la quale '''Ubuntu''' gestisce il fuso orario (''timezone'') impostando la sincronizzazione dell'ora di sistema tramite '''timedatectl'''. Questa è un'utilità integrata a [[AmministrazioneSistema/Terminale|riga di comando]] nel gestore di sistema [[AmministrazioneSistema/Systemd|systemd]], presente in modo predefinito su '''Ubuntu''' e nella maggior parte delle distribuzioni GNU/Linux recenti. La sua funzione è quella di fornire un'interfaccia all'amministratore di sistema per interrogare e modificare le impostazioni locali, tra cui: * Lettura e modifica manuale della data e dell'ora. * Lettura e modifica del fuso orario (timezone). * Attivazione o disattivazione del servizio di sincronizzazione dell'ora. {{{#!wiki important A partire da Ubuntu 20.04, l'utilizzo del comando `ntpdate` e del vecchio demone ntpd è ufficialmente deprecato e obsoleto.<
> L'utilizzo di ntpdate risulta ridondante e genera conflitti diretti con gli attuali gestori di sistema integrati in systemd.<
> La vecchia procedura manuale con il comando `sudo ntpdate pool.ntp.org` va sostituita con il riavvio del servizio nativo (comando `sudo systemctl restart systemd-timesyncd`).<
> È fortemente sconsigliata l'installazione del pacchetto ''ntpdate'' tramite apt su sistemi operativi recenti. }}} = Prerequisiti = Trattandosi di uno strumento nativo di '''[[AmministrazioneSistema/Systemd|systemd]]''', la sua gestione richiede particolare cautela. Di seguito i dettagli operativi. {{{#!wiki important Poiché systemd è il gestore di avvio ([[https://it.wikipedia.org/wiki/Init|init system]]) e il demone principale che controlla l'intero funzionamento di Ubuntu 22.04 e versioni successive, non deve mai essere rimosso o disinstallato. La rimozione del pacchetto provocherebbe il blocco irreversibile del sistema operativo. }}} Qualora i file binari risultino corrotti e si renda necessario ripristinare il comando `timedatectl`, è obbligatorio procedere unicamente tramite la reinstallazione in sovrascrittura. Questa procedura ripristina i file originali senza interrompere i servizi essenziali. Eseguire nel [[AmministrazioneSistema/Terminale|terminale]] il comando:{{{ sudo apt install --reinstall systemd }}} Per confermare in modo autonomo quale pacchetto fornisca un determinato eseguibile all'interno dell'ambiente Linux, è possibile interrogare il database dei pacchetti installati tramite l'utilità dpkg. Eseguendo nel [[AmministrazioneSistema/Terminale|terminale]] la seguente istruzione:{{{ dpkg -S $(which timedatectl) }}} restituirà l'output{{{ systemd: /usr/bin/timedatectl }}} confermando inequivocabilmente che l'eseguibile appartiene al pacchetto systemd. = Gestione del fuso orario tramite terminale = Il metodo a [[AmministrazioneSistema/Terminale|riga di comando]] è lo standard per le versioni '''Ubuntu Server''' e rappresenta la soluzione più rapida. == Visualizzare il fuso orario attuale == Per verificare le impostazioni correnti di data, ora e fuso orario, digitare nel [[AmministrazioneSistema/Terminale|terminale]] il seguente comando:{{{ timedatectl }}} Individuare la riga `Time zone` nell'output generato per leggere il fuso orario attualmente in uso (es.: `Europe/Rome (CET, +0100)`). == Ricercare fusi orari disponibili == Per visualizzare la lista completa delle nomenclature valide (formato Continente/Città), digitare nel [[AmministrazioneSistema/Terminale|terminale]] il seguente comando:{{{ timedatectl list-timezones }}} Per restringere la ricerca a un'area geografica specifica, combinare il comando precedente con [[AmministrazioneSistema/ComandiBase#grep|grep]], come nel seguente esempio:{{{ timedatectl list-timezones | grep Europe }}} == Modificare il fuso orario == Per applicare la modifica del fuso orario, eseguire con i [[AmministrazioneSistema/PrivilegiDiAmministrazione|privilegi di amministrazione]] un comando che rispetti la seguente sintassi:{{{ sudo timedatectl set-timezone Continente/Città }}} Ad esempio per impostare il fuso orario italiano:{{{ sudo timedatectl set-timezone Europe/Rome }}} = Gestione del fuso orario tramite interfaccia grafica = Sui sistemi dotati di interfaccia grafica come '''[[AmbienteGrafico/Gnome|GNOME]]''', l'operazione può essere eseguita tramite i menu di sistema. 0. Aprire il [[AmministrazioneSistema/CentroDiControllo|centro di controllo]]. A seconda della versione: * '''Ubuntu 24.04 LTS''' e successivi: selezionare la voce '''Sistema''' e quindi cliccare su '''Data e ora'''. * '''Ubuntu 22.04 LTS''': Scorrere il pannello laterale e selezionare la voce '''Data e ora'''. 0. Disabilitare l'interruttore '''Fuso orario automatico''' per consentire l'intervento manuale. 0. Modificare la Città sulla voce '''Fuso orario''' oppure cliccando sulla città e digitando il nome nella barra di ricerca superiore. 0. Chiudere la finestra per applicare e salvare istantaneamente la modifica. = Sincronizzazione dell'ora standard = {{{#!wiki note Nelle versioni recenti di Ubuntu la sincronizzazione in background dell'ora con i server NTP è gestita nativamente dal servizio leggero systemd-timesyncd. }}} == Verificare e abilitare il servizio systemd-timesyncd == * Per controllare lo stato della sincronizzazione e le metriche di latenza, digitare nel [[AmministrazioneSistema/Terminale|terminale]] il seguente comando:{{{ timedatectl timesync-status }}} nel caso in cui il servizio risulti inattivo, è possibile abilitarlo tramite il seguente comando, per forzare la sincronizzazione manuale:{{{ sudo timedatectl set-ntp true }}} * Per forzare un aggiornamento immediato dell'orologio di sistema, è sufficiente riavviare il demone preposto con il comando:{{{ sudo systemctl restart systemd-timesyncd }}} = Sincronizzazione dell'ora avanzata = Qualora l'infrastruttura richieda una precisione al microsecondo, la gestione di disconnessioni prolungate o la configurazione del sistema come server NTP per la rete locale, lo standard di riferimento è '''[[https://chrony-project.org/|Chrony]]'''. Per abilitarlo è sufficiente [[AmministrazioneSistema/InstallareProgrammi|installare]] il pacchetto [[apt://chrony|chrony]]. {{{#!wiki note L'installazione di Chrony disabilita automaticamente `systemd-timesyncd` per evitare conflitti. }}} * '''Forzare la sincronizzazione manuale:''' per allineare immediatamente l'orologio saltando il processo di regolazione graduale, digitare nel [[AmministrazioneSistema/Terminale|terminale]] il seguente comando:{{{ sudo chronyc makestep }}} * '''Visualizzare i parametri di sincronizzazione:''' per confermare il corretto funzionamento e visualizzare il server NTP di riferimento, digitare nel [[AmministrazioneSistema/Terminale|terminale]] il seguente comando:{{{ chronyc tracking }}} = Il Database dei Fuso Orari = Il pacchetto '''tzdata''' rappresenta un componente essenziale, insostituibile e preinstallato su tutte le versioni di Ubuntu (sia desktop che server). Esso fornisce al sistema operativo l'intero archivio contenente le regole geografiche, matematiche e politiche dei fusi orari mondiali, comprese le logiche per i passaggi tra ora solare e ora legale. == Relazione tra tzdata e timedatectl == È fondamentale comprendere la divisione dei compiti tra i due componenti, i quali lavorano obbligatoriamente insieme: * '''tzdata''': fornisce i dati, genera e aggiorna costantemente l'intero catalogo dei fusi orari mondiali, memorizzando i file nel percorso di sistema `/usr/share/zoneinfo/`. * '''timedatectl''': è l'esecutore; è lo strumento utilizzato per interrogare tale catalogo e applicare la scelta. Senza il pacchetto `tzdata` il comando `timedatectl set-timezone` risulterebbe inutilizzabile, in quanto non troverebbe alcun file geografico da applicare al sistema. == Configurazione in ambienti minimali == In ambienti operativi estremamente ridotti o containerizzati (come i container Docker), il gestore systemd (e di conseguenza il comando `timedatectl`) è generalmente assente. In questi specifici scenari, l'unico metodo supportato per l'impostazione del fuso orario consiste nell'interagire direttamente con il pacchetto `tzdata` tramite il seguente comando testuale interattivo:{{{ sudo dpkg-reconfigure tzdata }}} L'esecuzione aprirà un menu a schermo che consentirà la selezione progressiva dell'area geografica e della città di riferimento. = Risoluzione problemi = Qualora il comando `timedatectl list-timezones` non restituisca alcun risultato, o l'applicazione di un fuso orario generi un errore per file non trovato, l'archivio dei fusi orari potrebbe essere corrotto. L'operazione di ripristino si effettua reinstallando esclusivamente il database in sovrascrittura:{{{ sudo apt install --reinstall tzdata }}} = Ulteriori risorse = * [[https://www.freedesktop.org/software/systemd/man/latest/timedatectl.html|timedatectl]] * [[https://wiki.debian.org/it/DateTime|Wiki Debian]] * [[http://www.inrim.it/|Istituto nazionale di ricerca metrologica]] * [[Installazione/PostInstallazione/ErroreOraWindows|Errore ora Windows in dual boot]] * [[http://www.pool.ntp.org/|NTP pool project]] ---- CategoryAmministrazione CategoryServer