[systemd-devel] help: unmounting iscsi xfs filesystem without using netdev in /etc/fstab
Tony Rodriguez
unixpro1970 at gmail.com
Tue Aug 27 16:32:46 UTC 2019
My team mentioned adding _netdev is now acceptable (thank goodness) but
wondering if there is a way to limit the timeout when using _netdev?
On 8/27/19 8:55 AM, Tony Rodriguez wrote:
> Interesting that you mentioned the following. I actually added logic
> to do something like this early yesterday. Will discuss with my team
> to see if this is good enough. I'd rather not bypass _netdev either.
> Feels like I am re-eventing the wheel. I think the main issue
> regarding using _netdev is the amount of time it takes to check/mount
> iscsi devices. Believe it waits up to 90 seconds to timeout for an
> iscsi device/filesystem and I am not sure this can be bypassed. Is it
> possible to limit the amount of time _netdev will take? I tried
> setting x-systemd.device-timeout and x-systemd.mount-timeout with
> _netdev in /etc/fstab but it didn't seem to work. It also didn't
> propagate to /run/systemd/generators/remote-fs-target.requires I
> believe the systemd document mentioned such settings are ignored.
>
> "I haven't been following your earlier threads too closely, but if you're
> stuck with stupid fstab requirements why not just bypass them with
> altogether with drop-in:
>
> # path-to-mountpoint.mount.d/20-Options.conf
> [Mount]
> Options=_netdev"
>
>
>
> On 8/27/19 2:33 AM, Michael Chapman wrote:
>> On Tue, 27 Aug 2019, Tony Rodriguez wrote:
>>> Managed to detect/mount iscsi devices without using _netdev keyword in
>>> /etc/fstab. Made changes within
>>> src/fstab-generator/ftstab-generator.c and it
>>> seems to work. The only problem is during shutdown/reboot, my iscsi
>>> xfs
>>> filesystem does not unmount cleanly before the network/iscs
>>> service/system is
>>> shutdown. When this happens I receive a xfs error/warning.
>>>
>>> However this doesn't happen when _netdev is specified in /etc/fstab
>>> for my
>>> iscsi device. Seems _netdev handles management of mounts/unmounts
>>> before
>>> killing things off. How exactly does _netdev manage unmounting
>>> filesystems
>>> during a shutdown/reboot?
>> One of the "default dependencies" for a mount unit that systemd
>> thinks is
>> a network filesystem is After=network.target. During shutdown, this
>> ensures the filesystem is unmounted before networking is brought down:
>>
>> https://github.com/systemd/systemd/blob/fef40ceb5dfbb76d4733e579846a380a224efd55/src/core/mount.c#L455-L482
>>
>> If you're not using the _netdev keyword, and systemd does not otherwise
>> think this is a remote filesystem, you will need to add this dependency
>> manually. You'll probably also want:
>>
>> Wants=network-online.target
>> After=network-online.target
>>
>> to match the code linked above.
>>
>>> I would like to invoke that same netdev unmount
>>> code/logic myself from within systemd source but without using the
>>> _netdev
>>> keyword. Unfortunately it is a requirement to not use _netdev within
>>> /etc/fstab for iscsi. Seems _netdev takes a long time to timeout
>>> and continue
>>> when unable to mount.
>> I haven't been following your earlier threads too closely, but if you're
>> stuck with stupid fstab requirements why not just bypass them with
>> altogether with drop-in:
>>
>> # path-to-mountpoint.mount.d/20-Options.conf
>> [Mount]
>> Options=_netdev
>>
>> Plus any other options you may need, of course; this directive is not
>> "list-valued", so you can't use it to add just one option.
>>
>>> Checked src/core/mount.c and src/core/unmount.c but not sure what to
>>> do to
>>> duplicate how _netdev manages unmounting before the system is
>>> shutdown or
>>> rebooted. Do I need a special before and after keyword in
>>> /etc/fstab so my
>>> xfs filesystems is unmounted before shutting down the iscsi
>>> service/network/system? If so, will such keywords also propagate to
>>> /run/systemd/generator/remote-fs-target.requires?
>>>
>>>
>>> Thanks,
>>> Tony
>>> _______________________________________________
>>> systemd-devel mailing list
>>> systemd-devel at lists.freedesktop.org
>>> https://lists.freedesktop.org/mailman/listinfo/systemd-devel
>>>
>>> _______________________________________________
>>> systemd-devel mailing list
>>> systemd-devel at lists.freedesktop.org
>>> https://lists.freedesktop.org/mailman/listinfo/systemd-devel
>
More information about the systemd-devel
mailing list