File owner name not updated.

Matthew Seaman m.seaman at
Wed Mar 26 07:59:31 PST 2003

On Tue, Mar 25, 2003 at 11:35:42PM -0800, Kevin Stevens wrote:
> On Tuesday, Mar 25, 2003, at 23:29 US/Pacific, Matthew Seaman wrote:
> >Two things occur to me:
> >
> >    i) Did root use vipw(8) to edit the passwd database, or otherwise
> >       run:
> >
> >        # cap_mkdb /etc/master.passwd
> >
> >       when the UID was changed?  It's the value in the hashed
> >       database cap_mkdb(1) builds that is used by the system.
> >       Updating that should have instantaneous effect.
> Just used the pw command.  However, note that this symptom persisted 
> for over 24 hours.  Last time it happened (on a 4.7 system) it 
> persisted for several days if I recall, before I noticed/corrected it.

Of course, when I said cap_mkdb(8), astute readers will immediately
have realised that I meant to say pwd_mkdb(8) --- it's too early in
the morning here.  However all of the system supplied password
management commands such as pw(8) and vipw(8) will automatically run
pwd_mkdb(8) as necessary.  pwd_mkdb(8) will generate the /etc/passwd
file out of the /etc/master.passwd file, so checking that the UID
change has propagated from the master would be a useful datapoint.
> >   ii) You haven't said anything about what the source of your
> >       password data is, which probably means you're just using the
> >       flat file password database and not anything like NIS or LDAP.
> Correct.
> >       If you are using a distributed database, then a degree of
> >       latency while changes get propagated around the servers is to
> >       be expected.  However, that shouldn't take any more than a few
> >       minutes in a well configured system.
> Right, and this is a standalone system (which is why I'm manually 
> syncing up the uids in the first place).

In which case I'd expect that the intended change should take effect
straight away.
> >The problem is not with the ls(1) command per se.  It's the underlying
> >system library functions such as getpwuid(3) which do the translation
> >between numeric UIDs and usernames that are the seat of the problem.
> >You can see that by running some other command that uses getpwuid(3), 
> >eg:
> >
> >    % perl -e 'print scalar getpwuid(503), "\n";'

Yet another alternative is:

    % id -P 503


    % id -P fred

> Got it.  I think what I'll do is create a dummy user with the same 
> conditions and let it persist for awhile so we can experiment with it.



Dr Matthew J Seaman MA, D.Phil.                       26 The Paddocks
                                                      Savill Way
PGP:         Marlow
Tel: +44 1628 476614                                  Bucks., SL7 1TH UK
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url :

More information about the freebsd-questions mailing list