GNU/Linux >> Linux Esercitazione >  >> Linux

Come attivare un evento nello script della shell quando viene rimosso un dispositivo USB?

Devo eseguire alcune azioni quando un dispositivo USB specifico viene rimosso/aggiunto. Ho bisogno di una risposta rapida nell'ordine dei millisecondi.

Come posso farlo in uno script di shell?

Risposta accettata:

Supponendo che tu stia utilizzando una distribuzione Linux con supporto udev e che tu abbia accesso root/amministratore ad essa, puoi utilizzare le regole udev per attivare operazioni specifiche.

Se l'esempio seguente viene aggiunto a un /etc/udev/rules.d/example.rules quindi eseguirà lo script specificato quando viene aggiunto un dispositivo a blocchi con i parametri specificati.

ACTION=="add", SUBSYSTEM=="block", ATTRS{manufacturer}=="HitachiGST", ATTRS{serial}=="31001206110000000000", RUN+="/a/script/to/run.sh"

Quella particolare regola viene eseguita quando il mio disco rigido USB è inserito e si collega al sistema a blocchi. È abbastanza facile modificare le regole in modo che corrispondano a uno specifico evento USB di basso livello.

Ho trovato la pagina wiki Debian UDEV e il sito Writing Udev Rules molto utili per ottenere le regole giuste per la mia situazione.


Linux
  1. Come creare un file temporaneo nello script della shell?

  2. Come eseguire uno script nella shell quando viene premuto un tasto di scelta rapida?

  3. Come eseguire uno script quando i dispositivi USB vengono collegati o rimossi utilizzando UDEV

  4. Come eseguire uno script di shell all'avvio

  5. Come eseguire uno shellscript quando collego un dispositivo USB

Come utilizzare le variabili negli script della shell

Come creare script di shell

Come memorizzare un comando Linux come variabile nello script della shell

Come eseguire lo script della shell come servizio SystemD in Linux

Come mostrare la notifica quando viene inserito un dispositivo USB?

Come eseguire un comando in uno script della shell?