Univention Bugzilla – Bug 27807
fsck moniert rückwärtslaufende Uhr nach KVM Suspend/Resume und Join
Last modified: 2023-06-28 10:46:26 CEST
Created attachment 4495 [details] fsck geht schief und erfordert manuelles eingreifen Das System fährt nach einem Reboot nicht mehr vollständig hoch. Grund: fsck beschwert sich, dass das Dateisystem um Juli zum letzten Mal eingehangen wurde, heute aber Mitte Juni ist. Die interne Uhr wurde wohl nicht richtig gesetzt. Ich weiß nicht, welche Komponente das betrifft. Vielleicht ja einfach nur ucs-kt-get oder das Image selbst? Schritte zum Reproduzieren ssh skepp ucs-kt-get # 75 ucs-kt-view -H skepp # firefox abbrechen, ip einrichten ssh 10.200.4.100 univention-upgrade # im firefox über das system-setup-modul den join als slave durchführen reboot Ich weiß nicht, welcher dieser Schritte wirklich notwendig ist. Aber so kann ich es immer reproduzieren
Es gibt ab und zu Probleme mit VM's, die suspendet worden sind. Ein Workaround wäre eventuell "rdate time.fu-berlin.de" vor dem reboot (bzw. nach dem starten einer suspendet VM). (?)
(In reply to comment #0) > ucs-kt-get # 75 Da die Nummerierung sich ändern kann: (75) [UCS: 3.0-1 amd64 - Generic] > # im firefox über das system-setup-modul den join als slave durchführen > reboot Das Problem ist hier, daß der Slave beim Join die aktuelle Zeit vom Master holt, damit diese die gleiche Zeit haben (was wichtig ist für den gemeinsamen Zugriff auf NFS). Wurde der Master "beendet und gespeichert", bleibt für ihn die Zeit stehen so daß nach dem nächsten Starten des Masters dessen Zeit start der Realzeit hinterherhinkt. (In reply to comment #1) > Es gibt ab und zu Probleme mit VM's, die suspendet worden sind. Siehe Bug #25752 comment 1. Die dort angegebene Lösung sorgt zumindest dafür, daß die VM sich nach einer gewissen Zeit (*) wieder selber synchronisiert. Ganz befriedigend ist die Lösung allerdings nicht, da daß meiner Beobachtung nach i.d.R. immer noch mehrere Stunden dauern kann. Ein "invoke-rc.d ntp restart" sorgt augenblicklich für die richtige Zeit, aber hier fehlt noch eine Möglichkeit den KVM Suspend-Resume-Zyklus zu erkennen und das ganze (auf Wunsch) automatisch auszuführen. Ggf. bietet eine neuere Version von qemu/kvm diese Funktionalität, zumindest gibt es dort dann auch einen Guest-Agent (für Linux und Windows) <http://wiki.qemu.org/Features/QAPI/GuestAgent> <http://wiki.libvirt.org/page/Qemu_guest_agent>
Könnte denn eigentlich die Zeit via libvirt synchronisiert werden?
Mit neuere Versionen von QEMU und libvirt gibt es wohl mehr Möglichkeiten, das Verhalten der RTC zu konfigurieren: <http://libvirt.org/formatdomain.html#elementsTime> <http://qemu-buch.de/de/index.php/QEMU-KVM-Buch/_Virtuelle_Hardware/_Bus_RAM_ACPI_Clock_Graphic_Keyb_USB_Sound#System-Uhr> Allerdings ist das nur die RTC, die Linux i.d.R. einmalig beim Starten ausliest und beim herunterfahren schreibt. Wir reden hier allerdings von einem Host-initiierten Suspend&Resume, was für den Gast völlig transparent geschieht, er also keine Chance hat das mitzubekommen. Deswegen die Idee mit dem Guest-Agent innerhalb der VM, dem dann libvirt von außen mitteilen kann, daß er was tun muß, z.B. die Uhrzeit des Betriebssystems neu stellen.
*** This bug has been marked as a duplicate of bug 36233 ***