Root crontab tidak berjalan

10

Untuk beberapa alasan, crontab root saya sepertinya tidak berjalan.

Mencoba me-reboot perangkat setiap malam di tengah malam.

Seharusnya sebagai berikut sebagai root:

crontab -e

Kemudian tambahkan:

0 0 * * * /sbin/shutdown -r now

Ketika saya menguji menggunakan beberapa nilai menutup waktu saat ini, tidak ada yang terjadi. Saya menginstal NTP dan memastikan zona waktu sudah benar. Saya juga menentukan menggunakan jam 24 jam. Misalnya, untuk menguji baris ini sekarang (17:35) saya mencoba memasukkan yang berikut ini:

36 17 * * * /sbin/shutdown -r now

Saya telah memeriksa waktu dengan tanggal -R. Waktu untuk menjalankan crontab datang dan pergi dan sistem tidak me-reboot. Apa yang kulewatkan di sini?

Atomiklan
sumber
Hanya untuk memastikan, Anda menutup crontab setelah mengeditnya, bukan? Juga, bagaimana Anda "menjalankan sebagai root"? Apa output dari sudo crontab -l | grep -v '#'?
terdon
Mengapa debian ini ditandai ? Jika ini tentang Debian dan bukan Ubuntu, silakan tanyakan di Unix & Linux .
muru
Karena debian adalah inti dari Ubuntu saya percaya.
Atomiklan

Jawaban:

11

Saya punya tiga saran solusi untuk Anda.

  1. Ajak crontab dengan crontab -e -u root

  2. Pastikan Anda memiliki baris kosong di akhir file cronjob, artinya setiap baris diakhiri dengan baris baru.

  3. Anda mungkin perlu mengarahkan output ke devnull: shutdown -r now > /dev/null

Berikut adalah dua halaman web yang bermanfaat untuk cronjobs:

Penguji CRON

Generator CRON

Anda juga dapat menangani cronjobs dengan rapi dengan webmin .

Selain itu, Anda memiliki setidaknya dua cara lagi untuk me-restart komputer Anda di tengah malam.

Pertama adalah menjalankan perintah shutdown sebagai skrip secara otomatis saat masuk tetapi dengan waktu tertentu sebagai parameter alih-alih "sekarang":

shutdown -r 00:00

Namun, ini akan menghasilkan pesan siaran shutdown yang akan datang di setiap login (mungkin bukan hal yang buruk sama sekali). Yah Anda juga bisa membuatnya dijalankan saat boot dengan menambahkan skrip di init.d, masih menghasilkan pesan.

Lain adalah menggunakan atperintah:

at 0am

Masukkan perintah shutdown -r nowdan simpan dengan ctrl + d atau lakukan skrip untuk perintah dan lakukan:

at -f restart_script.sh 0am

Semoga ini membantu Anda untuk mendapatkan hasil yang Anda inginkan.

Ahti Komu
sumber
Solusinya adalah output ke dev null. Kenapa ya?
Atomiklan
Itu karena pekerjaan cron memiliki lingkungannya sendiri yang tidak memiliki sistem input / output standar seperti yang Anda harapkan dan proses gagal karena mencoba untuk melakukan streaming pesan ke pipa output yang hilang. Pekerjaan cron sebenarnya jauh berbeda dibandingkan menjalankan beberapa perintah di terminal seperti halnya pengguna. Senang mendengar bahwa Anda berhasil setelah semua.
Ahti Komu
0

Pekerjaan System Cron terdaftar di file / etc / crontab. Karenanya, mengedit file ini secara langsung akan membantu Anda menjalankan perintah reboot sebagai root.

karena itu,

$ sudo vi /etc/crontab

# Example of job definition:
# .---------------- minute (0 - 59)
# |  .------------- hour (0 - 23)
# |  |  .---------- day of month (1 - 31)
# |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...
# |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# |  |  |  |  |
# *  *  *  *  * user-name  command to be executed
  23 20 *  *  *  root  shutdown  -r  now

pastikan Anda memeriksa file log Cron setelah mengedit crontab karena akan memberi tahu Anda jika cron berhasil diinstal.

Saya telah mengujinya dan itu berhasil untuk saya. Mulai ulang sistem saya pada pukul 20:23

Semoga berhasil!

rulebreaker4
sumber
-3

36 17 * * * dll.

36 17 bukan cara untuk menentukan waktu yang tepat di cron Anda.

periksa melalui perintah tanggal untuk melihat apakah sistem Anda bekerja di waktu AS atau waktu Europ

gunakan 17 36 jika waktu europ dan jika sistem Anda menggunakan waktu 24 jam atau 5 36 jika sistem Anda menggunakan waktu AS dan waktu 12 jam

toto
sumber
Tidak benar! Cron tidak menggunakan format waktu 12 jam dan formatnya selalu mm hh DD MM WD.
Ahti Komu
Silakan baca seluruh posting lain kali.
Atomiklan