Назад | Перейти на главную страницу

Как перезапустить сервер centos 6 из cron

Я понимаю, что это не одобряют. Многие посоветуют, что они не рекомендуют перезапускать сервер из cron, потому что он не отслеживается. В моем случае я хотел бы это сделать, причина в том, что сервер используется только для одной задачи в среде сервера узлов. На сервере заканчивается память, и мне посоветовали просто перезапустить весь сервер. Я согласен с этим.

В настоящее время в моем файле cron есть следующее. (Я получил это из другого вопроса о стеке).

0 */4 * * * /usr/bin/reboot

Однако это не работает. Когда я вручную перехожу в этот каталог / usr / bin /, набираю "reboot"это работает. Но выполнение этого / usr / bin / reboot из chron не перезапускает сервер.

Когда я делаю ls /usr/bin/reboot возврат /usr/bin/reboot Когда я делаю which reboot возврат /sbin/reboot

Как перезапустить сервер на CentOS 6 с помощью cron?

Как упомянул комментатор, вы вызываете не ту программу. Бинарный файл перезагрузки находится в /sbin/reboot, а не на /usr/bin/reboot. Последний является символической ссылкой на consolehelper, который является оболочкой, позволяющей пользователям без полномочий root запускать соответствующую программу в /sbin при определенных обстоятельствах. Вы можете увидеть его справочную страницу, если вам действительно интересно, как он работает, но поскольку CentOS 6 скоро перестанет работать, а текущие версии не используют его, об этом, вероятно, не стоит беспокоиться. Просто укажите правильный путь и переходите к более важным вещам, например, к устранению утечки памяти.