Почему часы идут неправильно

Программные часы Linux не всегда точны. Они управляются периодическим прерыванием таймера (timer interrupt), сгенерированным аппаратными средствами PC. Если система имеет слишком много процессов, обработка прерывания от таймера может быть слишком длинной, и программные часы начинают отставать. Аппаратные часы работают независимо и обычно более точны. Если Вы загружаете ваш компьютер часто (как имеет место для большинства систем, которые не являются серверами), программные часы обычно будут хранить довольно точное время.

Если Вы должны корректировать аппаратные часы, обычно проще всего перезагрузиться, войти в экран установки BIOS и сделать все оттуда. Это позволит избежать тех проблем, которые могло бы вызывать изменяющееся системное время. При выполнении корректировки не через BIOS, установите новые значения даты и времени (в таком порядке) командами date и clock, но будьте готовы перезагрузиться, если некоторая часть системы начнет действовать неадекватно.

Подключенный к сети компьютер (даже если только через модемом) может проверять собственные часы автоматически, сравнивая их со временем некоторого другого компьютера. Если другой компьютер хранит очень точное время, то оба компьютера будут хранить точное время. Это может быть выполнено, используя команды rdate и netdate. Обе проверяют время удаленного компьютера (netdate может обрабатывать несколько удаленных компьютеров), и соответственно устанавливают время локального компьютера. Используя эти команды регулярно, ваш компьютер будет хранить точное время.