Windows vs Linux Yerel Zaman?


40

Linux'u Windows ile dualboot'ta kullanmaya başladığımdan beri, makineyi yeniden başlattığımda, diğer işletim sistemindeki zamanın yanlış olduğunu fark ettim, örneğin Linux'ta saat 12:00 idi, sonra yeniden başlatıldım ve Windows'da saat 18:00 idi ve BIOS'u kontrol ettiğimde RTC 18: 00'a ayarlandı. Zaman dilimim -06: 00 CST olduğundan, Linux'un RTC'nin saatini UTC'ye ayarladığını ve saat dilimine göre zamanı yeniden hesapladığını, Windows ise RTC'yi yerel saate göre ayarladığını varsayarım. Her ikisi de zamanı eşitlemek için aynı NTP sunucusunu kullanır.

Soru hangisi doğru şeyi yapıyor? Her ikisinde de doğru zamanı alabilmek için saat dilimini UTC'ye ayarlamalıyım?



soru: neden bu Windows ve Linux'un eski sürümlerinde olmadı?
golimar

Yanıtlar:


16

İkisi de yanlış değil, ancak UTC kullanmak daha doğru. RTC'nin saat dilimi yoktur; Bu sadece aptal bir duvar saati. Yerel saat diliminiz DST’i onurlandırırsa (bunlardan pek çok tat ve kurallar isteğe bağlı olarak değişir), o zaman yılda iki kez gitmek zorundasınız. İşletim sistemi sizin için yapacak, ancak eğer RTC UTC ise, OS yine de UTC-> yerel çeviriyi yapar - neden saatle oynamalısınız? Ayrıca, DST "geri çekilme" geçişi sırasında, RTC size saatin kaç olduğunu söyleyemez! Saat 1:30 mı CDT mi yoksa CST mi?

Görünüşe göre, Windows 8 RTC için UTC'yi destekliyor . Windows 7 de yaptı, ancak sorunlar vardı .

İnsanlar BIOS saatlerini manuel olarak ayarladıklarında buna karşı daha iyi bir argüman vardı , ancak sunucu tabanlı zaman şimdi çok daha yaygın.


68

Son zamanlarda aynı problemle karşılaştım ve bu şekilde düzelttim. Her iki işletim sisteminde de küçük bir değişiklik yapmanız gerekiyor.

İlk önce Linux ile başladım. Aşağıdaki komutları root olarak çalıştırın.

ntpdate pool.ntp.org

Doğru ayarlanmadıysa, bu zamanınızı güncelleyecektir.

Şimdi bu komutla donanım saatini UTC'ye ayarlayın.

hwclock --systohc --utc

Kaynak

Şimdi Windows'a önyükleme yapın ve aşağıdaki kayıt defterini ekleyin. Sadece aşağıdaki Not Defteri'nde kodu kullanarak bir .reg dosyası oluşturun. Sakla ve çalıştır.

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation]
"RealTimeIsUniversal"=dword:00000001

Kaynak

Bir sonraki açılıştan itibaren her iki işletim sistemi de size doğru zamanı gösterecektir.


6
Somut talimatlarla en iyi belgelenmiş cevap! +1.
agtoever

1
Kayıt defteri ayarının hangi Windows sürümlerine uygulanacağını içermelidir.
Tanath

2
Windows ne zaman yerelden farklı bir zaman tutan bir sistem saatini anlama yeteneğini kazandı?
Mark

1
Bu kayıt defteri tweak, Windows XP / Vista / 7/8 / 8.1 için çalışıyor. @Tanath
Ayan

3
@Mark Windows XP'de.
Michael Hampton,

4

Normal durum, Linux sistemlerinin RTC'ye (gerçek zamanlı saat) UTC olarak ayarlanmış olmasıdır ve yerel saate dönüşüm, zaman dilimi verilerine ve TZortam değişkenine bağlı olarak kullanıcı alanında yapılır . Bu "daha az kötüdür" çünkü sistem RTC'sini monoton olarak arttırır ve daha sonra herhangi bir zaman dilimi sihri uygular; Sistem RTC yerel saate ayarlanır). Ken'in belirttiği gibi , RTC'nin kendisinin bir zaman dilimi kavramı yoktur, sadece zaman vardır.

Gördüğünüz gibi, bu normal olarak çalışmayan bir sistemde çift önyükleme yaparken, genellikle RTC'nin yerel saate ayarlanmasını bekleyen Microsoft işletim sistemi ailesi gibi sorunlara neden olur . Evet, Windows NT (Aslında tüm NT 4 yolu geri gidiş düşünüyorum) olabilir UTC RTC seti ile çalışır, ancak en azından son ben gerçekten desteklenen bir yapılandırma değildi ve uyarılar bir dizi vardı görünüyordu.

