Minikube Mount:错误的文件描述符

问题描述

当我在 Minikube 中挂载目录并列出目录时,出现以下错误

ls: cannot access '/mnt/nilla/assets': Bad file descriptor
ls: cannot access '/mnt/nilla/lib': Bad file descriptor
ls: cannot access '/mnt/nilla/priv': Bad file descriptor
ls: cannot access '/mnt/nilla/config': Bad file descriptor
ls: cannot access '/mnt/nilla/README.md': Bad file descriptor
ls: cannot access '/mnt/nilla/mix.exs': Bad file descriptor
ls: cannot access '/mnt/nilla/test': Bad file descriptor
ls: cannot access '/mnt/nilla/testmount': Bad file descriptor
total 0
-????????? ? ? ? ?            ? README.md
d????????? ? ? ? ?            ? assets
d????????? ? ? ? ?            ? config
d????????? ? ? ? ?            ? lib
-????????? ? ? ? ?            ? mix.exs
d????????? ? ? ? ?            ? priv
d????????? ? ? ? ?            ? test
-????????? ? ? ? ?            ? testmount

这是个问题,因为当我在我的 pod 中安装这个目录时,lsyncd 服务正在将它复制到分发文件夹。 lsyncd 不知道如何处理没有正确描述符的文件

我在启动 Minikube 后挂载卷,例如:

nohup minikube mount ${HOME}/Development/nilla/:/mnt/nilla &> /dev/null &

如何挂载目录并传输在本地计算机上列出目录时出现的普通文件描述符?这些是它们的样子:

$ < ls -l nilla/
total 28
drwxr-xr-x 6 joes joes 4096 Apr 10 22:23 assets
drwxr-xr-x 2 joes joes 4096 Apr 10 22:23 config
drwxr-xr-x 4 joes joes 4096 Apr 10 22:23 lib
-rw-r--r-- 1 joes joes 1905 Apr 10 22:23 mix.exs
drwxr-xr-x 4 joes joes 4096 Apr 10 22:23 priv
-rw-r--r-- 1 joes joes  735 Apr 10 22:23 README.md
drwxr-xr-x 4 joes joes 4096 Apr 10 22:23 test
-rw-rw-r-- 1 joes joes    0 May 15 23:08 testmount

附加说明:我使用的是 System 76 的 Pop OS,它是 Ubuntu 20 的一个分支,我的 Minikube VM 在 Virtual Box 上运行 Ubuntu 20。

谢谢。

解决方法

@MikołajGłodziak 在评论中指出了我正确的方向。问题是 Minikube 的默认驱动程序。我更改了我的 minikube start 命令以指定 recommended drivers 之一。举个例子:

minikube start --driver=docker --mount-string ${HOME}/project/:/mnt/project

注意:尝试使用不同的驱动程序启动同一个 Minikube VM 时可能会出错。如果是这种情况,minikube delete 将删除您当前的 VM,并在您下次运行 minikube start 时创建一个新的 VM。