/etc/localtime은 심볼릭 링크가 아닙니다.

/etc/localtime은 심볼릭 링크가 아닙니다.

~에 따르면localtime Linux 매뉴얼 페이지에서:

/usr/share/zoneinfo/에 대한 절대 또는 상대 심볼릭 링크여야 하며 그 뒤에 "Europe/Berlin" 또는 "Etc/UTC"와 같은 시간대 식별자가 와야 합니다.

내 환경의 출력은 다음과 같습니다 ls -la /etc/localtime. 이는 심볼릭 링크가 아닙니다.

-rw-r--r--. 1 root root 724 Apr  3  2012 /etc/localtime

그리고cat /etc/localtime

TZif2їԒazpҹӂ­

답변1

심볼릭 링크나 하드 링크가 아닌 영역 파일의 복사본이 만들어지는 경우가 발생할 수 있습니다.

시스템에 설치된 영역 파일의 해시를 비교하여 소스를 확인할 수 있습니다.

$ sha256sum /etc/localtime
821d6d97e3d34a3de2315279260e139adf484e581b4d187f8e6b532403b0f1c6  /etc/localtime

$ find /usr/share/zoneinfo/ -type f -exec sha256sum "{}" + |grep 821d6d97e3d34a3de2315279260e139adf484e581b4d187f8e6b532403b0f1c6
821d6d97e3d34a3de2315279260e139adf484e581b4d187f8e6b532403b0f1c6  /usr/share/zoneinfo/posix/America/Kentucky/Louisville
821d6d97e3d34a3de2315279260e139adf484e581b4d187f8e6b532403b0f1c6  /usr/share/zoneinfo/posix/America/Louisville
821d6d97e3d34a3de2315279260e139adf484e581b4d187f8e6b532403b0f1c6  /usr/share/zoneinfo/America/Kentucky/Louisville
821d6d97e3d34a3de2315279260e139adf484e581b4d187f8e6b532403b0f1c6  /usr/share/zoneinfo/America/Louisville

두 번째 필드의 ls 출력에서 ​​"1"은 파일에 대한 하드 링크가 1개 있다는 의미이므로 zoneinfo 경로의 원본 파일과 동일한 파일에 대한 링크가 아닙니다.

최신 Fedora에서는 timedatectl을 사용할 수 있습니다.

timedatectl list-timezones

또는

timedatectl set-timezone time_zone

그렇지 않으면 /usr/share/zoneinfo/에서 ln -sf를 실행하여 /etc/localtime에 있는 해당 영역 파일을 덮어씁니다(만약의 경우를 대비해 백업해 두세요!)

나는 이 상황에 뭔가 문제가 있는 것이 틀림없다고 생각하며, 복사본보다 링크를 갖는 것이 더 나은 이유는 패키지 업데이트가 타이밍 규칙을 변경할 수 있기 때문입니다. 하지만 이것은 이미 10년이 된 Fedora 17입니다... 그래서 업데이트가 전혀 없습니다 ;)

관련 정보