Untuk sistem Linux tertanam, jika saya memiliki dua atau lebih antarmuka jaringan, bagaimana cara memastikan bahwa mereka selalu mendapatkan nama antarmuka yang sama setiap boot
Dengan kata lain, saya ingin, misalnya, eth0 untuk selalu memetakan ke satu port Ethernet fisik, eth1 ke yang berikutnya, dll.
"Distribusi" Linux saya adalah buatan sendiri, dan saya menggunakan devtmpfs untuk mengisi / dev. Saya menggunakan busybox untuk init (dan hampir semua yang lainnya), bersama dengan skrip init khusus untuk startup dan shutdown sistem.
Saya tidak memerlukan fasilitas hotplug dari mdev atau udev - saya mengacu pada port Ethernet "diperbaiki".
embedded-systems
Patrick
sumber
sumber
Jawaban:
Ini berfungsi untuk saya dengan Linux 3.9.0 pada arsitektur x86_64.
sumber
man nameif
: "Program ini sudah usang. Untuk pemeriksaan penggantianip link
." Perhatikan juga bahwa jika sistem yang Anda gunakan tidak digunakanudev
, strategi Anda akan cenderung gagal karena/sys/class/net/eth[whatever]
mungkin tidak ada.Anda menyebutkan bahwa Anda tidak perlu udev tetapi jika Anda tidak menentang untuk menginstalnya maka Anda mungkin ingin mempertimbangkan untuk menggunakan biosdevname . Ada halaman wiki yang bagus di freedesktop.org yang membahas masalah ini. Seperti disebutkan di halaman itu, jika Anda menggunakan udev versi 197 atau lebih tinggi maka Anda bahkan tidak perlu biosdevname karena udev sudah akan melakukan apa yang Anda butuhkan.
sumber