在我的 Windows 上,我有我的 y: 映射到一个 samba 共享。在这个共享上,我可以读/写文件,即使我不被允许查看文件权限。
在我的 WSL Ubuntu-20.04 上,我尝试映射此驱动器:
$ sudo mount -t drvfs y: /mnt/test/ -o metadata,rw,noatime,uid=1000,gid=1000,umask=22,fmask=11
我可以访问此共享,甚至可以在其中写入新文件,但我无法对已存在的文件执行任何操作,因为权限未知
$ touch /mnt/test/outbox/test.txt
$ ls -la /mnt/test/outbox/
ls: cannot access '/mnt/test/outbox/foo.txt': Permission denied
drwxr-xr-x 1 myuser myuser 512 Jan 26 16:39 .
drwxr-xr-x 1 myuser myuser 512 Oct 7 2019 ..
-????????? ? ? ? ? ? foo.txt
-rwxr--r-- 1 myuser myuser 0 Jan 26 17:05 test.txt
我该怎么做才能直接从我的 Ubuntu WSL 修改/删除我的 foo.txt?(就像我可以从我的 Windows 做的那样)
谢谢
在评论中解决,但对于遇到此问题的其他人有一些注意事项:
cifs-utils
结果证明该解决方案相当简单——使用而不是通过安装映射驱动器将 samba 驱动器共享直接安装到 WSL2 中drvfs
。对于 Ubuntu,至少(其他发行版软件包可能略有不同):故障排除有点困难,因为共享的驱动器不受 OP 的控制,而且我们无法获得有关共享配置的信息。如果其他人遇到此问题并有基于配置的解决方案,请也分享它。
对我来说,将 Windows(非域)samba 共享映射到 Windows,然后通过安装该共享
drvfs
工作正常,所以我们确实觉得这是配置的独特之处。