Есть ли способ для cygwin получить доступ к разделу Linux (ext3)?

Есть ли способ для cygwin получить доступ к разделу Linux (ext3)?

Я хотел бы иметь возможность доступа к разделу Linux через cygwin на Windows. Моя цель — резервное копирование данных с сервера Linux на мой домашний компьютер под управлением Windows 7. Сейчас это в основном работает, за исключением случаев, когда есть файлы с недопустимыми символами или если есть несколько файлов с одинаковыми буквами, но разным регистром.

решение1

Я использую VirtualBox. Это можно сделать двумя способами:

  1. Храните ваши данные в файлах VMDK
    • это довольно просто и безопасно; вы также можете хранить файлы VMDK разного размера для своих резервных копий
  2. СоздатьRAW-дискдоступ к реальному разделу EXT3 на вашем жестком диске
    • имейте в виду, что это сложный способ, и вы можете легко сломать свой раздел ext3
      (особенно если вы используете режим ожидания или гибернации, пока он смонтирован)
    • и никогда не пытайтесь монтировать загрузочный раздел Windows RAW в режиме записи.

Обновление:
Если вас интересует автоматизация:VBoxManageпозволяет управлять виртуальной машиной из командной строки.

решение2

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

Что я делаю сам (в принципе), так это создаю tarballs файлов, которые я хочу зарезервировать локально на сервере Linux, и сохраняю их где-то еще через ssh (на самом деле через sshfs, но неважно). Это должно устранить проблемы с именами файлов, если реализация tar на сервере Linux с ними справляется.

Это можно сделать, настроив cygwin с помощью сервера ssh для подключения к серверу Linux или с помощью команды типа

ssh $server "tar c -C /var/important ./" > backup.tar

запустить из cygwin на компьютере, на котором вы хотите сохранить резервную копию. Вы также можете сохранить tarballs на сервере Linux и перенести их позже.

Если вы хотите уменьшить объем потребляемой полосы пропускания и дискового пространства, я предлагаю использоватьзвездавместо gnu tar, и это инкрементальный режим, который позволяет включать только файлы, измененные после предыдущего резервного копирования. Он все равно не будет выполнять дельта-передачу rsync, и несколько версий файлов будут занимать место на диске. С другой стороны, tarball гораздо проще эффективно сжать (с помощью xz или чего-то еще), чем дерево каталогов.

решение3

Существует параметр реестра, определяющий, будет ли ядро ​​Windows обрабатывать имена файлов без учета регистра:

HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\kernel\obcaseinsensitive

Установите это 0и перезагрузите, чтобы разрешить файлы, отличающиеся только регистром. Смотрите такжеhttp://cygwin.com/cygwin-ug-net/using-specialnames.html#pathnames-casesensitive.

Cygwin 1.7 автоматически отображает символы, которые :не допускаются в именах файлов Windows, в "область частного использования Unicode". Единственное большое исключение — обратная косая черта, которую он рассматривает как разделитель каталогов ради совместимости с Windows, поэтому единственное, что вы можете сделать с ними, — избегать их в именах файлов Linux или, конечно, использовать вообще другой подход.

Связанный контент