[systemd-devel] : How to modify systemd so that the NTP function is disabled when systemd is first started?

www ouyangxuan10 at 163.com
Sat Apr 25 06:51:54 UTC 2020


hi Michal & Kevin,


I find that just shutting down *timesync* service can't solve the problem. Build time also affects system time.
My testing process is as follows:
1.  systemctl disable systemd-timesyncd
    systemctl mask systemd-timesyncd
2. timedatectl set-time "2001-11-30 17:36:46"       --- This time is set years ago.
3. reboot system


View system time after startup:
root at demoboard:~# timedatectl
               Local time: Thu 2020-04-02 17:27:03 CST            This time is not the latest time, but it is not the time I set.  
           Universal time: Thu 2020-04-02 09:27:03 UTC
                 RTC time: n/a
                Time zone: Asia/Shanghai (CST, +0800)
System clock synchronized: no
              NTP service: n/a
          RTC in local TZ: no
root at demoboard:~#


check the boot log:
Apr 02 17:24:52 demoboard systemd[1]: System time before build time, advancing clock.          
Apr 02 17:25:02 demoboard systemd[1]: logrotate.timer: Not using persistent file timestamp Sat 2020-04-25 13:45:26 CST as it is in the future.
Apr 02 17:25:04 demoboard systemd[1]: Reached target Timers.
Apr 02 17:25:38 demoboard systemd[1]: Starting Time & Date Service...
Apr 02 17:25:40 demoboard systemd[1308]: systemd-timedated.service: ProtectHostname=yes is configured, but the kernel does not support UTS namespaces, ignoring namespace setup.
Apr 02 17:25:42 demoboard systemd[1]: Started Time & Date Service.
Apr 02 17:26:13 demoboard systemd[1]: systemd-timedated.service: Succeeded.
Apr 02 17:27:03 demoboard systemd[1]: Starting Time & Date Service...
Apr 02 17:27:03 demoboard systemd[1823]: systemd-timedated.service: ProtectHostname=yes is configured, but the kernel does not support UTS namespaces, ignoring namespace setup.
Apr 02 17:27:03 demoboard systemd[1]: Started Time & Date Service.



It can be seen from the log that after the TimeSync service is disabled, the latest time is obtained from NTP server, but it is not updated to the system. But the system time has also been modified.




I'd like to ask you a few questions:
1. When I shut down the TimeSync service, who modified the system time and according to what?


2. What time does the time in systemd relate to? such as build time。


3. How to realize the time of completely independent control system, no matter TimeSync and build time?


thanks,
Byron





At 2020-04-23 14:25:38, "Michał Zegan" <webczat_200 at poczta.onet.pl> wrote:
>As I said, there are symlinks in /etc/systemd/system/*.target.wants that
>allows disabling services like this one from starting. It is enough to
>remove the one for systemd-timesync.service from multi-user.target.wants
>directory. If you can do things via some config files you should also be
>able to do this
>
>W dniu 23.04.2020 o 04:14, www pisze:
>> 
>> hi Michal and Kevin,
>> 
>> We applied systemd to embedded Linux, so we often need to update/flash
>> the whole system.  When we select disable *time synchronization*
>> function, the embedded system will use the time itself. After we update
>> the system and restart it, we need the *time synchronization* function
>> is disabled. During the whole startup process, there is no automatic
>> time synchronization, and *the previous time is used*. Because automatic
>> time synchronization may change its original time. (*Because the time
>> of the system itself may be different from that of NTP time.*) 
>> 
>> There is a *timesyncd.conf* file under the system,can the system
>> automatically turn off the time synchronization function by modifying
>> this file? 
>> In this way, when updating, I can save this file to solve this problem.
>> 
>> 
>> thanks,
>> Byron
>> 
>> 
>> 
>> 
>> At 2020-04-17 19:44:48, "Michał Zegan" <webczat_200 at poczta.onet.pl> wrote:
>>>I am not quite sure what you mean, but... generally these are symlinks
>>>in /etc/systemd/system/multi-user.target.wants/ so you could delete them
>>>manually if your intention is to make the actual os image with this
>>>disabled from the start...
>>>
>>>W dniu 17.04.2020 o 12:10, www pisze:
>>>> 
>>>> I mean that this configuration can be preserved, even after I update the
>>>> system, this function can be saved.
>>>> 
>>>> thanks,
>>>> Byron
>>>> 
>>>> 
>>>> 
>>>> 
>>>> At 2020-04-17 18:06:15, "Kevin P. Fleming" <kevin at km6g.us> wrote:
>>>>>Both of those changes will stop the service from being started, even
>>>>>when the system is rebooted. You don't need to run these commands
>>>>>every time, running them one time will change the system configuration
>>>>>and the service will no longer be started.
>>>>>
>>>>>On Fri, Apr 17, 2020 at 2:52 AM www <ouyangxuan10 at 163.com> wrote:
>>>>>>
>>>>>> hi Kevin ,
>>>>>>
>>>>>> Thank you very much for you help. But how can I save this way of closing time synchronization by command after system boot up? After I update the system, the first time I start it, time synchronization is still enabled by default. It's not appropriate if I close it alone every time. So when I need it start every time, this function is off.
>>>>>>
>>>>>>
>>>>>> thanks,
>>>>>> Byron
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> At 2020-04-16 18:28:30, "Kevin P. Fleming" <kevin at km6g.us> wrote:
>>>>>> >There is no need to modify systemd.
>>>>>> >
>>>>>> >$ systemctl disable systemd-timesyncd
>>>>>> >
>>>>>> >That command will stop the systemd-timesyncd service from being
>>>>>> >started. It may also be necessary to mask it:
>>>>>> >
>>>>>> >$ systemctl mask systemd-timesyncd
>>>>>> >
>>>>>> >On Thu, Apr 16, 2020 at 6:22 AM www <ouyangxuan10 at 163.com> wrote:
>>>>>> >>
>>>>>> >> Dear all,
>>>>>> >>
>>>>>> >> I want to ask a question,How to modify systemd so that the NTP function is disabled when systemd is first started?
>>>>>> >>
>>>>>> >>  The default state of systend is to synchronize time from NTP. We can use timedatectl command to disable NTP synchronize time. But if I flash the system, the NTP  synchronize time function will auto enable.  so I want modify the systemd and disable NTP synchronize time in default state.
>>>>>> >>
>>>>>> >> thanks,
>>>>>> >> Byron
>>>>>> >>
>>>>>> >>
>>>>>> >>
>>>>>> >>
>>>>>> >> _______________________________________________
>>>>>> >> systemd-devel mailing list
>>>>>> >> systemd-devel at lists.freedesktop.org
>>>>>> >> https://lists.freedesktop.org/mailman/listinfo/systemd-devel
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>> 
>>>> 
>>>> 
>>>>  
>>>> 
>>>> 
>>>> _______________________________________________
>>>> systemd-devel mailing list
>>>> systemd-devel at lists.freedesktop.org
>>>> https://lists.freedesktop.org/mailman/listinfo/systemd-devel
>>>> 
>>>
>> 
>> 
>> 
>>  
>> 
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/systemd-devel/attachments/20200425/287ca624/attachment-0001.htm>


More information about the systemd-devel mailing list