Windows와 함께 듀얼 부트에서 Linux를 사용하기 시작한 이래로 컴퓨터를 재부팅 할 때 다른 OS의 시간이 잘못되었다는 것을 알았습니다. 예를 들어 Linux에서는 12:00, 다시 부팅하고 Windows에서는 18:00 BIOS를 확인할 때 RTC는 18:00로 설정되었습니다. 시간대는 -06 : 00 CST이므로 Linux는 RTC 시간을 UTC로 설정하고 시간대를 기준으로 시간을 다시 계산한다고 가정하지만 Windows는 RTC를 현지 시간으로 설정합니다. 둘 다 동일한 NTP 서버를 사용하여 시간을 동기화합니다.
문제는 어느 쪽이 옳은 일을하고 있는가하는 것입니다. 둘 다 올바른 시간을 갖기 위해 시간대 설정을 UTC로 설정해야하는 것은 무엇입니까?
답변
둘 다 잘못은 아니지만 UTC를 사용하는 것이 더 좋습니다. RTC에는 시간대가 없습니다. 멍청한 벽시계 일뿐입니다. 현지 시간대가 DST를 준수하는 경우 (많은 풍미가 있고 규칙이 임의로 변경됨) 일년에 두 번이면 가서 변경해야합니다. OS가 당신을 위해 그것을 할 것이지만, RTC가 UTC라면 OS는 UTC-> 로컬 번역을 수행합니다. 왜 시계와 바이올린을 사용해야합니까? 또한 DST “폴백 (fall back)”전환 중에 RTC는 몇 시인 지 알려줄 수 없습니다! 오전 1시 30 분 CDT 또는 CST입니까?
분명히 Windows 8은 RTC에 UTC 를 지원합니다 . Windows 7도 그랬지만 문제가있었습니다 .
사람들이 BIOS 시계를 수동으로 설정했을 때 이에 대한 더 나은 논쟁이 있었지만 지금은 서버 기반 시간이 훨씬 더 널리 퍼져 있습니다.
답변
나는 최근에 같은 문제에 직면했으며 이것이 내가 고친 방법입니다. 두 OS 모두에서 약간의 변경이 필요합니다.
나는 리눅스를 먼저 시작했다. 다음 명령을 루트로 실행하십시오.
ntpdate pool.ntp.org
올바르게 설정하지 않으면 시간이 업데이트됩니다.
이제이 명령으로 하드웨어 시계를 UTC로 설정하십시오.
hwclock --systohc --utc
이제 Windows로 부팅하고 다음 레지스트리를 추가하십시오. 메모장의 아래 코드를 사용하여 간단히 .reg 파일을 만드십시오. 저장하고 실행하십시오.
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation]
"RealTimeIsUniversal"=dword:00000001
다음 부팅부터 두 OS 모두 정확한 시간을 표시합니다.
답변
일반적인 경우는 Linux 시스템에 RTC (실시간 시계)가 UTC로 설정되어 있고 현지 시간으로의 변환은 표준 시간대 데이터 및 TZ
환경 변수 에 따라 사용자 공간에서 수행됩니다 . 이는 시스템 RTC가 단조롭게 증가하고 나중에 모든 시간대 마법을 적용하여 향후 파일에 일반적으로 타임 스탬프가 없는지 확인하기 때문에 “나쁘지 않습니다”(최소한 1 년에 한 번 이상 발생할 수 있음). 시스템 RTC는 현지 시간으로 설정됩니다. Ken이 지적했듯이 RTC 자체에는 시간대 개념이 없으며 시간 만 있습니다.
알다시피, 일반적으로 RTC가 현지 시간 으로 설정 될 것으로 예상되는 Microsoft 운영 체제 제품군과 같이 정상적으로 작동하지 않는 시스템으로 이중 부팅 할 때 문제가 발생합니다 . 예, Windows NT (실제로 NT 4로 돌아가는 것으로 생각합니다) 는 RTC를 UTC로 설정 한 상태에서 작동 할 수 있지만 적어도 마지막으로 실제로 지원되는 구성이 아니며 여러 가지주의 사항이 있음을 알았습니다.
귀하의 경우 쉬운 해결책은 아마도 RTC를 현지 시간으로 설정하고 Linux 시스템에 RTC가 현지 시간으로 설정되어 있음을 알리는 것입니다 (정확한 메커니즘은 배포 및 릴리스 버전에 따라 다르지만 분명히 우분투 UTC=no
에서 설정 한 / etc / default / rcS ), 운영 체제를 구성하여 운영 체제 중 하나만 (가급적 가장 많이 사용 하는 운영 체제) 구성하십시오. 일광 절약 시간제 변경 사항을 처리합니다 . 그리고 단일 사용자 시스템에서 관리 할 수있는 단점이 있습니다.
또한 Windows 측에서 UTC를 표준 시간대로 사용하도록 설정하고 Windows에서 자동 일광 절약 시간제 변경을 끄고 Linux에서 RTC를 UTC로 설정하고 해당 관행에 따라 변환 된 시간을 표시하도록 설정할 수 있습니다. 그러나 이로 인해 Windows에 날짜와 시간이 UTC로 표시되어 실제로 원하는 것이 아닐 수 있습니다. UTC에서 최대 3 시간을 쉬는 유럽인에게는 큰 문제는 아니지만 미국에서는 더 문제가 될 수 있습니다. Windows를 가끔씩 만 사용하고 기본 OS가 Linux 또는 다른 RTC-UTC 인식 OS 인 경우에는 더욱 현실적인 옵션입니다.
답변
이중 부팅으로 Windows와 Ubuntu간에 시간 충돌이 발생하면 Ubuntu는 기본적으로 하드웨어 시계에 시간을 UTC로 저장하고 Microsoft Windows는 시간을 현지 시간으로 저장하므로 Ubuntu와 Windows간에 시간이 충돌하기 때문에 발생합니다.
이 Ubuntu 안내서에 설명 된대로 현지 시간을 사용하도록 Linux 시스템을 설정해야합니다 .
답변
나는 Windows 10을 이중 부팅하고 OS를 리믹스하고 있으며 Windows 용 가이드 만 따라 두 가지 모두 올바르게 작동했습니다. 명령 줄을 사용하여 스크립트를 더 쉽게 추가했습니다.