6

I'm currently working in a command line only environment.

When I plug my USB key in, I see a new device file in /dev:

...
sdi
sdi1
...

If I simply sudo mount /dev/sdi1 /media/tmp, and umount it when I'm done, I have to repeat the process all over again. This alone could be accomplished with a little script but my key doesn't always show up as sdi.

Is there a way for me to have it always auto-mount and maybe reserve sdi for it?

Note: Also, there seems to be orphaned device files in /dev if I forget to unmount and just pull the stick out.

6

I use this Udev rule from the Arch Wiki:

KERNEL!="sd[a-z][0-9]", GOTO="media_by_label_auto_mount_end"

# Import FS infos
IMPORT{program}="/sbin/blkid -o udev -p %N"

# Get a label if present, otherwise specify one
ENV{ID_FS_LABEL}!="", ENV{dir_name}="%E{ID_FS_LABEL}"
ENV{ID_FS_LABEL}=="", ENV{dir_name}="usbhd-%k"

# Global mount options
ACTION=="add", ENV{mount_options}="relatime"
# Filesystem-specific mount options
ACTION=="add", ENV{ID_FS_TYPE}=="vfat|ntfs", ENV{mount_options}="$env{mount_options},utf8,gid=100,umask=002"

# Mount the device
ACTION=="add", RUN+="/bin/mkdir -p /media/%E{dir_name}", RUN+="/bin/mount -o $env{mount_options} /dev/%k /media/%E{dir_name}"

# Clean up after removal
ACTION=="remove", ENV{dir_name}!="", RUN+="/bin/umount -l /media/%E{dir_name}", RUN+="/bin/rmdir /media/%E{dir_name}"

# Exit
LABEL="media_by_label_auto_mount_end"

Just change the "sd[a-z][0-9]" in the first line to avoid clashes with your other drives...

  • So all I do is place this in /etc/udev/rules.d/automount_usb.rules? Do I need a reboot? – n0pe Sep 19 '11 at 19:57
  • Not according to the wiki: "Udev automatically detects changes to rule files, so changes take effect immediately without requiring udev to be restarted." – jasonwryan Sep 19 '11 at 20:40
4

On Debian and Ubuntu there is the package usbmount that should do exactly what you ask.

I am sure it is available in other Linux distros too.

3

There are a number of auto-mount solutions out there, but I'd especially recommend those based on udev - like uam for example.

Also, for normal user, command-line, on-demand mounting I'd recommend pmount (Policy based mounting programs that does not require any sudo).

  • Doesn't pmount require the obsolete hal? – enzotib Sep 19 '11 at 19:41
  • Definitely not. It is a wrapper around mount that allows users mount just the removable media. – rozcietrzewiacz Sep 19 '11 at 19:52

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.