Fix Ubuntu Time Issues - Troubleshoot Timing Glitches
Ubuntu shows the wrong time and random settings do not fix it for long. Learn the two-clock system, read one timedatectl screen, match your pattern to the real cause - dual boot, NTP, timezone or a dying CMOS battery - and fix that.
📑Chapters
- Why Ubuntu shows the wrong time - the two clocks inside your PC
- Read one timedatectl screen before you change anything
- Match your pattern to the real cause - dual boot, NTP, timezone or CMOS battery
- Turn internet time sync (NTP) on and confirm it works
- Set the time zone properly with the exact zone name
- Dual boot: end the Windows-Ubuntu clock fight by picking one rule
- Push the correct time back into the hardware clock
- When it really is the CMOS battery - and how sync covers for it
📋 Overview & Step-by-Step Guide
Two Clocks: Find Which One Is Lying
Every computer keeps time in two places. The RTC (real-time clock) is a small hardware clock on the motherboard that keeps ticking on battery power while the PC is off. The system clock is what Ubuntu shows you while it runs, and it is corrected over the internet by a sync service called NTP. At boot, Ubuntu reads the RTC and builds the system clock from it.
So a wrong clock means one of three things: the RTC held the wrong value, Ubuntu read it with the wrong assumption, or the internet correction never happened. The mistake most people make is fixing the clock face instead of the cause. One command separates all three causes - that is the next step.
Read timedatectl Before Changing Anything
Open a terminal and run this command. You do not need sudo just to look:
timedatectl
Seven lines appear; six of them matter. Local time is the time on your clock face, after the time zone conversion. Universal time is the same moment in UTC - this is the number that must be right in itself. RTC time is what the hardware clock on the motherboard currently holds. Time zone is the zone Ubuntu converts into, for example Asia/Kolkata (IST, +0530). System clock synchronized says yes when internet time sync has succeeded at least once this boot. RTC in local TZ: no means Ubuntu assumes the RTC holds UTC - this one line is the whole dual-boot story.
On a healthy machine the RTC time matches the Universal time line, the synchronized line says yes, and the NTP service shows active. Write down what your screen shows before changing anything - two minutes of reading here saves an hour of random fixes.
Match the Pattern to the Real Cause
Wrong time is not one problem. The size and shape of the error names the culprit almost every time:
Wrong by exactly your zone offset (5 hours 30 minutes in India), and it flips when you boot the other OS - a dual-boot RTC fight. Windows and Ubuntu disagree about what the hardware clock means. Go to Step 6.
Wrong by minutes, growing slowly over weeks - sync is off or failing, or the RTC itself drifts. Check the synchronized line and go to Step 4.
Correct while the PC runs, wrong again after every shutdown - the RTC is losing or misreading time while powered off. On old hardware that is the CMOS battery. Go to Step 7.
Right zone name on screen, wrong time anyway - the zone is a display setting, not the time itself. Your Universal time line will be wrong too. Go to Step 5, then re-check.
Wrong only inside a virtual machine, jumping after restore or resume - the VM takes its time from its host and from snapshots, not just from NTP.
Turn Internet Time Sync (NTP) On
Most single-boot Ubuntu machines heal themselves if sync is allowed to run. Turn it on with this command (it will ask for your password):
timedatectl set-ntp true
Prefer the GUI? Open Settings, then Date & Time, and turn on Automatic Date & Time. Then wait a minute on a working internet connection and run timedatectl again. The System clock synchronized line should now say yes, and the time should step to the correct value.
Set the Time Zone Properly
If the zone itself is wrong, everything else looks broken. First see the current zone on the Time zone line of the timedatectl output. Zone names are case-sensitive and use slashes, like Asia/Kolkata. List the exact names and set yours:
timedatectl list-timezones
sudo timedatectl set-timezone Asia/Kolkata
Run timedatectl again and confirm the Local time line now shows the time on your wall clock, with the zone shown as Asia/Kolkata (IST, +0530). Still wrong after this, with the right zone showing? Then the zone was never the problem - go back to the pattern list in Step 3.
Dual Boot: Pick One Hardware Clock Rule
On a dual-boot machine you must pick one convention and make both systems agree. Ubuntu's default is the sane one: the RTC holds UTC (RTC in local TZ: no) and each OS converts for display. Windows defaults to the opposite: it treats the RTC as local time. That disagreement is why every OS switch moves your clock by exactly your zone offset.
The quick Ubuntu-side compromise is this command - Ubuntu then reads and writes the RTC the way Windows expects:
timedatectl set-local-rtc 1 --adjust-system-clock
The alternative is teaching Windows to use UTC through the RealTimeIsUniversal registry value, leaving Ubuntu at its clean default. Whichever side you choose - choose only one. Applying both fixes flips the error to the opposite direction.
Save the Correct Time to the Hardware Clock
Once the system clock is correct and synchronized, store that correct value into the RTC so the next cold boot starts right:
sudo hwclock --systohc
sudo hwclock --show
The first command copies the system time into the hardware clock; the second shows what the hardware now holds. Then shut down fully, wait a minute, boot, and check the time before the network connects if you can - the RTC should already be right.
If the time is wrong again after a full power-off even now, software has done all it can - suspect the CMOS battery or a drifting RTC on old hardware. This is also how you live with a weak battery without replacing it right away: with NTP sync on (Step 4), Ubuntu corrects the clock by itself shortly after every boot, once the network connects. The battery replacement is still the real hardware fix, but sync covers for it in daily use.
timedatectl instead of setting the time by hand again and again; a clock you correct daily is a fault you have not found yet.🏷️Topic Search Variables & Keywords
🎙️ Full Transcript — tap to expand
Step-by-Step Troubleshooting Guide & Solutions - UPDATE UBUNTU TIMING GLITCHES WITHOUT CMOS BATTERY. On-screen demonstration by Technical Anshu.
Ubuntu shows the wrong time and random settings do not fix it for long. Learn the two-clock system, read one timedatectl screen, match your pattern to the real cause - dual boot, NTP, timezone or a dying CMOS battery - and fix that.
(transcript ends here on the source page)
❓ Frequently Asked Questions
Is this tutorial 100% free to follow?
Yes! All guides and methods demonstrated by Technical Anshu use free, legal, and educational resources.
Can beginners follow this guide?
Absolutely! Every step is demonstrated on-screen with detailed instructions so anyone can follow along easily.
Where can I ask questions if I get stuck?
Leave a comment directly on the YouTube video, and our community and Technical Anshu will help you out.
🚀 Watch the Full Tutorial on YouTube
🚀 Watch the full step-by-step video tutorial on YouTube: https://www.youtube.com/watch?v=u9UT7ts8uOM
Subscribe to Technical Anshu for IT support, Windows troubleshooting, and server management.
▶️ Watch Full Video