Различия
Здесь показаны различия между двумя версиями данной страницы.
| Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
|
doc:jroboplc:setup_ntp [2017/12/28 07:53] denis [Настройка сервера ntp] |
doc:jroboplc:setup_ntp [2024/02/22 06:43] (текущий) denis |
||
|---|---|---|---|
| Строка 1: | Строка 1: | ||
| ====== Синхронизация времени с сервером ====== | ====== Синхронизация времени с сервером ====== | ||
| - | ===== Настройка сервера ntp ===== | + | ===== Вариант 1 (рекомендуемый) ===== |
| + | * Скачать и запустить на Windows машине с админ правами [[doc:jroboplc:NTP_server_setup|NTP_server_setup.bat]] (или тут [[https://ncloud.dssl.ru/s/Q982j7mxdAQSkGs|NTP_server_setup.bat]] [[https://confluence.trassir.com/pages/viewpage.action?pageId=67246747|src]]) | ||
| + | * Настроить клиента на Ubuntu машине:<code bash> | ||
| + | sudo mcedit /etc/systemd/timesyncd.conf</code><code bash> | ||
| + | [Time] | ||
| + | NTP=192.168.2.2 # windows computer with ntp service | ||
| + | #FallbackNTP= | ||
| + | RootDistanceMaxSec=30 | ||
| + | #PollIntervalMinSec=32 | ||
| + | #PollIntervalMaxSec=2048</code> | ||
| + | * Перезапустить сервис и проверить статус:<code bash> | ||
| + | sudo systemctl restart systemd-timesyncd | ||
| + | systemctl status systemd-timesyncd | ||
| + | timedatectl status | ||
| + | timedatectl timesync-status </code> | ||
| + | * Установить часовой пояс: <code bash> | ||
| + | sudo timedatectl set-timezone Etc/GMT-7 # для Барнаула | ||
| + | sudo timedatectl set-timezone Etc/GMT-5 # для Челябинска</code> | ||
| + | |||
| + | ===== Вариант 2 ===== | ||
| + | |||
| + | ==== Настройка сервера ntp ==== | ||
| Проверено на Windows 7. | Проверено на Windows 7. | ||
| Строка 18: | Строка 39: | ||
| - | ===== Настройка клиента ===== | + | ==== Настройка клиента ==== |
| Клиентом является jroboplc под управление linux. | Клиентом является jroboplc под управление linux. | ||
| Строка 26: | Строка 47: | ||
| ''sudo mcedit /etc/rc.local'' | ''sudo mcedit /etc/rc.local'' | ||
| - | (until ping -nq -c3 ntpserver; do | + | <code bash> |
| - | echo "waiting for ntp server..." | + | /sbin/hwclock -s |
| - | done | + | |
| - | ntpdate -s ntpserver)& | + | |
| + | ( | ||
| + | while true; do | ||
| + | if ifconfig eth0|grep 'inet ' > null; then | ||
| + | if ping -nq -c3 ntpserver > null; then | ||
| + | break; | ||
| + | fi | ||
| + | fi | ||
| + | sleep 1 | ||
| + | # echo "waiting" | ||
| + | done | ||
| + | |||
| + | echo "TimeSync: ready to sync" | ||
| + | ntpdate ntpserver | ||
| + | /sbin/hwclock -w | ||
| + | |||
| + | date | ||
| + | echo "TimeSync: OK" | ||
| + | )& | ||
| + | |||
| + | </code> | ||
| Если еще не установлено ''ntpdate'', то установить: | Если еще не установлено ''ntpdate'', то установить: | ||
| sudo apt-get install ntpdate | sudo apt-get install ntpdate | ||