webentwicklung-frage-antwort-db.com.de

Wie kann ich den Strom eines Systems überprüfen? NTP Aufbau?

Ich muss die aktuelle Konfiguration von NTP auf einigen Windows-Systemen überprüfen. Idealerweise möchte ich dies über die Befehlszeile tun können, anstatt durch die Konfigurationsbildschirme zu navigieren.

(Ich arbeite an mehreren verschiedenen Betriebssystemversionen, und die Konfigurationsbildschirme befinden sich in den verschiedenen Versionen in der Regel nicht immer am selben Ort.)

Ich hoffe, einen schnellen, einprägsamen Befehl zu finden, den ich einfach in eine CMD-Konsole eingeben kann, um das Ergebnis zu erhalten. Eine Batch-Datei, die ich mit mir herumtragen kann, reicht jedoch genauso gut aus.

Konkret brauche ich folgendes:

  • Zeigen Sie an, ob das System so konfiguriert ist, dass es Zeit von einem NTP Server empfängt.
  • Zeigen Sie die NTP Server an, von denen das System Zeit empfängt.
  • Zeigt die Uhrzeit der letzten Synchronisation an.
  • Zeigt die aktuelle Uhrzeit im System an.

Welche Befehle wären erforderlich, um diese Ergebnisse zu erzielen?

Suchen Sie nach einer Lösung, die mit Windows XP, 7, Server 2003 und Server 2008 kompatibel ist.

60
Iszi

Geben Sie in der Befehlszeile Folgendes ein

w32tm /query /configuration
w32tm /query /status
Time /T 

w32tm /query /configuration gibt Ihnen die Konfiguration, die Sie eingerichtet haben.

w32tm /query /status gibt Ihnen Informationen wie:

  • schicht
  • sprunganzeige
  • präzision
  • letzte Synchronisierung
  • NTP-Server
  • abfrageintervall

time /T gibt die aktuelle Systemzeit aus.

Hinweis: w32tm /query wurde erstmals in den Windows Time Client-Versionen von Windows Vista und Windows Server 2008 zur Verfügung gestellt. Siehe Windows Time Service-Tools und -Einstellungen

76
Phillip R.

Dies beantwortet Ihre letzte Frage:

Öffnen Sie eine Eingabeaufforderung und geben Sie genau Folgendes ein:

w32tm /stripchart /computer:NTPServerNameOrIP /dataonly /samples:x (wie viele Retouren Sie wünschen)

Zeit und Differenz zur NTP Serverzeit werden zurückgegeben. Wenn es Zeit zurückgibt, Fehler: 0x80072746, dann ist das nicht Ihr NTP Server.

Ein Beispiel für einen Befehl ist unten:

 Command example

15
Byron

Ich habe es versucht:

w32tm /query /status

Ich habe:

The command /query is unknown.

In einer anderen Maschine habe ich:

The following error occurred: The service has not been started. (0x80070426)

Dann habe ich versucht:

reg QUERY [\\machine\]HKLM\SYSTEM\CurrentControlSet\Services\W32Time

Ich habe:

ERROR: The system was unable to find the specified registry key or value.

Dann habe ich versucht:

net time /querysntp

Ich habe:

This computer is not currently configured to use a specific SNTP server.

Auf einer anderen Maschine habe ich die Hilfeseite erhalten, auf der auch steht:

The /QUERYSNTP and /SETSNTP options have been deprecated. Please use w32tm.exe to configure the Windows Time Service.

Im Grunde lief der Dienst also nicht. Ich habe diese Anweisungen befolgt:

w32tm /unregister
w32tm /unregister
w32tm /register
net start w32time

Schließlich würde das alles funktionieren. (Anmerkung: Wenn net start fehlschlägt, siehe unten) Dann musste ich nur mein NTP einrichten ... Ich tat es mit:

w32tm /config /manualpeerlist:10.0.0.5 /syncfromflags:manual /reliable:yes /update

befolgen Sie die Anweisungen von hier , aber vielleicht hätte es auch so einfach sein können:

net time /setsntp:10.0.0.5

wie angewiesen hier . (10.0.0.5 ist mein lokaler NTP Server). Wenn Sie keinen lokalen NTP Server verwenden, können Sie den generischen Server verwenden:

w32tm /config /manualpeerlist:pool.ntp.org /syncfromflags:manual /reliable:yes /update

Schließlich müssen Sie möglicherweise Folgendes tun, was für mich nicht erforderlich war:

w32tm /config /update
w32tm /resync /rediscover

HINWEIS: Wenn net start w32time mit dem Fehler 1290 fehlschlägt (der Dienststart ist fehlgeschlagen, da mindestens ein Dienst im selben Prozess eine inkompatible Einstellung für den SID-Typ des Dienstes aufweist), führen Sie die folgenden Schritte aus: hier :

w32tm /unregister
w32tm /register
sc config w32time type= own
net start w32time

Folgen Sie dann wie oben.


HINWEIS 2: Wenn der Dienst NTP beim Neustart nicht automatisch gestartet wird, kann dies an den Starteinstellungen liegen (siehe hier ). Abhängig von Ihren Fenstern ist möglicherweise nur der Start festgelegt wenn es einer Domain beitritt. Sie können überprüfen mit:

sc qtriggerinfo w32time

Wenn es so konfiguriert ist, dass es beim Beitritt zu einer Domäne gestartet wird und auf Ihrem Computer keine Domäne eingerichtet ist, wird der Dienst nicht gestartet und die Uhrzeit nicht festgelegt. Es tritt wahrscheinlich keiner Domain bei, weil Sie dies nicht möchten. In jedem Fall einfach ändern, welcher Trigger es startet. Um beispielsweise zu starten, wenn der Computer über ein Netzwerk verfügt (und daher auf den Server zugreifen kann), gehen Sie wie folgt vor:

sc triggerinfo w32time start/networkon stop/networkoff
7
msb

Über die Befehlszeile können Sie die folgenden Informationen abrufen:

reg QUERY [\\machine\]HKLM\SYSTEM\CurrentControlSet\Services\W32Time\Parameters
reg QUERY [\\machine\]HKLM\SYSTEM\CurrentControlSet\Services\W32Time\Config

Scheint, als würde das ausreichen, um in diese Richtung zu gehen, wenn ich Ihre Frage verstehe. AFAIK, der Befehl 'reg' funktioniert auf all diesen verschiedenen Plattformen, solange Sie die richtigen Dienste ausführen.

3
osirisgothra

Benutzen:

net stop w32time
w32tm /config /syncfromflags:manual /manualpeerlist:"0.it.pool.ntp.org 1.it.pool.ntp.org 2.it.pool.ntp.org 3.it.pool.ntp.org"
net start w32time
w32tm /config /update
w32tm /resync /rediscover

Eine .bat-Beispieldatei befindet sich unter https://Gist.github.com/thedom85/dbeb58627adfb3d5c3af .

Ich empfehle auch dieses Programm: http://www.timesynctool.com/

3
user565386

Schauen Sie sich das Befehlszeilentool w32tm an. Es kann die Konfiguration einstellen und abfragen und ein/Stripchart des Zeitversatzes mit einem anderen Computer ausgeben.

2
uSlackr