ฉันได้เปลี่ยนชื่อเป็นของอินเตอร์เฟซeth1 eth0วิธีการถามudevตอนนี้อ่านการกำหนดค่าอีกครั้ง?
service udev restart
และ
udevadm control --reload-rules
ไม่ช่วย ดังนั้นมีวิธีที่ถูกต้องยกเว้นการรีบูต? (ใช่รีบูตช่วยด้วยปัญหานี้)
ใช่ฉันรู้ว่าฉันควรย่อหน้าคำสั่งที่มี
sudoแต่คนใดคนหนึ่งผมโพสต์ดังกล่าวข้างต้นไม่มีอะไรเปลี่ยนแปลงในifconfig -aการส่งออก: ฉันยังคงเห็นไม่ได้eth1eth0ฉันเพิ่งเปลี่ยน
NAMEคุณสมบัติของ udev-rule line ไม่ทราบสาเหตุที่ทำให้สิ่งนี้ไม่มีประสิทธิภาพ
ไม่มีข้อผิดพลาดในการดำเนินการคำสั่งทั้งสองที่ฉันโพสต์ข้างต้น แต่พวกเขาก็ไม่เปลี่ยนชื่ออินเตอร์เฟซที่เกิดขึ้นจริงในการifconfig -aส่งออก ถ้าฉันทำการรีบูต - ดังนั้นชื่ออินเตอร์เฟสจะเปลี่ยนตามที่คาดไว้
เพื่อวัตถุประสงค์ในการพัฒนาฉันเขียนสคริปต์บางอย่างที่เลียนแบบเครื่องเสมือน (ขับเคลื่อนด้วย VirtualBox) และตั้งค่าล่วงหน้าในบางวิธี
ดังนั้นฉันจึงทำคำสั่งเพื่อโคลน VM เริ่มต้นและตราบใดที่มีการเปลี่ยนแปลงส่วนต่อประสานเครือข่าย MAC - udevเพิ่มกฎข้อที่สองในกฎถาวรของเครือข่าย ทันทีหลังจากบูตเครื่องเป็นครั้งแรกมี 2 กฎ:
eth0ซึ่งไม่มีอยู่ตราบใดที่มีอยู่ในอิมเมจ VM ดั้งเดิม MACeth1มีอยู่แล้ว แต่การกำหนดค่าทั้งหมดในไฟล์ทั้งหมดอ้างถึงeth0ดังนั้นจึงไม่ดีสำหรับฉัน
ดังนั้นผมจึงมีsedลบบรรทัดที่มีeth0(มันเป็นล้าสมัยและไร้ประโยชน์ในภาพโคลน) และแทนที่ด้วยeth1 eth0ดังนั้นขณะนี้ฉันมีกฎถาวรที่ถูกต้อง แต่ยังคงมีอยู่ในeth1/dev
ปัญหา: ฉันไม่ต้องการรีบูตเครื่อง (จะใช้เวลาอีกครั้งซึ่งไม่ดีในการสร้าง VM-stage) และเพียงต้องการ/devสร้างใหม่ด้วยคำสั่งบางคำสั่งดังนั้นฉันจึงพร้อมใช้งาน VM โดยไม่ต้องบูตเครื่องใหม่
udev/devการสร้างแบบไดนามิกอุปกรณ์ของคุณ หากคุณรีสตาร์ทมันจะสร้างมันขึ้นมาใหม่ตามกฎของมัน การเปลี่ยนแปลงที่เกิดขึ้นโดยตรงกับพวกเขาไม่ใช่โดยทั่วไปจะพูดติดตา ดูเหมือนว่าการรีสตาร์ทudevจะทำงานได้ดี แต่คุณเพิ่งเปลี่ยนชื่ออุปกรณ์ไม่ถูกต้อง
udev เพิ่ม (ไม่แก้ไข)กฎใหม่หากไม่พบกฎสำหรับอุปกรณ์เฉพาะ หากมีกฎที่ตรงกับ - เพียงแค่ปฏิบัติตามโดยไม่มีการแก้ไข
eth1เป็นeth0อย่างไร คุณเพิ่งเปลี่ยนชื่อไฟล์อุปกรณ์หรือไม่ หากเป็นเช่นนั้นนั่นไม่ใช่วิธีที่มีประสิทธิภาพในการดำเนินการ (และคุณควรคาดหวังว่าการเปลี่ยนแปลงจะถูกคืนค่าโดยการรีสตาร์ทudevdaemon สำเร็จ) หากคุณใช้วิธีอื่นโปรดอธิบายโดยละเอียดและโปรดให้ข้อความที่สมบูรณ์และครบถ้วนของข้อความแสดงข้อผิดพลาดที่คุณเห็นเมื่อคุณเรียกใช้คำสั่งที่คุณได้ลอง (สำหรับการรีสตาร์ทudevdaemon หรือโหลดกฎใหม่) คุณสามารถแก้ไขคำถามของคุณเพื่อให้ข้อมูลนี้