Help with autos and mount bind

I have a sftp server running on Centos 5.10. It servers as upload/download interface for three users who basically are chrooted to three different locations.

User A -- >  /home/REGIONA/

User B -- > /home/REGIONB/

User C -- > /home/REGIONC/

The users run certain application procedures on app servers and on the app servers the code uploads data to the sftp server, there are three app servers for three users

Say

APP server A

APP server B

App server C

I have setup the autofs mounts on the Apps servers, where the application code upon completion will go to the mount point and dump the data

example

/sftp/REGIONA/upload   --> from APP server A

/sftp/REGIONB/upload   --> from APP server B

/sftp/REGIONC/upload  --> from APP server C

Everything works fine.

Now coming to the issue, I have a requirement of making the "UPLOAD" region common across all the three app servers so what i did was

mkdir /opt/upload

mount -o bind,rw /opt/upload /home/REGIONA/upload

mount -o bind,rw /opt/upload /home/REGIONB/upload

mount -o bind,rw /opt/upload /home/REGIONC/upload

Now, this works OK if i upload data from filezilla/winscp

However from the App servers which do a autofs mount of the remote ( sftp ) servers filesystems , they are not recognizing upload to be a bound mount.When I upload data
programmatically from the app servers the data si not visible

for example

From APP server A I run the script / application code

I does not show up on /home/REGIONA/upload

and when I umount /home/REGIONA/upload, it shows up.

I figure its an issue with autofs recognizing an underlying mount binded sub directory on the remote filesystem.

Any ideas ?

Assuming I understand - in general filesystems (and the kernel) do not play well when mounted natively read/write at more than one point on separate kernels.

Our answer:
The solution we have is to create one "regular" mount, share the disk, and then mount the device as a foreign nfs filesystem on the other two systems. In our case we have one disk device nfs mounted at 9 locations.

What is the output from "mount" on all the servers?

The output of mount if we are looking for the it on the APP server is as follows

foo.bar.com:/home/REGION1 on /sftp/msysftp01-REGION1 type nfs (rw,soft,intr,rsize=32768,wsize=32768,addr=XX.XX.XX.XX)

It is doing an auto mount of /sftp/msysftp01-REGION1, however I have a mount --bind mount under the /sftp/msysftp01-REGION1 which is not behaving a seperate entity and when data upload happens to that region, its not visible. I have to un mount the mount bind mount for it to be visible.

So in a nutshell autofs does not recognize the remote underlying subdirectory to be mount binded.

Hello,

I have it working now, I will document the whole procedure of what I did. I had to fiddle with the nfs options from the SFTP servers.

I basically shared with following options

/home/REGIONA/    (rw,wdelay,root_squash,nohide,crossmnt)
/home/REGIONB/  (rw,wdelay,root_squash,nohide,crossmnt)
 /home/REGIONC/ (rw,wdelay,root_squash,nohide,crossmnt)

and also

/home/REGIONA/upload (rw,wdelay,root_squash,nohide)
/home/REGIONB/upload (rw,wdelay,root_squash,nohide)
 /home/REGIONC/upload (rw,wdelay,root_squash,nohide)

Now from the sftp server if i check all the three directories

[root@XXXXX~]# ls -lrt /opt/upload/ /home/REGIONA/upload /home/REGIONB/upload/ /home/REGIONC/upload
/opt/upload/:
total 144
-rw-rw---- 1 nfsnobody root 23893 Oct  3 21:28 acme01.log.3
-rw-rw---- 1 nfsnobody root 23893 Oct  3 21:28 acme01.log.2
-rw-rw---- 1 nfsnobody root 23893 Oct  3 21:28 acme01.log.1
-rw-rw---- 1 nfsnobody root 23893 Oct  3 21:28 acme02.log.3
-rw-rw---- 1 nfsnobody root 23893 Oct  3 21:28 acme02.log.2
-rw-rw---- 1 nfsnobody root 23893 Oct  3 21:28 acme02.log.1

/home/REGIONA/upload/:
total 144
-rw-rw---- 1 nfsnobody root 23893 Oct  3 21:28 acme01.log.3
-rw-rw---- 1 nfsnobody root 23893 Oct  3 21:28 acme01.log.2
-rw-rw---- 1 nfsnobody root 23893 Oct  3 21:28 acme01.log.1
-rw-rw---- 1 nfsnobody root 23893 Oct  3 21:28 acme02.log.3
-rw-rw---- 1 nfsnobody root 23893 Oct  3 21:28 acme02.log.2
-rw-rw---- 1 nfsnobody root 23893 Oct  3 21:28 acme02.log.1

/home/REGIONB/upload:
total 144
-rw-rw---- 1 nfsnobody root 23893 Oct  3 21:28 acme01.log.3
-rw-rw---- 1 nfsnobody root 23893 Oct  3 21:28 acme01.log.2
-rw-rw---- 1 nfsnobody root 23893 Oct  3 21:28 acme01.log.1
-rw-rw---- 1 nfsnobody root 23893 Oct  3 21:28 acme02.log.3
-rw-rw---- 1 nfsnobody root 23893 Oct  3 21:28 acme02.log.2
-rw-rw---- 1 nfsnobody root 23893 Oct  3 21:28 acme02.log.1

/home/REGIONC/upload:
total 144
-rw-rw---- 1 nfsnobody root 23893 Oct  3 21:28 acme01.log.3
-rw-rw---- 1 nfsnobody root 23893 Oct  3 21:28 acme01.log.2
-rw-rw---- 1 nfsnobody root 23893 Oct  3 21:28 acme01.log.1
-rw-rw---- 1 nfsnobody root 23893 Oct  3 21:28 acme02.log.3
-rw-rw---- 1 nfsnobody root 23893 Oct  3 21:28 acme02.log.2
-rw-rw---- 1 nfsnobody root 23893 Oct  3 21:28 acme02.log.1

And if upload to any of the APP servers to the upload directory it is consistent across.

The issue is now resolved:):b: