Windows Workstation veya Server'da zamanı nasıl senkronize edebilirim?


Yanıtlar:


81

Kyle'ın dediği gibi w32tm /resync, bunu yapmanın modern yolu. W32tm komutu hakkında daha fazla bilgi için, bkz . Microsoft Bilgi Bankası'na Bağlantı (KB 307897) .

Aynı zamanda net timedaha eski bir sürüm var ama belki daha kolay.


4
w32tm /resync"Bilgisayar zaman uyumuyor, çünkü gerekli zaman değişikliği çok büyüktü." CMOS pili bitmiş ve bilgisayar saatim 1/1/2000 12:00 AM'de her açılışta sıfırlanıyor. Herhangi bir yardım?
Çık Hiçbir zaman

Gereğince Bulunan çözüm blog.bruteforcetech.com/archives/911 , W32Time'ın hizmetini yeniden başlatmak için unutma net stop W32Timesonra tekrar deneyinw32tm /resync
Çık Hiçbir zaman

1
Bağlantı koptu.
Stijn Sanders,

2
@LightnessRacesinOrbit ve diğerleri, "zaman değişikliği çok büyüktü" hatasını alırsanız, kullanın w32tm /resync /force. Ancak servisi başlatmadıysanız, çalıştırın net start w32time. Her ikisi de yükseltilmiş bir bilgi isteminden.
cdlvcdlv

4
Değişim kayıt maksimum (ffffffff) için Services \ W32Time \ Config'de \ CurrentControlSet \ HKEY_LOCAL_MACHINE \ SYSTEM MaxNegPhaseCorrection öğesini ve MaxPosPhaseCorrection girişleri 'saat değişikliği çok büyük' çözmek için
Tomas F.

37

Hala bu soruyu soranlar için.

  1. Güncellemek için aşağıdaki komutu kullanın (2008 ve 2012 sunucusu uyumlu)

    w32tm /config /manualpeerlist:"ntp_server" /syncfromflags:manual /reliable:yes /update
    

ntp_server'ı kaynağınızla değiştirin

  1. Zaman servisini tekrar başlatın

    net stop w32time
    net start w32time
    
  2. Zamanı yeniden senkronize et

    w32tm /resync
    
  3. Senkronizasyon durumunuzu doğrulayın

    w32tm /query /status
    

Kaynaklarınız doğru çalışıyorsa ve / veya bağlantınız uygunsa yukarıdaki komutlar iyi olmalıdır (güvenlik duvarı veya Microsoft Forefront da sorun olabilir). Aşağıdaki komutlar sorun gidermeye yardımcı olabilir

Eşleri listelemek için

w32tm /query /peers

NTP Kaynaklarını listelemek için:

w32tm /query /source

Güzel, kapsamlı cevap! NTP sunucusunu kurma komutu için kesinlikle +1.
Shaamaan

Not olarak, bu "10 update" bayrağını geçersiz kılmaksızın Windows 10 Professional için çalışır.
Fmstrat

Sorun giderme için, belirli bir sunucuya bağlantıyı test etmek genellikle yararlı olur:w32tm /monitor /computers:time.windows.com
Randy Orrison


16

Kullanabilirsiniz:

w32tm /resync

Ayrıca, kullanan w32tm /resync /rediscoverda olacak "resenkronizasyonu önce imkanlara sahip ağın redetection zorlamak."

Veya kullanarak:

net time /set

Sizden saati DC'ye ayarlamanızı isteyecektir. (Windows'un eski sürümleri için çalışır)


2
Nedense w32tm /resyncbenim için işe yaramadı ama net time /SET /Yyaptı. Kullandığım /Yiçin net timecygwin gelen sshd geçiyor zaman görünüşte stdin'nin düzgün okumuyor nedeniyle.
qwertzguy

Çalıştırırken bile bir hizmet yeniden başlatıldıktan sonra bile w32tm /resyncmesaj aldım The computer did not resync because no time data was available.ama net time /SETbenim için düzgün çalıştı.
Chris Magnuson,

