USB スティックから開発ボックス全体を持ち運んで作業します。実現可能ですか?

StackOverflow https://stackoverflow.com/questions/502319

  •  20-08-2019
  •  | 
  •  

質問

最近、私は価値のある USB ペン ドライブ (次のようなもの) に投資することを考えています。 これ)、仮想マシンにオペレーティング システムをインストールし、仮想マシン上で開発を開始します。

私が念頭に置いているのは、開発ボックスを持ち運べるようになりたいということです。 Windows ディストリビューション .Net開発用と Linuxディストリビューション RoR、Perl、その他のものについては、職場、学校、自宅のさまざまなコンピューターなど、必要な場所に持ち運べるようにします。

バックアップの目的でもこれを行うことを考えています...つまり、通常の Windows Box を定期的に更新する代わりに、ほぼ単一の VM ファイルを外付け HD にバックアップすることです。また、VM ボックスをソース管理下にコミットすることも考えています (それは実現可能ですか?)

それで、私はこれで正しい道を進んでいますか?これを実装してみてはいかがでしょうか?

USB ペンドライブから実行される仮想マシン上に開発ボックスを配置することはどの程度実現可能ですか?

役に立ちましたか?

解決

私はあなたがどこに向かっているのかに完全に同意します。私もこれをやりたいと思っています。

ただし、信じられないかもしれませんが、これはドライブのサイズだけの問題ではありません。 USB フラッシュ ドライブは、回転ディスク ドライブよりもはるかに遅い場合があります。!

これ 場合は大きな問題になる可能性があります あなたは実際にそうするつもりです USB ドライブから直接 VM を実行します。

32GB Corsair Survivor 上で 4GB Windows XP VM を実行してみましたが、VM は事実上使用不可能でした。また、4GB VM をドライブにコピーしてからドライブに戻すのも非常に遅く、ドライブにコピーするのに約 10 分かかりました。

eSATAポートをお持ちの場合 高速ESataを検討することを強くお勧めします このようなオプション Kanguru 32GB ESata/USB フラッシュ ドライブ または この 32GB は OCZ のものです.

これらのドライブの読み取りおよび書き込み速度は、ESata よりも他の USB ドライブよりもはるかに高速です。ESata ポートがない場合でも、USB として使用できます。ただし、ESata ポートがない場合は、PCI to ESata カードをオンラインで購入でき、ラップトップ用の ESata ExpressCard も購入できます。

編集:余談ですが、USB フラッシュ ドライブは NTFS ではなく FAT を使用していることがわかります。NTFS を使用するとディスク上での読み取りと書き込みが大量に行われ、ドライブが停止するまでの読み取りと書き込みの回数が制限されるため、NTFS は使用したくありません。ただし、FAT を使用すると、ファイル サイズが最大 2GB に制限されるため、VM に問題が生じる可能性があります。この場合、VM ディスクを 2GB のチャンクに分割できます。また、ドライブが最大書き込み数に達した場合に備えて、VM を毎日バックアップするようにしてください。:)

他のヒント

これ 記事 USB サムドライブの状態、

サムドライブに保存されているファイルに対して直接ディスク集約型アプリケーションを実行しないでください。

USB サムドライブはフラッシュ メモリを利用しており、 最大書き込み数 悪化して破損が発生する前に。前にリンクした記事の著者は、書き込み回数が 10,000 ~ 100,000 回の範囲であることを発見しましたが、ディスクを大量に使用するアプリケーションを使用している場合、これが問題になる可能性があります。

したがって、これを行う場合は、 積極的なバックアップ ポリシー 作業をバックアップします。同様に、開発スイートを実行するときに、一時的なワークスペースとしてローカル ハード ドライブに書き込むことができれば理想的です。

できれば通訳言語プロジェクトについて話していると思います。USB ドライブから VM を実行することはもちろん、VM 上であらゆるサイズの C/C++ をコンパイルすることなど想像もできませんでした。

私は Xen を使用してこれを頻繁に行いますが、ドライブにはベア メタルのブート可能カーネルも含めます。これは、ライブ CD のベースとなる作業を行う場合に特に便利です。

悪い面は、多くのマシンで起動できるようにするために VM イメージが肥大化することです。したがって、通常は非常に効率的で平均的な準仮想化カーネルのみを構築する必要があります。キッチンのシンクを含むすべてが備わったもの(つまり、必要なものまで)も含める必要があります。オーディオやトークンリングなどが必要ですか?)

私は通常 2 つのスティックを持ち歩き、1 つは Xen とパッチ適用済み Linux 2.6.26 を搭載し、もう 1 つはどちらの方法でも起動できるように準備したさまざまなゲスト イメージを搭載しています。Debian または Ubuntu のブートストラップ解除されたコピーは、前者を作成するための優れた出発点となります。

少なくとも、いじるのは楽しいです。少し GNU/Linux 中心になってしまい申し訳ありませんが、それが私がもっぱら使用しているものです :) 私がこれをいじり始めたのは、現在のディストリビューションから 2 年遅れていたディストリビューションをアップグレードするための奇妙な方法を見つけなければならなかったときでした。そこで、ゲストを固定し、必要なものをインストールし、ルート ファイル システムの新しい LV を GRUB に指定しました。内部では、古い /home LV をマウントして出発しました。

MojoPac をチェックしてください:

http://www.mojopac.com/

ハードコア ゲーマーは、外出先で world of warcraft を持ち歩くためにこれを使用しています。少なくとも Windows では、開発ニーズには問題なく動作するはずです。unix-dev のニーズに合わせて cygwin を使用してください。

以前はこれを行っていましたが、コンパイルが死ぬほど遅いため、やる価値がないことがわかりました。

USB フラッシュ ドライブは、ランダム書き込みパフォーマンス (すでに多数のファイルが存在するパーティションに多数の小さなファイルを書き込む場合) ではハード ドライブに比べて非常に遅い (おそらく 10 ~ 100 倍遅い) ことに注意してください。

GNU ツールを使用した一般的なビルド プロセスでは、小さなファイルが多数作成されます。単純な構成スクリプトでは、コンパイルを開始する前に環境をテストするために、何千もの小さなファイルが作成され、それらが再度削除されます。長い間お待ちいただくことになるかもしれません。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top