Rtc invalid alarm

Ich habe in letzter Zeit öfters diese Meldung im Log

Mai 25 07:20:09 archlinux kernel: rtc rtc0: invalid alarm value: 2023-05-25T05:64:08

Wie bekommt man das gelöst ?

BIOS/RTC alarms can not be in the past., thats why you get that message…

BIOS/RTC-Alarme können nicht in der Vergangenheit liegen, deshalb erhalten Sie diese Meldung …

:vulcan_salute:

Wo findet man die Einstellung dazu ?

Mai 25 17:27:34 archlinux kernel: rtc rtc0: invalid alarm value: 2023-05-25T15:64:33
Mai 25 17:27:34 archlinux kernel: rtc_cmos 00:01: registered as rtc0
Mai 25 17:27:34 archlinux kernel: rtc_cmos 00:01: setting system clock to 2023-05-25T15:27:33 UTC (1685028453)

Der verhaut sich um 2 Stunden

Das ist eine Funktion, die im BIOS/UEFI ist, aber auch vom Kernel gesteuert werden kann. Mal nebenbei bemerkt, wenn du archlinux verwendest, dann ist es das falsche Forum. :wink:

Ich verwende Manjaro, weisst du doch

Mai 25 17:27:34 archlinux kernel: Linux version 6.1.29-1-MANJARO (builduser@fv-az292-908) (gcc (GCC) 12.2.1 20230201, GNU ld (GNU Binutils) 2.40) #1 SM>

Aber wieso will er die Uhr 2 Stunden zurück setzen ?

Weil 15:64:33 nicht korrekt ist? Mir ist nicht bekannt, dass es mehr als 60min in diesem Format gibt, eigentlich wäre es: 16:04:33 . Keine Ahnung, was dein BIOS da verzapft :man_shrugging:, aber auf jeden Fall scheint der Kernel die Uhrzeit zu korrigieren zu wollen.

hallo weingeist,

selbes problem hatte ich auch schon etwas länger her. irgendwie hat da auch ein update die zeiteinstellungen vermurkst. die zwei stunden ist cest+02.00 (central eastern time).
checke mal

systemctl status systemd-timesyncd.service

aktiv ?
ansonsten

sudo systemctl enable systemd-timesyncd.service
sudo systemctl start systemd-timesyncd.service
sudo systemctl mask systemd-timesyncd.service

wenn das noch nicht geholfen hat starte noch mal

timedatectl set-ntp true 

(kann sein das es sudo braucht, probiers aber erstmal ohne). ntp ist die netzwerkzeitsynchronisation.

systemctl status systemd-timesyncd.service                                                                                               ✔ 
● systemd-timesyncd.service - Network Time Synchronization
     Loaded: loaded (/usr/lib/systemd/system/systemd-timesyncd.service; enabled; preset: enabled)
     Active: active (running) since Thu 2023-05-25 20:26:18 CEST; 1h 58min left
       Docs: man:systemd-timesyncd.service(8)
   Main PID: 861 (systemd-timesyn)
     Status: "Contacted time server [2a00:7580:60:211::52]:123 (2.manjaro.pool.ntp.org)."
      Tasks: 2 (limit: 14158)
     Memory: 2.3M
        CPU: 41ms
     CGroup: /system.slice/systemd-timesyncd.service
             └─861 /usr/lib/systemd/systemd-timesyncd

Mai 25 20:26:18 weingeist-PC systemd[1]: Starting Network Time Synchronization...
Mai 25 20:26:18 weingeist-PC systemd[1]: Started Network Time Synchronization.
Mai 25 18:26:50 weingeist-PC systemd-timesyncd[861]: Contacted time server [2a00:7580:60:211::52]:123 (2.manjaro.pool.ntp.org).
Mai 25 18:26:50 weingeist-PC systemd-timesyncd[861]: Initial clock synchronization to Thu 2023-05-25 18:26:50.646917 CEST.

