ทำไมแท็บชื่องานพุ่งพรวดที่กำหนดเองไม่สมบูรณ์ในคำสั่งบริการ


16

ฉันเคยสร้างบริการพุ่งพรวดด้วยไฟล์ใน/etc/init/<service>.confและมันทำงานได้อย่างสมบูรณ์แบบสิ่งเดียวที่ฉันต้องการคือให้แท็บเสร็จสมบูรณ์ในลักษณะเดียวกับที่ทุกบริการใน /etc/init.d/ มีตอนนี้

เมื่อเขียนบริการ sudo xx ชื่อของบริการควรจะหายไป

มีวิธีเพิ่มบริการพุ่งพรวดในรายการเติมข้อความอัตโนมัติหรือไม่


สวัสดีคุณเคยลองมาก่อนหรือไม่
rɑːdʒɑ

คำตอบ:


25

ทุกแพคเกจที่ให้ดีมอนมาตรฐานโดยใช้มาตรฐานเป็นสิ่งจำเป็นเพื่อให้ symlink /etc/init.dโดยนโยบายเดเบียน ดังนั้นการเติมข้อความอัตโนมัติสำหรับใช้งานได้แล้ว ตรวจสอบให้แน่ใจว่าคุณได้ติดตั้งแพคเกจหากคุณมีปัญหาsudo service namebash-completion

หากคุณกำลังสร้างงานพุ่งพรวดของคุณเอง symlink ให้เหมือนกับงานพุ่งพรวดอื่น ๆ กำลังดำเนินการอยู่ สิ่งนี้จะทำให้งานของคุณทำงานเหมือนเดิม/etc/init.d/your_job/lib/init/upstart-job

มีงานพุ่งพรวดพิเศษใน/etc/initที่ไม่มีรายการที่สอดคล้องกัน/etc/init.dมา นี่เป็นข้อยกเว้น จากนโยบาย Debian:

ข้อยกเว้นสำหรับกฎนี้คือสคริปต์หรืองานที่จัดทำโดยการใช้งาน init เอง งานดังกล่าวอาจจำเป็นสำหรับการใช้งานเฉพาะของสคริปต์ /etc/rcS.d/ และอาจไม่มีการโต้ตอบแบบหนึ่งต่อหนึ่งกับสคริปต์เริ่มต้น

bash-completionข้อยกเว้นเหล่านี้ไม่ได้ทำงานกับ อย่างไรก็ตามคุณสามารถใช้start, stop, restartและreloadโดยตรงโดยไม่ต้องserviceและเติมข้อความอัตโนมัติที่จะทำงาน ตัวอย่างเช่นการsudo start shutเติมข้อความอัตโนมัติอย่างถูกต้อง แต่โดยปกติแล้วคุณไม่จำเป็นต้องเรียกงานพุ่งพรวดโดยตรงที่ไม่มีinit.dรายการที่เกี่ยวข้อง

หมายเหตุ: ฉันทดสอบสิ่งนี้ใน Saucy หากการสนับสนุนไม่ปรากฏในรีลีสที่เก่ากว่าอาจไม่สามารถใช้งานได้ที่นั่น (แต่คุณจะได้รับในไม่ช้าเมื่อคุณอัพเกรดเป็นรีลีสใหม่ที่เพียงพอ)


ข้อผิดพลาดบน Launchpad: bugs.launchpad.net/ubuntu/+source/bash-completion/+bug/1188897
snap
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.