Skip to main content

Setting Timezone On Debian

Oops something went wrong with the last package upgrade on my Debian Desktop. This morning I observed that my system date had reverted back to UTC. Its not a big issue but let me take this opportunity to show how to change the timezone on your GNU/Debian Linux system.

The /usr/bin/tzselect tool from the libc6 package allows to set the proper timezone interactively. As I live in India (Asia) it is Indian Standard Time (IST) for me so I have to set TZ environmental variable to "Asia/Calcutta".

 $ /usr/bin/tzselect  Please identify a location so that time zone rules can be set correctly. Please select a continent or ocean.  1) Africa  2) Americas  3) Antarctica  4) Arctic Ocean  5) Asia  6) Atlantic Ocean  7) Australia  8) Europe  9) Indian Ocean 10) Pacific Ocean 11) none - I want to specify the time zone using the Posix TZ format. #? 5 Please select a country.  1) Afghanistan           18) Israel                35) Palestine  2) Armenia               19) Japan                 36) Philippines  3) Azerbaijan            20) Jordan                37) Qatar  4) Bahrain               21) Kazakhstan            38) Russia  5) Bangladesh            22) Korea (North)         39) Saudi Arabia  6) Bhutan                23) Korea (South)         40) Singapore  7) Brunei                24) Kuwait                41) Sri Lanka  8) Cambodia              25) Kyrgyzstan            42) Syria  9) China                 26) Laos                  43) Taiwan 10) Cyprus                27) Lebanon               44) Tajikistan 11) East Timor            28) Macau                 45) Thailand 12) Georgia               29) Malaysia              46) Turkmenistan 13) Hong Kong             30) Mongolia              47) United Arab Emirates 14) India                 31) Myanmar (Burma)       48) Uzbekistan 15) Indonesia             32) Nepal                 49) Vietnam 16) Iran                  33) Oman                  50) Yemen 17) Iraq                  34) Pakistan #? 14 The following information has been given:          India  Therefore TZ='Asia/Calcutta' will be used. Local time is now:      Tue Nov 27 02:31:35 IST 2007. Universal Time is now:  Mon Nov 26 21:01:35 UTC 2007. Is the above information OK? 1) Yes 2) No #? 1 You can make this change permanent for yourself by appending the line         TZ='Asia/Calcutta'; export TZ to the file '.profile' in your home directory; then log out and log in again.  Here is that TZ value again, this time on standard output so that you can use the /usr/bin/tzselect command in shell scripts: Asia/Calcutta  

After you set the TZ='Asia/Calcutta'; export TZ line in your /etc/profile or ~/.profile file. Type source ~/.profile and run 'date' to check if the changes has been reflected properly.