Connect SMART to a Local Network Time Server

In some SMART deployments, access to the default time server (ntp.ubuntu.com) is not possible due to firewall and/or cyber-security policies. You can instead synchronize your SMART Systems to a network time server on your local network.

About this task

The SMART Controller's Ubuntu operating system has a time service, systemd-timesyncd, that uses a configuration file, timesyncd.conf, to control its operation. This file defines the location of Network Time Protocol (NTP) servers on the reachable network.

Procedure

  1. Access the SMART Controller terminal from an SSH session or locally, using a monitor and keyboard.
  2. Enable superuser privileges and navigate to /etc/systemd.
    smart@smart:~$ sudo bash
    root@smart:/home/smart# cd /etc/systemd
  3. Open the file timesyncd.conf with your text editor of choice.
    root@smart:/etc/systemd# nano timesyncd.conf
    The file should look like this:
    #  This file is part of systemd.
    #
    #  systemd is free software; you can redistribute it and/or modify it under the
    #  terms of the GNU Lesser General Public License as published by the Free
    #  Software Foundation; either version 2.1 of the License, or (at your option)
    #  any later version.
    #
    # Entries in this file show the compile time defaults. Local configuration
    # should be created by either modifying this file, or by creating "drop-ins" in
    # the timesyncd.conf.d/ subdirectory. The latter is generally recommended.
    # Defaults can be restored by simply deleting this file and all drop-ins.
    #
    # See timesyncd.conf(5) for details.
    
    [Time]
    #NTP=
    #FallbackNTP=ntp.ubuntu.com
    #RootDistanceMaxSec=5
    #PollIntervalMinSec=32
    #PollIntervalMaxSec=2048
  4. Edit the line #NTP= by removing the '#" and appending your local time server's IP address, then save the file.
    NTP=10.0.5.232
    If needed, you may enter more than one IP address separated by commas.
  5. Restart the timesyncd service.
    root@smart:/etc/systemd# systemctl restart systemd-timesyncd
  6. Verify that your SMART controller is synchronized to your local time server using the command systemctl status systemd-timesyncd.
    root@smart:/etc/systemd# systemctl status systemd-timesyncd

    The status readout should indicate synchronization with the time server you specified.

    systemd-timesyncd.service - Network Time Synchronization
      Loaded: loaded (/lib/systemd/system/systemd-timesyncd.service; enabled; vendor preset: enabled)
      Active: active (running) since Tue 2023-08-08 12:17:37 EDT; 1min 31s ago
        Docs: man:systemd-timesyncd.service(8)
    Main PID: 92886 (systemd-timesyn)
      Status: "Initial synchronization to time server 10.0.5.232:123."
       Tasks: 2 (limit: 4344)
      Memory: 1.2M
         CPU: 168ms
      CGroup: /system.slice/systemd-timesyncd.service 
              └─92886 /lib/systemd/systemd-timesyncd
  7. Open the SMART Control Panel and go to Time and Location.
  8. Enable the automatic time synchronization service if it is not enabled already and confirm that the status displays the correct time.