2

当我在 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。

谢谢。

4

2 回答 2

0

这似乎是 minikube 的一个问题,目前正在研究中。

https://github.com/kubernetes/minikube/issues/12301

当前的解决方法是使用另一个驱动程序

于 2021-11-09T16:45:53.193 回答
0

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

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

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

于 2021-05-27T18:15:04.037 回答