2012-02-01 9 views
1

私の目的は、特定の種類のusb以外のusbポートの使用を無効にすることです。 usbデバイスが挿入されるたびに、udevルールが呼び出され、作業を処理するプログラムが実行されます。usbノードを削除する

usb_storageモジュールは使用に必要なのでアンロードできません。なぜなら、私のケースに合わない場合、どのようにusb dev linkを削除できますか?

答えて

2

デバイスのバインドを解除します。ベンダーIDと製品IDを下のスクリプトに渡します。

VENDOR=$1 
PRODUCT=$2 

if [ n$VENDOR = n ] || [ n$PRODUCT = n ]; then 
     echo "Unbinding the first non-hub device..." 

     ID=`grep -l "^0$" /sys/bus/usb/drivers/usb/*/maxchild | sed -e "s|/sys/bus/usb/drivers/usb/\(.*\)/maxchild|\1|" | head -n 1` 

     VENDOR=`cat /sys/bus/usb/drivers/usb/$ID/idVendor` 
     PRODUCT=`cat /sys/bus/usb/drivers/usb/$ID/idProduct` 

     echo $ID > /sys/bus/usb/drivers/usb/unbind 

     echo "Device found ($VENDOR:$PRODUCT), and unbound!" 

     exit 0 
fi 

よろしく、
バルンParichha