Для точной работы нужно точное время J А какое время показывают часы на вашем сервере? Интуитивно предположив, что наверняка на сервере есть такая служба, просто набрала в строке:
man clock
и мне ответила служба hwclock - query and set the hardware clock
В *nix системах есть два времени и они могут отличаться между собой- это время системное и время «железное» (хардвеар). Предлагаю настроить и синхронизировать то и то время как можно точнее, может даже точнее московских Курантов ;)
Посмотрим сколько времени показывает наше «железо»:
hwclock –show (или просто hwclock)
Примерно так выглядит ответ.Втр 18 Май 2010 16:13:50 -0.246033 seconds
За время системное отвечает демон ntpd - Network Time Protocol (NTP) daemon (сетевой протокол времени). Обновим или установим необходимые для этого пакеты ntp и ntpdate:
aptitude install ntp ntpdate
А ntpdate - set the date and time via NTP соответственно поможет установить и синхронизировать время через сеть.
Установим примерно близко к реальному «железное» время:
hwclock --set --date="9/22/96 16:45:05"
Обратите внимание, что дата устанавливается по американскому образцу, то есть «месяц/дата/год»!
Дальше установим системное время из только что подкрученного «железного»:
hwclock --hctosys
Из man hwclock:
--hctosys
Set the System Time from the Hardware Clock.
Also set the kernel’s timezone value to the local timezone as indicated by the TZ environment variable and/or /usr/share/zoneinfo, as
tzset(3) would interpret them. The obsolete tz_dsttime field of the kernel’s timezone value is set to DST_NONE. (For details on what this
field used to mean, see settimeofday(2).)
This is a good option to use in one of the system startup scripts.
Теперь нам нужно установить самое точное системное время. Я поискала и нашла вот такие официальные российские NTP сервера ВНИИФТРИ
http://www.vniiftri.ru/rus/news/91.html
Server stratum 1:
ntp1.imvp.ru
ntp2.imvp.ru
ntp3.imvp.ru
Server stratum 2:
ntp21.imvp.ru
Спросим у сервера сколько время, синхронизируемся и посмотрим разницу, которая была.
ntpdate ntp1.imvp.ru
Получим ответ вида:
18 Aug 17:32:35 ntpdate[3558]: step time server 80.127.4.179 offset -358.420872 sec
А вот так можно установить синхронизацию системного времени через NTP во время загрузки сервера:
ntpdate -bs ntp1.imvp.ru
Из man к ntpdate:
-b Force the time to be stepped using the settimeofday() system
call, rather than slewed (default) using the adjtime() system
call. This option should be used when called from a startup file
at boot time.
-s Divert logging output from the standard output (default) to the
system syslog facility. This is designed primarily for conve‐
nience of cron scripts.
Так же настроить ntpd можно, как обычно через conf файл:
/etc/ntp.conf
В него так же можно вписать те самые ntp сервера ВНИИФТРИ, вот кусочек из этого файла, то что нам не нужно закомментируем #:
# pool.ntp.org maps to about 1000 low-stratum NTP servers. Your server will
# pick a different set every time it starts up. Please consider joining the
# pool: <http://www.pool.ntp.org/join.html>
#server 0.debian.pool.ntp.org iburst dynamic
#server 1.debian.pool.ntp.org iburst dynamic
#server 2.debian.pool.ntp.org iburst dynamic
#server 3.debian.pool.ntp.org iburst dynamic
server ntp2.imvp.ru iburst dynamic
server ntp21.imvp.ru iburst dynamic
Подробнее о NTP, настройке для разных ОС, ntp.conf и прочее можно почитать тут http://www.samag.ru/art/04.2004/04.2004_03.html
А теперь подгоним обратно J теперь уже наше «железное» время в соответствии с только что синхронизированным системным временем:
hwclock --systohc
Из man hwclock:
--systohc
Set the Hardware Clock to the current System Time.
Вот и все!
< Предыдущая | Следующая > |
---|