7
ทำให้สคริปต์ทำงานหลังจากเริ่มระบบเครือข่ายหรือไม่
ฉันค่อนข้างใหม่กับ systemd และฉันกำลังเรียนรู้สถาปัตยกรรมของมัน ตอนนี้ฉันกำลังพยายามหาวิธีที่จะทำให้เชลล์สคริปต์ที่กำหนดเองทำงาน สคริปต์นี้ต้องเรียกใช้หลังจากเลเยอร์เครือข่ายเริ่มต้นขึ้น ฉันใช้งาน Arch โดยใช้ systemd เช่นเดียวกับ netctl ip addr list > /tmp/ip.txtในการทดสอบผมเขียนสคริปต์ง่ายที่เพียงรัน ฉันสร้างไฟล์บริการต่อไปนี้สำหรับสคริปต์นี้ (/etc/systemd/system/test.service) [Unit] Description=test service [Service] ExecStart=/root/test.script [Install] WantedBy=multi-user.target ฉันเปิดใช้งานสคริปต์ด้วย systemctl enable test เมื่อรีสตาร์ทสคริปต์จะทำงานจริง ๆ แต่จะทำงานก่อนที่เครือข่ายจะเริ่มต้น กล่าวอีกนัยหนึ่งเอาต์พุตในip.txtไม่แสดงที่อยู่ IPv4 ที่กำหนดให้กับอินเทอร์เฟซหลัก ตามเวลาที่ฉันเข้าสู่ระบบที่อยู่ IPv4 ได้รับการกำหนดแน่นอนและการเชื่อมต่อเครือข่ายขึ้น ฉันคาดเดาว่าฉันสามารถแก้ไขจุดที่สคริปต์ทำงานโดยไปยุ่งกับWantedByพารามิเตอร์ แต่ฉันไม่แน่ใจว่าจะทำอย่างไร ใครช่วยชี้ฉันในทิศทางที่ถูกต้องได้ไหม