Linuxhotel Wiki

Wie ging das nochmal?

Benutzer-Werkzeuge

Webseiten-Werkzeuge


lpi2:udev

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige ÜberarbeitungVorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
lpi2:udev [2015/07/06 14:23] – ingo_wichmannlpi2:udev [2025/02/25 17:00] (aktuell) – [Kommando bei Aktivierung eines USB-Devices ausführen] ingo_wichmann
Zeile 1: Zeile 1:
-====== udev events anzeigen ====== 
-=== Centos 5 === 
- 
-  udevmonitor 
-  udevtest /block/sdc/sdc1 
-  udevcontrol log_priority=debug 
- 
-=== CentOS 6 / Debian 7 / SuSE ab 11.0 / Ubuntu ab 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.1, Debian 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.1436192590.txt.gz · Zuletzt geändert: 2015/07/06 14:23 von ingo_wichmann