Cara menjalankan skrip pada startup CentOS Linux

13

Saya memasukkan satu skrip ke dalamnya /etc/init.d/abc.sh. Sekarang saya ingin dijalankan saat startup.

Bagaimana saya bisa melakukannya dengan chkconfig?

chkconfig --add abc.sh

Tetapi saya tidak yakin bagaimana cara kerjanya.

Fatamorgana
sumber
Ada artikel lama tapi masih bermanfaat di linuxjournal.com/article/4445
RedGrittyBrick

Jawaban:

8

Saya sering hanya menggunakan

/etc/rc.local

Jadi seperti...

echo "/etc/init.d/abc.sh" >> /etc/rc.local

harus meretasnya untukmu. Mungkin ada tempat yang lebih tepat, tetapi apa pun, itu berfungsi, pada sebagian besar distro tampaknya.

James T Snell
sumber
skrip itu adalah daemon dan saya punyaabc start stop restart configurd
Mirage
Mungkin Anda ingin menyebutnya dengan memasukkan: 'service abc start'
James T Snell
8

Skrip yang dijalankan saat startup tidak dikatakan sebagai skrip - jika Anda ingin skrip dieksekusi saat startup, ubah yang berikut di /etc/crontab:

@reboot /path/to/script
saravanakumar
sumber
1
Apakah ini akan berjalan sebagai pengguna root jika ditempatkan di cron?
Kimberly W
2
Itu ide yang brilian! Ini portabel & sederhana. Itu tidak merusak boot. Itu datang setelah modul sistem startup dengan izin pengguna yang akurat .... Dalam kasus saya di centos 7, itu akan menjadi "@reboot root / path / to / script"
Nicolas Guérinet
2

Lihatlah skrip init lain yang ada. Dalam setiap skrip init-rh-style yang tepat ada tiga petunjuk: runlevel, di mana skrip harus dimulai dan prioritas di mana skrip harus dimulai / dihentikan. Jumlah awal + henti biasanya 100.

Baris komentar ini dievaluasi oleh chkconfig.

Nils
sumber
1

Anda tidak bisa kecuali Anda membaca /usr/share/doc/initscripts-*/sysvinitfilesdan menyusun skrip Anda sesuai.

Ignacio Vazquez-Abrams
sumber
1

Anda berada di jalur yang benar. Skrip bash Anda berada di lokasi yang benar dan Anda telah menambahkannya ke chkconfig Anda, yang berarti skrip Anda diinstal.

Harap perhatikan bahwa itu /etc/init.dadalah tautan simbolis ke/etc/rc.d/init.d

Setelah menambahkan skrip Anda, Anda harus memilih runlevel mana yang Anda inginkan untuk mengaktifkannya: chkconfig --level 35 abc onakan mengaktifkan skrip Anda di runlevels 3 dan 5, startup paling umum Anda.

Silakan berkonsultasi chkconfig --helpuntuk info lebih lanjut.

PS. Anda juga dapat menggunakan ntsysvyang merupakan tui untuk chkconfig.

Dejan
sumber