Re: F28 System Wide Change: Rename "nobody" user

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

 



On 11 January 2018 at 01:41, Zbigniew Jędrzejewski-Szmek
<zbyszek@xxxxxxxxx> wrote:
> On Wed, Jan 10, 2018 at 10:26:24AM -0500, Nico Kadel-Garcia wrote:
>> On Wed, Jan 10, 2018 at 6:18 AM, Zbigniew Jędrzejewski-Szmek
>> <zbyszek@xxxxxxxxx> wrote:
>> > On Wed, Jan 10, 2018 at 11:56:46AM +0100, Reindl Harald wrote:
>> >>
>> >> Am 10.01.2018 um 11:46 schrieb Jan Kurik:
>> >> >On existing systems, to make upgrades easier:
>> >> >* if nfsnobody was defined, keep it in /etc/passwd *after* the new
>> >> >line for nobody:nobody, so that both the old name and the new name map
>> >> >to the same numbers
>> >> >* if nobody user or group with number 99 was defined, keep it in
>> >> >/etc/passwd and /etc/group, but rename to _nobody
>> >> that don't make updates easier but breaks existing setups where
>> >> nobody:nobody with 99:99 already owns files - don't touch long years
>> >> running machines due dist-upgrades please - at least not with "dnf
>> >> --releasever=28 distro-sync"
>> >
>> > That'd amount to leaving existing systems unchanged. That's an option
>> > that I didn't like and initially rejected, but yeah, it's probably better.
>> > I'll wait a bit more for feedback and update the proposal a bit later
>> > to leave existing systems alone (i.e. systems which have either nobody
>> > or nfsnobody already defined in the old style).
>> >
>> > Zbyszek
>>
>> This is particularly relevant for rsync or tar restorations from old
>> backups, and to NFS shares exposed across old and new environments.
>> It's why changing active uid and and gid for any account can be
>> perniciously awkward.
>
> Based on this and other feedback, we updated the proposal.
> We discussed all the ways in which we could try to reliably determine
> if "nobody" is actually used, but that seems impossible. So the updated
> version is:
>
> 1. update setup.rpm to nobody=65534 on new systems
> 2. teach systemd to not provide any mapping for nobody (in PID1 and in
>    nss-systemd) based on a flag file, and create this file in %post if
>    either nobody=99 or nfsnobody users are defined.
>
> This essentially means that existing systems would behave as before,
> and new systems will have just one nobody user with uid=65534.
>
> See https://fedoraproject.org/wiki/Changes/RenameNobodyUser for more
> detailed description.
>


I know this may sound fairly nasty in terms of work required to agree
a solution but I honestly have a strong dislike to taking this
approach.

Having upgraded and freshly installed systems so different is going to
be messy with supporting users and in many deployed environments...
and it's not even about F26 and F27 -> F28 but what happens on an F29+
system?

Is this workaround going to be maintained in perpetuity? Is it just
going to cause even more confusion then?

As a very simple example take a docker host that has been upgraded
with a fresh container on it. The nobody user is going to differ
between the two which will at a minimum cause confusion, if not actual
issues to arise.

Sometimes you just need to "bite the bullet" on a change and accept it
will be painful in the short term for benefit in the longer term.

Because of these concerns I'd strongly favour the original plan
(renaming existing nobody user and creating the new one).

To make sure this is clear and to mitigate any potential issues make
sure that this change of behaviour is clearly communicated.

 Document the change in the release notes and in known issues. Put up
an article on Fedora Magazine highlighting it.

For fresh installs there's effectively no difference. For anyone
upgrading they need to check release notes and known issues anyway so
they are the ones that need to know about this.

This then ensures consistency of what "nobody" means going forwards to
minimise the potential support problems and to make QA have an easier
time with what it means for upgrades, installs and containers.
_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]
  Powered by Linux