Làm cách nào để vô hiệu hóa Thời gian lưu trữ của systemd đã bị thay đổi thư rác tin nhắn trên hệ thống trong khi sử dụng sdwdate?


10

Do sử dụng kết hợp kéo dài Debian, sử dụng systemd theo mặc định và sdwdate (sử dụng Bộ điều chỉnh đồng hồ chậm ( gh )), đồng hồ hệ thống của tôi thường xuyên bị thay đổi.

Kết quả là journalctl -fbị spam vô tận bởi.

[...]
Nov 07 13:46:49 host systemd[766]: Time has been changed
Nov 07 13:46:50 host systemd[766]: Time has been changed
Nov 07 13:46:51 host systemd[766]: Time has been changed
[...]

Đây không phải là một vấn đề trên Debian wheezy đã sử dụng sysvinit.

Làm thế nào systemd có thể được cấu hình để không gửi Time has been changedtin nhắn đến tạp chí?

Một câu hỏi liên quan Làm thế nào để vô hiệu hóa thư rác "Thời gian đã được thay đổi" trong / var / log / syslog trên Debian jessie? đã được giải quyết, nhưng giải pháp đó sẽ không hoạt động ở đây.


systemdquan tâm sâu sắc về bộ tính giờ. Điều này dường như được kích hoạt bằng cách cập nhật đồng hồ phần cứng hwclock --systohc, ví dụ , bạn có đang gọi nó mỗi giây không?
mr.spuratic

@ mr.spuratic nhìn vào nguồn được liên kết, đó dường như chính xác là những gì đang xảy ra.
Dan Getz

Vâng, đó là những gì điều chỉnh đồng hồ chậm (sclockadj) đang làm. @ mr.spuratic
adrelanos

1
Yêu cầu tính năng systemd: option to disable systemd's “Time has been changed” message spam in journal log github.com/systemd/systemd/issues/5207
adrelanos

Câu trả lời:


10

Thông điệp đến từ src/core/manager.ccác nguồn systemd. Nó được mã hóa cứng để sử dụng mức ghi nhật ký hệ thống INFO.

Theo mặc định systemd ghi thông báo có mức INFO, nếu bạn có thể thay đổi điều đó bằng cách thay đổi /etc/systemd/system.confthành:

LogLevel=notice

nhưng bạn cũng sẽ mất khá nhiều tin nhắn thông tin khác.

Nó có thể là tốt nhất để vá src/core/manager.cđể đọc:

 log_struct(LOG_DEBUG,
            MESSAGE_ID(SD_MESSAGE_TIME_CHANGE),
            "MESSAGE=Time has been changed",
            NULL);

( LOG_DEBUGđược định nghĩa là mức cao hơn tiếp theo và mức cao nhất tiếp theo sys/syslog.h) hoặc nhận xét toàn bộ tin nhắn.

Tôi chưa tìm thấy cách nào chỉ báo cáo các thay đổi của bộ đếm thời gian có kích thước tối thiểu là X giây. Nhưng nếu điều đó có thể chắc chắn sẽ tạo ra một bản vá dễ bị lỗi và phức tạp hơn.

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.