Edit
My original answer involves some programming. Maybe you can make the whole setup simpler with some other programming. On my Kubuntu man ntpdate
shows that it uses adjtime()
system call to gradually adjust the system clock. Consider a program that reads hardware clock and calls adjtime()
.
Original answer
From G-Man's comment:
Some (most? all?) NTP (client) software works by speeding up or slowing down the system clock so it synchronizes with the external time source.
If that is the right way to cope with log issues etc., maybe you can implement fake local NTP server. Let your fake NTP server do corrections to itself (e.g.) once an hour using hardware clock read hardware clock; then let NTP client adjust the system clock in a way that doesn't disturb logs and save files.