Ich war im BIOS. Zeit 2h zurück. Richtig eingestellt und Manjaro gebootet.
Ergenbis

journalctl -b | grep "rtc"                                                                                                               ✔ 
Mai 25 20:26:14 archlinux kernel: rtc_cmos 00:01: RTC can wake from S4
Mai 25 20:26:14 archlinux kernel: rtc rtc0: invalid alarm value: 2023-05-25T18:64:13
Mai 25 20:26:14 archlinux kernel: rtc_cmos 00:01: registered as rtc0
Mai 25 20:26:14 archlinux kernel: rtc_cmos 00:01: setting system clock to 2023-05-25T18:26:13 UTC (1685039173)
Mai 25 20:26:14 archlinux kernel: rtc_cmos 00:01: alarms up to one month, y3k, 114 bytes nvram, hpet irqs
Mai 25 20:26:21 weingeist-PC systemd[1294]: Starting KDE Global Shortcuts Server...
Mai 25 20:26:21 weingeist-PC systemd[1294]: Started KDE Global Shortcuts Server.

Das liegt nicht an meinem BIOS

 timedatectl                                                                                                                          INT ✘ 
               Local time: Do 2023-05-25 18:30:20 CEST
           Universal time: Do 2023-05-25 16:30:20 UTC
                 RTC time: Do 2023-05-25 16:30:20
                Time zone: Europe/Berlin (CEST, +0200)
System clock synchronized: yes
              NTP service: active
          RTC in local TZ: no
timedatectl set-local-rtc 1
timedatectl                                                                                                                       ✔  3s  
               Local time: Do 2023-05-25 18:38:03 CEST
           Universal time: Do 2023-05-25 16:38:03 UTC
                 RTC time: Do 2023-05-25 18:38:03
                Time zone: Europe/Berlin (CEST, +0200)
System clock synchronized: yes
              NTP service: active
          RTC in local TZ: yes

Warning: The system is configured to read the RTC time in the local time zone.
         This mode cannot be fully supported. It will create various problems
         with time zone changes and daylight saving time adjustments. The RTC
         time is never updated, it relies on external facilities to maintain it.
         If at all possible, use RTC in UTC by calling
         'timedatectl set-local-rtc 0'.

Mal probieren

Es liegt am UEFI. Hier zum Vergleich:

$ journalctl -b | grep "rtc" 
Mai 20 19:51:24 archlinux kernel: rtc_cmos 00:04: RTC can wake from S4
Mai 20 19:51:24 archlinux kernel: rtc_cmos 00:04: registered as rtc0
Mai 20 19:51:24 archlinux kernel: rtc_cmos 00:04: setting system clock to 2023-05-20T17:51:23 UTC (1684605083)
Mai 20 19:51:24 archlinux kernel: rtc_cmos 00:04: alarms up to one month, y3k, 242 bytes nvram

:notebook: @weingeist Ich sehe grad, dass bei mir auch archlinux steht, anstatt des hostnames. Seltsam. Erst wenn dieser zum root wechselt ist es dann wieder Elitedesk. Sorry, wegen der Verdächtigung. :slightly_smiling_face:
Das ist das Modul, dass mit dem UEFI kommuniziert:

$ modinfo rtc_cmos
name:           rtc_cmos
filename:       (builtin)
license:        GPL
file:           drivers/rtc/rtc-cmos
description:    Driver for PC-style 'CMOS' RTCs
author:         David Brownell
alias:          platform:rtc_cmos
parm:           use_acpi_alarm:bool
$ timedatectl 
               Local time: Do 2023-05-25 18:46:10 CEST
           Universal time: Do 2023-05-25 16:46:10 UTC
                 RTC time: Do 2023-05-25 16:46:10
                Time zone: Europe/Berlin (CEST, +0200)
System clock synchronized: yes
              NTP service: active
          RTC in local TZ: no

Ich habe keinen Alarm im UEFI eingestellt.

Ich habe noch nicht mal UEFI

