Skonfiguruj Rapberry Pi, aby zabierał czas z komputera z systemem Windows

1

Mam maszynę Raspberry Pi i Windows 10, będą one połączone bezpośrednio przez RJ45 i w tej samej podsieci, aby mogły się komunikować. Oba będą całkowicie offline, bez dostępu do Internetu, jednak ważne jest, aby czas na Raspberry Pi był dokładny.

Wiem, że PC wytrzyma ten czas lepiej niż Raspberry Pi, więc miałem nadzieję, że uda mi się ustalić sposób, w jaki Pi może zabrać swój czas z PC. czy to możliwe?

cryptiblinux
źródło
1
Witamy w Super User! Widzę, że otagowałeś swoje pytanie ntp- czy próbowałeś już coś z tym zrobić?
bertieb
Wiem, że możesz skonfigurować Pi, aby używał określonego adresu, ale jak mam skonfigurować komputer z systemem Windows do obsługi żądań?
cryptiblinux

Odpowiedzi:

1

Windows może podawać czas za pomocą usługi Windows Time Service / w32tm

Istnieje stary wpis w blogu MSDN autorstwa Ryana Sizemore na temat uruchamiania systemu Windows jako serwera czasu:

Ostatnio poprosiłem klienta, aby zapytał, czy może używać w32time jako źródła czasu dla innych komputerów i urządzeń w ich sieci. Usługa czasu systemu Windows jest w pełni zdolna do działania jako źródło czasu dla wszystkiego, co jest zgodne z NTPv3.

Uruchamianie serwera

  1. Uruchom usługę w32tm

    Możesz uruchomić Windows Timeusługę z Servicesobszaru panelu sterowania.

  2. Weryfikuj za pomocą podwyższonego wiersza polecenia / programu PowerShell

    Win+ xdaje opcję Command prompt (Admin), gdzie możesz wpisać:

    w32tm /query /configuration
    

    Szukasz linii o treści:

    Enabled: 1 (Local)
    
  3. Jeśli nie jest włączony, możesz wysłać zapytanie do rejestru i w razie potrzeby dodać odpowiedni klucz:

    pytanie: reg query HKLM\system\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer

    Dodaj: reg add HKLM\system\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer /v Enabled /t REG_DWORD /d 0x1 /f

    aktualizacja: w32tm /config /update

Użyj komputera z systemem Windows jako źródła czasu dla Pi

Mówisz, że już wiesz, jak sprawić, by Pi używał określonego adresu, ale jeśli prowadzisz dystrybucję Pi opartą na Debianie (np. Raspbian ), zwykle możesz użyć ntpdatenp.

 # ntpdate windowsPCaddr

gdy podniesiony (tj. albo root / sudo); gdzie windowsPCaddrjest już ustalony adres komputera z systemem Windows.

Rozwiązywanie problemów

Udało mi się znaleźć i uruchomić usługę w nowej instalacji systemu Windows 10. Jakkolwiek możesz

The following error occurred: The serveice has note been started. (0x80070426)

w takim przypadku musisz uruchomić usługę z Servicessekcji panelu sterowania (lub można ją znaleźć w menu Start, wyszukując „Usługi” - jest wymieniona jako „Aplikacja komputerowa”).

Inni napotkali następujący błąd:

w32tm does not exist as an installed service

W takim przypadku polecenie do użycia to:

w32tm /register

[jest to] sposób, w jaki można go zainstalować (używając wiersza polecenia, który był uruchamiany jako administrator). Czasami potrzebujesz restartu, aby uporządkować, ale tak naprawdę czekałem chwilę bez restartu.

Z kredytu odpowiedź Tomasza Gandor użytkownika .

bertieb
źródło
Dzięki za to @bertieb. Czy wiesz, jak prawdopodobne jest opóźnienie z komputera z systemem Windows 10, który jest całkowicie offline?
cryptiblinux
@cryptiblinux to osobne pytanie - na które możesz zadać pytanie - na które nie znam odpowiedzi. Podejrzewam, że to zależy od sprzętu.
bertieb