> > Brian J. Murrell wrote: > > On Wed, Jun 19, 2002 at 08:41:14PM -0700, Todd Lyons wrote: > > Right! I am not asking about that. What I am asking about is not > > putting volatile data into /usr. It should be possible to share /usr > > via NFS and not have clients need to update /usr when they > > install/upgrade their packages to match the server. > > So, all you want to do is update the rpm db? Do you need to > install/upgrade any of the files in the RPMs? > > How about: > > # rpm -Fvh *.rpm --justdb > > Otherwise, share /var/lib/rpm ro by NFS. > > Not running a cluster of machines myself, I don't know what the exact > problem is (if you are upgrading packages, why does rpm not complain > about not being able to write to /usr/bin?). > > And if it really only is the scripts that give you problems, how about > --noscripts > > Maybe there should be some urpmi options for this? >
It looks like in this discussion two significantly different things are mixed up 1. read-only /usr during daily operation. Currently Mandrake does not allow it because some data that are 1) volatile - i.e. can be changed during normal operations and 2) system-specific are placed into /usr. It makes it very hard to both share /usr and mount /usr read-only (even if your /usr is not shared) but fixing it is relatively "trivial" (even if possibly tedious and time consuming). 2. installation/update of such a system This is entirely different problem that depends if your /usr is local or shared. For local there is no problem - remount read-write, update, remount back. For shared there is currently absolutely no provision. It is not enough to just update rpmdb or fake scripts because package may install itself both into /usr and into any other place in file system. So you need _rpm_ support with something like rpm -U --with-shared-usr and rpm would skip adding files to /usr (but should obviously check and compare and warn if files are different). And even this is not enough because you have to modify every script to be shared-/usr aware, you can't just skip execution of scripts. I do not even dare to think about what can of worms it is. If anybody has some references to successful projects I would be very interested to look at them. -andrej