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 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
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;)
To nie latwiej zmienic w configu maca zeby nie zapisywal GMT i ciagnal date z zegara?
@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
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 :)