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

Reply via email to