Centos 7 (systemd/udev) tīkla iekārtu nosaukumi

Centos 7 ir nomigrējis uz systemd un līdz ar to ir parādijusies itkā laba lieta, bet tajā pašā laikā kaitinoša, ir pārsauktas tīkla iekārtas. Tas darīts tāpēc, ka veco shēmu (eth0, eth1, ethX…) nebija iespējams kontrolēt, reizēm varēja gadīties ka iestartējoties draiveri pārbauda kartes un tās inicializē nepareizā secībā (pec restarta eth0 pārtop par eth1 utt.), līdz ar ko var sākties problēmas ar firewall konfigurācijām, ja serveris darbojas kā rūteris utt.

Systemd ieviesa tā saukto paredzamo ierīču nosaukumu veidošanu:

  • Iebūvetās tīkla kartes (piemēram: eno1, eno2, utt)
  • PCI slotos ievietotās kartes (piemēram: ens1, ens2, utt)
  • Kartes pēc fiziskās/ģeogrāfiskās atrašanās vietas uz attiecīgās aparatūras  (piemēram: enp2s0, enp2s1, utt)
  • Kartes izmantojot mac adresi (piemēram: enx78e7d1ea46da)
  • Klasiskā ethX nosaukumu ģenerēšana (example: eth0)

Situācijā kad jums ir desktop darba stacija un par jūsu tīkla iestatījumiem rūpējas NetworkManager ir pilnīgi vienalga kā saucas iekārta jo NetworkManager izdara visu kas nepieciešams.

Itkā pēc apraksta būtu jābūt vienmēr vienādiem nosaukumiem, diemžēl dzīvē esmu sastapies ar problēmām, kad 4 portu intel karte pieceļ portus pec noklusējuma kā: eth0, eth1, eno3, eno4, veicot restartu ir eth0, eth1, eth2, eno4 principā ļoti neprognozējami un pēc karta restarta savādāk. Kad tiek lietots pxe boot un viens būvējums tiek startēts uz vairākiem serveriem mēs varam iebraukt auzās ar šiem settingiem, jo mēs īsti nevaram norādīt tīkla iestatījumus, nemaz nerunājot par bond konfigurāciju.

Risinājums ir pavisam vienkāršs ir jāizveidot links no /dev/null uz udev ruli 80-net-name-slot.rules (pimrs udev v209 versijas faila nosaukums:80-net-setup-link.rules) izpildam komandu: ln -s /dev/null /etc/udev/rules.d/80-net-name-slot.rules un restartējam serveri, un iegūstam pierastos nosaukumus ethX.

Protams to var panākt ar vēlvienu metodi, kernelim padot parametrus net.ifnames=0 un ja tiek izmantots biosdevnames, tad arī biosdevname=0. Protams ir arī iespēja nodefinēt savus tīkla iekārtu nosaukumus piemeram internet0, lan0  utt…

Sīkāk par visu šo epopeju var lasīt systemd dokumentācijā.  Es protams izlasot dokumentu saprotu kāpēc tas ir nepieciešams, jo es pats esmu saskāries ar to ka tīkla iekārtas inicializējas nepareizā secībā un ir jātaisa vēlviens servere restarts ar cerību ka šajā reizē inicializēsies pareizā secībā.

This entry was posted in GNU/Linux and tagged , , , , . Bookmark the permalink.

7 Responses to "Centos 7 (systemd/udev) tīkla iekārtu nosaukumi"

Komentē

%d bloggers like this: