Saya memiliki pekerjaan yang berjalan selamanya saat dimulai. Jadi saya ingin memulainya hanya sekali setelah memasukkannya ke file "crontab -e" dan menyimpannya (atau) setiap kali reboot terjadi.
Bagaimana cara mencapai ini?
Saya memiliki pekerjaan yang berjalan selamanya saat dimulai. Jadi saya ingin memulainya hanya sekali setelah memasukkannya ke file "crontab -e" dan menyimpannya (atau) setiap kali reboot terjadi.
Bagaimana cara mencapai ini?
Jawaban:
Jika Anda ingin perintah dijalankan sekali di kemudian hari, gunakan at
perintah itu.
Jika Anda ingin perintah dijalankan sekali saat boot sistem, solusi yang tepat adalah dengan menggunakan:
@reboot
awalan khusus (lihat halaman manual)Yang terakhir adalah satu-satunya pilihan untuk pengguna non-root.
at now
@reboot
.
Anda bisa menggunakan di (1) untuk menjalankan pekerjaan di beberapa titik di masa depan. Namun, jika Anda ingin menjalankan sesuatu saat boot dan itu akan tetap berjalan dengan sendirinya, mungkin Anda ingin entri di /etc/init.d/ untuk itu? Itu akan membiarkan Anda memulainya saat boot.
kill
(dengan asumsi Anda punya izin untuk melakukannya, yang Anda lakukan untuk proses Anda sendiri). Membuat skrip init sangat mudah. Cari /etc/init.d/
skrip yang tidak terlalu panjang dan contohkan skrip Anda setelah itu, atau google for making init scripts (your distribution)
.
/etc/init.d/skeleton
pada openSuSE) yang dapat Anda sesuaikan untuk Anda gunakan.
Pekerjaan yang hanya berjalan sekali dan berjalan selamanya sampai Anda mengatakannya untuk mati disebut "daemon". Mereka biasanya dimulai melalui skrip init di /etc/init.d/.
Jika pekerjaan Anda berakhir pada titik tertentu dan dapat dianggap sebagai jenis pekerjaan sekali saja, maka Anda mungkin ingin melihat perintah at. Sebagai contoh jika saya ingin menjalankan perintah find di 10 malam ini dan hanya sekali ini yang akan saya lakukan:
$ at 10PM
at> find /root > /root/find_results.list
at> <EOT>
job 3 at 2010-02-10 22:00
Lihatlah perintah at