Od chwili wprowadzenia w systemie ArchLinux systemd w wersji 197 nazwy interfejsów sieciowych nie są już standardowe do jakich zdołaliśmy się przyzwyczaić. Pomimo faktu iż uruchomiony system z Livecd nadal używa nazw eth0, wlan0 itp to po jego zainstalowaniu na dysku i uruchomieniu nazwy interfejsów są całkowicie inne.
No wiec dzisiaj aby ułatwić sobie życie oraz korzystanie z systemu na co dzień zmienimy nazwy interfejsów sieciowych na bardziej przyjazne użytkownikowi.
Po zainstalowaniu systemu i uruchomieniu go z dysku możemy sprawdzić jakie nazwy dostały nasze interfejsy wydając polecenie ip link:
# ip link
czego rezultatem będzie:
[root@lumpex sloniupl]# ip link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT qlen 1000
link/ether 5c:f9:dd:52:ab:cd brd ff:ff:ff:ff:ff:ff
3: wlp2s0 <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN mode DEFAULT qlen 1000
link/ether 84:a6:c8:e5:ab:cd brd ff:ff:ff:ff:ff:ff
Jak widać mamy dwa interesujące nas interfejsy enp0s3
oraz wlp2s0. Ich nazwy mogą być różne u poszczególnych osób.
Sposobem jaki ja użyłem aby zmieniało nazwy interfejsów na „bardziej ludzkie” jest dodanie odpowiedniej reguły dla udev, no więc do rzeczy:
Tworzymy więc pliczek z regułą:
# mcedit /etc/udev/rules.d/10-network.rules
I wklejamy do niego zawartość:
SUBSYSTEM=="net", ACTION=="add", ATTR{address}=="5c:f9:dd:52:ab:cd", NAME="net0"
SUBSYSTEM=="net", ACTION=="add", ATTR{address}=="84:a6:c8:e5:ab:cd", NAME="wifi0"
gdzie:
net0 oraz wifi0 to nazwy jakie interfejsy będą miały od następnego uruchomienia (na oficjalnych stronach archa zalecają NIE używania eth0, wlan0 itp.).
5c:f9:dd:52:ab:cd oraz 84:a6:c8:e5:ab:cd to mac adresy interfejsów których nazwy chcemy nadać, możemy je uzyskać z polecenia ip link pokazanego powyżej lub wydając polecenie:
# cat /sys/class/net/nazwa-interfejsu/address
gdzie nazwa-interfejsu to w naszym wypadku np enp0s3 lub wlp2s0
Zapisujemy plik klawiszem F2 i wychodzimy F10.
Uruchamiamy ponownie system i gotowe 🙂
[sloniupl@lumpex ~]$ ip link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: net0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT qlen 1000
link/ether 5c:f9:dd:52:ab:cd brd ff:ff:ff:ff:ff:ff
3: wifi0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN mode DEFAULT qlen 1000
link/ether 84:a6:c8:e5:ab:cd brd ff:ff:ff:ff:ff:ff
Edit1:
Aby łaczyło nam się automatycznie wifi do znanych sieci przy starcie systemu wystarczy uruchomić jako root poniższe polecenie
# systemctl enable netctl-auto@wifi0.service
Linkografia:
https://wiki.archlinux.org/index.php/Network_Configuration#Device_names
Wystarczy dodać parametr: net.ifnames=0
Szybciej, ten sam efekt i idiotyczna zmiana idzie w zapomnienie.
mati-ck zawsze możesz zmienić nazwy na eth0 i wlan0. Oni tego nie zalecają ale też nie zabraniają 😀
Spoko, ale dla mnie bardziej ludzkie nazwy to eth i wlan 🙂 Dobrze że u mnie wszystko normalnie i nie muszę kombinować jednak pewnie kiedyś się przyda 🙂