挂载到NFS导出的autofs挂载显示空的内容

我使用autofs在文件夹/ mnt / iso中挂载一些iso文件:

Fedora-13-x86_64-DVD.iso Fedora-14-x86_64-DVD.iso Fedora-15-x86_64-DVD.iso 

autofs工作正常,我可以看到iso文件的内容:

 # ls /mnt/iso/fedora.13/ # ls /mnt/iso/fedora.14/ # ls /mnt/iso/fedora.15/ 

完成autofstesting后。 我强制unmount所有的iso文件夹:

 # umount -l /mnt/iso/* 

然后在/ etc / exports中输出/ mnt / iso:

 /mnt/iso 192.168.0.0/24(ro,insecure,crossmnt,all_squash) 

NFS服务也正常工作。 我可以通过nfs客户端从另一台机器挂载/ mnt / iso:

 # mount -t nfs4 <nfs-server>:/mnt/iso /mnt 

我可以在/ mnt /文件夹中看到所有的iso挂载:

 # ls /mnt dr-xr-xr-x 15 nobody nobody 4096 2011-06-11 10:23 . drwxr-xr-x 24 root root 4096 2011-02-08 08:45 .. drwxr-sr-x 7 nobody nobody 4096 2010-05-13 09:06 fedora.13 drwxr-sr-x 7 nobody nobody 4096 2010-10-22 02:32 fedora.14 drwxrwsr-x 7 nobody nobody 4096 2011-05-14 03:50 fedora.15 

但是,当我尝试列出每个文件夹的内容时:

 # ls /mnt/fedora.13 

没有显示在屏幕上。 使用这样的命令

 # ls /mnt/fedora.13/* 

提示

 ls: cannot access /mnt/fedora.13/*: No such file or directory 

我成功列出nfs客户端机器中的iso文件夹的唯一情况是使用以下步骤:

从客户机卸载nfs共享:

 # umount /mnt 

使用ls显示nfs服务器中/ mnt / iso的所有子树:

 # ls /mnt/iso/* 

autofs会自动挂载所有的iso文件。

在客户机上挂载nfs文件夹:

 # mount -t nfs4 <nfs-server>:/mnt/iso /mnt 

列出/ mnt的子树:

 # ls /mnt/* 

然后你可以在nfs客户端机器上看到所有的内容。

但是,这样做打破了autofs的目的,因为我需要先在autofs机器中显示一次内容。

有没有人有任何想法? 我正在使用以下内容:

  1. Fedora 13 x86_64
  2. autofs的-5.0.5-28
  3. NFS-utils的-1.2.2.2-2

    我想你在这里有一个问题,那就是当你使用NFS导出一个文件系统的时候,它会locking源代码目录。 你试图在那个时候甚至没有可用的源码目录,只能在稍后通过挂载来放置。

    这是行不通的,因为一旦你给NFS一个分享的东西的句柄,它总是会共享那个东西,即使它在一层坐标下面结束。

    假设你用一个文件'frog'设置一个目录并用nfs将其导出:

     [server] $ mkdir /mnt/test && touch /mnt/test/frog [server] $ echo '/mnt/test *(ro)' >> /etc/exports [server] $ exportfs -a 

    然后你将它挂载到某个客户端上,你将会看到文件frog:

     [client] $ mkdir /mnt/test [client] $ mount -t nfs server:/mnt/test /mnt/test [client] $ ls $/mnt/test frog 

    现在让我们假设你在服务器上的文件夹之上加载了其他的东西:

     [server] $ mkdir /mnt/test2 && touch /mnt/test2/fish [server] $ mount -o bind /mnt/test2 /mnt/test [server] $ ls /mnt/test fish 

    漂亮。 但是什么是nfs服务?

     [client] $ ls /mnt/test frog 

    你甚至不能到达服务器上的文件青蛙,因为它有一个不同的东西安装在它的顶部,但NFS服务的底层!

    长话短说,如果你想通过NFS导出你的文件系统,你需要在NFS启动和导出的时候正确地安装它们,并且需要坚持下去。 导出使用autofs自己挂载的文件系统将永远不会正常工作。 您将需要永久挂载这些ISO以便通过NFS导出它们。