Sửa đồng hồ hệ thống CentOS


11

Sử dụng chức năng thời gian C (số giây kể từ Kỷ nguyên) cho thấy thời gian trên máy chủ CentOS 6 hiện tại của tôi chậm hơn khoảng 7 giờ so với máy chủ khác có thời gian chính xác. Làm thế nào tôi có thể sửa đồng hồ hệ thống? Tôi không nghĩ nó trôi dạt vì tôi mới thiết lập máy chủ này vài tuần trước, nhưng nó có thể. Tôi thiết lập ntpd nhưng không được, có lẽ vì chênh lệch múi giờ quá nhiều.


3
Kiểm tra đầu ra từ lệnh TZ=UTC date.
Michael Hampton

1
bạn nói đúng, ntpd sẽ không sửa lỗi chênh lệch thời gian như vậy. Để ntpd thực sự hoạt động, hệ thống của bạn phải ở trong một vài phút của máy chủ thời gian.
fpmurphy

Thứ bảy ngày 30 tháng 11 09:09:21 UTC 2013 là đầu ra tôi vừa có
user3180

Vâng, đó là bảy giờ sau.
Michael Hampton

Câu trả lời:


23

Câu trả lời đơn giản là "đặt ngày theo cách thủ công", điều bạn cần làm, nhưng để ngăn điều này xảy ra lần nữa, có nhiều việc bạn nên làm.

  1. Đảm bảo rằng cấu hình múi giờ của hệ thống ở trạng thái lành mạnh.

    Trừ khi có một lý do rất mạnh mẽ để không làm như vậy (chẳng hạn như các vấn đề tương thích phần mềm), đồng hồ máy chủ phải luôn chạy theo thời gian UTC.

    Nếu bạn quyết định không sử dụng UTC, hãy chọn múi giờ bằng cách chạy tzselect. Một múi giờ sẽ được in trên màn hình mà bạn sẽ sử dụng dưới đây. Một ví dụ sẽ là Europe/Moscow. Nếu không thì sử dụng UTCnhư múi giờ bên dưới.

    Here is that TZ value again, this time on standard output so that you
    can use the /usr/bin/tzselect command in shell scripts:
    Europe/Moscow
    

    Đặt đồng hồ hệ thống theo múi giờ mong muốn của bạn theo các bước sau:

    1. Thay thế nội dung /etc/sysconfig/clockbằng:

      ZONE="<timezone>"
      UTC=true
      

      Ví dụ:

      ZONE="Europe/Moscow"
      UTC=true
      

      Lưu ý rằng UTC=truenên được đặt ở đây, ngay cả khi bạn không sử dụng UTC làm múi giờ của mình. Điều này đề cập đến đồng hồ phần cứng của máy chủ, luôn luôn là UTC bất kể múi giờ hệ thống bạn đã chọn.

    2. Thay thế /etc/localtimetệp bằng một liên kết đến múi giờ đã chọn:

      # ln -snf /usr/share/zoneinfo/<timezone> /etc/localtime
      

      Ví dụ:

      # ln -snf /usr/share/zoneinfo/Europe/Moscow /etc/localtime
      # ln -snf /usr/share/zoneinfo/UTC /etc/localtime
      
  2. Đặt đồng hồ theo cách thủ công đến thời gian hiện tại.

    1. Đồng bộ hóa đồng hồ hệ thống với thời gian hiện tại:

      # ntpd -g -q
      
    2. Kiểm tra xem thời gian có đúng không:

      # date
      
    3. Đồng bộ hóa đồng hồ phần cứng của máy chủ với đồng hồ hệ thống:

      # hwclock -wu
      
  3. Khởi động lại máy tính. Khởi động lại là cần thiết bởi vì tất cả các dịch vụ hệ thống phải được khởi động lại để lấy thời gian và múi giờ đã sửa, và đồng hồ phần cứng của máy chủ cần phải được kiểm tra (ví dụ: pin bị lỗi).

    Sau khi khởi động lại, hãy kiểm tra xem hệ thống hiển thị thời gian chính xác và ntpd đang chạy đúng.


Cảm ơn bạn rất nhiều Michael. Làm thế nào để tôi đảm bảo nó là chính xác trong khi thiết lập? Tôi nhớ chọn đúng múi giờ, nhưng thời gian kết thúc vẫn sai.
dùng3180

Trong trình cài đặt đồ họa, có một hộp kiểm cho biết "Đồng hồ hệ thống sử dụng UTC". Luôn luôn kiểm tra này, bất kể múi giờ bạn chọn.
Michael Hampton

0

điểm là, đảm bảo múi giờ giống với các hộp bạn đang so sánh

BIÊN TẬP

nếu TZ khác

/ etc / giờ địa phương

sau đó nhớ lấy phần bù UTC khi so sánh thời gian hệ thống

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.