On 2018-09-20 13:04, unman wrote: > On Wed, Sep 19, 2018 at 07:50:59PM -0700, Gaijin wrote: >> On 2018-09-19 07:36, Ivan Mitev wrote: >> > On 9/19/18 9:22 AM, Gaijin wrote: >> >> On 2018-09-19 05:22, Ivan Mitev wrote: >> >>> On 9/19/18 5:17 AM, Gaijin wrote: >> >>>> Running Qubes R3.2 >> >>>> >> >>>> I have some software that I run in an AppVM that needs to be accurate to >> >>>> within a second or two of NTP server time in order to work. I have >> >>>> finally figured out how to get my ClockVM to sync to an NTP server and >> >>>> for timesyncd.service to run when sys-net boots. >> >>>> >> >>>> My problem is that my AppVM slowly loses several seconds after some >> >>>> time, and I can't figure out a way to manually or automatically force it >> >>>> to resync itself. >> >>> >> >>> I don't have a R3.2 to test, but if it's like R4 your VM has a systemd >> >>> timer that updates the time every 6 hours [1]. In that case you could: >> >>> - change the definition of the timer so that it's run more frequently >> >>> - disable the timer and run a ntp client ; that'll be the best solution >> >>> if your software is very time sensitive, but it increases the attack >> >>> surface because of the ntp client. >> >>> >> >>> >> >>> [1] >> >>> https://github.com/Qubes-Community/Contents/blob/master/docs/system/clock-time.md >> >> >> >> How might I adjust the schedule of qubes-sync-time.timer in the AppVM if >> >> that is available in R3.2? That looks like a safer way to proceed if >> >> possible. >> > >> > Provided that R3.2 time sync mechanism is the same as R4, you could >> > paste the following text into /etc/systemd/system/qubes-sync-time.timer: >> > >> > [Timer] >> > OnUnitActiveSec=10min >> > >> > >> > Doing so allows you to override stuff from >> > /usr/lib/systemd/system/qubes-sync-time.timer and preverve your changes >> > in case the original unit file is updated. >> > >> > Then reload the definitions with `sudo systemctl daemon-reload` >> > >> > You can see the timer's status with `systemctl list-timers` >> > >> > If you want those changes to stick after a reboot, apply them in the >> > TemplateVM you're using for your AppVM; alternatively you could add the >> > new file to your AppVM's /rw/config and issue commands in the rc.local >> > script there (copy the file + reload systemd). >> >> Looks like this would be easier in R4. The 3.2 doesn't have the >> qubes-sync-time.timer or perhaps it's named something else. Would anyone >> know which file might control this in 3.2? Or is there a way to make a >> systemd timer in an AppVM to force Qubes to resync with the NTP server? >> > > In 3.2 time synchronizing was somewhat different, so the advice re 4.0 > doesn't help. > You should not have needed to do anything special to the clockVM to get > time syncing working there. Almost certainly you should revert those > changes. > I recall there was a cron job running every 6 hours : I believe > you can find the cron file under /etc/cron.d in dom0 > You could try changing the cron job to make the timer reset more > regularly. > > You haven't said what period you are seeing the time drift occur, but > change the frequency to something that preempts the drift without > constantly firing off. > > Remember this is undoubtedly going to help fingerprint your system. > > unman
What I had to do special in the ClockVM to get it working (Fedora 28 minimal) was to follow the instructions here https://github.com/QubesOS/qubes-issues/issues/3983 as systemd-timesyncd wasn't starting. I have that working and the time syncing in the ClockVM seems to be OK. My time drift comes in my AppVM (Fedora 28). Right now it's about 2 seconds off after running overnight. In that the systemd-timesyncd.service is not active. I thought the ClockVM was supposed to control the time in the other VMs, so I haven't changed that. I found the qubes-sync-clock.cron and switched it from 6 hours to 3 hours and I'll leave the AppVM running to see if the drift fixes. -- You received this message because you are subscribed to the Google Groups "qubes-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to qubes-users+unsubscr...@googlegroups.com. To post to this group, send email to qubes-users@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/qubes-users/edc8ea2b3758882ac2c2a856515eb5cc%40riseup.net. For more options, visit https://groups.google.com/d/optout.