Bagaimana saya mencegah layanan Apache memulai otomatis di Linux?

9

Masalah saya adalah bahwa saya tidak ingin menghentikan daemon apache dengan perintah ./apache2 stopdari /etc/init.d(Saya tahu untuk melakukan ini). Saya tidak ingin layanan apache memulai secara otomatis /etc/init.dpada startup sistem. Tetapi saya juga perlu menyimpan layanan dalam init.dfolder. Bagaimana saya bisa melakukan ini? Apakah saya harus mengubah beberapa bidang dalam skrip layanan?

Kyrol
sumber
Silakan tambahkan distribusi Anda.
squareborg
Saya punya Debian Wheezy.
Kyrol

Jawaban:

8

Bergantung pada distro Anda, Anda harus dapat menjalankan perintah untuk menonaktifkan layanan saat startup. Melakukan ini akan dihentikan sampai Anda memulainya secara manual. Berikut adalah beberapa contoh di distro yang berbeda:

  • Ubuntu / Debian: update-rc.d -f apache2 remove
  • Gentoo: rc-update del apache2
  • ArchLinux: systemctl disable apache2
Peter
sumber
18

Ini adalah utas lama, tetapi saya akan menambahkan apa yang baru saja saya pelajari untuk membantu orang lain yang datang ke sini.

Untuk Debian, masalah dengan jawaban yang diberikan adalah bahwa perubahan akan dibatalkan saat berikutnya ada pembaruan untuk perangkat lunak. Dari halaman manual untuk update-rc.d:

Kesalahan administrasi sistem yang umum adalah menghapus tautan dengan anggapan bahwa ini akan "menonaktifkan" layanan, yaitu, bahwa ini akan mencegah layanan dimulai. Namun, jika semua tautan telah dihapus maka pada saat paket ditingkatkan, skrip postinst paket akan menjalankan pembaruan-rc.d lagi dan ini akan menginstal ulang tautan di lokasi default pabrik mereka.

Saya percaya bahwa lebih baik menggunakan direktif penonaktifan:

sudo update-rc.d apache2 disable

Ini memiliki keuntungan bahwa enablearahan dapat membalikkan perubahan.

t_henderson
sumber