Чтобы получить доступ к файловой системы виртуальной машины в WSL2 достаточно открыть в Проводнике ссылку:
\\wsl$\
Откроется окно:
Обратите внимание – окно пустое!
Чтобы файловая система виртуальной машины появилась в списке её нужно запустить через меню Пуск.
Вы должны запускать нужные машины каждый раз после включения вашего ПК. Автоматически виртуальные машины WSL2 не запускаются!
Запустим Debian:
Как видите появилась папка Debian.
Одним из недостатков доступа через \\wsl$ является то, что необходимо правильно настроить права доступа к папке в Linux.
Если вы попытаетесь открыть папку \\wsl$\Debian\root, то получите ошибку:
Нет доступа к \\wsl$\Debian\root. Возможно, у вас нет прав на использование этого сетевого ресурса. Обратитесь к администратору этого сервера для получения соответствующих прав доступа.
Установка прав доступа на папку
Для того чтобы предоставить доступ к папке вам нужно установить права доступа пользователю или установить права доступа 777, для примера создадим папку в /home:
sudo mkdir /home/test
Если вы попытаетесь открыть папку \\wsl$\Debian\home\test у вас всё получится, так как на нее автоматически установлены права:
755
Что означает, что владельцу – root можно делать всё, а остальным читать и запускать программы из папки.
Давайте установим права как у /root
chmod 700 /home/test
Теперь при попытке открыть папку выводиться сообщение:
Есть два способа решения данной проблемы:
1. Первый способ:
Установить владельцем пользователя, котого вы создали при первом запуске виртуальной машины в WSL2.
В моем случае это – user
chown -R user /home/test
chgrp -R user /home/test
После чего у вас будет полный доступ к данной папке.
2. Второй способ:
Установить права доступа 777 на папку и все файлы в ней:
chmod -R 777 /home/test
Этот способ хорош тем, что не меняет владельца и в случае с веб-сервером вам не придется править его конфигурацию.
В любом случае оба способа подходят для решения данной проблемы.
Подключение диска
Подключить папку WSL2 как диск очень просто.
Откройте проводник и введите
\\wsl$\
Выберите нужный дистрибутив, я буду подключать Debian
Правой кнопкой нажмите на название и выберите в выпадающем меню – Подключить сетевой диск:
В новом окне нажмите Готово
Откроется окно проводника с новым диском:
Обратите внимание, если вы подключили диск, но после перезапуска ПК не запускали консоль виртуальной машины через меню Пуск, то диск не будет доступен, вы всё же можете подключиться к нему, но я рекомендую сначала запускать консоль.
Заключение
Сегодня мы рассмотрели способ подключения файловой системы WSL2 как диска в Windows 10.
Так же были рассмотрено назначение прав доступа к папкам.