Проблемы с монтированием 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????????? ? ? ? ? ? ? бар
д????????? ? ? ? ? ? ? баз
д????????? ? ? ? ? ? ? фу
( -/- ) 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.

Связанный контент