I travel a lot for work. Meetings, builds, and a few late-night deploys. So when my laptop shows the wrong time, I feel it right away. Missed a standup once because my clock was still on New York while I was already in Berlin. Not fun.
If you’d rather skip the travel tales and just see the nuts-and-bolts steps, my concise walk-through on setting the time zone on Ubuntu lays everything out in order.
Here’s how setting the time zone on Ubuntu felt for me—what worked, what was clunky, and the small tricks I now use without thinking.
The easy way on Desktop (and one small catch)
On Ubuntu Desktop, the Settings app is the chill path.
- I go to: Settings → Date & Time.
- I turn on “Automatic Time Zone.”
- If I want a set city, I click the map and type “Chicago” or “Berlin.”
It just works. But there’s a catch: I had to turn on Location Services for auto time zone. The first time, the switch did nothing until I enabled that. Also, the map felt a bit twitchy on my trackpad. Not a huge deal. Just a tiny sigh.
By the way, any software that hinges on accurate geo-data—think ride-sharing, event check-ins, or modern dating apps—can stumble if your clock drifts even a few minutes. For a fun non-work example, Jaumo shows how a dating platform leans on precise time and location to surface matches right when you’re nearby; their overview breaks down how tighter sync boosts match relevance and keeps conversations flowing.
If your night off finds you scrolling through local classifieds to line up a spur-of-the-moment meet-up in Pennsylvania’s Lehigh Valley, timing is every bit as crucial—Backpage Bethlehem catalogs fresh, time-stamped listings so a properly synchronized system clock helps you pounce on new posts before they disappear.
Terminal way: fast, clear, and my go-to
Most days, I use the terminal. It’s quick, and it sticks.
-
Check current time info:
timedatectl status -
Find your city:
timedatectl list-timezones | grep -i berlin -
Set it:
sudo timedatectl set-timezone America/Los_Angeles
I’ve set Europe/Berlin, Asia/Kolkata, and America/Chicago this way. It takes seconds. One note: you do need sudo. If you forget, it will complain. Fair.
What I like here is the confidence. I run date after, and the time is right. Logs match. Cron behaves. Life feels tidy. If you want a deeper dive into how timedatectl works under the hood, this excellent article on Freedom Penguin breaks it down step-by-step. For an even more focused walkthrough on just adjusting the clock, my dedicated review on setting the time zone on Ubuntu might help.
Ubuntu’s own documentation on synchronizing time with timedatectl and systemd-timesyncd explains every flag in detail and is well worth bookmarking for future reference.
When timedatectl won’t run (hi, containers)
In some containers, timedatectl won’t work, since systemd isn’t running. On those, I use this:
- Text interface:
sudo dpkg-reconfigure tzdata
Then I pick the region and city. For example, I choose “Europe,” then “Berlin.” It prints what it set at the end. Clear as day.
If I have no reconfigure tool, I do the manual link:
-
Link the zone file:
sudo ln -sf /usr/share/zoneinfo/Europe/Berlin /etc/localtime -
Save the name:
echo "Europe/Berlin" | sudo tee /etc/timezone
I’m careful with this one. A bad link means weird time. I learned that the hard way on a tiny test box. Clock went wild, logs got messy, and I had to fix it at 1 a.m. Not my best night.
For an overview of alternative approaches—including the classic tzdata reconfiguration—the Ubuntu Community Help Wiki page on configuring time settings offers a concise and helpful summary.
And if you ever need to reveal those dot-prefixed config files while you’re inside a container, this quick guide on showing hidden files on Ubuntu walks you through every option.
Servers: my simple rule that saved me
Here’s my rule now: I keep servers on UTC, and I let apps show local time.
Why? Cron. I once switched a server from UTC to Eastern time, and a backup job shifted. It ran an hour late and bumped into a deploy. Now I either:
- Keep the server on UTC, or
- Set a job’s time zone in the crontab:
TZ=America/New_York0 2 * * * /usr/local/bin/backup.sh
Small change, big peace.
Time sync also matters. On a fresh Ubuntu Server, I check:
timedatectl status
If I see “System clock synchronized: yes,” I relax. That means NTP is fine. If not, I restart time sync:
sudo systemctl restart systemd-timesyncd
Then I check again. Simple drumbeat.
WSL and cloud VMs: tiny quirks
On WSL (Ubuntu on Windows), the time zone sometimes shadows Windows. When it’s off, I just run:
sudo timedatectl set-timezone America/New_York
It sticks across sessions for me. If not, I repeat after a Windows update. No big deal.
Because I bounce between hotel Wi-Fi networks so often, I occasionally spoof my network adapter’s identity as well; the steps I follow are outlined in this post on changing my MAC address on Linux.
On cloud VMs, like on AWS or Azure, I set UTC first, then let apps handle local time. If a team asks for local time, I use timedatectl the same way as normal. Nothing special there.
Real examples from my week
- Monday, Boston → London: My laptop stayed on Eastern time. I opened Settings, typed “London,” done. Calendar lined up. Slack stopped yelling at me.
- Tuesday, Docker build runner:
timedatectlfailed in the container. I randpkg-reconfigure tzdata, picked “Etc/UTC,” and builds became predictable again. - Thursday, home lab: Ubuntu Server on a small box. I set
America/Chicagowithtimedatectl. I checked withdate. Then I ranjournalctl --since "10 minutes ago". The logs matched the clock. Sweet.
What I liked
- The GUI is clear and fast.
- The terminal way is rock solid.
- Listing time zones with grep feels clean and quick.
What bugged me a bit
- Auto time zone needs Location Services; that wasn’t obvious.
- Containers can’t use
timedatectl. I get why, but it tripped me once. - The map UI can be a little fussy on a trackpad.
My bottom line
Ubuntu makes time zones easy. On Desktop, I flip a switch and move on. On servers, timedatectl is my trusty tool. And when systemd isn’t there, dpkg-reconfigure tzdata does the job.
Would I trust it for work? Yes. I do, every week. And you know what? When your clock is right, your day just runs smoother.