2016-04-28 3 views
0

Я дал всем в моей команде копию виртуальной машины centos 7. Время может выйти из синхронизации. Я обнаружил, что могу вручную обновить время, используя следующую команду:Вопрос разрешения NTP

[[email protected] ~]$ ntpdate pool.ntp.org 
26 Apr 18:10:11 ntpdate[25928]: bind() fails: Permission denied 
[[email protected] ~]$ 

Однако я могу обновить его только как sudo. Одна из команд, которые я сделал для команды, запускает автоматическое тестирование и использует date.time как имя.

Как я могу просто автоматизировать обновление времени на виртуальной машине или изменить разрешения этой службы, чтобы любой мог запускать ее независимо или разрешениями.

Спасибо!

+0

[no_sudo @ прокатку ~] $ пЪрд должен быть запущен как root, а не uid 1000 [co_sudo @ roll ~] $ –

+0

Этот вопрос лучше подходит для [SuperUser] (https://superuser.com/) или [ServerFault] (https://serverfault.com/) – jDo

ответ

1

«Как я могу эфиру автоматизировать обновление времени на виртуальной машине»

НПТ демона, ntpd, следует позаботиться об этом. Уверен, что он работает?

# start the ntp daemon 
/etc/init.d/ntpd start 

Можно также добавить ежедневную или почасовую запись в кронтабе суперпользователя, который обновляет время:

# To edit root's crontab 
sudo crontab -e 
# Add this line to run the command every day at noon (change as needed): 
* 12 * * * /usr/sbin/ntpdate 

«изменить права доступа к этой службе, поэтому любой желающий может запустить его»

Это подрывает модель безопасности. Однако, если пользователи могут использовать sudo уже, вы можете разрешить беспарольный выполнение этого единственного исполняемого файла, поэтому он не будет блокировать ваш скрипт:

# To edit the sudoers file: 
sudo visudo 
# Then add something like this depending on the location of ntpdate: 
username ALL= NOPASSWD: /usr/sbin/ntpdate 
+0

/etc/init.d/ntpd start -bash: /etc/init.d/ntpd: Нет такого файла или каталога :( –

+0

Возможно, у меня нет установленного демона? –

+0

@jeff_h Возможно ... Я не слишком хорошо знаком с вашим конкретным дистрибутивом. 'Ntpd' встречается в большинстве дистрибутивов, но пути и синтаксис команд. Использует ли' systemctl start ntpd' и 'systemctl enable ntpd'' systemctl status ntpd', чтобы увидеть, работает ли он? – jDo

0

Вы должны настроить и использовать ntpd вместо ntpdate.

+0

[ no_sudo @ roll ~] $ ntpdmust запускается как root, а не uid 1000 –

+0

Из вашего комментария выше, кажется, у вас нет ntpd на вашем хосте. Вы должны установить и настроить его. Вам нужны права root для запуска ntpdate и ntpd. ntpd лучше, так как он будет постоянно синхронизировать ваши компьютеры. ntpdate не может этого сделать. – GMichael

Смежные вопросы