Як перезавантажитись у визначений час?


18

Чи можна повторно завантажувати мій Raspberry Pi о півночі щовечора? Я знаю, що в Linux ви б використовували crontab, але я, здається, не знаходжу /etc/crontab.


Насправді вам потрібно спершу зробити каталог / var / spool. Я поняття не маю, чому. Спробуйтеmkdir /var/spool
Елліот А.

Відповіді:


28

Для редагування кореневої crontab:

sudo -i
crontab -e

введіть потрібні записи; є зручний шаблон, завантажений crontab, який показує, які поля є що. Щойно ви закінчите і збережете їх із редактора crontab:

exit

щоб повернутися до оболонки користувача.

Щоб перезавантажити машину опівночі та 8 ранку, вам потрібен рядок:

0 0,8 * * * reboot

хоча насправді, Linux взагалі не потрібно перезавантажувати багато.


7
Чому ви створили окрему оболонку супер-користувача для запуску crontab? Чому ні sudo crontab -e?
Алекс Чемберлен

2
@AlexChamberlain - Так, це краще не заохочувати людей , щоб почати кореневої оболонки , якщо це не є абсолютно необхідним, але , по крайней мере , scruss запропонував , exitколи ви закінчите.
Марк Бут

@MarkBooth Повністю згоден. ІМХО sudoмає відмовитись від запуску su. Звичайно, навколо цього буде мільйон способів (у тому числі -i), але принаймні вам доведеться постаратися більше, щоб запустити rootоболонку.
Алекс Чемберлен

Я породив нову кореневу оболонку, тому що sudo не зовсім дає вам всі привілеї та середовище root. Я хотів переконатися, що користувач дійсно редагував crontab root. Cron досить складний із налаштуваннями SHELL і PATH, тому я хотів, щоб одна річ пішла неправильно.
scruss

1
Ні, новий crontab встановлюється, як тільки ви виходите з редактора. Щоб перевірити, зробіть crontab -l. Але насправді я все ще плутаю, чому вам потрібно так часто перезавантажуватись. Linux це не потребує, і якщо ви не тестуєте нові ядра, ви можете тримати систему. На моєму домашньому сервері працює 415 днів, із задоволенням чіпляючи без проблем.
scruss

5

Ви спробували додати запис із

 crontab -e

Схоже, у вас немає записів на кронтабі, тому файл не створений.


2

Сподіваємось, це допоможе.

sudo nano /etc/crontab -e

У файл додайте рядок

0 0 * * * root reboot

Не намагався, але сподіваюся, що це допомагає.


дякую за відповідь Це перезавантажить систему опівночі? Як я його встановити в інший раз? Так як, він перезавантажується опівночі, потім знову о 8 ранку? Спасибі :)!
Phorce

2
Не редагуйте / etc / crontab безпосередньо; використовувати команди crontab. Це безпечніше.
scruss

sudo crontab -e
Джон Ла Рой

sudo nano /etc/crontab -e: -eНемає сенсу, згідно з manpage of nano це "Ігнорується, для сумісності з Pico".
makrojames

так, дякую за те, що я очистив це. Я тільки почав з Linux і все ще перебуває на етапі навчання.
СтівІрвін

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.