Re: Don't run "dpkg" or "dselect" under 2.1.4[45] (was Re: 2.1.45: chmod -R causes reboot)

Theodore Y. Ts'o (tytso@MIT.EDU)
Sun, 20 Jul 1997 22:07:33 -0400


From: buhr@stat.wisc.edu (Kevin Buhr)
Date: 20 Jul 1997 14:25:14 -0500

Don't run "dpkg" or "dselect" under 2.1.44 or 2.1.45. Both these
kernels follow symlinks on "sys_rmdir", "sys_rename", and "sys_chown".
The first breaks "dpkg" most severely, since "dpkg" absolutely relies
on a "rmdir" of a symlink returning ENOTDIR. The second is nasty too,
since "dpkg", when installing a symlink "blahblah", creates the
symlink "blahblah.dpkg-new" and then renames it to "blahblah". The
"sys_chown" problem is mostly minor, but if "dpkg" installs a dangling
symlink, it'll die when the chown of the symlink unexpectedly fails.

If you care about dpkg being portable to US's other than Linux (one of
the areas where rpm does a better job that dpkg, IMO), don't count on
the symantics of rmdir and chown on symlinks. At least some versions of
Unix will dereference symlinks for chown.

- Ted