- Полноценный доступ ко всем Linux-файловым системам в Windows 2000/XP/Vista/7 с помощью coLinux
- Как читать разделы диска с Ext2/3/4 (Linux) при работе в Windows
- Как «прочитать» информацию на разделах с файловыми системами Ext2, Ext3, Ext4
- Способ 1 (через спец. драйвер)
- Способ 2 (через дополнения к TC)
- Способ 3 (с помощью LiveCD)
Полноценный доступ ко всем Linux-файловым системам в Windows 2000/XP/Vista/7 с помощью coLinux
В данной статье я расскажу вам, как получить практически полноценный доступ для чтения и записи ко всем файловым системам, используемым в Linux (Ext2/3/4, ReiserFS, XFS, JFS, etc) из-под сабжевых операционных систем. Статья является вольным переводом данного руководства, причем написано оно уже довольно давно, но догуглился я до него только сейчас. 🙂
Что из себя представляет данный способ?
Пожалуй, все слышали о проекте coLinux. Это ядро Linux, портированное и модифицированное для запуска из Windows, включающее в себя драйвер для преобразования системных вызовов Linux в вызовы Windows. Приложения Linux могут запускаться в coLinux без перекомпиляции, при этом потеря производительности приложений не наблюдается.
Мы же будем использовать coLinux-систему как промежуточное звено для доступа к нужным файловым системам. coLinux будет имеет прямой доступ к файловым системам, а из под Windows (здесь и далее — хост-система) они будут доступны при помощи Samba-сервера, настроенного на coLinux-системе (гостевой системе). Связь между гостевой и хост-системами будет осуществлена при помощи виртуального TAP-сетевого адаптера. Совместимость при этом будет практически полная, вплоть до редактирования прав доступа и проч. (естественно, в гостевой системе).
Достоинства и недостатки
Главное достоинство в том, что используется нативный Linux-драйвер файловой системы (так как фактически запущена полная копия Linux, и драйвер работает в этой среде). И поэтому будет осуществляться полный доступ к ФС без багов со стороны Windows, недоделанных, а то и вовсе нереализованных, возможностей Windows-драйверов, и т.д.
Первый недостаток плавно вытекает из достоинства: из-за того, что запущена полная копия Linux со всеми драйверами, сервисами и программами, количество свободных ресурсов хост-системы порой довольно сильно уменьшается, в особенности при обмене файлами.
Второй недостаток заключается в низкой скорости обмена файлами: скорость чтения из файловой системы XFS не превышает в среднем 5 мегабайт в секунду, а скорость записи — 7 (что довольно-таки странно).
- Скачиваем ядро coLinux здесь. Устанавливаем, например, в директорию C:\coLinux (далее в статье для примера будет использоваться именно она).
- Скачиваем один из образов установленной Linux-системы отсюда. Я предпочел Debian Lenny, и поэтому при предстоящей работе в гостевой системе будут использоваться команды, специфичные для Debian. Распаковать архив с образом нужно в директорию, куда установлен coLinux, в нашем случае C:\coLinux.
- Правим конфиг-файл debian-lenny.conf, расположенный в директории coLinux (мы же распаковали архив с образом в нее, так?). Снимаем символ комментирования (#) со строк #mem=256 и #eth1=tuntap
- Теперь необходимо прописать в конфиг имена нужных разделов для доступа к ним. Эти имена выглядят как \Device\Harddisk1\Partition2. Самый простой способ найти правильные имена для нужных разделов — это скачать Windows-port утилиты dd и с помощью команды:
dd —list
в командной строке Windows с правами администратора (естественно, находясь в каталоге с исполняемым файлом dd) ищем нужные нам имена разделов под словами NT Block Device Objects (малость неудобно, т.к. искать нужные разделы придется по размеру, который, к тому же, дан в байтах).
Итак, нужные имена мы нашли, теперь необходимо вписать их в конфиг. В конце конфига вписываем строки типа:
cobdX=\Device\HarddiskY\PartitionZ
где X — это порядковый номер файла девайса (он будет видет из-под гостевой системы в /dev), начиная с 3, а Y и Z — это номера диска и раздела в его Windows-имени. Например:
cobd3=\Device\Harddisk1\Partition2
И так для каждого раздела. - Заходим в свойства виртуального сетевого адаптера «TAP-Win32 Adapter V8 (coLinux)» (в WinXP — Панель управления — Сетевые подключения — ПКМ на адаптере — Свойства — Протокол Интернета (TCP/IP) — Свойства, в WinVista/7 — Панель управления — Центр управления сетями и общим доступом — Изменение параметров адаптера — ПКМ на адаптере — Свойства — Протокол Интернета версии 4 (TCP/IPv4) — Свойства) и выставляем IP-адрес 192.168.37.10 и маску подсети 255.255.255.0. Сохраняем настройки.
- Самый долгожданный момент — запуск гостевой системы. 🙂 Запускаем файл debian-lenny.bat из корневой директории coLinux и ждем, пока система полностью загрузится. Заходим в систему с логином root и паролем colinux. Создаем директории — точки монтирования разделов в гостевой системе. Редактируем файл /etc/fstab (с помощью vim или nano, по вкусу) и вписываем туда строчки для описания файловых систем для монтирования, например:
/dev/cobd3 /mnt/cobd3 xfs defaults 0 0
Тут все стандартно, отмечу только, что имя файла нужного раздела совпадает со строкой раздела в конфиге coLinux. После сразу монтируем все разделы с помощью команды mount -a. - Настроим виртуальный сетевой адаптер в хост-системе. Для этого добавим в файл /etc/network/interfaces следующие строки:
auto eth1
iface eth1 inet static
address 192.168.37.20
network 192.168.37.0
netmask 255.255.255.0
broadcast 192.168.37.255
Включаем сетевой интерфейс командой:
ifup eth1
Можно тут же пропинговать хост-систему (192.168.37.10), все должно работать без проблем. - Создаем обычного юзера командой adduser (напр. adduser user1) для того, чтобы предотвратить root-доступ к файлам из-под Windows
- Устанавливаем SSH- и Samba-серверы в гостевой системе:
apt-get install openssh-server samba
В конфиге Samba (/etc/samba/smb.conf) вписываем для каждого смонтированного раздела секцию такого вида:
[sharename1]
path=/mnt/cobd3
users=user1
read only=no
Меняем нужные параметры по-нашему. После редактирования файла перезапускаем Samba с помощью команды /etc/init.d/samba reload - Выбираем в контекстном меню на иконке «Мой компьютер» пункт «Подключить сетевой диск. ». Прописываем в качестве пути для каждого раздела \\192.168.37.20\имя_шары, где имя шары — это имя, прописанное в квадратных скобках в начале секции конфига Samba.
- В командной строке Windows (с правами администратора) в каталоге coLinux прописываем команду:
daemon.exe —install-service colinux @debian-lenny.conf
Тут же и запустим сервис: net start colinux. - Запускаем services.msc (Win+R — services.msc — OK), находим в списке сервисов colinux, дважды щелкаем на него, и в появившемся окне выбираем тип запуска — Автоматически. Сохраняем.
Как читать разделы диска с Ext2/3/4 (Linux) при работе в Windows
Доброго дня!
К сожалению «обычная» версия Windows не позволяет работать с дисками, отформатированными в файловые системы (ФС) Ext2, Ext3, Ext4 (используются в Linux). Всё, что доступно — это узнать о их существовании в управлении дисками, а вот скопировать файл — уже проблема.
Наиболее сподручный и самый удобный вариант (на мой взгляд) — установить в Windows спец. драйвер, который позволит ОС работать с дисками Ext2/3/4 также, как если бы они были отформатированы в NTFS (скажем). Т.е. любая программа в Windows (тот же проводник) сможет в обычном режиме работать с диском. Удобно?
Как «прочитать» информацию на разделах с файловыми системами Ext2, Ext3, Ext4
Способ 1 (через спец. драйвер)
Подобные «драйверы» есть от нескольких производителей. Я бы выделил продукт от Paragon (ссылка на офиц. сайт с драйвером). Почему:
- поддержка ФС: Ext2, Ext3, Ext4 (чтение + запись); Btrfs, XFS (только чтение);
- после установки драйвера — ничего «делать» не нужно: просто Windows начинает видеть накопители с Ext4+;
- совместим с ОС Windows 7/8/10 (плюс есть пробный период, которого хватает для возникшей задачи (обычно)).
Обратите внимание, что «ненужные» разделы диска можно откл. и не монтировать. Настройка драйвера позволяет это сделать.
Главное окно (Linux File Systems for Windows by Paragon Software)
На скрине ниже привел окно проводника: как видите, раздел отображает как «обычный» — на него также можно что-нибудь скопировать / удалить.
Этот компьютер — диски с ФС EXT4 появились в проводнике
👉 Дополнение!
На Sourceforge можно также найти бесплатный драйвер файловой системы Ext2/3/4 для Windows 7/8/10* (ориг. название: Ext2Fsd).
Сразу отмечу, что на некоторых ОС Windows 10 — драйвер этот ведет себя нестабильно, и не позволяет прочитать информацию с нужного раздела.
Продукт от Paragon, конечно, выигрывает.
Способ 2 (через дополнения к TC)
TC — это сокращенное название файлового коммандера Total Commander (некая замена проводнику). К этой программе есть очень много плагинов, и, разумеется, для чтения Ext2/3/4 ФС тоже есть!
Покажу по шагам, как в нем открыть подобный раздел диска.
1) Сначала устанавливаем сам Total Commander. Ссылка на офиц. сайт.
2) Далее необходимо загрузить плагин DiskInternals Reader с офиц. сайта (он идет в архиве ZIP — извлекать не нужно).
3) После необходимо запустить TC от имени администратора (просто кликните правой кнопкой мыши по значку. ). 👇
Запуск TC от имени админа
4) Затем необходимо открыть архив ZIP с плагином DiskInternals Reader в Total Commander — тогда он предложит вам установить плагин. Разумеется, соглашаетесь! 👌
5) Далее необходимо закрыть TC и снова его запустить от имени админа. В меню выбора диска укажите вариант «Сеть / FS-плагины» — далее кликните по значку DiskInternals Reader (см. стрелки 1, 2 на скрине ниже 👇).
6) Собственно, далее появиться список всех дисков (в том числе и Ext2/3/4) — их можно открыть и скопировать с них нужную информацию. Задача решена?! 👌
Файлы читаются, можно копировать
Способ 3 (с помощью LiveCD)
Вообще, этот вариант, конечно, не относится к работе из-под Windows. Однако, он вполне себе годен для какой-то разовой работы (например, для копирования и переноса папки с файлами). К тому же аварийный LiveCD с Linux никогда не помешает — вдруг чего. 👌
1) Дистрибутивы Linux с поддержкой работы LiveCD — 👉 можете найти в моей подборке
2) Загруженный ISO-файл с нужной версией дистрибутива Linux необходимо правильно записать на флешку.
3) Далее останется только загрузиться с этой флешки с помощью Boot Menu (вызывается сразу после вкл. ПК). Если вы выберите дистрибутив Linux для новичка — то работать с ним весьма просто (ничуть не сложнее, чем с проводником Windows).
Linux Mint загружена с LiveCD