Перенос и работа над полной коробкой разработки с USB-накопителя. Реализуемое? - PullRequest
2 голосов
/ 02 февраля 2009

В последнее время я думал об инвестировании в достойный USB-накопитель (что-то вроде this ), установке операционных систем на виртуальных машинах и разработке на них.

Что я имею в виду, так это то, что я хочу иметь возможность носить свои блоки разработки, являясь Windows Distribution для разработки .Net и Linux Distribution для таких вещей, как RoR, Perl и еще много чего, чтобы я мог носить их там, где это необходимо ... будь то работа, школа, разные компьютеры дома и т. Д. ...

Я думаю о том, чтобы сделать это также в целях резервного копирования ... то есть для резервного копирования моего почти единственного файла виртуальной машины на внешний жесткий диск вместо того, чтобы регулярно обновлять мой обычный Windows Box. Я также думаю о том, что, может быть, даже коммитить блоки виртуальных машин под управлением исходного кода ( это вообще возможно? )

Итак, я на правильном пути с этим? Вы предлагаете мне попытаться реализовать это?

Насколько возможно, чтобы ваша разработка находилась на виртуальной машине, работающей с USB-накопителя?

Ответы [ 6 ]

2 голосов
/ 02 февраля 2009

Я абсолютно согласен с тем, куда вы направляетесь. Я хочу сделать это сам.

Но если вы еще не знаете, дело не только в размере диска, хотите верьте, хотите нет Флэш-накопители USB могут быть намного медленнее, чем вращающиеся диски !

Это может стать большой проблемой, если вы планируете на самом деле запускать виртуальные машины непосредственно с USB-накопителя!

Я пытался запустить 4 ГБ виртуальной машины Windows XP на 32 ГБ Corsair Survivor, и виртуальная машина была практически непригодна! Кроме того, копирование моей 4 ГБ виртуальной машины с диска и обратно на диск было также довольно медленным - около 10 минут, чтобы скопировать его на диск.

Если у вас есть порт esata Я бы настоятельно рекомендовал посмотреть на такие высокоскоростные опции ESata , как этот Kanguru 32 ГБ флэш-накопитель ESata / USB ИЛИ этот 32 ГБ один за другим OCZ .

Скорость чтения и записи этих дисков намного выше, чем у ESata, чем у других USB-накопителей. И вы все равно можете использовать их как USB, если у вас нет порта ESata. Однако, если у вас нет порта ESata, вы можете купить карты PCI-ESata онлайн и даже карты ESata ExpressCard для своего ноутбука.

РЕДАКТИРОВАТЬ: Примечание: вы обнаружите, что USB-накопители используют FAT вместо NTFS. Вы не хотите использовать NTFS, потому что он делает намного больше операций чтения и записи на диск, и ваш диск будет иметь только ограниченное количество операций чтения и записи, прежде чем он умрет. Но при использовании FAT вы будете ограничены максимальным размером файла 2 ГБ, что может быть проблемой для вашей виртуальной машины. Если это так, вы можете разделить диски виртуальной машины на 2 ГБ. Также убедитесь, что вы делаете резервные копии своей виртуальной машины ежедневно, если ваш диск достигает максимального количества записей. :)

2 голосов
/ 02 февраля 2009

Эта статья о состояниях USB-накопителей,

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

USB-накопители используют флэш-память, и они имеют максимальное количество записей до того, как произойдет сбой и произойдет повреждение. Автор ранее связанной статьи обнаружил, что она находится в диапазоне от 10000 до 100000 записей, но если вы используете приложение с интенсивным использованием диска, это может быть проблемой.

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

1 голос
/ 02 февраля 2009

Я делаю это довольно часто с Xen, но также включаю голое металлическое загрузочное ядро ​​на диске. Это особенно полезно при работе с чем-то, на чем будет основан живой CD.

Плохая сторона - это раздутость образа виртуальной машины, которая позволяет загружать его на многих машинах ... поэтому, где вы обычно собираете очень скудное и среднее паравиртуализированное ядро ​​... вы также должны включать в себя то, что имеет все, включая кухню раковина (до того, что вы хотите, т.е. вам нужен звук, или токен-кольцо и т. д.?)

Я обычно ношу две палки, на одной из которых стоит Xen + исправленная версия Linux 2.6.26, на другой - мои различные гостевые образы, которые готовы к загрузке в любом случае. Debootstrapped копия Debian или Ubuntu является отличной отправной точкой для создания первого.

Если ничего другого, с ним интересно повозиться. Извините, что я немного ориентирован на GNU / Linux, но это то, что я использую исключительно :) Я начал возиться с этим, когда мне пришлось искать странный путь к обновлению моего дистрибутива, который отставал от текущего на два года. Итак, я привязал гостя, установил то, что хотел, и указал GRUB на новый LV для моей корневой файловой системы. Внутри я только что установил свой старый / домашний LV и ушел.

1 голос
/ 02 февраля 2009

Надеюсь, вы говорите о проектах по интерпретации языка. Я не мог себе представить компиляцию C / C ++ любого размера на виртуальной машине, не говоря уже о виртуальной машине, работающей с USB-накопителя.

0 голосов
/ 05 мая 2009

Раньше я делал это и обнаружил, что компиляция была настолько медленной, что она того не стоила.

Имейте в виду, что флэш-накопители USB чрезвычайно медленны (возможно, в 10-100 раз медленнее) по сравнению с жесткими дисками со скоростью произвольной записи (запись большого количества маленьких файлов в раздел, в котором уже есть много файлов).

Типичный процесс сборки с использованием инструментов GNU создаст множество маленьких файлов - простой скрипт configure создает тысячи маленьких файлов и снова удаляет их, просто чтобы протестировать среду, прежде чем вы даже начнете компилировать. Вы могли бы ждать долго.

0 голосов
/ 02 февраля 2009

Проверьте MojoPac:

http://www.mojopac.com/

Хардкорные геймеры используют его для того, чтобы взять с собой World of Warcraft на ходу - он должен хорошо работать для ваших нужд разработки, по крайней мере, для Windows. Используйте Cygwin с ним для своих нужд unix-dev.

...