Как изменить местное время без использования даты
Это удаленный сервер, так что никакой графический интерфейс или какие-то необычные вещи не установлены, я подключаюсь к этому хосту по SSH. Я полагаю, что по соображениям безопасности я не могу использовать команду date -s для изменения текущего времени локального сервера.
$ cat /etc/issues ==> Ubuntu 10.04 LTS
$ uname -r ==> 2.6.32-042stab037.1
$ cat $SHELL ==> /bin/bash
"date" показывает мне время, которое примерно на 10 минут раньше, я пытался связать правильное время из /usr/share/zoneinfo (в моем случае в Нью-Йорке) с /etc/localtime, но ничего не изменилось, мои часы по-прежнему 10 минут синхронизированный.
Нужно ли создавать новый бинарный файл часового пояса с помощью zic? Да? как? нет? Что еще я мог попробовать?
Большое спасибо заранее. /s
2 ответа
Использование adjtimex(8)
установить системные часы работающей системы. Он будет плавно регулировать время и не оставлять страшных пробелов, так как date
было бы. Однако синтаксис его использования мне не подходит, поэтому я просто использую ntp и забыл его.
Если ваши проблемы с часами сохраняются при перезагрузке, вам нужно будет сбросить аппаратные часы с помощью hwclock
также.
Задумывались ли вы об установке демона ntp, чтобы синхронизировать время, чтобы избежать его сокращения? Ntpd является хорошей отправной точкой (он предоставляется в пакетах debian ntp и openntpd)
Вам нужно будет установить ссылку на сервер (обычно ntp.pool.org, но вы можете изменить его, если вам нужно), а затем запустить его при запуске компьютера.... и позволить ему выполнить работу (т. Е. Сохранить время синхронизирован)