sudo mv /filename /etc/init.d/
sudo chmod +x /etc/init.d/filename
sudo update-rc.d filename defaults
สคริปต์ควรเริ่มต้นตอนบูท โปรดทราบว่าวิธีนี้ใช้ได้กับทั้งฮาร์ดลิงก์และลิงก์สัญลักษณ์ ( ln
)
แก้ไข
ณ จุดนี้ในกระบวนการบูท PATH ยังไม่ได้ตั้งค่าดังนั้นจึงเป็นสิ่งสำคัญที่จะต้องใช้พา ธ สัมบูรณ์ตลอด แต่ดังที่ได้กล่าวไว้ในข้อคิดเห็นโดย Steve HHH ได้ประกาศเส้นทางไฟล์แบบเต็ม ( /etc/init.d/filename
) สำหรับคำสั่ง update-rc.d อย่างไม่ถูกต้องใน Linux เกือบทุกเวอร์ชัน ตามmanpage สำหรับ update-rc.dพารามิเตอร์ตัวที่สองคือสคริปต์ที่อยู่/etc/init.d/*
พารามิเตอร์ที่สองคือสคริปต์ที่ตั้งอยู่ในอัปเดตโค้ดด้านบนเพื่อแสดงถึงสิ่งนี้
การแก้ไขอื่น
นอกจากนี้ยังชี้ให้เห็นในความคิดเห็น (โดย Charles Brandt) /filename
จะต้องเป็นสคริปต์สไตล์ init แม่แบบที่ดีให้ยัง - https://github.com/fhd/init-script-template
ลิงก์ไปยังบทความอื่นเพียงเพื่อหลีกเลี่ยงการเชื่อมโยงที่เป็นไปได้เน่า (แม้ว่ามันจะเศร้าถ้า GitHub ตาย) - http://www.linux.com/learn/tutorials/442412-managing-linux-daemons-with-init-scripts
ยังอีกแก้ไข
ตามที่ระบุไว้ในความคิดเห็น (โดย Russell Yan) สิ่งนี้ใช้ได้เฉพาะในโหมดเริ่มต้นของ update-rc.d
ตามคู่มือของ update-rc.d มันสามารถทำงานได้สองโหมด "เครื่องที่ใช้โหมดดั้งเดิมจะมีไฟล์/etc/init.d/.legacy-bootordering
" ซึ่งในกรณีนี้คุณต้องผ่านลำดับและการกำหนดค่า runlevel ผ่านอาร์กิวเมนต์บรรทัดคำสั่ง
อาร์กิวเมนต์ที่เทียบเท่าที่กำหนดไว้สำหรับตัวอย่างข้างต้นคือ
sudo update-rc.d filename start 20 2 3 4 5 . stop 20 0 1 6 .