Re: auto mount and unmount using udev rules

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Seth,


On Thu, May 16, 2019 at 3:23 AM Seth Kenlon <skenlon@xxxxxxxxxx> wrote:
Here's what I use for my automated backup script (see
https://gitlab.com/slackermedia/attachup for context):

If you adapt this, you'll need to update the path (I use /media),
you'll need to update the UUID, and you'll probably need to verify
that your drive has a label, because this rule uses the UUID and label
to identify the drive.

I save this as 80.local-rules in /etc/udev/rules.d
Supposedly you can do a `udevadm control reload` to force the rules to
be reloaded, but I usually reboot just to make sure udev is on top of
its game.

KERNEL!="sd[a-z][0-9]", GOTO="media_by_label_auto_mount_end"
IMPORT{program}="/sbin/blkid -o udev -p %N"
# Get label or create one
ENV{ID_FS_LABEL}!="", ENV{dir_name}="%E{ID_FS_LABEL}"
ENV{ID_FS_LABEL}=="", ENV{dir_name}="usbhd-%k"
# mount
ACTION="" ENV{mount_options}="relatime"
ACTION="" ENV{ID_FS_TYPE}=="vfat|ntfs",
ENV{mount_options}="$env{mount_options},utf8,gid=100,umask=002"
# Clean up after removal
ACTION="" 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"
#mount
ACTION=""> -p /media/%E{dir_name}",RUN+="/bin/mount -o $env{mount_options}
/dev/%k /media/%E{dir_name}",MODE="0770",GROUP="users"

I tried with your udev rule but no luck.


[root@hanthana ~]# cat /etc/udev/rules.d/81-hnt-usb-rule.rules
KERNEL!="sd[a-z][0-9]", GOTO="media_by_label_auto_mount_end"
IMPORT{program}="/sbin/blkid -o udev -p %N"

# Get label or create one
ENV{ID_FS_LABEL}!="", ENV{dir_name}="%E{ID_FS_LABEL}"
ENV{ID_FS_LABEL}=="", ENV{dir_name}="backup-%k"
# mount
ACTION="" ENV{mount_options}="relatime"
ACTION="" ENV{ID_FS_TYPE}=="vfat|ntfs|ext4", ENV{mount_options}="$env{mount_options},utf8,umask=002"
# Clean up after removal
ACTION="" 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"
#mount
ACTION="" -p /media/%E{dir_name}",RUN+="/bin/mount -o $env{mount_options} /dev/%k /media/%E{dir_name}",MODE="0770"
[root@hanthana ~]#
[root@hanthana ~]#
[root@hanthana ~]# udevadm control --reload
[root@hanthana ~]#

I noticed that udev rule create the given directory but it won't mount the device under given directory but usual direcotry /run/meda/<user>/<LABEL>.
[root@hanthana ~]# ls /media/backup/
[root@hanthana ~]#
[root@hanthana ~]# df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1        16G  5.5G  9.7G  37% /run/media/danishka/LIVE


I did test the rule.

run: '/bin/mkdir -p /media/backup'
run: '/bin/mount -o relatime,utf8,umask=002 /dev/sdb1 /media/backup'
Unload module index
Unloaded link configuration context.


_______________________________________________
users mailing list -- users@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to users-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://getfedora.org/code-of-conduct.html
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/users@xxxxxxxxxxxxxxxxxxxxxxx
[Index of Archives]     [Older Fedora Users]     [Fedora Announce]     [Fedora Package Announce]     [EPEL Announce]     [EPEL Devel]     [Fedora Magazine]     [Fedora Summer Coding]     [Fedora Laptop]     [Fedora Cloud]     [Fedora Advisory Board]     [Fedora Education]     [Fedora Security]     [Fedora Scitech]     [Fedora Robotics]     [Fedora Infrastructure]     [Fedora Websites]     [Anaconda Devel]     [Fedora Devel Java]     [Fedora Desktop]     [Fedora Fonts]     [Fedora Marketing]     [Fedora Management Tools]     [Fedora Mentors]     [Fedora Package Review]     [Fedora R Devel]     [Fedora PHP Devel]     [Kickstart]     [Fedora Music]     [Fedora Packaging]     [Fedora SELinux]     [Fedora Legal]     [Fedora Kernel]     [Fedora OCaml]     [Coolkey]     [Virtualization Tools]     [ET Management Tools]     [Yum Users]     [Yosemite News]     [Gnome Users]     [KDE Users]     [Fedora Art]     [Fedora Docs]     [Fedora Sparc]     [Libvirt Users]     [Fedora ARM]

  Powered by Linux