How to Check NTP Time Synchronization Status on Linux Server

Step-by-step guide to check NTP time synchronization status. Monitor time accuracy, detect time drift, and ensure reliable time synchronization.

Last updated: 2026-01-11

How to Check NTP Time Synchronization Status on Linux Server

Monitor NTP time synchronization status to track time accuracy, detect time drift, and ensure reliable time synchronization. This guide shows you how to check NTP status and set up automated monitoring.

For comprehensive time synchronization monitoring, see Time Synchronization Monitoring. For monitoring system time, see Monitor System Date Timezone.

Why Checking NTP Status Matters

Accurate time synchronization is critical for log correlation, security, and application functionality. Time drift can cause authentication failures, log analysis issues, and application errors.

Method 1: Check NTP Status with ntpq

Check NTP Synchronization Status

# Check NTP status
ntpq -p

# Check NTP peer status
ntpq -pn

# Get NTP statistics
ntpstat

# Check if system is synchronized
ntpstat && echo "Synchronized" || echo "Not synchronized"

Monitor NTP Time Offset

# Check time offset
ntpq -c "rv 0 offset"

# Get detailed NTP information
ntpq -c "rv 0"

# Check time difference
ntpdate -q pool.ntp.org

Method 2: Check Chrony Status

Check Chrony Synchronization Status

# Check Chrony sources
chronyc sources

# Check Chrony tracking
chronyc tracking

# Get Chrony statistics
chronyc sourcestats

# Check if system is synchronized
chronyc tracking | grep "Leap status"

Monitor Chrony Time Accuracy

# Check time offset
chronyc tracking | grep "Last offset"

# Get system time accuracy
chronyc tracking | grep "System time"

# Check Chrony server status
chronyc activity

Method 3: Automated NTP Status Monitoring with Zuzia.app

Set up automated monitoring to track NTP status continuously and receive alerts when time drift exceeds thresholds or synchronization fails.

Step 1: Add NTP Status Monitoring Command

  1. Log in to Zuzia.app Dashboard

    • Access your Zuzia.app account
    • Navigate to your server
    • Click "Add Scheduled Task"
  2. Configure NTP Status Check Command

    # For NTP
    ntpq -c "rv 0 offset" | awk '{print $3}'
    
    # For Chrony
    chronyc tracking | grep "Last offset" | awk '{print $4}'
    
    • Set execution frequency (every 5-10 minutes)
    • Configure alerts when time offset exceeds thresholds

Step 2: Configure Alert Thresholds

  • Warning: Time offset > 100ms
  • Critical: Time offset > 1 second
  • Emergency: Time offset > 5 seconds

Step 3: Monitor NTP Service Status

Add command to check NTP service:

# Check NTP service status
systemctl is-active ntp && echo "OK" || echo "FAILED"

# Check Chrony service status
systemctl is-active chronyd && echo "OK" || echo "FAILED"

Best Practices for NTP Status Monitoring

1. Monitor Time Accuracy Continuously

  • Track time offset regularly
  • Alert when time drift exceeds thresholds
  • Monitor time synchronization status
  • Verify time accuracy across servers

2. Monitor NTP Service Status

  • Track service running status
  • Monitor service availability
  • Check service logs for errors
  • Alert on service failures

3. Use Multiple NTP Servers

  • Configure multiple NTP servers
  • Monitor NTP server reachability
  • Ensure redundant time sources
  • Test NTP server responses

4. Set Up Comprehensive Alerts

  • Configure alerts for time drift
  • Set up alerts for service failures
  • Monitor synchronization status
  • Alert on time accuracy issues

Troubleshooting NTP Status Issues

Step 1: Identify NTP Problems

When NTP synchronization fails:

# Check NTP status
ntpq -p
ntpstat

# Check NTP service
systemctl status ntp

# Check time offset
ntpq -c "rv 0 offset"

Step 2: Resolve NTP Issues

Based on investigation:

  1. Fix NTP Service:

    # Restart NTP service
    sudo systemctl restart ntp
    
    # Restart Chrony service
    sudo systemctl restart chronyd
    
  2. Optimize Time Synchronization:

    • Configure multiple NTP servers
    • Adjust synchronization settings
    • Optimize NTP server selection
  3. Fix Time Accuracy:

    • Manually sync time if needed
    • Adjust system clock
    • Verify NTP server accuracy

FAQ: Common Questions About NTP Status

How often should I check NTP status?

For production servers, continuous automated monitoring is essential. Zuzia.app can check NTP status every few minutes, storing historical data and alerting you when time drift exceeds thresholds.

What is considered acceptable time drift?

Acceptable time drift depends on your requirements. Generally, time drift under 100ms is excellent, 100ms-1s is acceptable, and over 1s requires attention. Set thresholds based on your application requirements.

How do I monitor NTP across multiple servers?

Zuzia.app allows you to monitor NTP status across multiple servers from one centralized dashboard. Compare time offsets across servers to ensure consistent time synchronization.

Can NTP monitoring impact server performance?

NTP monitoring commands have minimal impact on server performance. Use appropriate monitoring frequency and ensure NTP services are properly configured.

Note: The content above is part of our brainstorming and planning process. Not all described features are yet available in the current version of Zuzia.

If you'd like to achieve what's described in this article, please contact us – we'd be happy to work on it and tailor the solution to your needs.

In the meantime, we invite you to try out Zuzia's current features – server monitoring, SSL checks, task management, and many more.

We use cookies to ensure the proper functioning of our website.