WSL drvfs 掛載問題 — 使用者對映無法辨識?

WSL drvfs 掛載問題 — 使用者對映無法辨識?

我在 WSL(Win10 Linux 子系統)中安裝磁碟機時遇到一些問題 - 請參閱有關不同磁碟機上安裝錯誤的單獨問題。

我在本機磁碟機 W: 上安裝了網路共用 - 並且我在 Windows 中具有讀取/寫入存取權限。

使用 drvfs 安裝此磁碟機運作正常:

$ sudo mount -t drvfs W: /mnt/w

但是 - 當我想訪問驅動器時:

( -/- ) e514678@K46290: ~ $ ls -l /mnt/w
ls:無法存取「/mnt/w/bar」:權限被拒絕
ls:無法存取「/mnt/w/baz」:權限被拒絕
ls: 無法存取 '/mnt/w/foo': 權限被拒絕
總計 0
d??????? ? ? ? ? ?酒吧
d??????? ? ? ? ? ?巴茲
d??????? ? ? ? ? ?富
( -/- ) e514678@K46290: ~ $

再次 - 在 Windows 上我可以存取磁碟機以及磁碟機上的子目錄。使用 drvfs 安裝,我可以看到驅動器上的頂級條目,但它們似乎缺少用戶和權限資訊;所以我也無法從linux存取任何文件。

訪問其他幾個網路共享上的檔案工作正常 - 但我對這個有什麼不同感到困惑。

對於這個網絡卷可能有什麼不同,您有什麼想法嗎? (嘗試使用特定的 uid/gid 掛載它並沒有幫助:'sudo mount -t drvfs -ouid=1000,gid=1000 W: /mnt/w' linux 仍然無法存取磁碟機-有相同的問題)。

答案1

我遇到過同樣的問題。

我發現 WSL 是/etc/wsl.conf從 Windows Build 17093 開始引入的。https://docs.microsoft.com/en-us/windows/wsl/wsl-config#configure-per-distro-launch-settings-with-wslconf

這是一個可能解決您的問題的簡單範例:

$ cat /etc/wsl.conf
[automount]
enabled=true
options=metadata,uid=1000,gid=1000,umask=022

我從這裡找到了上面的例子:WSL掛載檔案權限

建立或修改檔案後,需要重新啟動 WSL。

相關內容