[systemd-devel] systemd-udevd seems to kill mount.ntfs started in rules scripts?
Barry Scott
barry.scott at onelan.co.uk
Fri Apr 4 03:22:08 PDT 2014
On Thu 03 Apr 2014 17:27:44 Thomas Bächler wrote:
> Am 03.04.2014 17:13, schrieb Barry Scott:
> > But as soon as the script exits the mount.ntfs process is killed off by
> > something? systemd-udevd maybe?
>
> From man udev's section on RUN:
>
> " This can only be used for very short-running foreground
> tasks. Running an event process for a long period of time may block all
> further events for this or a dependent device.
>
> Starting daemons or other long-running processes is not
> appropriate for udev; the forked processes, detached or not, will be
> unconditionally killed after the event handling has finished."
>
> Instead of using RUN, use SYSTEMD_WANTS to start a .mount or .service
> unit that does your job. In the remove case, use
> RUN+="/usr/bin/systemctl stop --no-block foo.mount" or similar.
>
> (Not that I think this is a good idea at all: Your volume will be
> "unmounted" after it has been remove already - you are asking for data
> corruption.)
I did not set out to run a daemon. Its looks on the surface like I'm just mounting a
device. It was a partial a surprise that the mount.ntfs process was considered part of
the udev CG (but I not sure where else it might be put).
What I have done is created a service that does the mount and umount actions
triggered by the udev rule. I need the udev rule as I have cannot depend on any of the
important properties of the USB device, its name, the FS type etc.
I'm not using the template mechanism, but will investigate it.
Barry
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/systemd-devel/attachments/20140404/91b02311/attachment-0001.html>
More information about the systemd-devel
mailing list