Bug#333706: [Pkg-shadow-devel] Bug#333706: useradd lacks -r option

Matt Taggart taggart at debian.org
Mon Oct 24 23:25:09 UTC 2005


Christian Perrier writes...

> (Matt, I need more input from someone who better knows LSB than
> me. Please look at #333706 and add your thoughts here...or point
> someone you would know having a deeper background about LSB to this bug)

OK.

> I think that the point of LSB is to guarantee that all Linux
> distribution tools comply to a common ground of utilities. Having a
> common way for all useradd implementations to guarantee there exists
> an option to add a "system" user is an obvious requirement.

Yes this is a goal of the LSB, but the LSB is supposed to do this by reviewing 
what all the distros are doing and then only specifying the things that there 
is consensus on. We refer to the LSB as a "trailing-edge standard", it doesn't 
get to create standards, only document those already in use.

What happened in this case is that the LSB workgroup saw both Red Hat and SuSE 
using the '-r' option and assumed there was consensus without checking what 
upstream and Debian were doing. The LSB now has criteria to prevent this sort 
of error,

http://www.linuxbase.org/futures/criteria/

but it wasn't in place when this was added to the specification.

Upstream has no obligation to add '-r', the LSB doesn't get to tell them what 
to do. However we are now in a situation where Red Hat and SuSE have both been 
using this option for several years, "the cat is out of the bag"/"pandora's 
box is open" (maybe these are english expressions?). Perhaps the right 
solution is for upstream to do us a favor and fix our screw-up by adding '-r'?

> I don't
> have the details of "-O" as noone took care of even documenting it so
> I actually can't tell....I just suspect it needs some arguments so as
> the minimum or maximum UIDs.....

'-O' doesn't need to go upstream though does it? It was just for compatibility 
with Debian's older useradd?

> The point of "-r" is not requiring arguments at all. The exact range
> may be distribution specific but the single switch guarantees for
> instance a software vendor that using "useradd -r <user>" will be a
> portable way to add a system user to any LSB-compliant distro.

Yes this is the intent. The LSB also specifies the ranges of uids reserved for 
system accounts,

http://refspecs.freestandards.org/LSB_3.0.0/LSB-Core-generic/LSB-Core-generic/u
idrange.html

but the intent is that the implementer gets to decide how those are allocated 
when requested with 'useradd -r'.

Tomasz,
What do you think? It would really help us out if you could add this. As 
upstream of the canonical implementation, the decision is yours.

Thanks,

-- 
Matt Taggart
taggart at debian.org






More information about the Pkg-shadow-devel mailing list