Bagaimana cara mengatur skrip yang akan dijalankan saat memulai di FreeBSD?


10

Saya menggunakan FreeBSD 9 dan saya ingin membuat skrip yang akan memeriksa apakah kabel Ethernet terhubung, dan jika demikian, hubungkan ke sana. Saya ingin mengaturnya agar berjalan setiap kali mesin dinyalakan, atau setiap kali saya masuk. Saya melihat buku UNIX saya (Ini sudah ketinggalan zaman, dan untuk UNIX umum, tidak khusus FreeBSD) dan dikatakan bahwa saya dapat menggunakan crontab, tapi saya hanya bisa melakukan ini untuk membuat hal-hal berjalan pada waktu-waktu tertentu, bukan ketika itu dimulai. Bisakah seseorang tolong beri tahu saya bagaimana saya bisa mendapatkannya?

Jawaban:


11

FreeBSD cronmemahami @rebootarahan waktu, sehingga Anda memang dapat cronmenjalankan skrip saat memulai. Alih-alih bidang 5 waktu yang biasa, crontabentri Anda mungkin terlihat seperti ini:

@reboot /path/to/script

Jika Anda ingin juga untuk menjalankan cek ketika Anda login, menambahkan panggilan ke script di file mengeksekusi shell Anda setelah login - ini bisa menjadi, tergantung pada shell Anda, ~/.login, ~/.bash_login, dll


4

Pada FreeBSD 11 untuk ARMv6 (Raspberry Pi), saya tidak bisa mendapatkan @rebootarahan crontab bekerja untuk pengguna root, dan metode "tambahkan skrip ke /etc/rc.localfile" telah digantikan oleh mekanisme yang secara otomatis menjalankan skrip yang berlokasi di /usr/local/etc/rc.d/.

Dengan kata lain, untuk menjalankan skrip saat boot pada FreeBSD 11 (atau 10?) Dan kemungkinan lebih baru, letakkan skrip shell yang dapat dieksekusi dengan ekstensi .sh di folder ini agar dieksekusi saat boot:

/usr/local/etc/rc.d/

Anda mungkin perlu membuat rc.dfolder jika tidak ada.

Lihat http://www.defcon1.org/html/rc-local.html untuk detailnya.


3

Solusi lain untuk skrip startup adalah /etc/rc.local.


1
Meskipun man rcmengatakan "Biasanya, mekanisme /usr/local/etc/rc.d/ digunakan alih-alih rc.local hari ini tetapi jika Anda ingin menggunakan rc.local, masih didukung. Dalam hal ini, ia harus mencari / etc / rc.conf dan mengandung tambahan kode startup untuk sistem Anda. Cara terbaik untuk menangani rc.local, bagaimanapun, adalah dengan memisahkannya menjadi skrip rc.d / style dan menempatkannya di bawah / usr / local / etc / rc .d /. "
zezollo
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.