Red Hat Bugzilla – Bug 4330
netshared files are all marked as not installed - rpm-3.0.2
Last modified: 2011-02-14 10:28:58 EST
All my netshared files are marked as state 'not installed'
The rpm-3.0.2 code shows no instances of assigning the state
caligula:~/builddir/rpm-3.0.2% grep RPMFILE_STATE_NETSHARED
lib/rpmlib.h:#define RPMFILE_STATE_NETSHARED 3
lib/install.c: files[i].state =
lib/rpmlib.h:#define RPMFILE_STATE_NOTINSTALLED 2
lib/verify.c: if (fileStatesList[filenum] ==
Rpm-3.0.x no longer distinguishes netshared from not installed
since netshared and not installed have identical semantics:
On install: don't install
On remove: don't remove
My problem is that rpm-3.0.x does not *verify* files which are
on netsharedpath. That's a serious problem. The semantics of
verify is different - netshared should be veriifed, not installed
I have communicated with Erik about netsharedpath in the past -
the concept is not very mature. But at least it used to work for
me - now it doesn't even do what I want.
Um, "not very mature" is an understatement :-).
Anyways, I've resurrected net shared paths because of the (small)
historical legacy of people who have used net shared path with
rpm-2.5.x and consequently have packages with files in
RPMFILE_STATE_NETSHARED. This should fix your verify problem
if you reinstall packages with net shared paths in order to
change the state of files on those paths.
If you could also think through what you would like to happen
on verify in situations where the file was not installed or
was part of a non-rpm managed OS but md5sums/perms/uid/gid are
available, I'd appreciate it; netshared is "not very mature".
Please add you suggestions to bugzilla (or mail to rpm-list).
IMHO, netsharedpath should be done away with altogether. It is
harmful to store a file state of 'net shared'.
A file, originally installed on a remote filesystem, may later
become local to the host without intervention from rpm, and
Having to keep my 'netsharedpath' up-to-date with the actual
configuration of my hosts has proven to be a major pain.
Furthermore, what do you do to symlinks which are on a local
filesystem but point to a shared filesystem. I have e.g.
/usr/local/man symlinked to a nfs mounted volume, allowing me to
install man-pages on one disk only. However, I have trouble with
the very symlink itself, because /usr/local/man is in netsharedpath,
so rpm will not install the symlink.
So, rpm should install/remove files if they are on local filesystems,
and leave the files alone if they are not.
Collecting netsharedpath problems at #51193
*** This bug has been marked as a duplicate of 51193 ***