ดังนั้นจุดหนึ่งของงานพุ่งพรวดคือเขียนได้ง่าย
มีเวทย์มนต์เชลล์สคริปต์จำนวนมากในสคริปต์ init.d ที่ได้รับซ้ำ ๆ ไปเรื่อย ๆ คำสั่ง Case, การติดตาม pidfile, บรรทัดข้อคิดเห็น lsb มันไม่ชัดเจนมากนักในการเขียนสคริปต์ GOOD init.d โดยไม่ต้องอ่าน
หากคุณประสบปัญหาในการเขียนทั้งหมดแล้วคุณไม่จำเป็นต้องมีงานใหม่เว้นแต่ว่าฉันได้กล่าวถึงในความคิดเห็นอื่นคุณจะต้องพึ่งพางาน / เหตุการณ์ที่พุ่งพรวดอีกครั้ง
แต่จริงๆแล้วการพุ่งพรวดทำให้สิ่งต่าง ๆ เป็นเรื่องง่าย คุณไม่จำเป็นต้องมีการเริ่มต้นล่วงหน้าเว้นแต่คุณจะต้องตั้งค่าสิ่งต่างๆเช่น tmpdirs, ulimits หรืออาร์กิวเมนต์ runtime คุณไม่ควรต้องโพสต์สต็อปเว้นแต่ว่าคุณต้องการให้แน่ใจว่าคุณเรียบร้อยหลังจากบริการ (บริการควรจะทำความสะอาดหลังจากที่ตัวเองออกปกติ
บ่อยครั้งที่สคริปต์ init.d ขนาดยักษ์ที่มีตัวเลือกมากมายทำให้งานพุ่งพรวดเป็น 10 - 15 บรรทัด สคริปต์ init.d ที่ซับซ้อนที่สุดสามารถมีตรรกะส่วนใหญ่ทิ้งลงใน pre-start's กุญแจสำคัญคือมันเป็นเพียงตัวอย่างเล็ก ๆ ของรหัสในการตั้งค่าสภาพแวดล้อมสำหรับกระบวนการและไม่ใช่ตรรกะในการจัดการการเริ่ม / หยุด / respawn / ฯลฯ
ส่วนที่ยากที่สุดและคนที่ทำผิดบ่อยที่สุดคือการรู้ว่าจะเริ่ม / หยุดงานเมื่อใด start on runlevel [2345]
ดูเหมือนว่ามีเหตุผล แต่ไม่สนใจข้อเท็จจริงที่ว่าเครือข่ายกำลังเกิดขึ้นพร้อมกัน ณ จุดนั้นเช่นเดียวกับที่ระบบไฟล์โลคัลเมาต์ กุญแจสำคัญคือการลองและคำนวณสิ่งที่คุณต้องการขั้นต่ำ (บริการอื่น ๆ ระบบแฟ้มเครือข่าย ฯลฯ ) เพื่อเริ่มใช้งานและเริ่มต้นเมื่อเสร็จสิ้น start on (local-filesystems and net-device-up IFACE!=lo)
บริการส่วนใหญ่เครือข่ายแบบดั้งเดิมควรจะทำอย่างไร