Try changing your udev rule to: KERNEL=="sd*1",ACTION=="add",RUN=="sh /home/pi/usb.sh &> /tmp/script-log" The "&>" symbol tells the shell to redirect the script's output and error messages to the file /tmp/script-log, once the script runs then any error messages should appear in that file, which you...