cmd:tzconfig 

hardware clock 

Most DOS based PCs set their hardware clock on Local Time, while most UNIX systems set their hardware clock to UTC.

The Debian GNU/Linux system gains its knowledge of this setting from the file /etc/default/rcS. This file contains either the line UTC=yes, which indicates that the hardware clock is set to UTC, or it contains the line UTC=no, which declares the hardware clock is set to Local Time. If these setting are correct, and the hardware clock is truly set as indicated, then configuring the proper timezone for the machine will cause the proper date and time to be displayed. If these are not set correctly, the the reported time will be quite incorrect. See hwclock(8) for more details on this topic.

actual work done 

The work done by tzconfig is actually pretty simple. It just copies the correct timezone installed in /usr/share/zoneinfo/ to /etc/localtime and puts the name of the timezone into /etc/timezone.

There is nothing wrong with doing this manually. However, using tzconfig you don't have to remember the path to the timezones.

manually update timezone 

date; rdate -p rdate
date; hwclock --show
# update timezone, then
# set system's hardware clock
!date
hwclock --systohc
!date

documented on: 2006.09.28