¿Por qué la zona horaria se muestra como un número?

¿Por qué la zona horaria se muestra como un número?

Este es un OpenSuse Leap 42.1 y no sé por qué ni cómo sucede esto:

$ date
Tue 18 Apr 10:49:34 -03 2017

La zona horaria aparece como -03 (o -02) en lugar de un nombre significativo (en mi caso, BRT/BRST). Intenté buscar eso, pero parece tan oscuro que los resultados siempre tienen el formato"cómo cambiar la zona horaria"

EDITAR: Respuestas a los comentarios:

$ date +%Z
-03
$ timedatectl
      Local time: Tue 2017-04-18 11:38:26 -03
  Universal time: Tue 2017-04-18 14:38:26 UTC
        RTC time: Tue 2017-04-18 14:38:26
        Timezone: America/Sao_Paulo (-03, -0300)
     NTP enabled: yes
NTP synchronized: yes
 RTC in local TZ: no

Respuesta1

Así es como se define ahora en la base de datos de zona horaria estándar oficial de la IANA.

Verftp://ftp.iana.org/tz/tzdb-2017b/southamerica

El nombre de la zona horaria en horario de invierno es -03. Eso corresponde al desplazamiento UTC. Es más útil que cosas así CETsean ambiguas (significan cosas diferentes para diferentes personas).

Aparentemente eso cambió recientemente. Compararftp://ftp.iana.org/tz/tzdb-2017a/southamerica(2017-02-28) conftp://ftp.iana.org/tz/tzdb-2016j/southamerica(23/11/2016) que tenía BRTen su lugar.

ElNEWSarchivo para la versión 2017aestados:

[...]
Cambiar a abreviaturas numéricas de zona horaria para América del Sur, como parte del proyecto en curso para eliminar abreviaturas inventadas. Esto evita la necesidad de inventar una abreviatura para la nueva zona chilena. De manera similar, cambie de abreviaturas de zona horaria inventadas a abreviaturas numéricas para Afganistán, Samoa Americana, las Azores, Bangladesh, Bután, el Territorio Británico del Océano Índico, Brunei, Cabo Verde, Chatham Is, Christmas I, Cocos (Keeling) Is, Cook Is, Dubai. , Timor Oriental, Eucla, Fiji, Polinesia Francesa, Groenlandia, Indochina, Irán, Irak, Kiribati, Lord Howe, Macquarie, Malasia, Maldivas, Marshall Is, Mauricio, Micronesia, Mongolia, Myanmar, Nauru, Nepal, Nueva Caledonia, Niue , Norfolk I, Palau, Papúa Nueva Guinea, Filipinas, Pitcairn, Qatar, Reunión, San Pedro y Miquelón, Samoa, Arabia Saudita, Seychelles, Singapur, Islas Salomón, Tokelau, Tuvalu, Wake, Vanuatu, Wallis y Futuna y Xinjiang ; para el horario de verano de 20 minutos en Ghana antes de 1943; para el horario de verano de media hora en Belice antes de 1944 y en la República Dominicana antes de 1975; y para las Islas Canarias antes de 1946, para Guinea-Bissau antes de 1975, para Islandia antes de 1969, para el horario de verano indio antes de 1942, para Indonesia antes de 1964, para Kenia antes de 1960, para Liberia antes de 1973, para Madeira antes de 1967, para Namibia antes 1943, para los Países Bajos en 1937-9, para Pakistán antes de 1971, para el Sáhara Occidental antes de 1977 y para Zaporozhye en 1880-1924.
[...]

Por lo general, podría especificar los nombres para el horario de invierno y verano y las reglas sobre cuándo cambiar de uno a otro manualmente en la TZvariable, pero parece que para Brasil no es realmente posible ya que según esa zona horaria base de datos:

http://www.planalto.gov.br/ccivil_03/_Ato2007-2010/2008/Decreto/D6558.htm [e]l período de horario de verano en Brasil a partir de ahora será desde el domingo 3 de octubre hasta el domingo 3 de febrero. Hay una excepción en la fecha de regreso cuando este es el Domingo de Carnaval entonces la fecha de regreso será el próximo domingo...

No hay forma de especificar este tipo de excepción en la TZespecificación de regla simple.

Respuesta2

Edite el archivo /etc/sysconfig/clockcon las siguientes opciones y reinícielo

HWCLOCK="-u"
SYSTOHC="yes"
TIMEZONE="Europe/London"
DEFAULT_TIMEZONE="US/Central"

Nota: mencione la zona horaria según su zona horaria

información relacionada