พุ่งพรวดบนเดเบียน?


20

ฉันสร้างสคริปต์ธรรมดาใน Ubuntu โดยคิดว่ามันจะเหมือนกันสำหรับ Debian แต่ Debian ไม่มี/etc/initโฟลเดอร์ที่ Ubuntu มี ฉันไปที่หน้าดาวน์โหลดพุ่งพรวดและเห็นว่าพวกเขามีแพ็คเกจทำapt-get install upstartแต่มันขอให้ลบ sysvinit ซึ่งฉันรู้ว่าจะ / อาจทำให้ระบบของฉันแย่ลง ดังนั้นฉันจะทำให้สคริปต์ Ubuntu ทำงานบน Debian ได้อย่างไร

คำตอบ:


12

มันไม่ได้เกี่ยวกับ Debian โดยตรง VS อูบุนตูมันเป็นเรื่องของsysvinit VS พุ่งพรวด เดเบียนมีค่าเริ่มต้นเป็น SysVinit; คุณสามารถติดตั้ง Upstart แต่คุณจำเป็นต้องรู้ว่าคุณกำลังทำอะไรและคุณควรทำความคุ้นเคยกับมันก่อนที่คุณจะนึกถึงการติดตั้งบนเซิร์ฟเวอร์ที่ใช้งานจริง แม้ว่าจะเป็นไปได้ในทางทฤษฎีในการติดตั้งทั้งคู่โดยมีเพียงหนึ่งตัวเท่านั้นที่ทำงานในกระบวนการหมายเลข 1 แต่ Debian ไม่รองรับสิ่งนี้

พุ่งพรวดอายุน้อยกว่า SysVinit และมีความสามารถมากขึ้นซึ่งอธิบายว่าทำไมคุณไม่สามารถใช้คำอธิบายบริการพุ่งพรวดและป้อนให้ SysVinit คุณจะต้องเขียนสคริปต์ /etc/init.dโดยทั่วไปความต้องการสคริปต์เพื่อดูอาร์กิวเมนต์แรก ( $1) และstart, stopหรือrestartบริการเป็นผู้กำกับ

หากคุณใช้เหตุการณ์พุ่งพรวดเพื่อกำหนดว่าเมื่อใดจะเริ่มสคริปต์คุณจะต้องใช้วิธีการอื่น พุ่งพรวดรวบรวมเหตุการณ์จากแหล่งต่าง ๆ มากมาย; คุณสามารถรับทริกเกอร์ได้จากทุกที่ที่ Upstart ได้รับมันพุ่งพรวดในแง่นี้เป็นเพียงวิธีที่สะดวกโดยไม่ต้องมองหาทริกเกอร์ในที่ต่าง ๆ และโปรโตคอล


แล้วทำไม Ubuntu จึงใช้ทั้งการพุ่งพรวดและ SysVinit (หรือดูเหมือนว่า)?
ColinM

@ColinM Ubuntu ไม่ได้ใช้ SysVinit
Gilles 'หยุดความชั่วร้าย'

5

เหตุผลที่จะลบออกsysvinitเนื่องจากสองสิ่งนี้เป็นข้อขัดแย้ง นอกจากนี้โปรดทราบว่าsysvinitถือเป็นสิ่งจำเป็น (อ่าน: ไม่ควรลบออกเว้นแต่คุณจะรู้ว่าคุณกำลังทำอะไรอยู่ )

ส่วนหนึ่งของผลลัพธ์จาก 'ความถนัดปรากฏตัวพุ่งพรวด `:

Conflicts: startup-tasks, system-services, sysvinit, upstart-compat-sysv, upstart-job

หากคุณสามารถจ่ายได้กับระบบของคุณไปข้างหน้าและติดตั้ง


ไม่มันเป็นเซิร์ฟเวอร์ที่ใช้งานจริง ไม่มีวิธีใดที่ฉันสามารถสร้างบริการที่ฉันสามารถเริ่มและหยุดจากเทอร์มินัลได้หรือไม่?
theTuxRacer

จากนั้นใส่สคริปต์ของคุณ/etc/init.dและทำความเข้าใจกับstart|stop|restartคำสั่งขั้นต่ำ คุณไม่จำเป็นต้องupstartเรียกใช้สคริปต์เพียงบรรทัดคำสั่งปกติของคุณ
alex

@ kau แล้วคุณโคลนเซิร์ฟเวอร์ที่ใช้งานจริงของคุณกับเครื่องทดสอบและติดตั้งพุ่งพรวดและทดสอบอย่างไร
tshepang

@alex @Tshepang คุณช่วยดูและให้คำแนะนำได้ไหม? paste.ubuntu.com/555683 jar ไม่ถูกเรียกใช้งาน
theTuxRacer

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