Я хотел бы иметь возможность получить доступ к разделу Linux через Cygwin на Windows. Моя цель - сделать резервную копию данных с сервера Linux на моем домашнем компьютере под управлением Windows 7. Сейчас это в основном работает, за исключением случаев, когда есть файлы с недопустимыми символами или если есть несколько файлов с одинаковыми буквами, но с другим регистром.
3 ответа
Я использую VirtualBox. Это можно сделать двумя способами,
- Храните ваши данные в файлах VMDK
- это довольно просто и безопасно; Вы также можете хранить файлы VMDK разных размеров для своих резервных копий.
- Создайте доступ к диску RAW к реальному разделу EXT3 на жестком диске
- Имейте в виду, что это хитрый способ, и вы можете легко сломать раздел ext3
(особенно если вы используете приостановку или спящий режим, пока он подключен) - и никогда не пытайтесь монтировать загрузочный раздел Windows RAW в режиме записи.
- Имейте в виду, что это хитрый способ, и вы можете легко сломать раздел ext3
Обновить:
Если вы заинтересовались автоматизацией: VBoxManage позволяет вам управлять виртуальной машиной из командной строки.
Насколько я понимаю, вы хотите сделать резервную копию, скопировав полное дерево каталогов на другой компьютер, файл за файлом. По общему признанию, это один из способов сделать резервную копию, но я бы предложил другой подход, тем более что в вашем случае он работает плохо.
То, что я делаю сам (в принципе), это для создания архивных файлов из файлов, которые я хочу сделать локально для резервного копирования на сервере 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 или чего-то еще), чем дерево каталогов.
Существует параметр реестра, определяющий, обрабатывает ли ядро 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 или, конечно, использовать другой подход вообще.