Come riavvio in un momento specifico?


18

È possibile riavviare il mio Raspberry Pi a mezzanotte ogni notte? So che in Linux useresti crontab, ma non riesco a trovarlo /etc/crontab.


In realtà, devi prima creare la directory / var / spool. Non ho idea del perché. Provamkdir /var/spool
— Elliot A.

Risposte:


28

Per modificare il crontab di root:

sudo -i
crontab -e

inserisci le voci che desideri; c'è un comodo modello caricato da crontab che mostra quali campi sono cosa. Una volta terminato e salvato dall'editor crontab:

exit

per tornare alla shell dell'utente.

Per riavviare la macchina a mezzanotte e alle 8, è necessario il collegamento:

0 0,8 * * * reboot

anche se davvero, Linux non ha bisogno di essere riavviato molto, se non del tutto.


7
Perché hai generato una shell separata per superutente da eseguire crontab? Perché no sudo crontab -e?
— Alex Chamberlain,

2
@AlexChamberlain - Sì, è meglio non incoraggiare le persone ad avviare una shell di root a meno che non sia assolutamente necessario, ma almeno scruss suggerito exitquando hai finito.
— Mark Booth,

@MarkBooth Completamente d'accordo. L'IMHO sudodovrebbe rifiutarsi di correre su. Ovviamente ci saranno un milione di modi per aggirarlo (incluso -i), ma almeno dovrai fare di più per eseguire una rootshell.
— Alex Chamberlain,

Ho generato una nuova shell di root perché sudo non ti dà tutti i privilegi e l'ambiente di root. Volevo assicurarmi che l'utente stesse davvero modificando il crontab di root. Cron è abbastanza complicato con le sue impostazioni SHELL e PATH, quindi volevo che qualcosa in meno potesse andare storto.
— scruss

1
No, il nuovo crontab viene installato non appena si esce dall'editor. Per controllare, fallo crontab -l. Ma davvero, sono ancora confuso sul motivo per cui è necessario riavviare così frequentemente. Linux non ne ha bisogno e, a meno che tu non stia testando nuovi kernel, puoi mantenere il sistema attivo. Il mio server di casa è in funzione da 415 giorni, felicemente si è unito senza problemi.
— scruss,

5

Hai provato ad aggiungere una voce con

 crontab -e

Sembra che tu non abbia voci crontab e quindi il file non viene creato.


2

Spero che possa aiutare.

sudo nano /etc/crontab -e

Nel file, aggiungi una riga

0 0 * * * root reboot

Non ci ho provato ma spero che questo aiuti.


Grazie per la risposta. Questo riavvierà il sistema a mezzanotte? Come lo imposterò per un'altra volta? Quindi, si riavvia a mezzanotte, quindi di nuovo alle 8? Grazie :)!
— Phorce,

2
Non modificare direttamente / etc / crontab; usa i comandi crontab. È più sicuro.
— scruss

sudo crontab -e
— John La Rooy,

sudo nano /etc/crontab -e: Il -enon ha senso, secondo la manpage di nano è "Ignorato, per compatibilità con Pico".
— macrojames

Sì, grazie per averlo chiarito. Ho appena iniziato con Linux e ancora in fase di apprendimento. Inoltre dagli altri post che ho visto qui, sembra che sia una cattiva idea modificare direttamente il crontab.
— SteveIrwin,

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.