File owner name not updated.

Dan Nelson dnelson at allantgroup.com
Wed Mar 26 08:08:15 PST 2003


In the last episode (Mar 25), Kevin Stevens said:
> 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.

What happens if you use vipw instead?  pw may be too smart for its own
good.  I bet it calls "pwd_mkdb -u" to only update a single user from
/etc/passwd.  The problem is when the uid changes, pwd_mkdb will insert
a new record into /etc/pwd.sb and spwd.db, but it doesn't know about
the previous uid, so that stays in the db.  

If this is the case, you might want to file a PR on the problem.

Your "persistence" problem is probably just however long it is until
you run vipw or otherwise cause a full pwd_mkdb to be run.  Note that
cap_mkdb is the wrong command for building the passwd database files;
passwd files are not in getcap(3) format.

-- 
	Dan Nelson
	dnelson at allantgroup.com


More information about the freebsd-questions mailing list