systemctlの状態に将来の時間と残りの時間が表示されるのはなぜですか?

systemctlの状態に将来の時間と残りの時間が表示されるのはなぜですか?

""をエクスポートすると、systemctl status通常、出力にステータスとそのステータスにあった時間を示す行が表示されます。

「いいね!」(数分前にこの記事を投稿しました)

Active: active (running) since Wed 2023-11-22 01:56:06 CST; 10h ago

ただし、システム時間が01:19:27 CSTの場合、同じサービスは次の行を受け取ります。

Active: active (running) since Wed 2023-11-22 **01:56:06** CST; 36min **left**

なぜ「since」の後の時間は未来型ですか? 「残り」の時間が表示されるのはなぜですか?なぜ去るの?

私は過去の時間とx時間単位前の時間を見ることを期待しています。

systemctl list-timers --allサービスに関連するタイマーがあるかどうかを確認するために ""を実行してみましたが、何も見つかりませんでした。

答え1

打ったかもしれないこのシステムエラーこれは、RTCが現地時間に設定されている場合に発生します(timedatectlこれを確認してください)。

Systemdをアップグレードするか、RTCをUTCに設定してください。

# timedatectl set-local-rtc 0

後者が好ましい。引用するtimedatectl手動:

現地のタイムゾーンでRTCを維持することは完全にはサポートされておらず、タイムゾーンの変更と夏時間の調整に関するさまざまな問題が発生する可能性があります。可能であれば、RTCをUTCモードにしてください。

ここで、「夏時間の調整の問題」とは、夏時間の変更中にコンピュータがシャットダウンした場合(しばらく前に発生)、RTCから読み取った時間が「変更に合わせて調整されていない」ことを意味します。hwclock手動)。

関連情報