Linuxhotel Wiki

Wie ging das nochmal?

Benutzer-Werkzeuge

Webseiten-Werkzeuge


lpi2:udev

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
lpi2:udev [2013/12/09 15:49]
ingo_wichmann [aktivieren]
lpi2:udev [2025/02/25 17:00] (aktuell)
ingo_wichmann [Kommando bei Aktivierung eines USB-Devices ausführen]
Zeile 1: Zeile 1:
-====== udev events anzeigen ====== 
-=== Centos 5 === 
- 
-  udevmonitor 
-  udevtest /​block/​sdc/​sdc1 
-  udevcontrol log_priority=debug 
- 
-=== SuSE 11.0 / Ubuntu 8.04 === 
- 
-  udevadm monitor 
-  udevtest /​block/​sdc/​sdc1 
-  udevcontrol log_priority=debug 
  
 ====== zuletzt angelegte Gerätedateien finden ====== ====== zuletzt angelegte Gerätedateien finden ======
Zeile 17: Zeile 5:
   find /dev -ctime -30   find /dev -ctime -30
   find /dev -type c -o -type b -printf '​%TY%Tm%Td%TI%TM %p\n' | sort -n   find /dev -type c -o -type b -printf '​%TY%Tm%Td%TI%TM %p\n' | sort -n
