Saya ingin menjalankan perintah di linux kami setelah reboot, saya melihat bahwa itu bisa dilakukan menggunakan crontab. Saya ingin menjalankan perintah ini
sudo ifdown eth0 && sudo ifup -v eth0
pada crontab dapat saya lakukan:
@reboot sudo ifdown eth0 && sudo ifup -v eth0
atau apakah saya perlu menyimpannya dalam skrip?
Terima kasih
Jawaban:
Beberapa catatan di sini sebelum ini berfungsi:
sudo
dalam pekerjaan cron. Alih-alih editroot
crontab alih-alih milik Anda, mis.sudo crontab -e
Lalu masukkan perintah tanpasudo
.cron
, dan kemungkinan akan lebih baik ditempatkan/etc/rc.local
sebelumexit 0
baris.@reboot
juga harus berjalan setelah hard shutdown atau crash, tetapi ada implementasi cron yang berbeda sehingga YMMV. Saya telah melihat komentar di berbagai tempat yang menyatakan keduanya.EDIT (2016/02/17): Hapus uraian salah pada jalur absolut; kudos @muru
EDIT (2016/10/17): Menambahkan shutdown note
EDIT (2017/09/11): Revisi shutdown note. Tidak begitu yakin tentang itu.
sumber
etc/rc.local
tanpa sudo. demikian maka itu akan menjadi hanya ifdown eth0 && sudo ifup -v eth0 exit 0cron
menggunakan yangPATH
diberikan/etc/environment
, yang memang memiliki/sbin
./etc/pam.d/cron
memuatpam_env
, jadi/etc/environment
harus dibaca danPATH
set default digunakan. Jawaban itu diposting sebelum 12,04 keluar.Anda dapat menggunakan crontab untuk ini, tetapi jika Anda menggunakan
sudo
, maka Anda perluNOPASSWD
aturansudoers
untuk melakukannya. (Lihat Bagaimana menjalankan tugas cron menggunakan perintah sudo .)Akan lebih mudah untuk mengedit
/etc/rc.local
dan menambahkan perintah-perintah ini sebelumexit 0
baris.sumber