Ist doch egal, wie du es jetzt nennen willst. BIOS, CSM, Legacy, UEFI-Legacy, UEFI, Firmware, Basis-Betriebsystem… Du weißt, was gemeint ist: Der Kernel liest das Datum aus und korrigiert es.

Was mich ja auch stutzig macht : rtc rtc0: invalid alarm value: 2023-05-25T19:64:16

19:64
Wie kommt man auf 64

Ich setze es ja im BIOS korrekt. Starte Linux. Linux rechnet dann 2h drauf meckert und korrigiert es wieder.
Wenn ich dann neu starte fehlen im BIOS 2 Stunden.

nur zum verständnis, du benutzt kein dual-boot mit windows ? das führt nämlich unter umständen zu falschen zeiteinstellungen.

doch nutze ich aber seid Ewigkeiten nicht gestartet

Könnte ich ja mal tun

Also Windows bekommt es auch nicht hin.
Habe jetzt CMOS Batterie gewechselt. Keine Änderung.
Kann GRUB was damit zu tun haben ?

Die " invalid alarm value" Meldung wirst du nicht weg bekommen. Das ist einfach ein Fehler im BIOS. Da du Uralt Computer verwendest (sonst hättest du ein UEFI) lohnt es sich wahrscheinlich auch nicht mit dem Hersteller Kontakt aufzunehmen.

Zu dem anderen Thema, gute Betriebssysteme stellen die Hardware Uhr auf die UTC Zeitzone. Da muss nicht zwei mal in Jahr die Uhrzeit gewechselt werden. Heißt aber auch, wenn du das BIOS aufrufst stimmt die Uhrzeit nicht. Im Augenblick wäre der unterschied zur lokalen Zeit in Deutschland zwei Stunden, manchmal aber auch nur eine Stunde, hängt vom Datum ab. Etwas schlechtere Betriebssysteme stellen die Hardware Uhr auf die Lokale Zeit. Ist natürlich total unpraktisch, funktioniert aber auch.

Für dich ist nur wichtig, dass du in deinen Betriebssystem das so konfigurierst wie du es haben willst. Wenn du deine Hardware Uhr in Lokaler Zeit haben willst musst du das auf jeden Fall konfigurieren, da es nicht der Standard ist.

Genau so ist es jetzt.
Wenn die BIOS Uhr auf UTC Zeit (also 2h zurück) dann funktioniert es wie es soll.

 journalctl -b | grep "rtc"                                                                                                               ✔ 
Mai 25 21:01:48 archlinux kernel: rtc_cmos 00:01: RTC can wake from S4
Mai 25 21:01:48 archlinux kernel: rtc_cmos 00:01: registered as rtc0
Mai 25 21:01:48 archlinux kernel: rtc_cmos 00:01: setting system clock to 2023-05-25T19:01:47 UTC (1685041307)
Mai 25 21:01:48 archlinux kernel: rtc_cmos 00:01: alarms up to one month, y3k, 114 bytes nvram, hpet irqs
Mai 25 21:01:55 weingeist-PC systemd[1304]: Starting KDE Global Shortcuts Server...
Mai 25 21:01:55 weingeist-PC systemd[1304]: Started KDE Global Shortcuts Server.

Wie so das jetzt auf einmal so ist, ist mir allerdings ein Rätsel.
Die letzten 10 Jahre hat die BIOS Uhr immer die richtige Zeit angezeigt.

timedatectl

“RTC in local TZ: no”
Means BIOS time should be/is set in UTC.

So if you set your BIOS time correctly to your own timezone you should use:
“RTC in local TZ: yes

„RTC in lokaler TZ: nein“
Bedeutet, dass die BIOS-Zeit in UTC eingestellt werden sollte/wird.

Wenn Sie also Ihre BIOS-Zeit korrekt auf Ihre eigene Zeitzone einstellen, sollten Sie Folgendes verwenden:
„RTC in lokaler TZ: ja

:vulcan_salute: