Mengapa nama antarmuka kartu nirkabel saya berubah ketika saya menambahkan kartu suara?

8

Nama antarmuka jaringan yang dapat diprediksi tidak seharusnya berubah ketika perangkat keras ditambahkan atau dihapus. Bukankah itu inti dari skema penamaan ???

Antarmuka nirkabel saya bernama wlp3s0.

Saya memasang Kartu Suara Antarmuka ASUS Xonar DX 7.1 PCI Express x1 di slot PCI gratis dan nama antarmuka nirkabel saya diubah menjadi wlp5s0.

Kartu nirkabel berada dalam slot PCI yang sama dengan yang ada sebelum kartu suara dipasang, jadi mengapa nama antarmuka berubah ?!

Mobo adalah GIGABYTE GA-970A-UD3, dan kartu nirkabel adalah ASUS PCE-N15. Sistem menjalankan Arch Linux dengan stock kernel.

Saya mencari penjelasan yang masuk akal mengapa nama antarmuka akan berubah dalam skenario ini. Jika tidak ada alasan yang bagus mengapa nama antarmuka akan berubah, di mana saya mengajukan laporan bug / kepada siapa saya mengeluh?

Ini bukan masalah besar dan satu-satunya konfigurasi yang perlu saya ubah adalah profil jaringan saya untuk netctl. Saya hanya berpikir jika nama antarmuka jaringan yang "dapat diprediksi" tidak dapat diprediksi maka mereka benar-benar gagal dalam pekerjaan mereka dan skema penamaan ini adalah sampah yang tidak berguna! / kata-kata kasar

mio iwakura
sumber
apakah Anda memindahkan PCE-N15 ke slot yang berbeda?
Serge
PCE-N15 adalah kartu nirkabel, dan seperti yang saya katakan di pos - itu tidak bergerak; itu di slot yang sama seperti sebelumnya. Yang saya lakukan adalah menambahkan kartu suara di slot yang sudah gratis!
mio iwakura
terdengar aneh. Bagaimanapun, baca tentang skema penamaan yang digunakan di linux untuk adaptor ethernet, mungkin menjelaskan beberapa bagian dari pertanyaan Anda: en.wikipedia.org/wiki/Consistent_Network_Device_Naming
Serge

Jawaban:

6

Nama antarmuka jaringan yang dapat diprediksi tidak seharusnya berubah ketika perangkat keras ditambahkan atau dihapus. Bukankah itu inti dari skema penamaan ???

Singkat cerita, ini bukan hal baru; itu diharapkan / dimaksudkan. Oleh karena itu, Anda tidak perlu mengajukan bug, kecuali jika Anda ingin meminta pembuat PC Anda untuk mendukung Linux lebih baik (BIOS) atau produsen perangkat keras (driver). Beberapa opsi jika Anda ingin memperbaiki situasi untuk perangkat hot-plugging dan / atau kembali ke skema penamaan lama:

  • Nonaktifkan skema penamaan baru untuk perangkat jaringan dengan net.ifnames=0cmdline kernel
  • Tambahkan biosdevname=1baris perintah kernel untuk memasukkan nomor indeks yang disediakan BIOS ke nama
  • Buat atau edit udevaturan untuk nama khusus atau skema penamaan yang diubah
  • Anda menonaktifkan penetapan nama tetap, sehingga nama kernel yang tidak dapat diprediksi digunakan lagi. Untuk ini, cukup sembunyikan file .link udev untuk kebijakan default:ln -s /dev/null /etc/systemd/network/99-default.link

Jika Anda menggunakan systemddan / atau udev, argumen "skema penamaan yang dapat diprediksi" mungkin berbeda dari sebelumnya. Berdasarkan skema penamaan dari interface WiFi, meskipun, saya mengasumsikan bahwa Anda sedang menggunakan sistem dengan systemd.

Anda dapat mencoba menambahkan parameter boot berikut ke baris perintah kernel untuk menggunakan konvensi penamaan perangkat "lama". Namun, saya tidak sepenuhnya yakin apa, jika ada, efek tambahan ini selain memiliki skema penamaan untuk perangkat jaringan.

net.ifnames=0

Menambahkannya ke /etc/default/grubdapat memfasilitasi kegigihan dan penggunaan kembali parameter ini; lagi, dengan asumsi Anda menggunakan grub2:

GRUB_CMDLINE_LINUX="net.ifnames=0"

Jika udevmenggunakan firmware perangkat, lokasi, dan opsi lain saat menentukan nama perangkat, maka mungkin lokasi atau sesuatu yang lain mungkin telah berubah secara internal, tergantung pada bagaimana perangkat terkait berinteraksi satu sama lain. Ini sepertinya tidak relevan di sini, karena perangkat adalah adaptor WiFi dan kartu suara. Namun demikian, ini mungkin terkait dengan struktur bus yang mendasarinya; yang tampaknya relevan, karena kedua perangkat terhubung ke slot PCI.


Info tambahan dari FedoraDocs

8.1. Penamaan Skema Hirarki

Secara default, systemd akan memberi nama antarmuka menggunakan kebijakan berikut untuk menerapkan skema penamaan yang didukung:

  • Skema 1: Nama-nama yang memasukkan nomor indeks yang disediakan Firmware atau BIOS untuk perangkat terpasang (contoh: eno1), diterapkan jika informasi dari firmware atau BIOS berlaku dan tersedia, jika tidak kembali ke skema 2.

  • Skema 2: Nama yang memasukkan Firmware atau BIOS yang disediakan nomor indeks slot hotplug PCI Express (contoh: EN1) diterapkan jika informasi dari firmware atau BIOS berlaku dan tersedia, jika tidak kembali ke skema 3.

  • Skema 3: Nama-nama yang memasukkan lokasi fisik konektor perangkat keras (contoh: enp2s0), diterapkan jika berlaku, jika tidak jatuh langsung kembali ke skema 5 dalam semua kasus lainnya.

  • Skema 4: Nama-nama yang menggabungkan alamat MAC antarmuka (contoh: enx78e7d1ea46da), tidak digunakan secara default, tetapi tersedia jika pengguna memilih.

  • Skema 5: Skema penamaan kernel tradisional yang tidak dapat diprediksi, digunakan jika semua metode lain gagal (contoh: eth0).

Kebijakan ini, prosedur yang diuraikan di atas, adalah default. Jika sistem mengaktifkan biosdevname, itu akan digunakan. Perhatikan bahwa mengaktifkan biosdevname memerlukan pengoperan biosdevname=1sebagai parameter baris perintah kecuali dalam kasus sistem Dell, di mana biosdevname akan digunakan secara default asalkan diinstal. Jika pengguna telah menambahkan udevaturan yang mengubah nama perangkat kernel, aturan itu akan diutamakan.


Sumber daya tambahan

ILMostro_7
sumber