在新装Debian的时候,重启后就会进入base-config程序。
提示你是否设定时间为GMT,选否,时区选shanghai。
如果你选择失误,就会被时间的不准所困扰,下面是解决方案。
第一步#编辑文件/etc/timezone为以下内容
Asia/Shanghai
第二步# date MMDDhhmmCCYY
设定系统时间和硬件时间为MM/DD hh:mm, CCYY。
显示时间为本地时间而硬件时间使用UTC。
例1:设置时间为下午14点36分。
# date -s 14:36:00
Fri Nov 26 14:15:00 CST 1999
例2:设置时间为1999年11月28号。
# date -s 991128
Sun Nov 28 00:00:00 CST 1999
第三步# hwclock --utc --systohc
第四步# hwclock --show
附录:
UTC Universal Time Coordinated,世界标准时间
GMT Greenwich Mean Time,格林尼治时间
CST China standard Time ,中国标准时间
#date -u 显示标准时间
四 3月 10 03:51:56 UTC 2005
#date 显示本地时间
四 3月 10 11:52:54 CST 2005
我安装时选择了英文系统,然后时区选了美国东部时间。发现显示的时间不对,后来重装的时候选择了中文,也设置了正确的时区,还是不对,没办法,只好赶紧找资料吧。
Linux 中使用两种时间:世界时间(GMT)和本地时间(Local Time)。世界时间即格林尼治时间。而各个时区用户根据所在的时区(Time Zone)与国际时间的差值来获得本地时间。比如中国在东8区(CST +8:00),所以本地时间比国际时间快8小时。
Debian下设置时区的命令是tzconfig。
Linux 在每次启动时会加载BIOS的时间,并在退出时把时间写回BIOS。默认情况下,Linux认为BIOS里的时间是世界时间(UTC)。因此它读入世界时间然后根据用户所在时区计算出本地时间。对于中国而言,就是加上8小时。这种机制在多系统环境中会产生问题:因为Windows只认识本地时间,所以你在 Windows里设置的时间(会写回BIOS)在Linux环境中被认为是世界时间,从而导致Linux本地时间比正确时间快了8小时(对于中国而言)。如果你在Linux里把本地时间减去8小时来修正(世界时间相应的也会被减去8),又会导致Windows里的时间慢了8小时(因为Linux在退出时会将修改后的世界时间写回BIOS)(我用的是VMware,查看了一下其中的BIOS,确实如此,呵呵)。
Debian下的解决办法是编辑文件/etc/default/rcS,把其中的UTC=yes选项改为UTC=no(即让Linux认为BIOS里的是本地时间)。然后在BIOS里设置好正确的本地时间。