ไฟล์/etc/udev/rules.d/70-persistent-net.rules
ถูกสร้างขึ้นโดยอัตโนมัติบนระบบ Linux ที่มี udev หากไม่มีอยู่ในระหว่างการรีบูต แต่ฉันต้องการทราบวิธีสร้างไฟล์กฎนี้ (ด้วยคำสั่ง) โดยไม่ต้องรีบูตเซิร์ฟเวอร์
ฉันใช้ Googling ไประยะหนึ่งแล้วพบว่าไฟล์กฎนี้สร้างขึ้นโดยสคริปต์นี้:
/lib/udev/write_net_rules
อย่างไรก็ตามมันเป็นไปไม่ได้ที่จะเรียกใช้สคริปต์นี้จากบรรทัดคำสั่งเนื่องจาก (ฉันถือว่า) มันต้องการที่จะเริ่มต้นโดย udev ด้วยการตั้งค่าตัวแปรสภาพแวดล้อมบางอย่างอย่างเหมาะสม เริ่มต้นด้วยตนเองพิมพ์ข้อความผิดพลาด "ขาดหายไป $ INTERFACE" แม้ว่าฉันจะตั้งค่าตัวแปร env INTERFACE = eth0 ก่อนการเริ่มต้นของสคริปต์ก็ยังพิมพ์ข้อผิดพลาด "ขาดการจับคู่ที่ถูกต้อง" ไม่ต้องพูดถึงฉันมีสองอินเตอร์เฟส ( eth0
และeth1
) และฉันต้องการไฟล์กฎที่สร้างขึ้นสำหรับทั้งสอง
ฉันยังคิดที่จะเรียกเหตุการณ์ udev เช่นนี้หวังว่ามันจะเริ่มต้นสคริปต์จาก udev เอง แต่ไม่มีอะไรเปลี่ยนแปลง:
udevadm trigger --type=devices --action=change
ดังนั้นใครรู้วิธีการสร้างกฎสุทธิถาวรในไฟล์/etc/udev/rules.d/70-persistent-net.rules
โดยไม่ต้องรีบูต?
70-persistent-net.rules
หรือ/lib/udev/write_net_rules
สคริปต์ ดังนั้นฉันไม่สามารถตรวจสอบได้ แต่สันนิษฐานว่า$INTERFACE
ตัวแปรถูกตั้งค่าไว้ในสคริปต์เอง มันอาจจะถูกส่งเป็นอาร์กิวเมนต์ คุณช่วยแสดงเนื้อหาของสคริปต์ให้เราดูได้ไหม
$INTERFACE
ตัวแปรเพียงอย่างเดียว มีตัวแปรอีกมากที่ใช้เพียงแค่ไม่เคยประกาศ มันเป็นเพราะมันถูกเรียกโดย udev และ udev ตั้งค่าตัวแปร env ทั้งหมดก่อนที่จะรันสคริปต์ในการบูต