Sky Mission Hub İçin Windows Sunucu Saati Nasıl Senkronize Edilir?
Sky Mission Hub, kısa geçerlilik süresine sahip imzalı istekler kullanır. Eğer FiveM sunucunuzdaki Windows saati çok ileride veya gerideyse, sunucu kimlik bilgileriniz doğru olsa bile API isteği reddedebilir.
Bu kılavuz size Windows saatini nasıl senkronize edeceğinizi, işlemin işe yarayıp yaramadığını nasıl kontrol edeceğinizi ve Mission Hub'ı tekrar nasıl deneyeceğinizi gösterir.
Mission Hub neden doğru zamana ihtiyaç duyar
Her giden Mission Hub isteği, FXServer'ı çalıştıran makineden gelen imzalı bir zaman damgası içerir. API, bu zaman damgasını kendi saatiyle karşılaştırır. Fark çok büyükse, istek expired_signature ile reddedilir.
Mission Hub'da "Unable to load mission hub." (Görev merkezi yüklenemiyor.) ifadesini görebilirsiniz. Sunucu günlüğünde daha spesifik bir expired_signature hatası görünebilir. Bu genel yükleme mesajının başka nedenleri de olabilir, bu nedenle saati kontrol etmek her bağlantı sorunu için bir çözümden ziyade bir sorun giderme adımıdır.
Başlamadan önce
Windows sunucusunda yönetici erişimine ve erişilebilir bir zaman kaynağına ihtiyacınız vardır. Windows, Windows Time servisini ve w32tm aracını içerir, bu nedenle ek bir yazılıma gerek yoktur.
Sağlayıcı tarafından yönetilen bir VPS veya sanal makine için, barındırma sağlayıcınızın zaman kaynağı gereksinimlerini takip edin. Saat sürekli olarak eski haline dönüyorsa, onlardan ana makinenin senkronizasyonunu da kontrol etmelerini isteyin.
Adım adım: Windows Sunucu zamanını senkronize etme
Bu komutları Windows sunucusunda çalıştırın, FiveM konsolunda veya txAdmin konsolunda değil.
PowerShell'i yönetici olarak açın
Windows Başlat menüsünü açın, Windows PowerShell yazın, sağ tıklayın ve Yönetici olarak çalıştır seçeneğini seçin. Bir Windows izin istemi belirirse onaylayın.
Windows Zamanı servisini etkinleştirin ve başlatın
Bu komutları teker teker çalıştırın:
Set-Service -Name W32Time -StartupType Automatic
Start-Service -Name W32Time
Bu, zaman servisini başlatır ve otomatik olarak başlayacak şekilde yapılandırır. Servisi tek başına başlatmak, saatin senkronize olduğunu kanıtlamaz.
Mevcut zaman kaynağını ve durumunu kontrol edin
w32tm /query /source
w32tm /query /status
Seçilen Source (Kaynak) ve Last Successful Sync Time (Son Başarılı Senkronizasyon Zamanı) alanlarına bakın. Bağımsız bir sunucuda kaynak, genel veya barındırma sağlayıcısı bir NTP sunucusu olabilir. Bir etki alanı üyesinde, normalde bir etki alanı zaman kaynağı olacaktır. Bir sanal makine, bir ana makine entegrasyon sağlayıcısı kullanabilir.
Local CMOS Clock (Yerel CMOS Saati) veya Free-running System Clock (Serbest Çalışan Sistem Saati) harici bir kaynakla senkronizasyon onaylamaz. Eksik veya eski bir başarılı senkronizasyon zamanı da araştırma yapılması gereken bir nedendir.
Yeni bir senkronizasyon iste
w32tm /resync /rediscover
Sonucu bekleyin, ardından durumu tekrar sorgulayın:
w32tm /query /source
w32tm /query /status
Senkronizasyon başarılı olursa ve durum beklenen kaynağı ve yakın tarihli bir başarılı senkronizasyon zamanını gösterirse, aşağıdaki Sonucu Doğrula adımına devam edin. Mevcut çalışan zaman kaynağınızı koruyabilirsiniz.
Bağımsız bir sunucunun bir zaman kaynağına ihtiyacı varsa
Bu bölümü yalnızca çalışan bir yönetilen zaman kaynağı olmayan bağımsız bir sunucu için kullanın. Bağımsız sunucu, bir Active Directory etki alanına bağlı olmayan sunucudur.
Hosting sağlayıcınız bir NTP sunucusu belirtiyorsa, onların belgelenmiş ayarlarını kullanın. Aksi takdirde, Windows'u Microsoft'un genel zaman sunucusunu kullanacak şekilde yapılandırabilirsiniz:
w32tm /config /manualpeerlist:"time.windows.com,0x8" /syncfromflags:manual /update
Restart-Service -Name W32Time
w32tm /resync /rediscover
0x8 bayrağı NTP istemci modunu seçer. Burada W32Time'yi yeniden başlatmak, Windows zaman hizmetini yeniden başlatır; FXServer'ı yeniden başlatmaz.
Sonucu kontrol edin:
w32tm /query /source
w32tm /query /status
Microsoft, bu yapılandırma seçeneklerini Windows Zaman hizmeti araçları ve ayarları içinde belgeler.
Sonucu Doğrula
Oyuna dönmeden önce şunları onaylayın:
- Yeniden senkronizasyon komutu başarıyla tamamlandı.
- Source (Kaynak) bu sunucu için beklediğiniz zaman kaynağını gösteriyor.
- Last Successful Sync Time (Son Başarılı Senkronizasyon Zamanı) güncel.
Saati yapılandırdığınız NTP kaynağı ile de karşılaştırabilirsiniz:
w32tm /stripchart /computer:time.windows.com /samples:5 /dataonly
Farklı bir NTP sunucusu kullanıyorsanız, time.windows.com kısmını o sunucunun adresiyle değiştirin. Bu işlem beş sapma örneği toplar ve ardından durur. Sapma saniye cinsinden gösterilir; senkronize edilmiş bir saat, dakikalar veya saatler yerine sıfıra yakın olmalıdır. Windows bazı farklılıkları kademeli olarak düzeltebilir, bu nedenle sapma hala dengeleniyorsa tekrar kontrol edin.
/stripchart saatleri karşılaştırır; onları senkronize etmez. Ayrıca Windows Zaman hizmetinden farklı bir UDP kaynak bağlantı noktası kullanır, bu nedenle başarılı bir karşılaştırma tek başına W32Time'ın senkronize olabileceğini kanıtlamaz. Yeniden senkronizasyon sonucunu ve hizmet durumunu da kontrol edin.Görev Merkezi'ni tekrar deneyin
Görev Merkezi'ne dönün ve "Tekrar dene" seçeneğine tıklayın veya kapatıp tekrar açın. Bir sonraki istek, düzeltilmiş sunucu saatinden alınan yeni bir zaman damgasını kullanır.
Sadece düzeltilmiş bir sistem saatini almak için normalde bir FiveM veya kaynak yeniden başlatması gerekmez.
Eğer Merkez hala hata veriyorsa, en son sunucu günlüğünü kontrol edin. Süregelen bir expired_signature, sunucu saatinin hala incelenmesi gerektiği anlamına gelir. invalid_signature dahil diğer hatalar kendi teşhislerini gerektirir; saati senkronize etmek her kimlik doğrulama sorununu çözmez.
Sorun Giderme
Erişim reddedildi
Mevcut PowerShell penceresini kapatın ve Yönetici olarak çalıştır ile yeniden açın. Zaman hizmeti ayarlarını değiştirmek için yerel yönetici haklarına sahip bir hesap gereklidir.
Hizmet başlatılmadı
Hizmet komutlarını yükseltilmiş bir PowerShell penceresinde tekrar çalıştırın:
Set-Service -Name W32Time -StartupType Automatic
Start-Service -Name W32Time
Get-Service -Name W32Time
Hizmet durumu Running (Çalışıyor) olmalıdır. Ardından yeniden senkronizasyon komutunu tekrarlayın. Eğer yönetilen bir politika hizmeti devre dışı bırakıyor veya ayarlarını geçersiz kılıyorsa, yöneticinize veya barındırma sağlayıcınıza bu politikayı kontrol etmesini söyleyin.
Zaman verisi bulunamadı
Bu genellikle Windows'un zaman kaynağından geçerli bir yanıt alamadığı anlamına gelir. Şunları kontrol edin:
- Yapılandırılmış NTP ana bilgisayar adı doğru yazılmıştır ve DNS üzerinden çözümlenmektedir.
- Zaman kaynağı kullanılabilir durumda ve NTP yanıtları sağlıyor.
- Windows Güvenlik Duvarı, sağlayıcı güvenlik duvarı ve ağ; UDP 123 portu üzerinden NTP isteğine ve yanıtına izin veriyor.
Örneğin, time.windows.com kullanacak şekilde yapılandırılmış bağımsız bir sunucuda, DNS çözümlemesini şu şekilde kontrol edin:
Resolve-DnsName time.windows.com
Başarılı bir DNS sorgusu yalnızca isim çözümlemesini onaylar. NTP trafiğinin geçebileceğini kanıtlamaz. Senkronizasyon hala başarısız oluyorsa, sağlayıcınızdan UDP 123'ü kontrol etmesini isteyin; güvenlik duvarını devre dışı bırakmak gerekli değildir.
Daha fazla kontrol için Microsoft'un "no time data was available" hatası hakkındaki kılavuzuna bakın.
Saat tekrar yanlış hale geliyor
Windows Zaman hizmetinin çalışmaya devam ettiğinden ve kaynağına ulaşabildiğinden emin olun. Bir sanal makinede, hipervizör veya barındırma sağlayıcısı da konuk saati etkileyebilir. Düzeltilmiş konuk saatini tekrar tekrar üzerine yazıyorsa, sağlayıcınızdan ana makine saatini kontrol etmesini isteyin.
Hub her başarısız olduğunda saati manuel olarak ayarlamak yerine otomatik senkronizasyonun çalışmasını sağlayın.
İlgili kılavuz
İtfaiye Sistemi'nin görev oluşturma ve paylaşma iş akışları için Scenario Creator ve Hub kısmına bakın.
ESX, QBCore ve Qbox: Framework'ünüzü Ayarlayın ve Meslekleri Oluşturun
Pratik bir FiveM başlangıç kılavuzu: framework'ünüzü kurun, meslekleri ve rütbeleri doğru şekilde oluşturun, mesai durumunu ve patron erişimini anlayın ve her şeyin kaydedildiğini kontrol edin.
FiveM Güncellemelerini Basitleştirmek ve Her Değişikliği Tespit Etmek İçin GitHub Desktop Kullanımı
FiveM sunucu sahipleri için komut satırı gerektirmeyen bir kılavuz: bir güncellemede tam olarak neyin değiştiğini görmek, kendi yapılandırma düzenlemelerinizi korumak ve bir şeyler bozulduğunda anında geri yüklemek için GitHub Desktop kullanın.