Команда date и установка времени

time.jpg


Для просмотра текущего системного времени набираем команду:
Bash:
date
Вск Апр 14 09:21:02 EEST 2013

Вручную можно установить дату таким образом:
Bash:
date MMDDhhmm
MM - месяц, DD - день, hh - часы, mm - минуты.

Зададим дату: 14 апреля 09 часов 30 минут:
Bash:
date 04140930

Подробно можем прочесть о команде date в man:
Bash:
man date
date --help

Команда date очень функциональна. Наряду с установкой и редактированием времени можно, например, узнать какое чиcло выпадет на определённый день недели:
Bash:
date --date="sunday next 2 week"
Эта команда позволяет узнать число месяца в воскресенье, через две недели от текущей даты.

Узнать дату ближайшего наступающего дня недели можно так(ближайший вторник):
Bash:
date --date="tuesday" +%F

Показать дату прошедшего вторника:
Bash:
date --date="last tuesday" +%F

linux - замечательная OS, в ней есть возможность просмотра полноценного календаря на текущий месяц:
Bash:
cal


Просмотр календаря на год:
Bash:
cal 2013


Просмотр прошедшего, текущего и следующего месяца:
Bash:
cal -3


Мы ознакомились с командами date и cal, узнали как просматривать и устанавливать время на сервере. Теперь мы узнаем как автоматизировать синхронизацию времени на нашем сервере с временными серверами linux NTP. Это исключит отставание или забегания вперёд времени на нашем сервере.
Также, необходимо понимать, что синхронизация времени подобным образом, позволит нам синхронизировать время всех компьютеров в сети с нашим сервером.

Информация:
Network Time Protocol (NTP)
- сетевой протокол для синхронизации внутренних часов компьютера с использованием сетей с переменной латентностью.
NTP использует для своей работы протокол UDP. Система NTP чрезвычайно устойчива к изменениям латентности среды передачи.
NTP использует алгоритм Марзулло (предложен Кейтом Марзулло (Keith Marzullo) из Университета Калифорнии, Сан-Диего), включая такую особенность, как учёт времени передачи. В версии 4 способен достигать точности 10 мс (1/100 с) при работе через Интернет, и до 0.2 мс (1/5000 с) и лучше внутри локальных сетей.
NTP - один из старейших используемых протоколов. NTP разработан Дэвидом Л. Миллсом (David L. Mills) из университета Дэлавера и в настоящее время продолжает совершенствование. Текущая версия — NTP 4.
NTP — Википедия

Устанавливаем NTP:
Bash:
yay -Syu ntp

Затем синхронизируем время с серверами времени в интернет:
Bash:
ntpdate pool.ntp.org

После необходимо установить аппартаные часы BIOS по Гринвичу(UTC):
Bash:
hwclock --systohc --utc

Чтобы система не показывала время, выставленное в BIOS(если, конечно, вы не живете на нулевом меридиане :) ), необходимо в файл: /etc/sysconfig/clock добавить запись:
Код:
ZONE="Europe/Kiev"
UTC=true
ARC=false

Где ZONE = Bаш текущий часовой пояс.

Включаем ntp daemon в автозагрузку:
Bash:
systemctl enable ntpd

Альтернативный вариант: команда setup, в системных службах устанавливаем звёздочку напротив ntpd.

Запускаем ntp daemon:
Bash:
systemctl start ntpd
Процедура установки NTP-сервера завершена.

Для проверки синхронизации нашего сервера с серверами NTP вводим команду:
ntpq

Объяснения информации в столбцах таблицы:
remote
refid
st
poll
reach
delay
offset
jitter
Имя удаленного NTP-сервера​
Указывает на то, откуда каждый сервер получает время в данный момент​
Stratum это число от 1 до 16, указывающее на точность сервера. Единица означает максимальную точность, 16 -- сервер недоступен. Уровень вашего сервера будет равен уровню наименее точного удаленного сервера плюс 1Интервал между опросами (в секундах). Значение будет изменяться между минимальной и максимальной частотой опросов. В начале интервал будет небольшим, чтобы синхронизация происходила быстро. После того как часы синхронизируются, интервал начинает увеличиваться, чтобы уменьшить трафик и нагрузку на популярные сервера времениВосьмеричное представление массива из 8 бит, отражающего результаты последних восьми попыток соединения с сервером. Бит выставлен, если удаленный сервер ответилКоличество времени (в секундах) необходимого для получения ответа на запрос "который час?"Наиболее важное поле. Разница между временем локального и удаленного серверов. В ходе синхронизации это значение должно понижаться, указывая на то, что часы локальной машины идут все точнееДисперсия (Jitter) -- это мера статистических отклонений от значения смещения (поле offset) по нескольким успешным парам запрос-ответ. Меньшее значение дисперсии предпочтительнее, поскольку позволяет точнее синхронизировать время
Значение символов перед именами серверов:
- Означает, что локальный сервис NTP не предпочитает этот сервер
+ Означает, что локальный сервис NTP предпочитает этот сервер
x Отмечает плохой хост
* Указывает на текущий наиболее предпочтительный сервер

После всех, проделанных нами манипуляций со временем, о правке вручную времени можно забыть. Теперь всё автоматизировано. Необходимо также Указать IP-адрес вашего сервера времени для всех рабочих серверов сети.
Вот и все,- про поправки времени вручную, на нашем сервере, можно забыть, так как все будет автоматизировано. На рабочих станциях вашей сети нужно указать ip адрес вашего сервера времени, и на этом все работы у нас завершены.
 
Последнее редактирование:
Сверху Снизу