On Wed, Aug 05, 2015 at 10:18:13AM -0400, Ian Stakenvicius wrote: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA256 > > On 05/08/15 10:01 AM, William Hubbs wrote: > > On Wed, Aug 05, 2015 at 04:50:40AM +0000, Duncan wrote: > >> Ian Stakenvicius posted on Tue, 04 Aug 2015 17:17:51 -0400 as > >> excerpted: > >> > >>> So what you are suggesting here now is that you want to (A) > >>> potentially break mounting with the need to externally manage > >>> mounts via services in openrc instead of just using /etc/fstab, > >>> and (B) also break services if something doesn't start, which > >>> is one of the reasons why you wanted to go through with this > >>> per-mount service in the first place. My point is that no, we > >>> should keep localmount as succeeding even if one of the > >>> dependent services fails to mount, *just like it does right > >>> now*, *for the same reasons* as it succeeds on failure right > >>> now. > >> > >> +1 > >> > >> IMO, localmount must continue to succeed /by/ /default/, even if > >> some mounts fail, because it's basically legacy, and must > >> maintain legacy behavior. Turning it into a wrapper "internally" > >> is fine, but the overall localmount must still succeed, as too > >> much depends on that behavior as it is. > > > > Here's what I'm trying to deal with. Consider what happens if > > service a still has "need localmount" and service b has "need > > mount.foo". > > > > Mounting a file system twice causes failures the second time it is > > mounted, so I either have to add special handling in the new > > mount script for file systems that are already mounted or come up > > with a way to make sure localmount runs after all instances of the > > new mount script. > > Yes. I sincerely hope this was always part of the plan??? > > If localmount is kept as a 'mount -a' then it won't remount anything > that's already been mounted, so nothing to worry about there. If it's > a wrapper to the individual local mount.*'s then it just has to > depend() on them all via a need/want (so that they will be brought in > even if they aren't in the runlevel) and/or the mount.*'s need a > 'before localmount' so that they're definitely started/attempted > first. Am I missing something that makes this harder than it seems?
It isn't localmount that would have the issue, but mount.* because they are lexically after localmount, so you would end up with localmount doing a mount -a then mount.* coming later trying to mount file systems again that were mounted by localmount. > > > > > > The issue with making sure all mount scripts run before localmount > > would complicate things more for users because they would have to > > add the mount.foo symlinks to the appropriate runlevels (boot for > > local file systems and default for network ones). > > Likely true as things stand now, which is why I expect major changes > would be needed in openrc internals to make it so this is not > necessary. At minimum, "want" dependencies would need to be used so > that if mount.foo's don't exist they won't cause depend() failures. > > (You thought this system was going to let you get away with -not- > using 'want' for mounting, didn't you? :) Not exactly, I just don't want to use want along with fstab scanning in netmount to try to make netmount start network file system daemons. I never was opposed to the want dependency on its own. > Of course this still doesn't handle how depend() sections will be > dynamically generated from /etc/fstab in the first place, nor how the > cache will be affected by this; so there's still lots of work to do to > sort that out. There is no plan to dynamically generate depend() functions. William
signature.asc
Description: Digital signature