(Illustration by Gaich Muramatsu)
On Fri, Oct 24, 2003 at 04:47:02PM +0100, josef.schwarz_at_bt.com wrote: > when I try to mount a volume (the first after the root volume) from a client I get the following message: > > [root_at_redhat80 coda]# cfs mkmount /coda/everywhere everywhere > coda_pioctl: Venus returns: -17 for (0xff000001.0x1.0x1) > /coda: File exists It looks like you are running 6.0.x, and in that case the top-level directory in Coda is dynamically generated and only contains the realms known to venus. So you really can't mount any volumes (or create anything else) in there. > created volumes with: > createvol_rep rootvol E0000100 /vicepa > createvol_rep everywhere E0000101 /vicepa > > The rootvolume is mounted by default, I suppose. > I get two directories in /coda: 172.16.1.1 and 172.16.3.1 Ehh, do you have 2 realms?? What does 'cfs lv /coda/172.16.1.1' and 'cfs lv /coda/172.16.3.1' return? I am guessing you are looking at the same rootvol in both cases, except that venus has no way to know that they are in fact in the same realm. As far as venus is concerned that really is no problem, however the server doesn't realize that the client looks at it from 2 different contexts and will only send callbacks to one of the two. As a result you will get problems (files created in one 'realm' and on the server will not automatically show up in the other 'realm' until you explicitly flush the stale directory, etc) It will need a bit more coding on the server to get this situation right. > When I mount the second volume with `cfs mkmount /coda/everywhere everywhere` I should get a directory "everywhere", but is it located in /coda or in /coda/172.16.1.1 (or also /coda/172.16.1.1)? You would have to mount that volume as 'cfs mkm /coda/172.16.1.1/everywhere everywhere' > And does it make a difference if the client is connected to 172.16.1.1 > or 172.16.3.1? It shouldn't, but at the moment the server not sending callbacks to both instances makes the client very unpredicatable. It is best to consistently access through either one or the other (or create an entry in /etc/coda/realms that maps a single realm name to both servers). /etc/coda/realms bt.com 172.16.1.1 172.16.3.1 And then access as, /coda/bt.com/... This has the added advantage that you don't depend on the availability of either server, although your rootvolume isn't replicated, so it will only be useful when the client has the contents of rootvol cached. JanReceived on 2003-10-24 13:04:37