Use lsusb to replace the vendor/product ids.
In my case
$ lsusb
...
Bus 001 Device 008: ID 1058:0704 Western Digital Technologies, Inc. Passport External HDD
...
~/bin/poweroff-usbdisk.sh
#!/bin/sh
# Poweroff a device identified by the vendor/product id below.
# If you have two similar devices (e.g two western digital drives),
# the script will fail. The fix is easy: enumerate the devices
# and suspend them individually.
vendorid=1058
productid=0704
# Look for western digital
USBDIR=$(dirname $(find /sys/bus/usb/devices/usb[1-5]/ -iname "*vendor*"|xargs grep $vendorid|cut -f1 -d: ))
# Verify it's the hdd
grep $productid $USBDIR/idProduct
#Power off
if [ $? -eq 0 ]; then
sudo umount /mnt/audio/ && echo suspend |sudo tee $USBDIR/power/level;
fi
~/bin/poweron-usbdisk.sh
#!/bin/sh
# Poweron a device identified by the vendor/product id below. # Look for western digital USBDIR=$(dirname $(find /sys/bus/usb/devices/usb[1-5]/ -iname "*vendor*"|xargs grep $vendorid |cut -f1 -d: )) vendorid=1058 productid=0704 # Verify it's the hdd grep $productid $USBDIR/idProduct #Power off if [ $? -eq 0 ]; then echo on |sudo tee $USBDIR/power/level; fi
Does this work with newer kernel than 2.6.32?
ReplyDeleteInteresting reaad
ReplyDelete