3

İşletim Sistemi: MS Windows 7

Yukarıdaki fikirlerin tümü denenmiş ancak yardımcı olmamıştır. Asıl sorun hala var: " Gereken zaman değişimi çok büyük olduğu için bilgisayar yeniden senkronize edilemedi. "

Çözüm kayıt defterinde bulundu: HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ services \ w32time \ Config

  • Yerel saat acelesi varsa bunu değiştirin (örn. 31-Aralık-2050): MaxNegPhaseCorrection
  • yerel saat gecikmeli ise bunu değiştirin (örneğin 1-Ocak-1980): MaxPosPhaseCorrection
  • Varsayılan değerler şudur 0xD2F0 (yani 54000 sn. = 15 saat)

(daha fazla ayrıntı için Google’ı kullanın)

Bu basit win_clock_sync.batdosyayı Başlat Menüsünden Başlat:

echo off
echo Sync computer time from internet
echo.
echo Back-up registry w32time\Config
reg export HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\w32time\Config exported_w32time.reg /y
rem changing the registry keys temporarly:
reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\w32time\Config /v MaxNegPhaseCorrection /d 0xFFFFFFFF /t REG_DWORD /f
reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\w32time\Config /v MaxPosPhaseCorrection /d 0xFFFFFFFF /t REG_DWORD /f
echo.
echo w32tm /config /update
w32tm /config /update
echo.
echo w32tm /resync /rediscover 
w32tm /resync /rediscover 
echo.
echo Restore registry w32time\Config
reg import exported_w32time.reg

Keyfini çıkarın! :-)


Yanıtınız, kör olarak devre dışı bırakılmaları gerektiğini önermek yerine MaxNegPhaseCorrectionve MaxPosPhaseCorrectiondeğerlerin işlevinin bir açıklamasını kullanabilir . Bu komut dosyası, verilerini 0xFFFFFFFF olarak ayarlayarak bunu yapar .
Twisty Impersonator

Belirtilen hata iletisini görmezden gelemezsiniz "Gerekli zaman değişimi çok büyük olduğu için bilgisayar yeniden senkronize edilmedi." MaxNegPhaseCorrection ve MaxPosPhaseCorrection değerlerindeki verileri değiştirmeden. Veya, orijinal soruna herhangi bir çalışma çözümü buldunuz mu ?? Ve neden "kör" yazıyorsun? Okumak için kısa bir zaman alırsanız, bu değerlerin orijinal verilerini alıp vermeyi görebilirsiniz, "kör" bir şey yapmaktan biraz uzak.
Akos,

Bu betiğin, değerleri devre dışı olarak değiştirmesini, bir güncellemeyi zorlamasını ve sonra bunları önerilen değerlere döndürmesini sağlamalısınız.
Cory Knutson

