Maci podłączone do domeny, wszystko działa pięknie. Sprawdzamy czy działa Windows (dual-boot), restartujemy kompa pod Mac OS X. Wpisujemy login/hasło (poprawne), chwile czekamy, ekran się trzęsie i tyle. Na konto lokalne można się zalogować bez problemu tylko czas jest jakiś dziwny i przesunięty o 2 godziny.
Wiadomo, Kerberos ma rozjechany czas i przez to bilety się momentalnie przedawniają. Przyczyna rozjechania czasu też jest prosta, OS X jak każdy szanujący się system ustawia hardware clock w GMT i potem softwarowo dodaje/odejmuje czas żeby dostosować się do strefy czasowej. Windows za to ustawia hardware clock na czas lokalny.
No dobra, problem powinno nam załatwić ntp ale w /etc/ntp.conf wszystko jest skonfigurowane poprawnie i dalej nie działa.
Szybkie wstukanie
root# ntpdate
Looking for host ntp.pjwstk.edu.pl and service ntp
host found : ntp.pjwstk.edu.pl
14 Feb 14:15:05 ntpdate[1420]: the NTP socket is in use, exiting

i problem zajętego socketu :-) Szybkie śledztwo i okazuje się, że port jest zajęty przez ntpd, który powinien automatycznie synchronizować czas z serwerem ntp. Jedynym problemem jest to, że ntpd synchronizuje czas powoli małymi krokami tak żeby system nie zagubił się jak nagle wypadnie mu kilka godzin albo syslog się cofnie. Czyli może za kilka dni czas się zsynchronizuje i logowanie do AD zacznie działać :-)
Rozwiązanie jest proste :D zabić ntpd i zsynchronizować ręcznie czas z ntp.

Z Pstrykiem napisaliśmy coś takiego:

root# cat /usr/sbin/ntpupdate.sh
#!/bin/bash

/usr/sbin/ntpd
/usr/bin/killall ntpd

RET=1
TIME=15
while [ $RET -ne 0 ] && [ $TIME -gt 0 ]; do
/usr/sbin/ntpdate adres.serwera.ntp >> /var/log/ntpupdate 2>&1
RET=$?
TIME=$(($TIME-1))
sleep 1
done

Po czy do /etc/rc dopisaliśmy:

# By Pstryk & Kfaz ;)
/usr/sbin/ntpupdate.sh

Kolejny workaround, dziwny ale działający :-)
Podobno nowe sterowniki dla Windows z BootCamp poprawiają ten problem i Windows nie zmienia czasu w hardware clock

-o((:: sprEad the l0ve ::))o-

Comments (4)

  1. jnx

    Odpowiedz

    z tym czasem to ja cały czas mam problem – przyzwyczailem się już powoli, że na macu mam przesunięty czas +2h w stosunku do windy;)

  2. archon

    Odpowiedz

    To nie latwiej zmienic w configu maca zeby nie zapisywal GMT i ciagnal date z zegara?

  3. kfaz

    Odpowiedz

    @archon
    Odezwał się ten co walczył z tym na Linuxach przez dwa tygodnie i sam stosował nasze rozwiązanie :-p

    Odpowiedź jest prosta: nie znalazłem informacji jak zmusić maca żeby nie zapisywał GMT do zegara.

    Można to też zrobić w drugą stronę [HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTimeZoneInformation]”RealTimeIsUniversal”=dword:00000001

  4. archon

    Odpowiedz

    Tak na pewno ja korzystalem z waszego rozwiazania ;) W dellach sa rozne rtc i trzeba bylo sie odwolywac przez wywolanie magistrali isa zeby dzialal sync czasu. Ale pewnie to wiesz skoro to twoje rozwiazanie :)

Zostaw komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

Time limit is exhausted. Please reload CAPTCHA.