Как я могу получить доступ к UNC-путям, используя подсистему Windows для Linux?

16

Я скачал BASH для Windows 10. Как мне перейти к сетевому адресу, как в среде Windows? Я видел упомянутую SAMBA и скачал smbclient .

Я пытался:

smbclient \\localhost\

Я получаю ошибку

ERROR: Could not determine network interfaces, you must use a interfaces config file

Я начинающий пользователь BASH, и вижу в этом возможность быть более эффективным.

В качестве бонуса, пожалуйста, покажите, как я мог бы выполнить некоторые общие задачи, такие как копирование файлов по сети, а также как выполнить аутентификацию, поскольку это, вероятно, потребуется для таких операций.

Дэвид Прентис
источник

Ответы:

22

В последнем выпуске Windows «Fall Creators Update» можно монтировать пути UNC или любую другую файловую систему, к которой Windows может обращаться, из WSL .

Вы можете сделать это с помощью mountкоманды, как обычно, с файловой системой " drvfs", предоставляемой WSL:

sudo mount -t drvfs '\\server\share' /mnt/share

Одиночные кавычки полезны на пути UNC, так что вам не нужно избегать обратной косой черты. Вы можете смонтировать в произвольном каталоге; Я использовал здесь /mnt/shareв качестве примера, но подойдет любой пустой каталог.

Все файлы будут отображаться с полными a+rwx 777разрешениями. Реальные права доступа будут проверены при попытке доступа к файлу, и в этот момент вы можете получить ошибку, даже если похоже, что операция должна завершиться успешно. Каждый читаемый файл будет считаться исполняемым.


Для местоположений, которые требуют учетных данных, у вас есть три варианта:

  1. Перед подключением перейдите к местоположению с помощью проводника Windows и выполните аутентификацию. WSL унаследует ваши учетные данные и разрешения. Это самый простой способ для разовых.
  2. Используйте net useкоманду из командной строки cmd или net.exe useиз WSL ( cd /mnt/cсначала для подавления предупреждения). Вам нужно что-то вроде net.exe use \\server\share <PASSWORD> /USER:<USERNAME>. '*'Вместо этого вы можете использовать пароль для запроса. Другие конфигурации показаны с net.exe help use.
  3. Используйте диспетчер учетных данных Windows, чтобы настроить сохраненные учетные данные. Я никогда не делал этого.

Я понимаю, что Samba может работать и под WSL, но поскольку хост предоставляет те же функции, я бы использовал встроенную версию Windows, когда она будет доступна. smbclientпредназначен в основном для доступа в стиле FTP к серверам SMB и извлечения / размещения отдельных файлов, и он должен работать, когда он настроен соответствующим образом, как обычно.

Майкл Гомер
источник