![](/img/trans.png)
[英]How to share files between Windows 10 and Ubuntu Linux subsystem?
[英]Mounting a windows share in Windows Subsystem for Linux
我想从WSL (适用于 Linux 的 Windows 子系统)中安装 Windows 服务器。 在 Ubuntu(带有统一界面)上,我可以输入
gvfs-mount smb://domain\;user@server/share
一切都很好。
如果我在 WSL 中尝试此操作,则会收到以下错误:
Error mounting location: volume doesn't implement mount
假设主机 Windows 操作系统可以访问位于“\\\\servername\\sharename”的文件共享,请在 bash 中尝试此命令。 您将需要成为 root:
mkdir /mnt/mountedshare
mount -t drvfs '\\servername\sharename' /mnt/mountedshare
单引号很重要!
使用 SharePoint Online UNC 路径为我工作。 虽然权限很糟糕。 我可以浏览文件夹并查看文件名,但我无法读取文件。 所以需要弄清楚权限的事情。 如果你有任何进展,请告诉我。
实际上,如果您的 Windows 共享已经映射到 Windows 主机中的驱动器,则它可以更简单。 假设您已经在Z:
上安装了共享。 在这种情况下,以下将起作用:
sudo mkdir /mnt/z
sudo mount -t drvfs 'Z:' /mnt/z
虽然您已经通过/mnt/c
在 WSL 中为您创建了一个挂载到 windows 主机,但如果您想从另一台机器挂载共享,则需要创建挂载点,例如
sudo mkdir -p /mnt/somename
然后你需要使用mount.cifs
在那个挂载点挂载远程共享的smb://
文件系统,例如
sudo mount.cifs //server/sharename /mnt/somename
或者,您需要在/mnt/somename
之后包含选项,例如
-o username=yourname,uid=YOURUID,noperm,password=yourpassforremoteshare
如果它是您尝试挂载的旧版 WinXP 共享,则您需要通过包含sec=ntlm
或sec=ntlm1
来启用NTLMv1
身份验证。 请参阅mount.cifs
以进一步使用sec=
选项。
在 WSL(我使用的是 Ubuntu)中,看起来当您安装 cifs-utils 时,它不会创建 cifs 在挂载时需要的模块文件。 输入:“modinfo cifs”,你会看到。 无论如何,解决方法是在 Windows 中映射一个驱动器号,然后安装到该驱动器,如上所述。 谢谢加布佐。
也许是因为 cifs-utils 在寻找模块文件的错误位置。 或者 MS 故意禁用它。 他们不希望 WSL 太有用。
挂载 SMB 服务器共享应该很简单,我在 Windows build 1909 和 WSL 2.0 Ubuntu 20.04.1 LTS (GNU/Linux 4.19.128-microsoft-standard x86_64) 上对此进行了测试。 您可以像往常一样使用 mount:
sudo mount -t drvfs '\\server\share' /your/mount/folder
没什么难的,挂载的源路径是常规的 UNC 路径名。 重要的部分是文件系统类型(“驱动器文件系统”?)以及您需要将服务器路径用单引号括起来(在命令行上)这一事实。 像往常一样,您的挂载文件夹也必须存在。
在这个 WSL 问题上,我发现了一些不错的选项 (-o),它们似乎可以很好地创建、读取和写入没有 sudo 的文件以及读取正确的修改/创建日期:
metadata,rw,noatime,uid=1000,gid=1000,umask=22,fmask=11
因为我喜欢一直挂载这个服务器,所以我把挂载指令放到/etc/fstab
,让它由 WSL 自动挂载:
\\server\share /your/mount/folder drvfs metadata,rw,noatime,uid=1000,gid=1000,umask=22,fmask=11 0 0
(您可以使用sudo mount -a
重新加载 fstab )
请注意,我已经登录到 Windows 本身的服务器并让它记住用户和密码。 @David C. Rankin's answer 有一些关于如何指定用户名和密码的信息,如果你需要单独做的话。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.