동일한 머신에서 두 개의 O / S가 1 시간의 클럭 차이를 갖는 이유는 무엇입니까?


0

내 컴퓨터에는 Linux 배포 (기본)와 Windows 7 (거의 사용되지 않음)의 두 가지 O / S가 있습니다.

두 O / S 모두 시간대 (UTC + 1)에 설정되어 있습니다.

BIOS에서 시간을 설정 한 방법에 따라 Windows는 시간을 현재 시간 1 시간 전 또는 Linux 1 시간 후로 표시합니다.

왜 이런 일이 발생합니까?

Windows 시스템은 일반적으로 인터넷 연결이 끊어지기 시작합니다. Linux는 대신 연결되어 있으므로 잠시 후 날짜를 수정하지만 재부팅 후에는 다시 잘못 구성됩니다.

편집 : https://serverfault.com/questions/16107/why-does-ubuntu-9-04-reset-my-windows-clock 의 사본으로 발견되었습니다.

답변:


2

여기서 할 수있는 몇 가지 문제를 생각할 수 있습니다.

먼저, 일광 절약 시간제를 사용하여 다른 시간대가 아닌 다른 시간대를 사용하도록 설정했거나 OS 중 하나가 잘못된 시간대로 구성되었을 수 있습니다.

Linux는 컴퓨터의 하드웨어 시계가 로컬 대신 UTC로 설정되어 있다고 가정하고 Windows는 로컬로 설정되어 있다고 생각할 수 있습니다. UTC + 1 또는 UTC-1 인 경우 해당 동작이 나타날 수 있습니다. Linux는 하드웨어 시계 값을로드하여 로컬로 조정 한 다음 종료시 하드웨어 시계에 쓰기 전에 UTC로 다시 변환 할 수 있습니다.


시간대는 둘 다 정확하지만 두 O / S가 하드웨어 시계를 다른 방식으로 해석한다는 사실은 옳습니다. 어떻게 고쳐야할지 모르겠습니다.
Marcus

해결책은 여기에서 찾을 수 있습니다 : serverfault.com/questions/16107/…
Marcus

@Marcus는 재부팅 후에도 지속됩니까? 그렇다면 축하합니다. 내가 너무 늦은 것 같습니다. : \- /etc/default/rcS모든 시스템에 존재하지는 않습니다. 우분투 전용이라고 생각합니다. 데비안 (우분투에서 파생 된)에는 없습니다.
Wyatt8740

살아 남았다! 드물게 있지만, 때로는 그것을 잊지 사용으로 나는 매우 행복 해요 (인 1 시간 늦게 ... 아주 골칫거리)
마커스

@Marcus는 그때 들어서 기쁘다. 행복하게 작동했습니다. 때때로 저에게는 혼란 스러웠습니다. 나는 시간대 이동 특히 때
Wyatt8740

1

Linux 배포판은 BIOS 시계가 UTC를 사용한다고 가정하고 Windows 설치는 BIOS 시간이 현지 시간이라고 가정합니다.

다음은 듀얼 부팅으로 랩톱에서 설정하는 방법입니다. 시스템 시계에 UTC 대신 현지 시간을 사용하도록 Linux 측을 변경합니다. 먼저 다음과 같이 시간이 linux-side로 올바르게 설정되도록 명령을 실행하십시오 root.

date -s "2 feb 2016 18:05:15"

hwclock --hctosys --localtimeBIOS 날짜 / 시간 설정을 컴퓨터에 복사하고 현지 시간으로 설정해야합니다. hwclock --systohc --localtimeBIOS 시간을 UTC 대신 현지 시간으로 설정해야합니다. date위 명령으로 시간을 설정 한 후 다음을 실행 하는 것이 좋습니다 . hwclock --systohc --localtime 및 ALSO 실행 : hwclock --hctosys --localtime / etc / adjtime에 파일의 마지막 줄에 'LOCAL'이 있는지 확인하십시오. 'UTC'또는 이와 유사한 것 대신에. --hctosys --localtime플래그 함께 해당 프로그램을 수행 할 수있다. 그것은 그 가능성이 date혼자 할 것입니다,하지만 난 확인하지했습니다.

현지 시간으로 시스템 시간이 정확한지 확인하십시오. 날짜 설정 문자열의 형식에 대해 걱정하지 마십시오. 매우 유연합니다. 그것을 말할 수있는 다른 유효한 방법의 예 :

date -s "2 feb 2016 6:05:15 PM"
date -s "february 2, 2016 6:11:30 PM"
date -s "Tue Feb  2 18:11:30 EST 2016"

(GMT-5 동부 표준시입니다)

여전히 문제가 발생하면 시간대를 다시 선택해야 할 수도 있습니다. 데비안 또는 우분투와 같은 파생어에서는 sudo dpkg-reconfigure tzdatancurses 인터페이스에서 시간대를 변경 하는 데 사용 합니다.

해당 정보가 없으면 관련 시간대 정보 파일을 찾으십시오. 내 설치에서 이것은입니다 /usr/share/zoneinfo/America/Indiana/Indianapolis.

찾았 으면 다음으로 복사하십시오 /etc/localtime.

cp /usr/share/zoneinfo/America/Indiana/Indianapolis /etc/localtime

date이 작업을 수행 한 후에도 시간이 올바르게 설정되어 있는지 확인하십시오 . 그렇지 않으면 처음 두 명령 ( datehwclock)을 다시 실행 하십시오.

리눅스에서는 리눅스에서 설정 한 시간이 Windows와 올바르게 공유되도록해야합니다. 또는 수행 할 수는 있지만 UTC를 사용하도록 창을 설정하는 것이 더 어렵습니다. 이 작업을 수행하는 방법 버전 및 창 변경 사항은 업데이트 후 현지 시간으로 되 돌리는 것으로 알려져 있습니다.

hwclock컴퓨터가 NTP를 사용하여 인터넷을 통해 현재 시간을 가져 오기 때문에 모든 작업 을 무시 하는 특히 완고한 컴퓨터를 기억 합니다. 표준 시간대 설정은 NTP를 완전히 비활성화하지 않고이를 해결하는 유일한 방법이었습니다.

어쨌든, 그것은 그 문제에 대한 나의 모든 과거 경험의 큰 덤프 일뿐입니다. 그중 하나가 거의 확실하게 작동합니다. 시간대를 먼저 시도한 다음 hwclock --systohc --localtimeBIOS 시계가 현지 시간인지 확인하기 위해 완료 한 후에 확실히 시도 하십시오.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.