Twisty, NeverQuit tarafından ortaya konan konuya gerçekten odaklanmayan geçerli noktalara sahip ... ancak daha sonra Akos, senaryosunun neden NeverQuit için uygun bir çözüm olduğunu açıklamamıştır. Aslında, Kayıt Defteri değerleri MaxNegPhaseCorrection ve MaxPosPhaseCorrection değerlerinin W32Time hizmetinin şu anki zamana dramatik değişiklikler yapmasını engellemek için var ([dış zaman kaynağı kötü bir şekilde ters gidiyor gibi durumlarda) Ancak, bir PDC'nin hızla sürüklenmesini sağlayan bir sorun ortaya çıkarsa güvenilir zaman kaynağı, daha sonra düzeltme kontrolleri büyük kayma w32tm sabitleme engeller. Bu durumda ::: b
Creaky_Uncle_Nick

@Akos Downvote, betiğinizin MaxNegPhaseCorrectionve MaxPosPhaseCorrectiondeğerlerinde yapılan değişiklikleri geri aldığına dikkat çekerek geri çekildi . Bu iki ayarın, cevabınızın kilit bir özelliği olduğu için ne yaptıklarının bir açıklamasını da dahil etmeyi hala teşvik ediyorum ve bir yöneticinin, bu ayarları kalıcı olarak yerine koymaları gerektiğinde sistemlerini herhangi bir zaman değişikliğini kabul edecek şekilde yapılandırmaları gerektiğini bilmeleri önemlidir. ne kadar büyük olursa olsun, hangi Kerberos ve diğer önemli ağ servislerini kırabilir.
Twisty Impersonator

2

Ntp sunucusu yapılandırılmışsa Powershell bir liner:

gsv w32time | sasv; w32tm /resync /force

CMOS batery başarısız olursa, işletim sistemi başlangıcında yeniden senkronize edebilmek için bu .bat dosyasını başlangıçta koyabilirsiniz:

@powrshell -NoProfile -Command 'gsv w32time | sasv; w32tm /resync /force'

/forceiçin belgelenmiş bir komut satırı seçeneği değil w32tm /resync.
Dai


0

Bu sırayla dene. Her zaman işe yarar.

w32tm /unregister

w32tm /register

net stop w32time

net start w32time

w32tm /resync

0

Ana bilgisayar bir Windows Server 2016 Active Directory Etki Alanı Denetleyicisi (ADDC) ise, çözümlerin neredeyse hiçbiri (@Akos hariç), büyük zaman değişikliği yapamayan "güvenilir" bir kaynak olarak gördüğü için çalışır.

w32tm /resync /forceçalışmıyor, çünkü /forcesunucuda 2016 görünmüyor.

net time /SET /Y ya da işe yaramadı, çünkü şöyle olurdu:

Yerel bilgisayarın saatini, saatine göre ayarlamak ister misiniz \AD.example.net? (E / H) [Y]

Tabii ki, eğer açıksa işe yaramaz AD.example.net, /Ysadece soruyu gizler.

Bu adımlar benim için PowerShell kullanarak çalışıyor:

  1. W32time servisini güvenilir değil olarak ayarlayın :
w32tm /config /reliable:no /syncfromflags:manual /update

Seçenek , yapılandırmanın değiştiği zaman hizmetini bildirmek için /syncfromflags:manualeş listede (örneğin harici NTP) listelenen NTP ile senkronizasyon anlamına gelir /update.

  1. W32time'ı yeniden başlatın
Stop-Service w32time
Start-Service w32time
  1. Eşitleme
w32tm /resync

Bu çalışmalı.

  1. ADDC'ye güvenilir bir zaman kaynağı olarak ihtiyacınız varsa, tekrar güvenilir yapın:
w32tm /config /reliable:yes /update
Stop-Service w32time
Start-Service w32time

0

Bu hata mesajının her zaman yeniden üretilebildiği anlık görüntüye geri yükleyebileceğim bir Win10 resmim var: "The computer did not resync because the required time change was too big."

Bu soruna bir çözüm getirerek boşuna uğraşmayı denedim:

reg import nettime.reg # updates MaxPosPhaseOffset and MaxNegPhaseOffset

net start w32time
w32tm.exe /config /manualpeerlist:"pool.ntp.org",0x8 /syncfromflags:manual /reliable:no /update  
w32tm.exe /query /configuration
w32tm.exe /resync /rediscover
w32tm.exe /resync /force

Ne /reliable:node MaxPosPhaseCorrectionayarları, ne de burada belirtilen herhangi bir başka komutlar bir tekrarlanabilir bir şekilde hemen çalıştı.

Kayıt defterini güncelledikten, servisi başlattıktan, konfigürasyonu güncelledikten ve servisi yeniden başlattıktan sonra w32tm /resync /rediscoverbaşarılı olabilmem için birkaç dakika beklemek zorunda kaldım .

Zaman senkronizasyonu zamanında ve güvenilir bir şekilde değil, sonunda başarılı olur.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.