Set a systemd-based VPS to India Standard Time with the IANA identifier Asia/Kolkata. The standard command changes the system time-zone configuration, not the clock itself, and verification should show Asia/Kolkata (IST, +0530).
Antihost offers Linux VPS plans with full root access, unlimited traffic on a 1 Gbps port and a 14-day free trial.
Quick answer
On a Linux VPS that uses systemd, run:
sudo timedatectl set-timezone Asia/Kolkata
Then check the result:
timedatectl
The time-zone line should resemble:
Time zone: Asia/Kolkata (IST, +0530)
Asia/Kolkata is the correct IANA time-zone identifier for Indian Standard Time. Do not pass the bare abbreviation IST to timedatectl; use the full identifier.
As an Amazon Associate I earn from qualifying purchases.
PC Slower Than It Used to Be?
A free scan shows the junk files, broken settings and background clutter dragging Windows down - then fixes them in one click.Free scan · Windows 10 & 11Crashes, No Sound, or Screen Glitches?
Random freezes, missing sound and display glitches usually trace back to one bad driver. Find and replace yours safely.Free scan · under a minuteWhat changing the VPS time zone actually does
A Linux time zone controls how the system represents and formats timestamps as local time. Setting it to Asia/Kolkata makes the host use India’s standard offset of UTC+05:30 and the IST abbreviation in time displays.
The operation does not manually set or “speed up” the system clock. Clock accuracy is handled separately by a network time-synchronization service such as chrony, systemd-timesyncd, or another NTP daemon. A VPS can therefore have the correct time zone while its synchronization service is stopped, or have a synchronized clock while still displaying UTC.
#1 Best Overall
The systemd operation also updates the /etc/localtime link that programs use to find the host’s active time-zone data. This is why checking that link is a useful part of verification.
Before you start
- Have an SSH session with an account that can run commands through
sudo, or use a root shell. - Confirm that the image is systemd-based and provides
timedatectl. - Make sure the image has its time-zone database installed. If the requested identifier is absent from the system’s list, the database package or image configuration needs attention before you set the zone.
- Know whether your goal is display and timestamp formatting or clock synchronization. Changing the zone addresses the first goal only.
Run the following commands from the VPS itself. Changing the time zone on your workstation does not change the server’s setting.
Quick wins for a faster PC:
Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →Repair Windows errors before they cause bigger problemsFix Now →Scan for outdated or missing drivers - takes under a minuteDriver Scan →Step-by-step procedure with timedatectl
1. Inspect the current setting
Start with the complete status report:
timedatectl status
This reports the local time, UTC time, hardware-clock (RTC) time, active time zone, and synchronization state. Recording this output gives you a before-and-after comparison and helps separate a zone problem from a clock-synchronization problem.
2. Confirm that Asia/Kolkata is available
Ask systemd for the valid identifiers and filter the list:
timedatectl list-timezones | grep -i Kolkata
You should see:
Asia/Kolkata
list-timezones prints the names accepted by set-timezone. If the command returns no result, do not substitute IST or invent a spelling. The VPS’s time-zone data is incomplete or unavailable; repair that image-level issue according to the distribution’s documentation, then run the check again.
3. Set India Standard Time
Apply the zone with the full IANA name:
sudo timedatectl set-timezone Asia/Kolkata
A successful command normally returns no text. It changes the system time-zone setting and the /etc/localtime symbolic link. It does not require manually changing the current clock reading.
If you are already root, the equivalent command is:
timedatectl set-timezone Asia/Kolkata
When sudo reports that timedatectl is unavailable, stop and identify the operating system’s initialization system before trying another method. A non-systemd image needs its own documented time-zone utility; there is no single fallback command that is safe for every minimal or non-systemd distribution.
4. Verify both the setting and the rendered time
Run all three checks:
timedatectl
date
readlink -f /etc/localtime
Look for these results:
timedatectlshowsTime zone: Asia/Kolkata (IST, +0530)or equivalent formatting.dateprints the current local time with anISTsuffix and a+0530offset (the exact date and seconds will vary).readlink -f /etc/localtimeresolves to a zoneinfo path ending inAsia/Kolkata.
If all three agree, the host-level time-zone change is complete. A different timestamp in an application can then be caused by that application’s own configuration or by a separate synchronization issue rather than by the VPS time-zone setting.
Understanding the verification output
| Field or command | What it tells you | Expected indication after the change |
|---|---|---|
Time zone in timedatectl |
The zone used for system-local time | Asia/Kolkata (IST, +0530) |
date |
How the shell formats the current local time | An IST suffix and UTC+05:30 offset |
/etc/localtime |
The zoneinfo file selected by the host | A resolved path ending in Asia/Kolkata |
System clock synchronized |
Whether a synchronization service reports a disciplined clock | Independent of the time-zone choice; it may be yes or no |
RTC in local TZ |
Whether the hardware clock is being treated as local time | Prefer UTC rather than local-time RTC |
The current local time shown in the output will depend on when you run the command. The stable values to check are the identifier, abbreviation, and +0530 offset.
The Tool Desk
Outbyte Driver Updater FREEScan for outdated or missing drivers - takes under a minuteDriver Scan →Outbyte PC Repair FREERepair Windows errors before they cause bigger problemsFix Now →Distribution-specific notes
Ubuntu Server
Ubuntu Server documents timedatectl as the interface for time-zone and clock settings. Use the procedure above on a systemd-based Ubuntu VPS. If chrony is installed, inspect chrony separately when you need to diagnose synchronization; its presence does not change the time-zone command.
Red Hat Enterprise Linux
Red Hat Enterprise Linux documents the same form:
timedatectl set-timezone <time_zone>
For India, replace the placeholder with Asia/Kolkata and use sudo when required:
sudo timedatectl set-timezone Asia/Kolkata
The command and verification behavior are the same on a systemd-based RHEL VPS.
Minimal or non-systemd images
Some very small VPS images do not include systemd or timedatectl. The researched systemd guidance does not establish one universal replacement command for those systems. Use the time-zone utility documented for that image, ensure its time-zone database is present, and verify the resulting /etc/localtime target afterward. Avoid copying a command intended for a different distribution’s init system or filesystem layout.
Why a VPS may still appear to show UTC
The change was made on the wrong machine
Run hostname or inspect your SSH prompt to ensure the commands were executed on the VPS, not on your local computer or a different server. Then repeat timedatectl on the affected host.
Rank #4
The identifier was not accepted
If set-timezone returns an error, compare the requested name with:
timedatectl list-timezones | grep -i Kolkata
The valid value is Asia/Kolkata. Do not use a three-letter abbreviation as the argument.
The host changed, but an application still formats UTC
First establish whether the host itself changed by comparing timedatectl, date, and readlink -f /etc/localtime. If those show Asia/Kolkata but a service log or dashboard remains in UTC, that software may deliberately use UTC or have its own time-zone setting. The host-level command cannot override an application-specific policy.
Do these 3 things before closing this tab:
1Fix the driver behind crashes, sound loss and screen glitches2Clear out junk files and repair common Windows errors3Scan for outdated or missing drivers - takes under a minuteYou are looking at synchronization status instead of the zone
timedatectl reports both the time zone and synchronization state. A line indicating that the system clock is not synchronized does not mean the zone change failed. Treat the two settings independently: confirm Asia/Kolkata for presentation and investigate the configured synchronization service for clock accuracy.
The link does not resolve to Asia/Kolkata
Check:
readlink -f /etc/localtime
If it does not end in Asia/Kolkata, the image may be using a nonstandard or incomplete time-zone setup. Re-run the systemd command with the exact identifier and inspect any error. On a non-systemd image, follow that image’s documented method instead of forcing a systemd-specific change.
Best Value
RTC and network synchronization cautions
Keep the hardware real-time clock (RTC) in UTC when possible. The systemd reference warns that maintaining the RTC in local time is not fully supported and can cause problems when time zones change or daylight-saving adjustments are involved. India Standard Time does not use seasonal daylight-saving changes, but keeping the RTC in UTC remains the recommended host configuration.
Changing /etc/localtime or running timedatectl set-timezone changes how the system interprets and displays timestamps. It does not discipline the clock against a network source. If the displayed time is wrong by more than the expected UTC+05:30 conversion, inspect the synchronization service independently.
Recommended Free Tools
Ubuntu notes that chrony may be responsible for network synchronization. Other images may use systemd-timesyncd or another NTP daemon. Identify the service configured on your VPS and check its own status and logs; do not treat a successful time-zone change as proof that synchronization is healthy.
Changing the setting later
The same command changes the VPS to any other valid IANA identifier:
sudo timedatectl set-timezone <valid-time-zone>
Use timedatectl list-timezones to discover accepted names, then verify with timedatectl and readlink -f /etc/localtime. For India, the value remains Asia/Kolkata; IST is the displayed abbreviation, not the portable identifier.
Quick Recap
Completion checklist
timedatectl statuswas run before the change.Asia/Kolkataappeared intimedatectl list-timezones.sudo timedatectl set-timezone Asia/Kolkatacompleted without an error.timedatectlreportsAsia/Kolkata,IST, and+0530.daterenders local time with the expected offset.readlink -f /etc/localtimeresolves to theAsia/Kolkatazoneinfo entry.- RTC handling remains UTC where possible.
- Clock synchronization is checked separately through the service responsible for it.
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.
Free tools Windows power users keep installed
One-click scans. No signup required.

