以前の日付を設定して再開すると、日付が2016年2月11日、2014年1月1日に変わりました。

以前の日付を設定して再開すると、日付が2016年2月11日、2014年1月1日に変わりました。

マイコンピュータで日付を「1990-??-??」に設定したいのですが、再起動すると次のように表示されます。

Ubuntu 1604では、システム日付は「2016年2月11日」ですが、RTCは「1990-??-??」です。

Ubuntu 1404では、両方とも「2014年1月1日」です。

これはUbuntuのバグですか?

これを行うには、次のコマンドを使用します。

  1. # timedatectl set-ntp no(自動時刻更新の停止)
  2. # timedatectl set-time "1990-8-8 20:20:20"(日付設定)
  3. # hwclock --systohc(同期RTC)

一部の日付をテストしたところ、Ubuntu 1604では「2016年2月11日」より前、Ubuntu 1404では「1998年1月1日」より前に日付を設定できないことがわかりました。

答え1

を使用すると、systemd起動時に「合理的な」時間を設定します。つまり、systemd自体のリリース日より早い時間を返すと、時計が前進します。この値は両方で設定されます。時刻同期そして内部に

ここが設定があるところです。TIME_EPOCH

答え2

UNIXで動作するリアルタイムクロックがない一般的な代替シナリオは、次のとおりです。

その後、カーネルはルートファイルシステムスーパーブロックのタイムスタンプを使用します。

もちろん、このdateコマンドを使用すると、少なくとも1970年1月1日から2038年までの範囲内でいつでも設定できます。

関連情報