Sizin durumunuzda kolay çözüm, yerel saate RTC'yi ayarlamak RTC yerel saate ayarlandığını Linux sistemini anlatmak için muhtemelen (Bunu yapmanın tam mekaniği dağıtım ve yayım sürümü göre değişir, ancak görünüşe göre Ubuntu ayarladığınız UTC=no/ içinde etc / default / rcS ) ve ardından işletim sistemlerini yalnızca bunlardan birini (tercihen en çok kullandığınızdan birini kullanın) ayarlayın, çünkü diğerlerinde görüntülenen süre, başlatılana ve bir şansı olana kadar yılda iki kez yanlış olur. Bunu düzeltmek için) gün ışığından yararlanma saati değişikliklerini işler . Ve tek kullanıcılı bir sistemde yönetilebilir olması gereken olumsuz yönleriyle yaşayın.

Ayrıca , Windows tarafını UTC'yi bir saat dilimi olarak kullanacak ve Windows'ta otomatik gün ışığından yararlanma saati değişikliklerini kapatacak ve Linux'un RTC'yi UTC'de tutacak ve uygulamalarına göre dönüştürülen süreyi gösterecek şekilde ayarlayabilirsiniz. Bununla birlikte, bu, Windows'un gerçekte istediğinizi olmayabilir, UTC'de tarih ve saati göstermesine neden olacaktır. Bu, UTC'den en fazla üç saat uzakta olan ancak ABD'de daha fazla sorun olabilen Avrupalılar için büyük bir sorun değil. Bu, yalnızca Windows'u yalnızca zaman zaman kullanıyorsanız ve birincil işletim sisteminiz Linux veya başka bir RTC-UTC uyumlu işletim sistemi ise, daha gerçekçi bir seçenek olabilir.


“Gerçekten desteklenen bir yapılandırma değildi ve çok sayıda uyarı vardı” hakkında bir bilginiz var mı?
Random832

@ Random832 Bunu bulabilecek miyim bir bakayım. Bunu daha önce gördüğümü biliyorum, ancak şimdi en azından hızlı bir google aramayla bulamadı.
CVn

2

İkili önyükleme yaparsanız ve Windows ile Ubuntu arasında zaman çakışması varsa, bunun nedeni Ubuntu’nun donanım saatinde varsayılan olarak UTC olarak kaydetmesi ve Microsoft Windows’un saati yerel saat olarak depolaması ve böylece Ubuntu ile Windows arasında çelişkili zamanlara neden olmasıdır.

Linux sisteminizi, Ubuntu için bu kılavuzda açıklanan yerel saati kullanacak şekilde ayarlamanız gerekir .


Yerel saati kullanıyor ve gerçekten zamanın UTC olarak saklandığının farkındayım (en azından soruyu okursanız), ve bunu düzeltmek için ne yapabilirim biliyorum, soru aslında doğru olanı yapan şeydir. bunun yerine diğerini değiştirin.
arielnmz

Varsayılan olarak, Windows yerel kullanır, Mac OS UTC kullanır ve UNIX benzeri işletim sistemleri değişiklik gösterir. Genellikle UTC standardını kullanan bir işletim sistemi CMOS (donanım saati) süresini UTC saati (GMT, Greenwich saati) olarak görür ve Sistem saatini önyüklemede zaman diliminize göre ayarlarken buna göre bir ayar yapar.

Yine, bunun farkındayım, sadece hangi işletim sisteminin doğru yaptığını bilmek istiyorum, böylece pencereleri UTC'ye ayarlayabilir ve bunu düzeltebilirim, ya da tam tersi.
arielnmz

@ MagagedSegaIsmailov Mac OS, BIOS RTC kullanan herhangi bir sistemde çalışıyor mu? EFI'nin bir miktar akıl sağladığını varsayıyordum.
Random832

0

Ben çift önyükleme pencereleri 10 ve remix os ve basitçe sadece Windows rehberinin benim için çalıştı her iki kez doğru çalıştı sonra. Komut satırını size komut dosyası eklemek için de kullandım


Lütfen cevap olarak "teşekkür" eklemeyin. Siteye biraz zaman ayırın ve beğendiğiniz yanıtları düzeltmek için yeterli ayrıcalıklara sahip olacaksınız.
DavidPostill
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.