Вывод и настройка времени

В дистрибутиве Debian, часовой пояс системы определен символической связью /etc/localtime. Эта связь указывает на зональный файл данных, который описывает зону местного времени. Файлы данных часового пояса сохранены в /usr/lib/zoneinfo. Другие дистрибутивы Linux могут делать это по-другому.

Пользователь может изменять свой часовой пояс, устанавливая системную переменную TZ. Если она не установлена, принимается часовой пояс системы. Синтаксис TZ переменной описан в man-руководстве на tzset.

Команда date показывает текущую дату и время. Например:


$ date
Sun Jul 14 21:53:41 EET DST 1996
$
Текущее время: воскресенье, 14-ого июля, 1996 г., приблизительно десять часов вечера в часовом поясе, названном ``EET DST'' (что может значить восточноевропейское летнее время). Команда date может также показывать универсальное время:

$ date -uSun Jul 14 18:53:42 UTC 1996
Sun Jul 14 18:53:42 UTC 1996
$
date также используется, чтобы установить программные часы ядра:

# date 07142157
Sun Jul 14 21:57:00 EET DST 1996
# date
Sun Jul 14 21:57:02 EET DST 1996
#
См. man-руководство по date для подробностей: синтаксис немного сложный. Только root может устанавливать время. В то время, как каждый пользователь может иметь собственный часовой пояс, часы одни для всех.

date только показывает или настраивает программное обеспечение часов. Команда clock синхронизирует аппаратные и программные часы. Это используется когда система загружается, чтобы прочитать аппаратные часы и установить программные соответственно. Если Вы должны установить и те и другие часы, сначала установите программные часы командой date и затем аппаратные часы командой clock -w.

Опция -u команды clock Сообщает, что аппаратные часы находятся в универсальном времени. Вы должны использовать опцию -u правильно. Если Вы не делаете, ваш компьютер будет совершенно запутан относительно того, мсколько времени.

Часы должны быть изменены осторожно. Много частей Unix системы требуют, чтобы часы работали правильно. Например, демон cron выполняет команды периодически. Если Вы изменяете часы, он может запутаться надо ли выполнить команды или нет. На одной ранней Unix системе, кто-то устанавил часы на двадцать лет вперед, и cron захотел выполниться все периодические команды за двадцать лет сразу! Текущие версии cron должны бы обрабатывать это правильно, но Вы все еще будьте внимательны. Большие переходы более опасны, чем маленькие.