Netzwerkkarte umbennen: Unterschied zwischen den Versionen
| (3 dazwischenliegende Versionen von einem anderen Benutzer werden nicht angezeigt) | |||
| Zeile 24: | Zeile 24: | ||
* Hier könnte man je nach MAC-Adresse einen bestimmten Namen zuweisen | * Hier könnte man je nach MAC-Adresse einen bestimmten Namen zuweisen | ||
* Um sicherzustellen, dass man nur nach Netzwerkkarten schaut, kann man nach dem ''Subsystem'' '''net''' matchen | * Um sicherzustellen, dass man nur nach Netzwerkkarten schaut, kann man nach dem ''Subsystem'' '''net''' matchen | ||
| − | * udevadm info --attribute-walk -p /sys/class/net/enp0s3 | + | * '''udevadm info --attribute-walk -p /sys/class/net/enp0s3''' |
KERNEL=="'''enp0s3'''" | KERNEL=="'''enp0s3'''" | ||
| Zeile 39: | Zeile 39: | ||
ATTR{dev_id}=="0x0" | ATTR{dev_id}=="0x0" | ||
... | ... | ||
| − | * udevadm info --attribute-walk -p /sys/class/net/enp0s8 | + | * '''udevadm info --attribute-walk -p /sys/class/net/enp0s8''' |
KERNEL=="'''enp0s8'''" | KERNEL=="'''enp0s8'''" | ||
| Zeile 89: | Zeile 89: | ||
address 192.168.56.3/24 | address 192.168.56.3/24 | ||
| − | = | + | = Konfiguration anwenden = |
;Bei einer falsch konfigurierten ''.rules'' Datei kann es zu Fehlern beim Booten kommen | ;Bei einer falsch konfigurierten ''.rules'' Datei kann es zu Fehlern beim Booten kommen | ||
| − | * reboot | + | * '''reboot''' |
| + | * '''ip a''' | ||
| + | |||
| + | 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 | ||
| + | link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 | ||
| + | inet 127.0.0.1/8 scope host lo | ||
| + | valid_lft forever preferred_lft forever | ||
| + | inet6 ::1/128 scope host | ||
| + | valid_lft forever preferred_lft forever | ||
| + | 2: '''outbound''': <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 | ||
| + | link/ether 08:00:27:e6:4f:c0 brd ff:ff:ff:ff:ff:ff | ||
| + | altname enp0s3 | ||
| + | inet 10.0.2.15/24 brd 10.0.2.255 scope global outbound | ||
| + | valid_lft forever preferred_lft forever | ||
| + | inet6 fe80::a00:27ff:fee6:4fc0/64 scope link | ||
| + | valid_lft forever preferred_lft forever | ||
| + | 3: '''inbound''': <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 | ||
| + | link/ether 08:00:27:22:e9:33 brd ff:ff:ff:ff:ff:ff | ||
| + | altname enp0s8 | ||
| + | inet 192.168.56.3/24 brd 192.168.56.255 scope global inbound | ||
| + | valid_lft forever preferred_lft forever | ||
| + | inet6 fe80::a00:27ff:fe22:e933/64 scope link | ||
| + | valid_lft forever preferred_lft forever | ||
| + | * '''ping xinux.net''' | ||
| + | |||
| + | PING xinux.net (194.59.156.162) 56(84) bytes of data. | ||
| + | 64 bytes from 194.59.156.162 (194.59.156.162): icmp_seq=1 ttl=63 time=26.2 ms | ||
| + | 64 bytes from 194.59.156.162 (194.59.156.162): icmp_seq=2 ttl=63 time=26.6 ms | ||
| + | ^C | ||
| + | --- xinux.net ping statistics --- | ||
| + | 2 packets transmitted, 2 received, 0% packet loss, time 1002ms | ||
| + | rtt min/avg/max/mdev = 26.201/26.403/26.605/0.202 ms | ||
| + | =Weiterer Dinge= | ||
| + | zuletzt angelegte Gerätedateien finden | ||
| + | ls -rtl /dev | ||
| + | find /dev -ctime -30 | ||
| + | find /dev -type c -o -type b -printf '%TY%Tm%Td%TI%TM %p\n' | sort -n | ||
| + | Dummy Netzwerkinterface dummy0 in intern0 umbenennen | ||
| + | ... mit udev.rules | ||
| + | Dummy Netzwerkinterface erzeugen | ||
| + | modprobe dummy numdummies=1 | ||
| + | ip link show dummy0 | ||
| + | 1) | ||
| + | |||
| + | udev Regel erstellen | ||
| + | Netzdevice umbenennen | ||
| + | udevadm info -a /sys/class/net/dummy0 | ||
| + | /etc/udev/rules.d/70-persistent-net.rules | ||
| + | … | ||
| + | ACTION=="add", SUBSYSTEM=="net", KERNEL=="dummy0", NAME="intern0" | ||
| + | … | ||
| + | Konfigurationsdatei prüfen: | ||
| + | |||
| + | udevadm test /sys/class/net/dummy0 | ||
| + | erstes Terminalfenster: | ||
| + | |||
| + | udevadm monitor | ||
| + | zweites Terminalfenster: | ||
| + | |||
| + | Konfiguration neu laden: | ||
| + | |||
| + | udevadm control --reload-rules | ||
| + | Modul neu laden: | ||
| + | |||
| + | modprobe -r dummy | ||
| + | modprobe dummy numdummies=1 | ||
| + | ip link | ||
| + | oder (ohne neu laden des Moduls): | ||
| + | |||
| + | udevadm trigger -v --action=add --attr-match=subsystem=net --attr-match=address=52:54:00:1d:c5:52 | ||
| + | ... mit systemd.link | ||
| + | /etc/systemd/network/10-dummy.link | ||
| + | [Match] | ||
| + | OriginalName=dummy0 | ||
| + | |||
| + | [Link] | ||
| + | Name=intern0 | ||
| + | Kommando bei Aktivierung eines USB-Devices ausführen | ||
| + | /etc/udev/rules.d/75-touch-file.rules | ||
| + | ACTION=="add", SUBSYSTEM=="usb", RUN="/bin/touch /tmp/udev-test" | ||
| + | USB-Gerät einstecken | ||
| + | |||
| + | ls -l /tmp/udev-test | ||
| + | Kommando ausführen, wenn ein USB-Stick mit einem Dateisystem mit dem LABEL=backup eingesteckt wird: | ||
| + | |||
| + | /etc/udev/rules.d/75-touch-file.rules | ||
| + | ACTION=="add", SUBSYSTEM=="usb", ENV{ID_FS_LABEL}=="backup", RUN="/bin/touch /tmp/udev-test" | ||
| + | Symlink bei Aktivierung anlegen | ||
| + | /etc/udev/rules.d/75-show-last-usb.rules | ||
| + | SUBSYSTEM=="usb", SYMLINK+="last-usb-device" | ||
| + | USB-Gerät einstecken | ||
| + | |||
| + | ls -l /dev/last-usb-device | ||
| + | udev events anzeigen | ||
| + | udevadm monitor | ||
| + | udevadm test /block/sdc/sdc1 | ||
| + | udevadm control log_priority=debug | ||
| + | Weitere udev Kommandos | ||
| + | Welcher sysfs Pfad zum Gerät /dev/sda ? | ||
| + | |||
| + | udevadm info -q path -n /dev/sda | ||
| + | Welche Informationen zum Gerät /dev/sda ? | ||
| + | |||
| + | udevadm info -a -p $(udevadm info -q path -n /dev/sda) | ||
| + | Geräte, die immer erzeugt werden sollen: | ||
| + | |||
| + | ls /lib/udev/devices/ | ||
Aktuelle Version vom 21. Februar 2024, 16:34 Uhr
Informationen sammeln
- ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 08:00:27:e6:4f:c0 brd ff:ff:ff:ff:ff:ff
inet 10.0.2.15/24 brd 10.0.2.255 scope global enp0s3
valid_lft forever preferred_lft forever
inet6 fe80::a00:27ff:fee6:4fc0/64 scope link
valid_lft forever preferred_lft forever
3: enp0s8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 08:00:27:22:e9:33 brd ff:ff:ff:ff:ff:ff
inet 192.168.56.3/24 brd 192.168.56.255 scope global enp0s8
valid_lft forever preferred_lft forever
inet6 fe80::a00:27ff:fe22:e933/64 scope link
valid_lft forever preferred_lft forever
- udev .rules Dateien arbeiten über Attribut-Matching
- Hier könnte man je nach MAC-Adresse einen bestimmten Namen zuweisen
- Um sicherzustellen, dass man nur nach Netzwerkkarten schaut, kann man nach dem Subsystem net matchen
- udevadm info --attribute-walk -p /sys/class/net/enp0s3
KERNEL=="enp0s3"
SUBSYSTEM=="net"
DRIVER==""
ATTR{addr_assign_type}=="0"
ATTR{addr_len}=="6"
ATTR{address}=="08:00:27:e6:4f:c0"
ATTR{broadcast}=="ff:ff:ff:ff:ff:ff"
ATTR{carrier}=="1"
ATTR{carrier_changes}=="2"
ATTR{carrier_down_count}=="1"
ATTR{carrier_up_count}=="1"
ATTR{dev_id}=="0x0"
...
- udevadm info --attribute-walk -p /sys/class/net/enp0s8
KERNEL=="enp0s8"
SUBSYSTEM=="net"
DRIVER==""
ATTR{addr_assign_type}=="0"
ATTR{addr_len}=="6"
ATTR{address}=="08:00:27:22:e9:33"
ATTR{broadcast}=="ff:ff:ff:ff:ff:ff"
ATTR{carrier}=="1"
ATTR{carrier_changes}=="2"
ATTR{carrier_down_count}=="1"
ATTR{carrier_up_count}=="1"
ATTR{dev_id}=="0x0"
...
.rules Datei erstellen
- .rules Dateien werden am Anfang mit einer Priorität angegeben
- vim /etc/udev/rules.d/70-persistent-net.rules
# interface with MAC address "08:00:27:e6:4f:c0" will be named "outbound"
SUBSYSTEM=="net", ACTION=="add", ATTR{address}=="08:00:27:e6:4f:c0", NAME="outbound"
# interface with MAC address "08:00:27:22:e9:33" will be named "inbound"
SUBSYSTEM=="net", ACTION=="add", ATTR{address}=="08:00:27:22:e9:33", NAME="inbound"
Netzwerkkonfiguration anpassen
- vim /etc/network/interfaces
# This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5). source /etc/network/interfaces.d/* # The loopback network interface auto lo iface lo inet loopback # The primary network interface auto outbound iface outbound inet static address 10.0.2.15/24 gateway 10.0.2.2 auto inbound iface inbound inet static address 192.168.56.3/24
Konfiguration anwenden
- Bei einer falsch konfigurierten .rules Datei kann es zu Fehlern beim Booten kommen
- reboot
- ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: outbound: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 08:00:27:e6:4f:c0 brd ff:ff:ff:ff:ff:ff
altname enp0s3
inet 10.0.2.15/24 brd 10.0.2.255 scope global outbound
valid_lft forever preferred_lft forever
inet6 fe80::a00:27ff:fee6:4fc0/64 scope link
valid_lft forever preferred_lft forever
3: inbound: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 08:00:27:22:e9:33 brd ff:ff:ff:ff:ff:ff
altname enp0s8
inet 192.168.56.3/24 brd 192.168.56.255 scope global inbound
valid_lft forever preferred_lft forever
inet6 fe80::a00:27ff:fe22:e933/64 scope link
valid_lft forever preferred_lft forever
- ping xinux.net
PING xinux.net (194.59.156.162) 56(84) bytes of data. 64 bytes from 194.59.156.162 (194.59.156.162): icmp_seq=1 ttl=63 time=26.2 ms 64 bytes from 194.59.156.162 (194.59.156.162): icmp_seq=2 ttl=63 time=26.6 ms ^C --- xinux.net ping statistics --- 2 packets transmitted, 2 received, 0% packet loss, time 1002ms rtt min/avg/max/mdev = 26.201/26.403/26.605/0.202 ms
Weiterer Dinge
zuletzt angelegte Gerätedateien finden ls -rtl /dev find /dev -ctime -30 find /dev -type c -o -type b -printf '%TY%Tm%Td%TI%TM %p\n' | sort -n Dummy Netzwerkinterface dummy0 in intern0 umbenennen ... mit udev.rules Dummy Netzwerkinterface erzeugen modprobe dummy numdummies=1 ip link show dummy0 1)
udev Regel erstellen Netzdevice umbenennen udevadm info -a /sys/class/net/dummy0 /etc/udev/rules.d/70-persistent-net.rules … ACTION=="add", SUBSYSTEM=="net", KERNEL=="dummy0", NAME="intern0" … Konfigurationsdatei prüfen:
udevadm test /sys/class/net/dummy0 erstes Terminalfenster:
udevadm monitor zweites Terminalfenster:
Konfiguration neu laden:
udevadm control --reload-rules Modul neu laden:
modprobe -r dummy modprobe dummy numdummies=1 ip link oder (ohne neu laden des Moduls):
udevadm trigger -v --action=add --attr-match=subsystem=net --attr-match=address=52:54:00:1d:c5:52 ... mit systemd.link /etc/systemd/network/10-dummy.link [Match] OriginalName=dummy0
[Link] Name=intern0 Kommando bei Aktivierung eines USB-Devices ausführen /etc/udev/rules.d/75-touch-file.rules ACTION=="add", SUBSYSTEM=="usb", RUN="/bin/touch /tmp/udev-test" USB-Gerät einstecken
ls -l /tmp/udev-test Kommando ausführen, wenn ein USB-Stick mit einem Dateisystem mit dem LABEL=backup eingesteckt wird:
/etc/udev/rules.d/75-touch-file.rules ACTION=="add", SUBSYSTEM=="usb", ENV{ID_FS_LABEL}=="backup", RUN="/bin/touch /tmp/udev-test" Symlink bei Aktivierung anlegen /etc/udev/rules.d/75-show-last-usb.rules SUBSYSTEM=="usb", SYMLINK+="last-usb-device" USB-Gerät einstecken
ls -l /dev/last-usb-device udev events anzeigen udevadm monitor udevadm test /block/sdc/sdc1 udevadm control log_priority=debug Weitere udev Kommandos Welcher sysfs Pfad zum Gerät /dev/sda ?
udevadm info -q path -n /dev/sda Welche Informationen zum Gerät /dev/sda ?
udevadm info -a -p $(udevadm info -q path -n /dev/sda) Geräte, die immer erzeugt werden sollen:
ls /lib/udev/devices/