ลืมrc.localไปเลย
ที่ฉันพูดเกี่ยวกับ CentOS 7และเกี่ยวกับ Debian 8และเกี่ยวกับ Ubuntu 15 :
คุณกำลังใช้ระบบปฏิบัติการ systemd + Linux /etc/rc.localเป็นกลไกการทำงานร่วมกันสองครั้งใน systemd เนื่องจากเป็นกลไกการทำงานร่วมกันแบบย้อนหลังสำหรับกลไกที่เป็นกลไกความเข้ากันได้ใน van Smoorenburg System 5 rcclone
การใช้งาน/etc/rc.localผิดไปอย่างน่ากลัว ผู้คนต่างประหลาดใจกับความจริงที่ว่า systemd ไม่ได้ทำงานrc.localในลักษณะเดียวกันในสถานที่เดียวกันใน bootstrap ตามที่คุ้นเคย (หรือไม่สมควรคาดหวัง: มันไม่ได้ในความเป็นจริงทำงานที่ผ่านมา . ในระบบเก่าเป็นคู่มือ OpenBSD ยังชี้ให้เห็น) อื่น ๆ ได้รับประหลาดใจโดยความจริงที่ว่าสิ่งที่พวกเขาตั้งขึ้นในrc.localการคาดหวังว่าวิธีการเดิมของการทำสิ่งที่เป็น แล้วยกเลิกได้อย่างสมบูรณ์โดยชอบของใหม่udevกฎ NetworkManager, systemd-logind, systemd-resolvedหรือต่างๆ "Kit" s
อย่างสุดขั้ว " ทำไม` init 0` ส่งผลให้ 'อาร์กิวเมนต์ส่วนเกิน' ใน Arch ติดตั้ง? " บางระบบปฏิบัติการแล้วให้ systemd โดยไม่ต้องเข้ากันได้ย้อนหลังให้บริการเช่นsystemd-rc-local-generatorเครื่องกำเนิดไฟฟ้า ขณะที่เดเบียนยังคงรักษาคุณลักษณะร่วมกันหลัง , Arch Linux สร้าง systemd กับพวกเขาปิด ดังนั้นใน Arch และระบบปฏิบัติการเช่นนั้นคาดว่าจะได้รับการละเว้นทั้งหมด/etc/rc.local
ลืมrc.localไปเลย มันไม่ใช่วิธีที่จะไป คุณมีระบบปฏิบัติการ systemd + Linux ดังนั้นสร้าง systemd service unit ที่เหมาะสมและอย่าเริ่มต้นจากจุดที่มีความเข้ากันได้ย้อนหลังสองระดับ (บน Ubuntu และ Fedora มันถูกลบออกสามครั้งrcโคลนVan Smoorenburg System 5 ที่ตามมาrc.localหลังจากนั้นถูกแทนที่ตัวเองสองครั้งในช่วงทศวรรษที่ผ่านมาโดยเริ่มจากการพุ่งพรวดแล้วตามด้วย systemd)
ยังจำกฎข้อแรกสำหรับการโยกย้ายไปยัง systemd
นี่ไม่ใช่ความคิดใหม่ที่เฉพาะเจาะจงกับ systemd บนรถตู้ Smoorenburg rcและพุ่งพรวดระบบสิ่งที่ต้องทำคือการทำให้รถตู้ที่เหมาะสม Smoorenburg สคริปต์หรือแฟ้มงานพุ่งพรวดมากกว่าการใช้งานrc rc.localแม้บันทึกคู่มือของ FreeBSD ว่าในปัจจุบันหนึ่งสร้าง Mewburn เหมาะสมสคริปต์แทนการใช้rc /etc/rc.localMewburn rcเปิดตัวโดย NetBSD 1.5 ในปี 2000
/etc/rc.localวันที่จากเวลาของรุ่นที่เจ็ด Unix และก่อน มันถูกแทนที่โดย/etc/inittabและระดับการทำงานที่ใช้rcใน AT & T ระบบยูนิกซ์ 3 (ที่มีแตกต่างกันเล็กน้อย/etc/inittabใน AT & T ระบบยูนิกซ์ 5) ในปี 1983 แม้ว่าตอนนี้ก็คือประวัติศาสตร์
สร้างคำนิยามบริการพื้นเมืองที่เหมาะสมสำหรับระบบการจัดการบริการของคุณไม่ว่าจะเป็นกำบริการสำหรับ Nosh ชุดเครื่องมือของservice-managerและsystem-controlเป็น/etc/rc.d/สคริปต์สำหรับ Mewburn rcแฟ้มหน่วยบริการ systemd ไฟล์งานพุ่งพรวดไดเรกทอรีบริการ runit / S6 / daemontools -encore หรือแม้กระทั่ง/etc/init.d/สคริปต์สำหรับรถตู้ rcSmoorenburg
ใน systemd ไฟล์หน่วยบริการที่เพิ่มโดยผู้ดูแลระบบ/etc/systemd/system/มักจะเข้า (หรือ/usr/local/lib/systemd/system/ไม่ค่อย) ด้วยผู้จัดการบริการ nosh /var/local/sv/เป็นสถานที่ทั่วไปสำหรับกลุ่มบริการในพื้นที่ Mewburn เกี่ยวกับการใช้ rc FreeBSD ไฟล์หน่วยบริการที่จัดทำแพคเกจและบันเดิลบริการหากคุณกำลังสร้างมันให้ไปยังสถานที่ต่างกัน/usr/local/etc/rc.d/
อ่านเพิ่มเติม