3

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

3 ответа3

1

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

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

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

1

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

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

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

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

Запустите Cygwin на компьютере, на котором вы хотите сохранить резервную копию. Вы также можете сохранить tar-архивы на сервере Linux и затем перенести их.

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

0

Существует параметр реестра, определяющий, обрабатывает ли ядро 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 или, конечно, использовать другой подход вообще.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .