Jak mogę sprawdzić zawartość / etc / localtime?

23

Jakich poleceń mogę używać do sprawdzania zawartości plików strefy czasowej, takich jak /etc/localtimelub pliki poniżej /usr/share/zoneinfo/*?

slm
źródło
2
apropos -s 1 -a time zone
Gilles „SO- przestań być zły”

Odpowiedzi:

34

Wydaje się, że najwłaściwszym poleceniem jest zdump.

$ zdump /etc/localtime 
/etc/localtime  Wed Aug  7 23:52:25 2013 EDT

$ zdump /usr/share/zoneinfo/* | tail -10
/usr/share/zoneinfo/Singapore    Thu Aug  8 11:52:48 2013 SGT
/usr/share/zoneinfo/Turkey       Thu Aug  8 06:52:48 2013 EEST
/usr/share/zoneinfo/UCT          Thu Aug  8 03:52:48 2013 UCT
/usr/share/zoneinfo/Universal    Thu Aug  8 03:52:48 2013 UTC
/usr/share/zoneinfo/US           Thu Aug  8 03:52:48 2013
/usr/share/zoneinfo/UTC          Thu Aug  8 03:52:48 2013 UTC
/usr/share/zoneinfo/WET          Thu Aug  8 04:52:48 2013 WEST
/usr/share/zoneinfo/W-SU         Thu Aug  8 07:52:48 2013 MSK
/usr/share/zoneinfo/zone.tab     Thu Aug  8 03:52:48 2013
/usr/share/zoneinfo/Zulu         Thu Aug  8 03:52:48 2013 UTC

Możesz również przesłuchać te pliki za pomocą filepolecenia:

$ file /etc/localtime 
/etc/localtime: timezone data, version 2, 4 gmt time flags, 4 std time flags, no leap seconds, 235 transition times, 4 abbreviation chars

$ file /usr/share/zoneinfo/Singapore
/usr/share/zoneinfo/Singapore: timezone data, version 2, 8 gmt time flags, 8 std time flags, no leap seconds, 8 transition times, 8 abbreviation chars
slm
źródło
0

Spróbuj tzdump. Znalazłem go tutaj: http://www.cise.ufl.edu/~seeger/dist/tzdump.c Jest to program w języku C, więc trzeba go skompilować.

Greg McFarlane
źródło
Ten program obejmuje te, tzfile.hktóre wydają się niedostępne. Istnieje kopia github tego samego programu, której również brakuje tzfile.h.
wallyk
0

Kroki:

  1. Najpierw sprawdź czas lokalny kontenera dokowanego:

    [root@locdb oracle]# zdump /etc/localtime
    /etc/localtime  Tue May 22 13:59:40 2018 UTC
    
  2. Sprawdź strefy czasowe jak poniżej:

    [root@locdb oracle]# zdump /usr/share/zoneinfo/* | tail -10
    /usr/share/zoneinfo/UTC          Tue May 22 14:01:21 2018 UTC
    /usr/share/zoneinfo/Universal    Tue May 22 14:01:21 2018 UTC
    /usr/share/zoneinfo/W-SU         Tue May 22 17:01:21 2018 MSK
    /usr/share/zoneinfo/WET          Tue May 22 15:01:21 2018 WEST
    /usr/share/zoneinfo/Zulu         Tue May 22 14:01:21 2018 UTC
    /usr/share/zoneinfo/iso3166.tab  Tue May 22 14:01:21 2018
    /usr/share/zoneinfo/posix        Tue May 22 14:01:21 2018
    /usr/share/zoneinfo/posixrules   Tue May 22 10:01:21 2018 EDT
    /usr/share/zoneinfo/right        Tue May 22 14:01:21 2018
    /usr/share/zoneinfo/zone.tab     Tue May 22 14:01:21 2018
    
  3. Skopiuj ten, którego potrzebujesz na przykład:

    cp  /usr/share/zoneinfo/UTC /etc/localtime
    
Shantonav Sen
źródło
poprawianie polecenia w kroku 2: zdump / usr / share / zoneinfo / * | ogon -10
Shantonav Sen
Myślę, że wspomnienie dockertutaj jest odwróceniem uwagi od ogólnego rozwiązania.
Jeff Schaller
Nie rozumiem jeszcze, jak różni się to od odpowiedzi SLM
Jeff Schaller
masz rację @Jeff Wypróbowałem to rozwiązanie w kontenerze dokera bez wpływu na hos, stąd prawdopodobne prawdopodobieństwo pomyłki.
Shantonav Sen
-5

Właściwie wszystko może być zbadane przez ciągi:

# strings /etc/localtime
Stackexchanger
źródło
4
Tak, to naprawdę nie działa. Spróbuj. Daje dużo śmieci i tak naprawdę nie można odczytać zawartości ustawień regionalnych.
slm
Równie dobrze może sugerować użycie hekseditora.
jgmjgm