I have this same problem. Everytime my opensuse 11.0 boots my clock goes back 2 hours.
My BIOS clock is set localtime (since I also use windows). What I dont understand is that all my files are saying the clock is local, but its still applying this 2 hour offset at every boot. I also checked to see if it happened on shutdown but its not. After I turn it off, the BIOS clock is correct, only when opensuse is started the clock is changed.
My /etc/sysconfig/clock file:
## Path: System/Environment/Clock
## Description: Information about your timezone and time
## Type: string
## ServiceRestart: boot.clock
#
# Set to "-u" if your system clock is set to UTC, and to "--localtime"
# if your clock runs that way.
#
HWCLOCK="--localtime"
## Description: Write back system time to the hardware clock
## Type: yesno
## Default: yes
#
# Is set to "yes" write back the system time to the hardware
# clock at reboot or shutdown. Usefull if hardware clock is
# much more inaccurate than system clock. Set to "no" if
# system time does it wrong due e.g. missed timer interrupts.
# If set to "no" the hardware clock adjust feature is also
# skipped because it is rather useless without writing back
# the system time to the hardware clock.
#
SYSTOHC="no"
## Type: string(Europe/Berlin,Europe/London,Europe/Paris)
## ServiceRestart: boot.clock
#
# Timezone (e.g. CET)
# (this will set /usr/lib/zoneinfo/localtime)
#
TIMEZONE="America/Sao_Paulo"
DEFAULT_TIMEZONE="US/Eastern"
As you can see, the HWCLOCK variable is set to localtime. I still dont understand why suse is doing this clock update. My /etc/adjtime doesnt exist and hwclock fails with the message:
Cannot access the Hardware Clock via any known method.
Use the --debug option to see the details of our search for an access method.
Thanks