Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Если вы хотите получить доступ к формату диска Linux, который не поддерживается Windows, можно использовать WSL 2 для подключения диска и доступа к его содержимому. В этом руководстве описаны действия по идентификации диска и раздела для подключения к WSL2, их подключению и доступу к ним.
Если вы подключаете внешний диск и не имеете успеха с этими инструкциями по подключению, попробуйте выполнить инструкции по подключению USB-устройств. В wsl --mount
настоящее время команда не поддерживает usb/флэш-накопители или средства чтения SD-карт (дополнительные сведения об этой проблеме).
Примечание.
Для подключения диска к WSL 2 требуется доступ администратора.
Команда WSL 2 mount
не поддерживает подключение диска (или секций, принадлежащих к диску), которые сейчас используются.
wsl --mount
всегда присоединяет весь диск, даже если запрашивается только секция. Не удается подключить диск установки Windows.
Предварительные условия
Вам потребуется использовать Windows 11 сборки 22000 или более поздней версии или запустить версию WSL в Microsoft Store. Чтобы проверить версию WSL и Windows, используйте следующую команду: wsl.exe --version
Различия между подключением внешнего диска с форматированием Windows и форматированием Linux
Внешние диски, отформатированные для Windows, обычно используют форматирование файловой системы NTFS. Внешние диски, отформатированные для Linux, обычно используют форматирование файловой системы Ext4.
Если вы подключили диск с файловой системой NTFS к системе Windows, вы можете получить доступ к нему из дистрибутива Linux с помощью WSL, создав монтированный каталог (sudo mkdir /mnt/d
, заменив "d" на любую букву диска, которую вы хотите использовать), а затем воспользуйтесь плагином взаимодействия с файловой системой, с помощью команды drvfs
.
sudo mount -t drvfs D: /mnt/d
Дополнительные сведения о сценариях установки.
Если у вас есть диск, отформатированный в Ext4, его нельзя смонтировать в вашей файловой системе Windows. Чтобы подключить диск с форматом Ext4 в дистрибутиве Linux с помощью WSL, можно использовать команду, приведенную wsl --mount
ниже.
Подключение несекционированного диска
Если у вас есть диск, у которого нет разделов, его можно подключить непосредственно с помощью команды wsl --mount
. Сначала необходимо определить диск.
Определите диск. Чтобы перечислить доступные диски в Windows, выполните следующую команду:
GET-CimInstance -query "SELECT * from Win32_DiskDrive"
Пути к дискам доступны в столбцах DeviceID. Обычно в
\\.\PHYSICALDRIVE*
формате.Подключите диск с помощью PowerShell, вы можете подключить диск с помощью пути к диску , обнаруженному выше, выполните следующую команду:
wsl --mount <DiskPath>
Подключение секционированного диска
Если у вас есть диск, в который вы не уверены, какой формат файла находится или какие секции он имеет, можно выполнить приведенные ниже действия, чтобы подключить его.
Определите диск. Чтобы перечислить доступные диски в Windows, выполните следующую команду:
GET-CimInstance -query "SELECT * from Win32_DiskDrive"
Пути к дискам перечислены после deviceID, как правило, в
\\.\PHYSICALDRIVE*
формате.Перечислите и выберите разделы для подключения в WSL 2 - После определения диска выполните следующую команду:
wsl --mount <DiskPath> --bare
Это сделает диск доступным в WSL 2. (В нашем примере
<DiskPath>
это .\\.\PHYSICALDRIVE*
После присоединения раздел можно отобразить, выполнив следующую команду внутри WSL 2:
lsblk
При этом будут отображаться доступные блоковые устройства и их разделы.
В Linux устройство блокировки определяется как /dev/<Device><Partition>
. Например, /dev/sdb3 — это номер раздела 3 диска sdb
.
Пример результата:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sdb 8:16 0 1G 0 disk
├─sdb2 8:18 0 50M 0 part
├─sdb3 8:19 0 873M 0 part
└─sdb1 8:17 0 100M 0 part
sdc 8:32 0 256G 0 disk /
sda 8:0 0 256G 0 disk
Определение типа файловой системы
Если вы не знаете тип файловой системы диска или раздела, можно использовать следующую команду:
blkid <BlockDevice>
Это приведет к выводу обнаруженного типа файловой системы (в TYPE="<Filesystem>"
формате).
Подключение выбранных разделов
После определения секций, которые требуется подключить, выполните следующую команду в каждой секции:
wsl --mount <DiskPath> --partition <PartitionNumber> --type <Filesystem>
Примечание.
Если вы хотите подключить весь диск в виде одного тома (т. е. если диск не секционирован), --partition
можно опустить.
Если опущено, тип файловой системы по умолчанию — ext4.
Доступ к содержимому диска
После подключения диск будет доступен по пути, указанному в значении конфигурации: automount.root
. Значение по умолчанию — /mnt/wsl
.
Из Windows диск можно открыть в проводнике, перейдя по следующему пути: \\wsl$\<Distro>\<Mountpoint>
(выберите любой дистрибутив Linux).
Отмонтировать диск.
Если вы хотите отмонтировать и отсоединить диск от WSL 2, выполните следующую команду:
wsl --unmount <DiskPath>
Подключение виртуального жесткого диска в WSL
Примечание.
WSL из Microsoft Store представляет новый аргумент для прямого подключения виртуального жесткого диска: wsl --mount --vhd <pathToVHD>
Вы также можете подключить файлы виртуального жесткого диска (VHD) к WSL с помощью wsl --mount
. Для этого сначала необходимо подключить VHD в Windows с помощью Mount-VHD
команды в Windows. Не забудьте выполнить эту команду с правами администратора. Ниже приведен пример, в котором мы используем эту команду, а также выводим путь к диску. Обязательно замените <pathToVHD>
фактическим путем к вашему виртуальному жесткому диску (VHD).
Write-Output "\\.\PhysicalDrive$((Mount-VHD -Path <pathToVHD> -PassThru | Get-Disk).Number)"
Вы можете использовать приведенные выше выходные данные, чтобы получить путь к диску для этого виртуального жесткого диска и подключить его в WSL, следуя инструкциям, приведенным в предыдущем разделе.
Этот метод также можно использовать для подключения и взаимодействия с виртуальными жесткими дисками других дистрибутивов WSL, так как каждый дистрибутив WSL 2 хранится через файл виртуального жесткого диска: ext4.vhdx
По умолчанию виртуальные жесткие диски для дистрибутивов WSL 2 хранятся в этом пути: C:\Users\[user]\AppData\Local\Packages\[distro]\LocalState\[distroPackageName]
. Будьте осторожны при доступе к этим системным файлам, это рабочий процесс для опытных пользователей. Убедитесь, что wsl --shutdown
выполнен, прежде чем взаимодействовать с этим диском, чтобы убедиться, что диск не используется.
Справочник по командной строке
Подключение определенной файловой системы
По умолчанию WSL 2 попытается подключить устройство как ext4. Чтобы указать другую файловую систему, выполните следующую команду:
wsl --mount <DiskPath> -t <FileSystem>
Например, чтобы подключить диск как FAT, выполните команду:
wsl --mount <Diskpath> -t vfat
Примечание.
Чтобы получить список доступных файловых систем в WSL2, выполните следующую команду: cat /proc/filesystems
Когда диск подключен через WSL2 (файловая система Linux), он больше недоступен для подключения через драйвер ext4 в файловой системе Windows.
Подключение определенного раздела
По умолчанию WSL 2 пытается подключить весь диск. Чтобы подключить определенную секцию, выполните следующую команду:
wsl --mount <Diskpath> -p <PartitionIndex>
Это работает только в том случае, если диск — MBR (главная загрузочная запись) или GPT (таблица секций GUID). Ознакомьтесь со стилями секций — MBR и GPT.
Указание параметров монтирования
Чтобы указать параметры подключения, выполните следующую команду:
wsl --mount <DiskPath> -o <MountOptions>
Пример:
wsl --mount <DiskPath> -o "data=ordered"
Примечание.
В настоящее время поддерживаются только определенные параметры файловой системы. Универсальные параметры, такие как ro, rw, noatime, ...
не поддерживаются.
Подключение диска без монтирования
Если схема диска не поддерживается ни одним из вышеуказанных вариантов, вы можете подключить диск к WSL 2 без монтирования, запустив:
wsl --mount <DiskPath> --bare
Это позволит сделать блочное устройство доступным внутри WSL 2, чтобы его можно было смонтировать вручную. Используйте lsblk
для перечисления доступных блочных устройств в WSL 2.
Указание имени точки монтирования
Примечание.
Этот параметр доступен только в WSL из Microsoft Store
По умолчанию имя точки монтирования создается на основе физического диска или VHD. Это можно переопределить с помощью --name
. Пример:
wsl --mount <DiskPath> --name myDisk
Отключение диска
Чтобы отключить диск от WSL 2, выполните следующую команду:
wsl --unmount [DiskPath]
Если Diskpath
пропущен, все подключенные диски отключены и отсоединены.
Примечание.
Если не удается размонтировать один из дисков, можно принудительно завершить работу WSL 2, выполнив команду wsl --shutdown
, которая отсоединит диск.
Ограничения
В настоящее время к WSL 2 можно подключить только все диски, что означает, что невозможно подключить только секцию. В конкретном случае это означает, что невозможно использовать
wsl --mount
для чтения секции на загрузочном устройстве, так как это устройство не может быть отсоединяться от Windows.Только файловые системы, которые поддерживаются ядром на родном уровне, могут быть смонтированы.
wsl --mount
Это означает, что невозможно использовать установленные драйверы файловой системы (например, ntfs-3g), вызывая вызовwsl --mount
.Файловые системы, не поддерживаемые ядром, могут быть смонтированы с помощью
--bare
, после чего вызывается соответствующий драйвер FUSE.
Windows Subsystem for Linux