Cómo usar timedatectl para configurar la zona horaria y habilitar la sincronización de hora de red (NTP) desde la línea de comando

Este artículo describe cómo usar timedatectl para cambiar la zona horaria y cómo usar NTP (Network Time Protocol) en Linux para sincronizar automáticamente el reloj del sistema con un servidor remoto.
timedatectl es parte de systemd y se puede usar como una utilidad de línea de comando, que permite cambiar varias configuraciones del reloj del sistema.

Cómo usar timedatectl para cambiar la zona horaria en Linux

Antes de cambiar la zona horaria, utilice timedatectl para encontrar la zona horaria configurada actualmente (también se muestra otra información sobre la configuración de la hora del sistema):
timedatectl

Es lo mismo que el estado timedatectl.

Salida de muestra:

# timedatectl
               Hora local: Sat 2020-09-12 19:14:59 CST
           Hora universal: Sat 2020-09-12 11:14:59 UTC
                 Hora RTC: Sat 2020-09-12 11:14:59    
                Zona horaria: Asia / Shanghai (CST, +0800)
Reloj del sistema sincronizado: sin                         
              servicio NTP:
          RTC inactivo                    en TZ local: no          

 

Ahora, permítanos enumerar todas las zonas horarias disponibles para que sepa el nombre exacto de la zona horaria que se usará en el sistema (requerido para que el comando cambie la zona horaria):
timedatectl list-timezones

La lista de zonas horarias es enorme. Puede usar grep para filtrarlo y mostrar solo la zona horaria de un determinado continente o la capital de un determinado país / estado, por ejemplo, solo mostrar posibles zonas horarias europeas:
timedatectl list-timezones | grep Shanghai

Asia / Shanghai


Ahora , use el siguiente comando para configurar la zona horaria en el sistema Linux :
 

timedatectl set-timezone <timezone>


¿Dónde se muestra la zona horaria en <timezone> timedatectl list-timezones? Por ejemplo, establezca la zona horaria del sistema Linux en Asia / Shanghai:

timedatectl set-timezone Asia / Shanghai


Este comando crea un enlace simbólico / etc / localtime desde / usr / share / zoneinfo / a la zona horaria seleccionada. También puede crear este enlace manualmente y lograr el mismo propósito. En el mismo ejemplo, para establecer la zona horaria en Asia / Shanghai, / etc / localtime debe ser el enlace simbólico / usr / share / zoneinfo / Asia / Shanghai.

 

Cómo usar timedatectl para sincronizar el reloj del sistema con un servidor remoto (habilitar NTP)

Primero use timedatectl para averiguar si el servicio de sincronización de la hora de la red (NTP) está activo y si el reloj del sistema está sincronizado:
timedatectl

Utilice el siguiente comando para habilitar el servicio NTP en el sistema Linux : timedatectl set-ntp true

Si desea desactivarlo, utilice falso en lugar de verdadero.

Vale la pena señalar que si el servicio NTP no está instalado, como timesyncd, ntpd, Chrony u otros servicios, este comando fallará. Sin embargo, en muchos casos, timesyncd debe instalarse de forma predeterminada (por ejemplo, se instala de forma predeterminada en Ubuntu 16.04 y versiones posteriores).

Si utiliza un servicio como chrony o ntpd para realizar cambios, systemd-timedated no mostrará estos contenidos antes de reiniciar:

systemctl restart systemd-timedated


En el servidor Ubuntu 18.04, también debo reiniciar systemd-timesyncd (por ejemplo, esta operación no es necesaria en mi sistema operativo Ubuntu 19.04 o Solus); de lo contrario, la hora del sistema no se sincronizará. Si también usa timesyncd y timedatectl muestra Reloj del sistema sincronizado: es no, incluso si el servicio NTP muestra activo, puede reiniciar systemd-timesyncd:

systemctl reiniciar systemd-timesyncd


