Domanda

Non ero davvero sicuro se questo fosse il sito giusto per porre questa domanda, ma l'ho messo qui dal momento che si tratta di una sorta di domanda di programmazione e ho pensato che il pubblico SO fosse il più orientato verso Linux dei tre siti .

In ogni caso, sto cercando di trovare un modo per simulare la disconnessione di un dispositivo da un aspetto software, proprio come se un utente lo disconnettesse fisicamente. Finora ho creato una regola udev in /etc/udev/rules.d chiamata 10-nano.rules:

SYSFS{idVendor}=="05ac", OPTIONS+="ignore_device"

Questa regola funziona bene per ignorare i dispositivi, ma solo dopo che sono stati disconnessi e ricollegati. Ma quello che voglio fare è poter scrivere la regola e quindi ignorare il dispositivo come se fosse disconnesso. Ho provato & Quot; udevadm trigger & Quot; con e senza sudo, ma per qualche motivo non posso applicare questa regola mentre il dispositivo è collegato. Qualche suggerimento?

A proposito, sono in grado di riconnettere un dispositivo che è stato ignorato rimuovendo 10-nano.rules e quindi eseguendo " sudo udevadm trigger " ;, ma come detto sopra, non il viceversa. (per qualche ragione il mio tempo di sistema e internet vengono incasinati quando eseguo quel comando)

È stato utile?

Soluzione

Hai provato a rmmod il modulo che controlla il dispositivo?

Puoi anche simulare la rimozione di eventi con udevadm test, ad esempio:

sudo udevadm test --action="remove" <devpath>

Puoi vedere come i devpath guardano udevadm monitor quando si collegano o rimuovono fisicamente un dispositivo, oppure controllali in /sys/<devpath>.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top