ฉันจะป้องกันบริการ Apache ไม่ให้เริ่มอัตโนมัติบน Linux ได้อย่างไร


9

ปัญหาของฉันคือฉันไม่ต้องการหยุด apache daemon ด้วยคำสั่ง./apache2 stopจาก/etc/init.d(ฉันรู้ที่จะทำ) ฉันไม่ต้องการให้บริการ Apache เริ่มต้นโดยอัตโนมัติใน/etc/init.dการเริ่มต้นระบบ แต่ฉันต้องเก็บบริการไว้ในinit.dโฟลเดอร์ด้วย ฉันจะทำสิ่งนี้ได้อย่างไร ฉันต้องเปลี่ยนบางฟิลด์ในสคริปต์บริการหรือไม่


โปรดเพิ่มการกระจายของคุณ
squareborg

ฉันมี Debian Wheezy
Kyrol

คำตอบ:


9

คุณควรจะสามารถใช้คำสั่งเพื่อปิดการใช้งานบริการเมื่อเริ่มต้นทั้งนี้ขึ้นอยู่กับ distro ของคุณ การทำเช่นนี้มันจะหยุดจนกว่าคุณจะเริ่มด้วยตนเอง นี่คือตัวอย่างของ distros ที่ต่างกัน:

  • อูบุนตู / Debian: update-rc.d -f apache2 remove
  • Gentoo: rc-update del apache2
  • ArchLinux: systemctl disable apache2

18

นี่เป็นหัวข้อเก่า แต่ฉันจะเพิ่มสิ่งที่ฉันเพิ่งเรียนรู้ที่จะช่วยเหลือผู้อื่นที่มาที่นี่

สำหรับเดเบียนปัญหาเกี่ยวกับคำตอบที่ระบุคือการเปลี่ยนแปลงจะถูกยกเลิกในครั้งต่อไปที่มีการอัพเดตซอฟต์แวร์ จากหน้าคนสำหรับupdate-rc.d:

ข้อผิดพลาดในการดูแลระบบทั่วไปคือการลบลิงค์ที่คิดว่าสิ่งนี้จะ "ปิดการใช้งาน" บริการนั่นคือจะเป็นการป้องกันไม่ให้บริการเริ่มทำงาน อย่างไรก็ตามหากการเชื่อมโยงทั้งหมดถูกลบไปแล้วในครั้งต่อไปที่มีการอัพเกรดแพ็คเกจสคริปต์ postinst ของแพคเกจจะเรียกใช้ update-rc.d อีกครั้งและจะติดตั้งลิงก์ในตำแหน่งเริ่มต้นจากโรงงาน

ฉันเชื่อว่าการใช้คำสั่งปิดการใช้งานจะดีกว่า:

sudo update-rc.d apache2 disable

นี่คือข้อดีที่enableคำสั่งสามารถย้อนกลับการเปลี่ยนแปลง

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.