- Доступ к Linux-разделам из-под Windows
- Ext2Fsd
- DiskInternals Linux Reader
- Ext2Explore
- Заключение
- Как установить и запустить Ubuntu WSL под Windows 10
- Что такое Ubuntu WSL
- Зачем нужна Ubuntu WSL на Windows
- Установка Ubuntu WSL под Win 10
- Настройка Ubuntu WSL
- Настройка ssh
- Обновление
- Установка MC
- Войти под root
- Автозапуск служб
- Обновление WSL до WSL2
- Reboot Ubuntu WSL
- Как удалить Ubuntu WSL
Доступ к Linux-разделам из-под Windows
Двойная загрузка операционных систем является очень распространенным сценарием среди пользователей Windows, которые решили попробовать систему Linux. Они поступают так потому, что еще не чувствуют себя достаточно уверенно, чтобы полностью оставить Windows и перейти на Linux. Или же потому, что этим пользователям необходимы некоторые программы и игры, которые невозможно запустить под Linux. Но в обоих случаях, когда пользователь работает между двумя операционными системами, существует потребность во взаимодействии между обеими системами. В операционной системе Linux есть изначальная поддержка «родных» файловых систем Windows (NTFS, FAT). Это означает, что работая под системой Linux, можно иметь доступ к Windows-разделам. С системой Windows дело обстоит с точностью до наоборот. Чтобы получить доступ к Linux-разделам из-под Windows, необходимо установить сторонние программы, специально созданные для этой цели.
В этой статье дан обзор нескольких таких программ, которые позволяют открыть Linux-разделы, работая в операционной системе Windows. Все рассматриваемые программы имеют поддержку файловой системы ext4, которая является таковой по умолчанию для всех дистрибутивов Linux. Также подобные программы могут работать с более ранними версиями файловых систем, таких как ext3 или ext2, а также c файловыми системами другого типа.
Все программы, обзор которых я решил сделать в данной статье, по умолчанию предоставляют доступ к Linux-разделам только в режиме чтения. Это означает, что с помощью таких программ можно читать файлы с Linux-разделов, но нельзя производить запись на них. С моей точки зрения, такой подход является наилучшим вариантом, так как иметь полный доступ к Linux-разделам может быть опасным. Это связано с тем, что при полном доступе к файловой системе Linux, достаточно изменить или удалить хотя бы один файл, что приведет операционную систему Linux в неработоспособное состояние. Пользователь должен иметь точное представление о том, что он собирается изменить, прежде чем приступать к самому изменению. В этом случае риск повредить систему сводится к минимуму.
Ext2Fsd
Ext2Fsd является драйвером файловой системы ext2, написанным под линейку операционных систем Windows (2000, XP, Vista и Win7). Будучи установленным, драйвер предоставляет доступ к Linux-разделам по буквенному обозначению каждого раздела для любой из установленных под Windows программ.
Установщик программы Ext2Fsd во время инсталляции задаст вопрос о добавлении службы ext2fsd в автозагрузку операционной системы. Если согласиться с предложением инсталлятора, то данный сервис будет запускаться каждый раз при загрузке операционной системы Windows, автоматически монтируя указанные в настройках разделы Linux. Если же отказаться от такой возможности, то службу нужно будет запускать вручную в каждом случае, когда необходимо получить доступ к определенным разделам.
Драйвер Ext2Fsd имеет дополнительную опцию для включения прав записи в файловых системах Linux. По причинам, которые я уже называл ранее, рекомендую оставить данную опцию отключенной, за исключением тех случаев, когда действительно необходимо что-либо изменить, и вы что знаете, что делаете.
Давайте посмотрим на основное окно программы Ext2Fsd:
Если нажать горячую клавишу F7 (или перейти в меню по пути «Tools — Service Management»), можно увидеть состояние службы (включена или отключена), и несколько дополнительных настроек, которые относятся к выбранному разделу:
Давайте смонтируем раздел. Это можно выполнить двумя способами. Первый — правым щелчком мыши на выбранном разделе в списке открываем контекстное меню и выбираем «Ext2 Volume Management».
Второй способ — просто нажать горячую клавишу F3 для выделенного в списке раздела.
Откроется следующее окно:
Если раздел, к которому нужно получить доступ, находиться на съемном носителе, то необходимо выбрать пункт «Automatically mount via Ext2Mgr» в контекстном меню. В этом случае указанный раздел будет монтироваться каждый раз, когда будет подключаться съемный носитель. В случае, если нужный раздел располагается на постоянно подключенном носителе, то для его автоматического монтирования необходимо выбрать пункт «Mountpoint for fixed disk, need reboot» в контекстном меню. Выберите данный пункт и выполните перезагрузку, если это необходимо.
Перейдем в «Мой компьютер»:
Видим, что Linux-раздел (Локальный диск H) смонтирован и к нему можно получить доступ точно также, как и к любому «нормальному» Windows-разделу. Для проверки открываю указанный раздел для просмотра данных на нем:
DiskInternals Linux Reader
Программа DiskInternals Linux Reader является официально бесплатной и поддерживает целый ряд файловых систем: ext2, ext3, ext4, HFS и ReiserFS.
Подобно программе Ext2Fsd, приложение Linux Reader предоставляет доступ к Linux-разделам только с правами чтения и не разрешает пользователям производить запись на них. Это гарантирует, что изменения в текущей операционной системе не скажутся на работе системы Linux.
Но, в отличие от предыдущей программы, Linux Reader предоставляет доступ к разделам не через их буквенное обозначение. Для каждого из Linux-разделов запускается своя собственная копия приложения. Такой способ имеет несколько приятных преимуществ, таких как использование «Проводника» Windows и функция предпросмотра. Последняя поддерживает только несколько типов файлов (определенный набор форматов изображений, несколько видео-форматов и еще несколько других, которые у меня не было возможности протестировать). Поэтому, если вы ищете файлы, для которых в программу Linux Reader встроена возможность предпросмотра, то можно просмотреть изменение прежде, чем сохранять их.
На изображении внизу видно функцию предпросмотра в действии. Если щелкнуть на пункте «Сохранить как . » (Save as. ), выбранный файл может быть сохранен в файловой системе Windows. Это бывает полезным, если необходимо работать с этим файлом в обход режима только для чтения.
Также программа Linux Reader может сохранять директорию целиком. Для этого нужно щелкнуть правым щелчком мыши на нужной папке и выбрать пункт «Сохранить» (Save). Затем нажать кнопку «Далее» (Next).
В следующем окне выбираем «Сохранить файлы» (Save Files) и снова нажмем кнопку «Далее» (Next):
Выберите конечную папку (рисунок вверху), в которую необходимо сохранить файлы и закончите операцию.
Другой интересной особенностью программы является возможность монтировать образы дисков формата raw (например, таких как ISO-файлы) и контейнеры (примером может быть виртуальные диски VirtualBox). Подобную возможность лично я не тестировал, но как мне кажется, это полезная возможность.
Ext2Explore
Эта программа работает подобно Linux Reader, но поддерживает меньшее количество файловых систем: ext2, ext3, ext4. Данная программа имеет одну уникальную особенность, которой нет у двух предыдущих — она является портабельной. Это означает, что нет необходимости устанавливать программу под операционной системой. Она может быть запущена с любого носителя, включая и съемные.
Программа Ext2explore.exe должна запускаться в системе Windows с правами администратора. Это можно выполнить с помощью контекстного меню.
Для дальнейшей работы в программе, чтобы сохранить время, откройте окно свойств файла и включите опцию «Запускать эту программу с правами администратора» (Run this program as an administrator) на вкладке «Совместимость» (Compatibility).
Также, как и в программе Linux Reader, для того, чтобы открыть файл в другой программе, его необходимо первоначально сохранить в определенной директории в файловой системе Windows.
Заключение
Несмотря на то, что все из описанных выше программ выполняют те задачи, для которых они были созданы, имеется еще одна возможность для обмена файлами между двумя операционными системами Linux и Windows, более простая в использовании и интуитивно понятная. Для этого необходимо создать дополнительный раздел, отформатированный в файловой системе, понятной для операционной системы Windows и доступной для системы Linux. Файловая система FAT32 имеет изначальную поддержку как в системе Linux, так и Windows. Кроме того, Linux без проблем может читать и писать на разделы, отформатированные в файловой системе NTFS.
Таким образом, вы можете просматривать и изменять файлы в любое время, без необходимости иметь дополнительное программное обеспечение. Если есть какие-либо файлы, к которым необходимо получить доступ из другой операционной системы, просто скопируйте их в дополнительный раздел, отформатированный в файловой системе, понятной для операционной системы Windows.
Посмотрите также другие статьи раздела об эмуляции возможностей Windows.
Как установить и запустить Ubuntu WSL под Windows 10
У пользователей Windows 10 есть необычная возможность установить операционную систему Ubuntu на свой компьютер. Механизм, обеспечивающий такую возможность, называется WSL — Windows Subsystem for Linux. Далее я расскажу, как с помощью WSL установить полноценную Ubuntu на Win 10 штатными средствами системы.
Что такое Ubuntu WSL
Для начала кратко поясню, что такое WSL на практике. Это некий слой абстракции, который позволяет запускать linux приложения в среде windows. И это не виртуальная машина. И Linux, и Windows приложения работают в рамках одной операционной системы с совместным доступом к данным на дисках. Вы прозрачно можете запустить приложение на ubuntu и открыть им файл в директории windows.
Для примера, расскажу, где ubuntu под wsl версии 1 хранит свои файлы — C:\Users\user1\AppData\Local\lxss.
Тут и корень системы, и директории пользователей. Посмотреть содержимое можно из-под windows. Только не рекомендуется их редактировать. Работа linux системы может быть нарушена. На примере доступа к файлам видно, что это не виртуальная машина. Важно понимать это отличие.
А вот то же самое можно сделать из-под ubuntu, открыв файлы из директории windows.
С помощью данной технологии, вы условно сможете запустить полноценный Ubuntu Server на своем компьютере. Читайте мой обзор на Ubuntu, чтобы иметь представление о том, чем он отличается от остальных linux дистрибутивов.
Зачем нужна Ubuntu WSL на Windows
Поговорим немного о том, зачем может понадобиться установка Ubuntu WSL в Windows 10. Можно в небольшой список это вынести и перечислить по пунктам:
- Первое и самое очевидное — для использования линуксовых утилит — git, ansible, cron, rsync и т.д. Речь в первую очередь идет о том софте, которого нет в windows, либо которое затруднительно или неудобно запускать.
- Настройка привычного web окружения в виде lamp (linux, apache, mysql, php) или lemp (то же самое, только с nginx). Особенно это актуально для разработчиков.
- Для обычного знакомства и изучения linux. Нет нужды разбираться с виртуализацией или рядом с windows устанавливать отдельно linux. Тут все в комплекте, можно без проблем переключаться между системами в режиме реального времени. В общем, это удобно.
Это то, что первое приходит в голову. Думаю, есть и другие причины, для чего может быть полезно установить ubuntu wsl. Делитесь своим мнением в комментариях. Может я что-то важное упускаю.
Установка Ubuntu WSL под Win 10
Установка подсистемы Windows для Linux в Windows 10 неплохо описана в официальном руководстве от Microsoft. Чтобы установить Ubuntu WSL на Windows, надо для начала включить компонент системы Windows под названием Windows-Subsystem-Linux. Для этого запускаем cmd с правами администратора (это важно!) и переходим в powershell. Там выполняем:
После этого активируем компонент Платформа виртуальных машин.
Далее обязательно перезагрузить систему, иначе дальше будут ошибки. После перезагрузки продолжаем ставить ubuntu под wsl.
Cкачиваем и устанавливаем Пакет обновления ядра Linux в WSL 2 для 64-разрядных компьютеров — https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi
Дальше устанавливаем версию WSL 2 по умолчанию. Она более продвинутая и быстрая, по сравнению с первой.
Теперь идем в Windows Store и ищем там необходимую вам версию Ubuntu WSL. Я просто в строку поиска ввел название дистрибутива и получил все доступные версии.
После установки в меню Пуск можно запустить Ubuntu WSL. При первом запуске вам предложат задать имя пользователя для Linux системы.
Вот и все. Заходим в свежеустановленную Ubuntu 20 LTS на Win 10.
У вас под рукой практически полноценная linux система, работающая нативно под windows.
Настройка Ubuntu WSL
Выполним первоначальную настройку Ubuntu WSL, чтобы с ней удобнее было далее работать. Начнем с подключения по SSH.
Настройка ssh
Терминал Windows не очень удобен и привычен. Так что если вы привыкли подключаться по ssh через какой-нибудь другой менеджер подключений, вам нужно будет на wsl системе настроить ssh. Это не совсем очевидная процедура. Чтобы заставить нормально работать openssh server, его надо переустановить. Делаем это:
Теперь сразу разрешим подключаться с использованием паролей. Для этого открываем конфиг /etc/ssh/sshd_config и разкомментируем настройку:
После этого перезапустите службу sshd
Мы закончили настройку ssh в ubuntu. Теперь к ней можно подключиться, например, через putty. Используем адрес 127.0.0.1 и порт 22.
Вот и все. Можете использовать любой другой ssh клиент.
Обновление
Для того, чтобы обновить Ubuntu WSL на Windows 10 достаточно внутри linux системы запустить стандатрное средство обновления пакетов — apt.
В общем случае этого достаточно для обновления системы. Если же вы хотите выполнить обновление до следующего релиза, то лучше это сделать через Windows Store, установив нужную версию ubuntu.
Установка MC
Для того, чтобы установить популярный в linux среде файловый менеджер Midhight Commander или коротко MC, необходимо опять же воспользоваться пакетным менеджером apt.
При этом вы сможете без проблем перемещаться не только внутри ubuntu, но и открывать файлы windows. Традиционные диски C:, D: и т.д. смонтированы в /mnt.
Войти под root
Для того, чтобы в Ubuntu WSL зайти под ученой записью root, необходимо под пользователем выполнить в консоли:
Теперь вы полноценный root пользователь и можете запускать команды с повышенными привилегиями без sudo.
Автозапуск служб
В Ubuntu WSL не работает systemd и возникает закономерный вопрос, а как же тогда настроить автозапуск нужных служб. Тут есть два принципиально разных подхода по автозапуску служб:
- Служба в wsl запускается автоматически после запуска компьютера.
- Служба wsl запускается автоматически после первого входа в bash установленного linux.
Для первого случая проще всего воспользоваться готовым скриптом wsl-autostart — https://github.com/troytse/wsl-autostart. С его помощью вы можете выбрать любые программы из ubuntu, которые захотите запустить при старте компьютера.
Если вы хотите выполнить какую-то команду при первом входе в wsl, то просто добавьте ее в файл .bashrc домашнего каталога пользователя. Например, добавим туда вывод фразы Hello World! Для этого добавляем в самый конец:
Теперь при запуске терминала wsl, вы увидите свое сообщение.
Вместо команды echo можете написать любую другую. Например, запуск MC:
Теперь при запуске терминала ubuntu wsl у вас автоматически будет запускаться файловый менеджер MC.
Обновление WSL до WSL2
Во время установки любой WSL системы у вас есть возможность выбора ее версии. Вторая версия более современная и быстрая, так что в общем случае рекомендуется использовать ее. Но возможно вам по какой-то причине понадобится первая. Например, в WSL 1 файловая система linux в открытом виде в виде файлов в директории C:\Users\user1\AppData\Local\lxss, а во второй версии в виде единого виртуального диска. Разница принципиальна.
Для того, чтобы обновить WSL1 до WSL2 необходимо через powershell активировать компонент VirtualMachinePlatform:
Указать версию WLS2 как дефолтную:
В завершении проапгрейдить установленный дистрибутив до WSL2 или поставить новый.
Версии WSL можно переключать в любое время. Узнать distribution name можно с помощью команды:
Reboot Ubuntu WSL
Работа в Windows 10 с Ubuntu несколько необычна, поэтому сходу не понятные даже такие простые вещи, как перезагрузка linux системы. Как сделать reboot в Ubuntu WSL? Для того, чтобы перезагрузить систему, достаточно выполнить в консоли powershell команду:
Все экземпляры wsl будут завершены. После запуска терминала ubuntu wsl она запустится заново, что будет равнозначно обычной перезагрузки системы.
Если вы используете первую версию WSL, то перезапуск linux систем выполняется перезапуском службы, которая их обслуживает. Выполняется так же в консоли windows^
Как удалить Ubuntu WSL
Если вам нужно удалить Ubuntu WSL из Windows 10, то сделать это можно точно так же, как любое другое приложение, установленное из Магазина. Выбираете Ubuntu WSL через пуск и нажимаете Удалить.
То же самое можно сделать и через консоль powershell
Список установленных систем смотрим командой:
Ничего сложного, система удаляется фактически в одну команду. Для повторной установки достаточно еще раз установить ubuntu через Магазин.