On Tue, Mar 11, 2003 at 11:50:49AM +0100, Davy Michiels wrote: > Hi, > > We are looking for someone who has practical experience with the methods > described in the IBM Redbook "Large Scale Linux Deployment" by Malcolm > Beattie & Co. > > We implemented the Linux successfully but are having a lot of little > problems installing IBM Middleware as DB2, WAS, Policy Director etc. > > Our colony Linux penguins is running succesfully, but when installing > different software on each guest separately problems pop up. > > Due to the fact that eg. /usr and /lib are Read-Only RPM packages don't > install properly because they eg. want to create symlinks to these > directories.
Creating symlinks *to* is fine. Creating symlinks in, not so good. Assuming that the packages don't react favorably to --relocate, (or, if you're brave, --badreloc) then here's the easiest way I've found: Create a DDR (HiDRO, whatever) copy of /usr onto a scratch disk that each guest (in turn) can mount r/w. Now do it a second time, which will be for the template's updated /usr. Update the template machine. Keep its old /usr around. Keep all the guests linked to the old /usr for right now. Update each guest. However, before running the update, link the copy of the old /usr in write mode. Mount it at /mnt or somewhere. Then do a mount --bind /mnt /usr. Then update the guest. Then shut down the guest and reipl with a link to the template's new /usr (if you can afford the downtime, just shut it down and don't reipl until you can bring up the guest with everyone linking to the new shared /usr). Let go of the scratch disk. Re-image the old /usr to the scratch disk, and repeat for the next guest. Keep going until you're out of guests. The *right* answer, of course, is for vendors to write software that doesn't think it has to live in /usr. Adam
