Eu tive minha participação em hangouts do NFS e coisas relacionadas. Mas hoje eu vi algo diferente, e estou intrigado: o mount-dir em si não é visível (/ foo, não visível de /) até que desmontado / montado novamente "/ foo" (um compartilhamento NFS). Isso está no AIX 6.1
## grep -p '^/foo' /etc/filesystems
/foo:
dev = "/foo_for_client"
vfs = nfs
nodename = fooserver
mount = true
options = rw,bg,hard,intr,sec=sys
account = false
#df
(...)
fooserver:/foo_for_client - - - - - /foo
# shows that "fooserver:foo_for_client" is mounted on /foo mount-point
# BUT each field instead of showing size, %, etc, shows "-" instead
(...)
## cd /
## ls -ld /foo
ls: 0653-341 The file /foo does not exist.
# ??
## ls -l /
(...)
fmm
fnn
#and here, NO 'foo' at all. No mount-point (nor mounted) .
#And there is also no "stalling" of the display while it fetches '/foo' infos
# (ie, the rest of the '/' dir content appears quickly)
# ??? this '/foo' mount-dir seems to be somehow "hidden" (NFS pb?) (see it reappear below)
fpp
fqq
(...)
## umount /foo
# no errors.
## cd /
## ls -ld /foo
drwxrwxrwx 2 user user 256 Jan 01 1970 /foo
# ?? the mount-point is there and does exist? (even though its date is suspicious)
# why was it 'hidden' from '/' standpoint while the nfs was mounted?
## mount /foo
# no errors, and everything is ok again...
#df
(...)
fooserver:/foo_for_client 220200960 69811632 69% 1122 1% /foo
# Now each field appears as well
(...)
Eu entendo que o "/ foo /." dir superseeds "/ foo" mount-dir quando o sistema de arquivos nfs estiver montado. E que quando o NFS dá errado, ele pode tornar esse conteúdo "interno" indisponível.
Mas o que não consigo entender é como esse "/ foo" também não pode ser visto no diretório pai? (de "/", deve saber que existe uma entrada de subdiretório "/ foo" e mostrá-la via ls (com as informações do NFS quando o NFS é montado ou a informação da "/" partição quando não é). não podia ver "/ foo" (nem o mount-dir, nem o montado).
Eu acho que isso de alguma forma vem do NFS não retornar informações quando o "ls" consulta informações sobre o diretório "/ foo"? mas, nesse caso, por que "ls -l" de "/" falha silenciosamente e sem nenhum tempo limite nesse subdiretório? (E eu esqueci de "truss" -ed minha tentativa ls -l ...)