符号链接并在另一台机器上安装 ftp 主机

符号链接并在另一台机器上安装 ftp 主机

因此,我有安装了 vsftpd 的机器 1 和需要挂载远程 ftp 文件夹的机器 2。但是机器 2 还需要访问符号链接,这会导致失败。没有 chroot,因为只允许局域网访问,所以不用担心互联网的安全问题。

在机器 1 上

  • ftp 目录为:/home/ftpu/
  • 符号链接已建立:ln -s /mnt/share_hdd /home/ftpu/share_hdd/

在机器 2 上(同一网络)

如果我使用 filezilla 或其他程序连接到 ftp,一切都会顺利进行,我可以访问 share_hdd 文件夹并查看其内容,不用担心。

但是,我使用 curlftpfs 来:

  • 挂载 machine1.local/share_hdd /mnt

现在当我浏览 /mnt 时我可以share_hdd 文件夹。如果我进入 cd 文件夹,我就会进入一个文件夹循环,其中包含另一个 share_hdd 文件夹,该文件夹又包含另一个 share_hdd 文件夹等等。最后,我进入了一个无尽的隧道,例如 /mnt/share_hdd/share_hdd/share_hdd/ 等等。

我做错了什么 ?

(哦,如果你想知道为什么这么麻烦而不通过 samba 共享,那是因为机器 2 是来自运行 linux deploy 的备用 android 手机的 debian chroot,其内核不支持 cifs,而我没有能力构建支持 cifs 的自定义内核)

答案1

好吧,我很傻,我错过了两件事。

我确实使用了 mount --bind 但是:

  1. 我忘了在 machine1.local/share_hdd/ 末尾加上 /
  2. 我必须重新挂载机器 2 上的 /mnt,因为我在挂载机器 2 后执行了 mount --bind 选项,这显然是错误的操作顺序

相关内容