Как получить доступ к файлам Ubuntu Bash в Windows (и к системному диску Windows в Bash)
Среды Linux, которые вы устанавливаете из Магазина (например, Ubuntu и openSUSE), хранят свои файлы в скрытой папке. Вы можете получить доступ к этой папке для резервного копирования и просмотра файлов. Вы также можете получить доступ к своим файлам Windows из оболочки Bash..
Не изменяйте файлы Linux с помощью инструментов Windows
Microsoft настоятельно рекомендует не добавлять и не изменять файлы Linux с помощью программного обеспечения Windows. Это может вызвать проблемы с метаданными или повреждение файла, а также может заставить вас удалить и переустановить дистрибутив Linux, чтобы исправить это. Тем не менее, вы все равно можете просматривать и резервировать ваши файлы Linux с помощью программного обеспечения Windows, и это не вызовет никаких проблем.
Другими словами, обрабатывайте папку Linux так, как если бы она была доступна только для чтения из Windows. Не используйте любые средства Windows, включая графические приложения или инструменты командной строки, чтобы изменить их. Не создавайте новые файлы в этих папках с помощью инструментов Windows, либо.
Если вы хотите работать с файлом из среды Linux и Windows, вам следует создать его в файловой системе Windows. Например, если у вас есть папка в C: \ project в Windows, вы также можете получить к ней доступ в / mnt / c / project в среде Linux. Поскольку он хранится в файловой системе Windows и доступен в / mnt / c, можно безопасно изменять файл с помощью инструментов Windows или Linux..
Где Windows хранит файлы Linux
Ваша файловая система Linux по какой-то причине хранится в скрытой папке, поскольку Microsoft не хочет, чтобы вы вмешивались в нее. Но если вам нужно просмотреть или сделать резервную копию некоторых файлов, вы найдете их в скрытой папке. Чтобы получить к нему доступ, откройте проводник и вставьте следующий адрес в адресную строку:
% USERPROFILE% \ AppData \ Local \ Packages
(Это приведет вас к C: \ Users \ ИМЯ \ AppData \ Local \ Packages
. Вы также можете показать скрытые папки в проводнике и перемещаться здесь вручную, если вы предпочитаете.
В этой папке дважды щелкните папку для дистрибутива Linux, файлы которого вы хотите просмотреть:
- Ubuntu: CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc
- openSUSE Leap 42: 46932SUSE.openSUSELeap42.2_022rs5jcyhyac
- SUSE Linux Enterprise Server 12: 46932SUSE.SUSELinuxEnterpriseServer12SP2_022rs5jcyhyac
Имена этих папок могут немного измениться в будущем. Просто найдите папку, названную в честь дистрибутива Linux.
В папке дистрибутива Linux дважды щелкните папку «LocalState», а затем дважды щелкните папку «rootfs», чтобы увидеть ее файлы..
Другими словами, файлы хранятся по адресу:
C: \ Users \ ИМЯ \ AppData \ Local \ Packages \ DISTRO_FOLDER \ LocalState \ корневой файловой системы
ЗаметкаВ более старых версиях Windows 10 эти файлы хранились в папке C: \ Users \ Имя \ AppData \ Local \ lxss. Это изменилось, начиная с обновления Fall Creators.
Чтобы просмотреть файлы, хранящиеся в вашей домашней папке, дважды щелкните папку «home», а затем дважды щелкните свое имя пользователя UNIX..
Помните, не изменяйте ни один из этих файлов и не добавляйте файлы в эти папки из проводника!
Где ваш системный диск Windows появляется в Linux
Подсистема Windows для Linux делает доступным полный системный диск Windows, поэтому вы можете работать с одними и теми же файлами в обеих средах. Тем не менее, среда Bash не просто сбрасывает вас на диск C: \. Вместо этого он помещает вас в домашний каталог вашей учетной записи UNIX в файловой системе среды Linux..
Ваш системный диск Windows и другие подключенные диски находятся в каталоге / mnt /, где другие диски традиционно делаются доступными в структуре каталогов Linux. В частности, вы найдете диск C: в следующем месте в среде Bash:
/ Мнт / с
Чтобы перейти в этот каталог с CD
введите команду:
кд / мин / с
Если у вас есть диск D :, вы найдете его в / mnt / d и т. Д..
Например, чтобы получить доступ к файлу, хранящемуся в C: \ Users \ Chris \ Downloads \ File.txt, вы должны использовать путь /mnt/c/Users/Chris/Downloads/File.txt в среде Bash. И да, он чувствителен к регистру, поэтому вам нужны «Загрузки», а не «Загрузки».
Вы также можете подключить внешние диски и сетевые папки, чтобы получить доступ к большему количеству файлов из среды Linux..
Обратите внимание, что при доступе к системным файлам Windows ваша оболочка Bash имеет разрешения, с которыми она была запущена. Если вы запустили его с помощью ярлыка, он будет иметь те же права доступа к файлам, что и ваша учетная запись пользователя Windows..
Например, если вы хотите получить доступ к системной папке, к которой у вашей учетной записи нет прав доступа, вам нужно щелкнуть правой кнопкой мыши ярлык оболочки Bash и выбрать «Запуск от имени администратора», чтобы запустить оболочку Bash с правами администратора Windows..
Это работает так же, как и командная строка, которую нужно запускать от имени администратора, если вам нужен доступ на запись к файлам только для администратора или доступ на запись к системным файлам. Вы не можете просто использовать Судо
в среде Bash.