/usr/share is being owned by glibc: $ rpm -qlp -vv glibc-2.2-5.fixarch.i686.rpm ... drwxr-xr-x 1 root root 4096 Nov 22 02:39 /usr/share (Because rpm is buggy, cpio will fail if /usr/shared is %netshared and mounted ro. So installation of glibc gets incomplete) No other package (except filesystem) owns /usr/share so it seems to be a bug in glibc. I think the statement ----------------- for n in %{_prefix}/share %{_prefix}/include %{_prefix}/lib/locale; do find ${RPM_BUILD_ROOT}${n} -type d | \ grep -v '^%{_prefix}/share$' | \ sed "s/^/%dir /" >> rpm.filelist.in done ----------------- in glibc.spec is wrong. You are grep'ping for directories *beginning* (^) with /usr/share, but `find' returns $RPM_BUILD_ROOT/usr/share.
Fixed in our CVS, but will appear only in 7.1 or if we'll be doing another errata for some reason some day. E.g. glibc-2.1.2-15 owns /usr/share because of this as well.
This is in glibc-2.2-9.