También debo agregar que al usar el servicio predeterminado systemd timesyncd, puede ver más información de la que proporciona timedatectl, como el servidor de hora NTP utilizado y el registro que muestra la última sincronización realizada, que incluye:

systemctl status systemd- timesyncd


Salida de muestra:

systemctl status systemd-timesyncd
● systemd-timesyncd.service - Sincronización de tiempo de red
     Cargado: cargado (/usr/lib/systemd/system/systemd-timesyncd.service; deshabilitar>
     Activo: activo (en ejecución) desde el sábado 12 de septiembre de 2020 19 : 21: 43 CST; hace 4 s
       Documentos: man: systemd-timesyncd.service (8)
   PID principal: 3518 (systemd-timesyn)
     Estado: "Sincronización inicial con el servidor horario 5.79.108.34:123 (0.opensus>
      Tareas: 2 (límite: 4915)
     Memoria: 1,5
     MB Grupo: /system.slice/systemd-timesyncd.service
             └─3518 / usr / lib / systemd / systemd-timesyncd

12 de septiembre 19:21:42 localhost systemd [1]: Iniciando la sincronización de la hora de la red ...
12 de septiembre 19:21:43 localhost systemd [1]: Se inició la sincronización de la hora de la red.
12 de septiembre 19:21:43 localhost systemd-timesyncd [3518]: sincronización inicial con t


En systemd 239 y posteriores (por ejemplo, no funciona en Ubuntu 18.04 porque usa systemd 237), puede usar el siguiente comando para mostrar el estado systemd-timesyncd timedatectl show-timesync:

timedatectl show-timesync
FallbackNTPServers = 0.opensuse.pool.ntp.org 1.opensuse.pool.ntp.org 2.opensuse.pool.ntp.org 3.opensuse.pool.ntp.org
ServerName = 0.opensuse.pool. ntp.org
ServerAddress = 5.79.108.34
RootDistanceMaxUSec = 5s
PollIntervalMinUSec = 32s
PollIntervalMaxUSec = 34min 8s
PollIntervalUSec = 1min 4s
NTPMessage = {Salto = 0, Versión = 4, Modo = 4, Estrato-= 24, Precisión11 , RootDispersion = 80.734ms, Referencia = 8285010A, OriginateTimestamp = Sáb 2020-09-12 19:22:15 CST, ReceiveTimestamp = Sáb 2020-09-12 19:22:15 CST, TransmitTimestamp = Sáb 2020-09-12 19: 22:15 CST, DestinationTimestamp = Sat 2020-09-12 19:22:16 CST, Ignored = sin PacketCount = 2, Jitter = 3.787ms}
Frecuencia = -6368726


和 属性 systemd-timesyncd 使用 timedatectl timesync-status :

timedatectl timesync-status
       Servidor: 5.79.108.34 (0.opensuse.pool.ntp.org)
Intervalo de encuesta: 1min 4s (min: 32s; max 34min 8s)     
         Leap: normal                               
      Versión: 4                                    
      Estrato: 2                                    
    Referencia: 8285010A                             
    Precisión: 1us (-24)                            
Distancia de raíz: 89.339ms (máx .: 5s)                   
       Desplazamiento: -10.021ms                            
        Retardo: 358.105ms                            
       Jitter: 3.787ms                              

    Cantidad de  paquetes: 2                                     Frecuencia: -97.179ppm   


Puede cambiar la configuración que se muestra aquí editando el archivo de configuración /etc/systemd/timesyncd.conf. Por ejemplo, cambie el servidor NTP (puede usar el servidor proporcionado por NTP Pool Project ), descomente la línea NTP y agregue los servidores que se usarán, separados por espacios. Después de cambiar el archivo de configuración, reinicie systemd-timesyncd:

systemctl restart systemd-timesyncd

 

Supongo que te gusta

Origin blog.csdn.net/allway2/article/details/108552461
Recomendado
Clasificación