-====== ​Gerätenamen fest vergeben ​====== +====== ​Dummy Netzwerkinterface dummy0 in intern0 umbenennen ​====== 
-===== Netzwerkkarte eth0 anhand Mac-Adresse bestimmen ​===== +===== ... mit udev.rules ​===== 
-''/​etc/udev/rules.d/30-net_persistent_names.rules''​: ( SuSE 10.1 default ​+==== Dummy Netzwerkinterface erzeugen ==== 
-<​file>​ +  modprobe dummy numdummies=1 
-SUBSYSTEM=="net", ​ACTION=="add", ​SYSFS{address}=="00:​00:​f0:​73:​d5:​5e", ​IMPORT="/​lib/​udev/​rename_netiface %k eth0"+  ip link show dummy0 
 +(( ''​numdummies=1''​ überschreibt ​''/​lib/modprobe.d/systemd.conf''​ )
 +==== udev Regel erstellen ==== 
 + 
 +=== Netzdevice umbenennen === 
 +  udevadm info  -a /​sys/​class/​net/​dummy0 ​ 
 +<​file ​txt /​etc/​udev/​rules.d/​70-persistent-net.rules
 +… 
 +ACTION=="add", ​SUBSYSTEM=="net", ​KERNEL=="dummy0", ​NAME="intern0" 
 +
 </​file>​ </​file>​
  
-===== Netzwerkkarte eth0 anhand PCI-ID bestimmen ===== +Konfigurationsdatei prüfen: 
-==== udev Regel erstellen ==== +  udevadm ​test /​sys/​class/​net/​dummy0
-  udevinfo -a -p /​sys/​class/​net/​eth0 +
-oder +
-  udevadm ​info -a -p /​sys/​class/​net/​eth0+
  
-  lspci +erstes Terminalfenster:​ 
-''/​etc/​udev/​rules.d/​30-net_persistent_names.rules''​: ( SuSE 10.2 +  ​udevadm monitor 
-<​file>​ + 
-SUBSYSTEMS=="​pci",​ KERNELS=="0000:00:11.0" , IMPORT="/lib/udev/rename_netiface %k eth0"+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 ​===== 
 +<file txt /etc/systemd/network/​10-dummy.link>​ 
 +[Match] 
 +OriginalName=dummy0 
 + 
 +[Link] 
 +Name=intern0
 </​file>​ </​file>​
  
-===== Dummy Netzwerkinterface dummy0 in intern0 umbenennen ​===== +====== ​Kommando bei Aktivierung eines USB-Devices ausführen ​====== 
-==== Dummy Netzwerkinterface erzeugen ==== +<file txt /​etc/​udev/​rules.d/​75-touch-file.rules>​ 
-  ​modprobe dummy +ACTION=="​add",​ SUBSYSTEM=="​usb",​ RUN="/​bin/​touch /​tmp/​udev-test"​ 
-  ​ifconfig dummy0+</​file>​ 
 +USB-Gerät einstecken 
 +  ​ls -l /​tmp/​udev-test
  
-==== udev Regel erstellen ​==== +(kurzes(( 
-''​/​etc/​udev/​rules.d/​z25_persistent-net.rules'':​ ( Debian 4.0 )+Alternativen für länger laufende Befehle: 
 +<file txt /​etc/​udev/​rules.d/​75-touch-file.rules>​ 
 +ACTION=="​add",​ SUBSYSTEM=="​usb",​ ENV{ID_FS_LABEL}=="​backup",​ RUN="/​usr/​bin/​systemd-run --on-active=2 /​usr/​local/​bin/​backup.sh"​ 
 +</​file>​ 
 +oder 
 +<file txt /​etc/​udev/​rules.d/​75-touch-file.rules
 +ACTION=="​add",​ SUBSYSTEM=="​usb",​ ENV{ID_FS_LABEL}=="​backup",​ ENV{SYSTEMD_WANTS}="​backup.service"​
  
-''​/​etc/​udev/​rules.d/​70-persistent-net.rules'':​ ( SuSE 11.1Debian 5.0 )+</​file>​ 
 +)) ) Kommando ausführen, wenn ein USB-Stick mit einem Dateisystem mit dem LABEL=backup eingesteckt wird: 
 +<file txt /​etc/​udev/​rules.d/​75-touch-file.rules
 +ACTION=="​add"​SUBSYSTEM=="​usb",​ ENV{ID_FS_LABEL}=="​backup",​ RUN="/​bin/​touch /​tmp/​udev-test"​ 
 +</​file>​
  
-  udevadm info -a -p /​sys/​class/​net/​dummy0 ( Debian 6.0 ) 
-''/​etc/​udev/​rules.d/​70-persistent-net.rules'':​ ( Debian 6.0 ) 
  
-''​/​etc/​udev/​rules.d/​60-net.rules''​ ( CentOS 5 ) +====== Symlink bei Aktivierung anlegen ====== 
-<file+<file txt /​etc/​udev/​rules.d/​75-show-last-usb.rules>​ 
-SUBSYSTEM=="​net", ​KERNEL=="dummy0",​ NAME="​intern0"​ +SUBSYSTEM=="​usb", ​SYMLINK+="last-usb-device"
-SUBSYSTEM=="​net",​ KERNEL=="​dummy0",​ RUN="/​bin/​touch /tmp/udev-test"+
 </​file>​ </​file>​
 +USB-Gerät einstecken
 +  ls -l /​dev/​last-usb-device
  
-==== testen ==== 
-Vorsicht: meine Tests haben gezeigt, das auch schon beim Aufruf von ''​udevtest''​ das Device umbenannt wird ...  
  
-  udevadm test /​sys/​class/​net/​dummy0 
  
-==== aktivieren ==== 
  
-  udevadm trigger 
  
-==== Netzwerkkarten Konfigurationsdatei umbenennen ( SuSE ) ==== +====== ​udev events anzeigen ​====== 
-  ​getcfg eth0 > /​tmp/​getcfg.txt + 
-  ​/tmp/getcfg.txt +  ​udevadm monitor 
-  ​mv ifcfg-eth-id-$HWD_ID ifcfg-eth0+  ​udevadm test /block/sdc/sdc1 
 +  ​udevadm control log_priority=debug
  
 ====== Weitere udev Kommandos ====== ====== Weitere udev Kommandos ======
lpi2/udev.1386604142.txt.gz · Zuletzt geändert: 2013/12/09 15:49 von ingo_wichmann