System time/ja

Unix システムは、システムクロックによって裏付けられるシステム時刻を時刻の把握に使用しています. これは、ハードウェアクロックまたは外部タイム・サーバーによって設定することができます.

ソフトウェアクロックとハードウェアクロック
The system clock, provided by the kernel, is implemented as a simple count of the number of ticks that have transpired since the 1 January 1970 00:00:00 UTC. This is called Unix time.

ハードウェアクロック（また、リアルタイムクロックやRTCとして知られる）は、典型的には、メインボード上のコンポーネントです. オペレーティングシステムの状態に関係なく、コンピュータがシャットダウンしても常に実行されます.

UTC時間とローカルタイム
The time for hardware clock can be modified to represent two standards: localtime or UTC time. The localtime is the real time of the time zone including DST. Preferred is UTC time because the system time gets computed by adding the time zone difference and DST. So daylight saving changes get automatically applied and changing the time zone are possible without changing the hardware clock. Exceptions can be made when using a dual-boot system; this is when the other operating system does not support or is not configured for an UTC hardware clock (by default, Windows uses localtime).

タイムゾーン
時刻を適切に保つには、あなたのタイムゾーン（標準時）を選び、システムがどの地域にあるのかを知らせる必要があります.

OpenRC
Look for the local time zone in. Please avoid the time zones as their names do not indicate the expected zones. For instance, is in fact GMT+8. For localtime select the "localtime" time zone.

After zone info has been selected, set the time zone in, e.g. for Germany:

The information in this file is used by on each package update to copy the chosen zoneinfo file to. To setup this file out of order, run:

systemd
systemd comes with the to manage the time zone:

To check the current zone:

To list available zones:

To change the time zone, e.g. for Germany:

LC_TIME
This environment variable defines formatting of dates and times. For more details see The GNU C Library

System clock
通常、システムクロックの時間は起動時にハードウェアクロックによって設定されます. 代替的には、システムクロックを手動で設定するか、ネットワークタイムサーバを使用することが可能です.

The command can be used to manage the system clock time:

現在のソフトウェアの時刻を確認するには:

To set the system clock, e.g. 12:34, May. 6, 2016:

Time server
See the NTP article for information concerning the use of time servers.

systemd
systemd comes with the command to manage the system clock time:

To check the current software clock time:

To set the system clock:

Hardware clock
To have a hardware clock, the following kernel options must be activated:

At runtime, to check the current hardware clock time:

To set the hardware clock to the current system clock:

Syncing Hardware clock and System time
Typically the hardware clock is used to setup the system clock on boot. This can be done by the kernel itself or by a boot service (init script). Also on shutdown the kernel or a service can write the software clock to the hardware clock. This aids the system in having the correct time on boot.

In-kernel method
On a sufficiently modern kernel (3.9 or newer), Linux can be configured to handle setting the system time automatically. To do so, also the Set system time ... and Set the RTC time ... drivers need to be activated:

Please note that Set the RTC time based on NTP synchronization is not used by some NTP implementations. Supported NTP implementations include: (more information here) and  (more information in the NTP article). OpenNtpd does not support setting the hardware time and therefore should be avoided.

To check if the hardware time is updated, run:

The 64 bit of the reported number should be unset (0). More information in hwclock man pages (search '11 minute mode').

OpenRC
When using OpenRC the init script can set the system clock on boot and sync system time to the hardware clock on shutdown. The service is enabled by default and should be disabled in favor of the above mentioned in-kernel method. The script should not be run when using the kernel's real time clock.

If however there is a need for using the OpenRC, set both  and   to   in. By default the service is configured for UTC time standard. To change to localtime add.

Restart the service and have the hardware clock init script run on system boot:

Systemd
systemd can be used to set the system clock on boot. Use to manage the hardware clock:

To check the current hardware clock time:

To set the hardware clock to the current system clock (UTC time standard):

To set the hardware clock to the current system clock (localtime time standard):

External resources

 * http://lifehacker.com/5742148/fix-windows-clock-issues-when-dual-booting-with-os-x - Dual booting with MS Windows, set RealTimeIsUniversal. Also tested with Windows 10.
 * http://tldp.org/HOWTO/Clock-2.html - The Clock Mini-HOWTO.