Ubuntu – Setting timezone from terminal


I want to change the timezone of the system clock from the terminal.

This can be done with


"which opens a gui in terminal"


sudo cp /usr/share/zoneinfo/Europe/London /etc/localtime

"which will set to gmt"

But is there a way to set time zone with just the offset ie.-1 or +5 etc?

I need to do this as I'm writing an application to adjust timeoffset or report logs and the only info I have is the user IP. I can use a webapp to find the location of the IP, but then I need to set offset which would be easy IF I could just get the offset of the location, but if I need to find zone and city it would be a real pain.

If anyone knows the answer to how to set system clock with +/-hour would be great.

Best Answer

To change time zone from terminal, just press Ctrl+Alt+T on your keyboard to open Terminal. When it opens, run the command(s) below:

sudo dpkg-reconfigure tzdata

Once open, just follow the screens to change the time zone.