old-www/LDP/sag/html/showing-setting-time.html

414 lines
6.5 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML
><HEAD
><TITLE
>Showing and setting time</TITLE
><META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.7"><LINK
REL="HOME"
TITLE="Linux System Administrators Guide"
HREF="index.html"><LINK
REL="UP"
TITLE="Keeping Time"
HREF="keeping-time.html"><LINK
REL="PREVIOUS"
TITLE="The hardware and software clocks"
HREF="hw-sw-clocks.html"><LINK
REL="NEXT"
TITLE="When the clock is wrong"
HREF="clock-wrong.html"></HEAD
><BODY
CLASS="SECT1"
BGCOLOR="#FFFFFF"
TEXT="#000000"
LINK="#0000FF"
VLINK="#840084"
ALINK="#0000FF"
><DIV
CLASS="NAVHEADER"
><TABLE
SUMMARY="Header navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TH
COLSPAN="3"
ALIGN="center"
>Linux System Administrators Guide: </TH
></TR
><TR
><TD
WIDTH="10%"
ALIGN="left"
VALIGN="bottom"
><A
HREF="hw-sw-clocks.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="80%"
ALIGN="center"
VALIGN="bottom"
>Chapter 14. Keeping Time</TD
><TD
WIDTH="10%"
ALIGN="right"
VALIGN="bottom"
><A
HREF="clock-wrong.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
></TABLE
><HR
ALIGN="LEFT"
WIDTH="100%"></DIV
><DIV
CLASS="SECT1"
><H1
CLASS="SECT1"
><A
NAME="SHOWING-SETTING-TIME"
></A
>14.3. Showing and setting time</H1
><P
> In Linux, the system time zone is determined
by the symbolic link <TT
CLASS="FILENAME"
>/etc/localtime</TT
>.
This link points to a time zone data file that describes
the local time zone. The time zone data files are located at
either <TT
CLASS="FILENAME"
>/usr/lib/zoneinfo</TT
> or
<TT
CLASS="FILENAME"
>/usr/share/zoneinfo</TT
> depending on what distribution
of Linux you use.</P
><P
> For example, on a SuSE system located in New Jersey the
<TT
CLASS="FILENAME"
>/etc/localtime</TT
> link would point to
<TT
CLASS="FILENAME"
>/usr/share/zoneinfo/US/Eastern</TT
>. On a Debian system
the <TT
CLASS="FILENAME"
>/etc/localtime</TT
> link would point to
<TT
CLASS="FILENAME"
>/usr/lib/zoneinfo/US/Eastern</TT
>.</P
><P
> If you fail to find the <TT
CLASS="FILENAME"
>zoneinfo</TT
>
directory in either the <TT
CLASS="FILENAME"
>/usr/lib</TT
> or
<TT
CLASS="FILENAME"
>/usr/share</TT
> directories, either do a
<B
CLASS="COMMAND"
>find /usr -print | grep zoneinfo</B
> or consult
your distribution's documentation.
</P
><P
> What happens when you have a users located in a different
timezone? A user can change his private time zone by setting the
TZ environment variable. If it is unset, the system time zone
is assumed. The syntax of the TZ variable is described in the
<TT
CLASS="FUNCTION"
>tzset</TT
> manual page. </P
><P
> The <B
CLASS="COMMAND"
>date</B
> command shows the current date and
time.
For example:
<TABLE
BORDER="1"
BGCOLOR="#E0E0E0"
WIDTH="100%"
><TR
><TD
><FONT
COLOR="#000000"
><PRE
CLASS="SCREEN"
><TT
CLASS="PROMPT"
>$</TT
> <TT
CLASS="USERINPUT"
><B
>date</B
></TT
>
<TT
CLASS="COMPUTEROUTPUT"
>Sun Jul 14 21:53:41 EET DST 1996</TT
>
<TT
CLASS="PROMPT"
>$</TT
></PRE
></FONT
></TD
></TR
></TABLE
>
That time is Sunday, 14th of July, 1996, at about ten before
ten at the evening, in the time zone called ``EET DST''
(which might be East European Daylight Savings Time).
<B
CLASS="COMMAND"
>date</B
> can also show the universal time:
<TABLE
BORDER="1"
BGCOLOR="#E0E0E0"
WIDTH="100%"
><TR
><TD
><FONT
COLOR="#000000"
><PRE
CLASS="SCREEN"
><TT
CLASS="PROMPT"
>$</TT
> <TT
CLASS="USERINPUT"
><B
>date -u</B
></TT
>
<TT
CLASS="COMPUTEROUTPUT"
>Sun Jul 14 18:53:42 UTC 1996</TT
>
<TT
CLASS="PROMPT"
>$</TT
></PRE
></FONT
></TD
></TR
></TABLE
>
<B
CLASS="COMMAND"
>date</B
> is also used to set the kernel's software
clock:
<TABLE
BORDER="1"
BGCOLOR="#E0E0E0"
WIDTH="100%"
><TR
><TD
><FONT
COLOR="#000000"
><PRE
CLASS="SCREEN"
><TT
CLASS="PROMPT"
>#</TT
> <TT
CLASS="USERINPUT"
><B
>date 07142157</B
></TT
>
<TT
CLASS="COMPUTEROUTPUT"
>Sun Jul 14 21:57:00 EET DST 1996</TT
>
<TT
CLASS="PROMPT"
>#</TT
> <TT
CLASS="USERINPUT"
><B
>date</B
></TT
>
<TT
CLASS="COMPUTEROUTPUT"
>Sun Jul 14 21:57:02 EET DST 1996</TT
>
<TT
CLASS="PROMPT"
>#</TT
></PRE
></FONT
></TD
></TR
></TABLE
>
See the <B
CLASS="COMMAND"
>date</B
> manual page for more details;
the syntax is a bit arcane. Only root can set the time.
While each user can have his own time zone, the clock is the
same for everyone. </P
><P
>Beware of the <B
CLASS="COMMAND"
>time</B
> command. This is not
used to get the system time. Instead it's used to time how long
something takes. Refer the the time man page.</P
><P
> <B
CLASS="COMMAND"
>date</B
> only shows or sets the software
clock. The <B
CLASS="COMMAND"
>clock</B
> commands synchronizes
the hardware and software clocks. It is used when the system
boots, to read the hardware clock and set the software clock.
If you need to set both clocks, you first set the software clock
with <B
CLASS="COMMAND"
>date</B
>, and then the hardware clock with
<B
CLASS="COMMAND"
>clock -w</B
>. </P
><P
> The <TT
CLASS="OPTION"
>-u</TT
> option to <B
CLASS="COMMAND"
>clock</B
>
tells it that the hardware clock is in universal time.
You <EM
>must</EM
> use the <TT
CLASS="OPTION"
>-u</TT
>
option correctly. If you don't, your computer will be quite
confused about what the time is. </P
><P
> The clocks should be changed with care. Many parts of a
Unix system require the clocks to work correctly. For example,
the <B
CLASS="COMMAND"
>cron</B
> daemon runs commands periodically.
If you change the clock, it can be confused of whether
it needs to run the commands or not. On one early Unix
system, someone set the clock twenty years into the future,
and <B
CLASS="COMMAND"
>cron</B
> wanted to run all the periodic
commands for twenty years all at once. Current versions of
<B
CLASS="COMMAND"
>cron</B
> can handle this correctly, but you should
still be careful. Big jumps or backward jumps are more dangerous
than smaller or forward ones. </P
></DIV
><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
WIDTH="100%"><TABLE
SUMMARY="Footer navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
><A
HREF="hw-sw-clocks.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="index.html"
ACCESSKEY="H"
>Home</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
><A
HREF="clock-wrong.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
>The hardware and software clocks</TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="keeping-time.html"
ACCESSKEY="U"
>Up</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
>When the clock is wrong</TD
></TR
></TABLE
></DIV
></BODY
></HTML
>