Skip to main content
1 of 8

Linux auto-mounting USB with UDev

HELP!!!!! wrote a udev rule

ACTION=="add", SUBSYSTEM=="block", KERNEL=="sd[b-z][0-9]", ENV{ID_BUS}=="usb", \
ENV{ID_TYPE}=="disk", ENV{ID_FS_USAGE}=="filesystem", \
RUN+="/bin/mount -w -o umask=0000,uid=0,gid=0 /dev/%k /mnt/usb_drives"

ACTION=="remove", SUBSYSTEM=="block", KERNEL=="sd[b-z][0-9]", ENV{ID_BUS}=="usb", \
ENV{ID_TYPE}=="disk", ENV{ID_FS_USAGE}=="filesystem", RUN+="/bin/umount /mnt/usb_drives"

I look at df -h and I don't see my mounted device there, I tried writing a rule via pmount and still no result. Nothing is written in the logs, or it gives an error with a return value of 1

I tried to write commands in scripts, but as I understand it, the problem is that HE DOESN'T WANT TO RUN THROUGH THE ROOT USER. HOW IS THIS??

SUBSYSTEM=="block", KERNEL=="sd[a-z][0-9]", \
ENV{ID_BUS}=="usb", ENV{ID_TYPE}=="disk", \
ENV{UDISKS_AUTO}="0"

ACTION=="add", SUBSYSTEM=="block", KERNEL=="sd[a-z][0-9]", \
ENV{ID_BUS}=="usb", ENV{ID_TYPE}=="disk", \
RUN+="sh /etc/udev/rules.d/mount-usb.sh %k"
#!/usr/bin/sudo bash
sleep 5
NAME_DEV=$1
mkdir "/mnt/usb/$NAME_DEV"
sudo /bin/mount "/dev/$NAME_DEV" "/mnt/usb/$NAME_DEV"