The setclock script
reads the time from the hardware clock, also known as the BIOS or the
Complementary Metal Oxide Semiconductor (CMOS) clock. If the hardware
clock is set to UTC, this script will convert the hardware clock's
time to the local time using the /etc/localtime
file (which tells the hwclock program which timezone the
user is in). There is no way to detect whether or not the hardware
clock is set to UTC, so this needs to be configured manually.
If you cannot remember whether or not the hardware clock is set to
UTC, find out by running the hwclock
--localtime --show
command. This will display what
the current time is according to the hardware clock. If this time
matches whatever your watch says, then the hardware clock is set to
local time. If the output from hwclock is not local time, chances
are it is set to UTC time. Verify this by adding or subtracting the
proper amount of hours for the timezone to the time shown by
hwclock. For example,
if you are currently in the MST timezone, which is also known as GMT
-0700, add seven hours to the local time.
Change the value of the UTC
variable below
to a value of 0
(zero) if the hardware
clock is not set to UTC time.
Create a new file /etc/sysconfig/clock
by running the following:
cat > ${CLFS}/etc/sysconfig/clock << "EOF"
# Begin /etc/sysconfig/clock
UTC=1
# End /etc/sysconfig/clock
EOF
A good hint explaining how to deal with time on CLFS is available at
http://hints.cross-lfs.org/index.php/time.txt.
It explains issues such as time zones, UTC, and the TZ
environment variable.