system-wide timezone question -red hat enterprise 7

0


Para minha conta de usuário eu explicitamente exporto a variável TZ para américa / chicago no meu arquivo .bash_profile, então quando eu digito: date, recebo a data no CST. No entanto, eu não defini a variável TZ para nenhum outro usuário, e quando eles digitam: date, eles também obtêm a data no CST, mas a saída do comando: timedatectl diz especificamente que o fuso horário é UTC:

[tim etc]timedatectl Warning: Ignoring the TZ variable. Reading the system's time zone setting only.

  Local time: Tue 2018-07-17 18:15:53 UTC   Universal time: Tue 2018-07-17 18:15:53 UTC
    RTC time: Tue 2018-07-17 18:15:52
   Time zone: UTC (UTC, +0000)
 NTP enabled: yes NTP synchronized: yes  RTC in local TZ: no
  DST active: n/a

Como é possível que os usuários que não têm a variável TZ definida como america / chicago estejam obtendo a saída america chicago com o comando date:

[tim etc]date Tue Jul 17 13:18:46 CDT 2018

Eu já verifiquei isso também:
lrwxrwxrwx. 1 raiz do root 25 Mar 23 12:50 hora local - > ../usr/share/ zoneinfo / UTC

poderia estar relacionado à linha habilitada para NTP? o que também está me confundindo, já que não tenho o daemon ntpd em execução. Esta é uma máquina aws ec2, se isso ajuda Obrigado!

    
por Rafael Ruales 17.07.2018 / 20:25

1 resposta

0

Uma pesquisa rápida on-line apontou para um utilitário timedatectl . Mostrou a minha VM sem a configuração do fuso horário,

$ sudo timedatectl
      Local time: Tue 2018-11-06 17:08:26 UTC
  Universal time: Tue 2018-11-06 17:08:26 UTC
        RTC time: Tue 2018-11-06 17:08:11
       Time zone: Etc/UTC (UTC, +0000)
     NTP enabled: yes
NTP synchronized: no
 RTC in local TZ: no
      DST active: n/a

Eu verifiquei a definição de fuso horário do sistema de nível baixo inspecionando o link simbólico /etc/localtime ,

$ ls -la /etc/localtime
lrwxrwxrwx. 1 root root 29 Jun 27  2017 /etc/localtime -> ../usr/share/zoneinfo/Etc/UTC

Em seguida, defino o fuso horário e inspeciono o resultado,

$ sudo timedatectl set-timezone 'America/Toronto'

$ sudo timedatectl
      Local time: Tue 2018-11-06 12:09:23 EST
  Universal time: Tue 2018-11-06 17:09:23 UTC
        RTC time: Tue 2018-11-06 17:09:07
       Time zone: America/Toronto (EST, -0500)
     NTP enabled: yes
NTP synchronized: no
 RTC in local TZ: no
      DST active: no
 Last DST change: DST ended at
                  Sun 2018-11-04 01:59:59 EDT
                  Sun 2018-11-04 01:00:00 EST
 Next DST change: DST begins (the clock jumps one hour forward) at
                  Sun 2019-03-10 01:59:59 EST
                  Sun 2019-03-10 03:00:00 EDT

$ ls -la /etc/localtime
lrwxrwxrwx 1 root root 37 Nov  6 12:09 /etc/localtime -> ../usr/share/zoneinfo/America/Toronto

Acho que talvez seja necessário reinicializar para que os serviços saibam sobre a nova configuração.

    
por 06.11.2018 / 18:12