Lupakan rc.local
.
Seperti yang saya katakan tentang CentOS 7 dan tentang Debian 8 dan tentang Ubuntu 15 :
Anda menggunakan sistem operasi systemd + Linux. /etc/rc.local
adalah mekanisme kompatibilitas mundur ganda dalam systemd, karena ini merupakan mekanisme kompatibilitas mundur untuk mekanisme yang dengan sendirinya merupakan mekanisme kompatibilitas dalam klon van Smoorenburg System 5 rc
.
Menggunakan /etc/rc.local
bisa salah besar. Orang-orang terkejut dengan fakta bahwa systemd tidak berjalan rc.local
dengan cara yang sama, di tempat yang sama di bootstrap, seperti yang biasa mereka lakukan. (Atau keliru berharap: Sebenarnya, itu tidak berjalan terakhir dalam sistem lama, seperti yang ditunjukkan oleh manual OpenBSD.) Yang lain terkejut dengan fakta bahwa apa yang mereka atur dalam rc.local
mengharapkan cara lama dalam melakukan sesuatu, adalah kemudian benar-benar dibatalkan oleh orang-orang seperti baru udev
aturan, NetworkManager, systemd-logind
, systemd-resolved
, atau berbagai "Kit" s.
Seperti dicontohkan oleh " Mengapa` init 0` menghasilkan "Kelebihan Argumen" pada Arch instal? ", Beberapa sistem operasi sudah menyediakan systemd tanpa fitur kompatibilitas mundur seperti systemd-rc-local-generator
generator . Sementara Debian masih mempertahankan fitur kompatibilitas ke belakang , Arch Linux membangun systemd dengan mereka dimatikan . Jadi pada Arch dan sistem operasi seperti itu diharapkan /etc/rc.local
sepenuhnya diabaikan .
Lupakan rc.local
. Itu bukan cara untuk pergi. Anda memiliki systemd + sistem operasi Linux. Jadi buatlah unit layanan systemd yang tepat, dan jangan mulai dari titik yang dua tingkat kompatibilitas mundur. (Di Ubuntu dan Fedora, tiga kali dihapus, klon van Smoorenburg System 5 rc
yang diikuti rc.local
kemudian telah dua kali digantikan, lebih dari satu dekade yang lalu, pertama oleh pemula dan kemudian oleh systemd.)
Juga ingat aturan pertama untuk bermigrasi ke systemd .
Ini bahkan bukan ide baru yang khusus untuk systemd. Pada sistem van Smoorenburg rc
dan Upstart, yang harus dilakukan adalah membuat rc
skrip van Smoorenburg yang tepat atau file pekerjaan pemula daripada menggunakan rc.local
. Bahkan catatan manual FreeBSD bahwa saat ini orang membuat rc
skrip Mewburn yang tepat alih-alih menggunakan /etc/rc.local
. Mewburn rc
diperkenalkan oleh NetBSD 1.5 pada tahun 2000.
/etc/rc.local
tanggal dari waktu Edisi Ketujuh Unix dan sebelumnya. Itu digantikan oleh /etc/inittab
dan berbasis runlevel rc
di AT&T Unix System 3 (dengan sedikit berbeda /etc/inittab
di AT&T Unix System 5) pada tahun 1983 . Bahkan itu sekarang sejarah.
Buat definisi layanan asli yang tepat untuk sistem manajemen layanan Anda, apakah itu bundel layanan untuk nosh toolset service-manager
dan system-control
, /etc/rc.d/
skrip untuk Mewburn rc
, file unit layanan untuk systemd, file pekerjaan untuk Pemula, direktori layanan untuk runit / s6 / daemontools -encore, atau bahkan /etc/init.d/
naskah untuk van Smoorenburg rc
.
Dalam systemd, file unit layanan yang ditambahkan administrator seperti itu /etc/systemd/system/
biasanya masuk (atau /usr/local/lib/systemd/system/
jarang). Dengan manajer layanan nosh, /var/local/sv/
adalah tempat konvensional untuk bundel layanan lokal. Mewburn rc
pada penggunaan FreeBSD /usr/local/etc/rc.d/
. File unit layanan yang dikemas dan bundel layanan, jika Anda membuatnya, pergi ke tempat yang berbeda.
Bacaan lebih lanjut