Я пытаюсь использовать виртуальный жесткий диск на нескольких компьютерах с помощью синхронизации Dropbox (популярный облачный инструмент). Я предполагаю, что никакие две машины не будут открывать один и тот же диск одновременно.
Чтобы сократить объемы передачи данных, я хотел бы использовать только дифференциал моего жесткого диска, который будет хранить только небольшой объем «документов», а не синхронизировать весь жесткий диск (я не верю, что дифференциальная синхронизация Dropbox будет очень эффективной) , Используя эту официальную документацию VirtualBox , я сделал следующий трюк, который удовлетворяет меня лишь частично.
- Создайте дифференциальный привод с помощью хитрости:
- Сделайте диск multiattach (см. Документацию выше)
- Сделайте простое изменение на диске на гостевой, который создаст файл diff
- Восстановите (с помощью VBox Media Manager, File> Virtual Media Manager) базовый диск в «нормальном» режиме (мне нужно это, чтобы иметь возможность подключить его к нескольким машинам)
- Отсоедините основной диск от машины и вместо этого установите дифференциал
- Это требует дополнительного трюка при подключении к новой машине: присоедините, затем отсоедините основной, затем подключите diff, иначе VirtualBox не распознает GUID диска.
Этот трюк делает свою работу: поскольку я работаю только с диском diff, база никогда не изменяется и, следовательно, никогда не синхронизируется по сети. Плохая часть , хотя в том , что, даже если очень мало растет количество хранимых данных , то разница диск будет расти в пространстве на VDI (файл виртуального хранения диск на хосте) принимает на хосте из - за того , как фрагменты гостевой ОС и перемещает файлы , И поэтому я начинаю синхронизировать постоянно растущий жесткий диск различий, теряя преимущества наличия различий.
Проблема в том, что я хочу - это способ регулярно «объединять» или «дефрагментировать изменения» в diff vdi, чтобы поддерживать синхронизацию небольшой. Я могу позволить себе (хотя и не хочу) делать полную синхронизацию основных vdi каждый раз, когда я делаю это слияние. Но единственный способ, которым я могу воспользоваться, - это воссоздать diff vdi, используя тот же процесс, и восстановить файлы на этом диске с помощью какого-либо резервного копирования. Не очень удобно. У кого-нибудь есть идея получше?
Конечно, есть другой способ работать только с общим каталогом (между хостом и гостем), но для этого потребуется дополнительная настройка (множество символических ссылок на госте), и я не хочу, чтобы пользователи хоста связывались с ним гостевые файлы.
Я был достаточно ясен?
Ответы:
VBoxManage modifyhd --compact будет вырезать любые блоки, которые вы обнулили с помощью соответствующего инструмента (см. Руководство). Не уверен, будет ли для вас лучше подключать отдельный диск для документов (возможно, сквозной ).
источник
Если все ваши хост-системы Mac OS 10.5+, вы можете использовать механизм Sparse Bundle, который хорошо подходит для инкрементной синхронизации / резервного копирования с такими инструментами, как Time Machine или rsync: http://en.wikipedia.org/wiki/Sparse_image# Sparse_Bundle
Я использую его поверх Dropbox объемом 3 ГБ, и он работает хорошо. Конечно, ваш виртуальный диск занимает, по крайней мере, 10-20 ГБ, поэтому первая синхронизация будет очень медленной. Это может быть ускорено Dropbox с синхронизацией LAN.
Кроме того, afaik, вы должны быть осторожны, чтобы монтировать его только один раз в данный момент (как вы сказали) и разрешить синхронизацию после того, как виртуальная машина остановлена / находится в режиме ожидания.
источник