GNU/Linux >> Linux の 問題 >  >> Linux

配布する Ubuntu VM の作成

この質問はある程度の意見に基づいていますが、

はい、この手順は実行可能です - 私はそれがあなたが探しているものを達成すると信じており、それは他の Linux ディストリビューションで過去に行ったことです.

唯一の本当の落とし穴は、ディスクのスペースに関するものです...生徒のマシンに、仮想ディスクのサイズを処理するのに十分なディスク スペースがあることを確認してください。また、少なくとも 1 台のマシンでコピーをオフラインにしておくことを確認してください。これにより、生徒が自分のマシンを強制終了したときに、テンプレート/参照ディスクを使用してディスクをすばやく再作成できます。

ダイナミック ディスクの欠点は、VM がデータや更新によって大きくなるにつれて、ホスト OS がより多くのディスク領域を割り当て続ける必要があることです。これには、パフォーマンスのオーバーヘッドがあり、頭痛の種になることがあります。特に、低電力の VM で実行している場合 (ホスト マシンの電力からディスクの拡張に使用される電力を引いたものは、VM の動作を少し遅らせる傾向があります)。その場合は移植できません (学生が VM をいじってしまうと、ラボ内のすべてのマシンが 100 GB 以上になるとは限りません)

ゲスト アドオンはマシン固有ではありません。ほとんどの場合、ドライバー セットです。 VM を新しいホストにインポートすると、VM ドライバーがハードウェアを検出して調整し、新しいホストで動作するようにします。

エレガントなユーザー作成 - よくわかりませんが、最初の起動時に実行され、スクリプトが自己破壊する前にユーザーに新しいアカウントを作成するように求めるスクリプトでしょうか?掘り下げて、5 分の余裕ができたらご連絡いたします。

これが少なくとも部分的に役立つことを願っています.


あなたの質問に正確に答えると、VM を調整して提供可能な VirtualBox VM を渡す必要がある場合は、Packer を使用して、必要なすべての依存関係で VM を事前にパッケージ化することをお勧めします。これはまさにこの目的のために構築されており、ISO からイメージをスピンアップし、そのイメージに対して必要なプロビジョニングを実行してから、配信可能な VirtualBox VM イメージを作成できます。これは、成果物を再現したり何かを追加したりする場合に備えて、成果物に対して行われたことを正確に記録するため、あなたにとっても良いことです。また、プロジェクトをソース管理システムにチェックインして変更を加えることができます。開始するために行われる例を次に示します。

ただし、それらをすばやく実行したい場合は、Vagrant を使用して、標準の Ubuntu イメージで必要なプロビジョニングを実行する Vagrantfile を学生に配布することをお勧めします。これにはいくつかの利点があります:

  • Vagrant は VirtualBox ですぐに使用でき、VM とホスト マシン間でファイルを簡単にコピーできるように共有フォルダーを設定したり、ネットワークを構成して VM へのインターネット アクセスを許可したりするなど、学生にとって難しい部分をすべて処理します。これにより、VirtualBox のセットアップの問題を文書化/デバッグする時間を節約できます。
  • Vagrantfile は、提供可能な VM よりもはるかに小さいです。コースの途中で VM を変更または追加したい場合は、新しい VM を再構築する必要はありません。更新された Vagrantfile を与えるだけです。
  • 修復能力を超えて何かを台無しにした場合、VM を簡単に破棄/再デプロイできます
  • Vagrantfile は、VM に対して何が行われたかを正確に学生に示すため、学生が十分に理解できるようになると、内部で何が起こっているかを確認し、そこから学ぶこともできます。

これは、Ubuntu 14.04 イメージでプロビジョニングを行う方法を示す Vagrantfile の例です。


完全に実現可能です。代替手段は、Vagrant、Puppet、Chef、または同様のものを使用して VM をゼロから構築しますが、セットアップには多くの作業が必要です。

私のサイトの 1 つの開発チームは、新しい開発者を迅速に立ち上げて実行するために同じことを行っています。
画像内の 1 つの事前設定されたアカウント (sudo 権限付き) と、個人アカウントを作成するために必要な手順が記載された短い説明書。

注:ほとんどの場合、VM 内でネットワーク/インターネット アクセスが必要になります。これは、ホストにブリッジまたは NAT 接続できます。どちらを選択するにしても、ホスト側の設定方法を学生に指示する必要があります。 VM 内の NIC を DHCP デバイスとしてセットアップするだけです。これは、後でユーザーが静的 IP アドレスを手動で構成する必要がある場合でも、ほとんどの構成の安全な出発点です。
VM に静的 IP アドレスを設定すると、実際に問題が発生します。これは、同じ LAN 上でオンラインになっている別の VM によって既に使用されていることにバインドされています...


Linux
  1. Linux –ディスク/ディスクのコピーを遅くしますか?

  2. AWS EC2 ubuntu インスタンスのディスク容量を増やす

  3. ubuntu 入出力エラー

  1. Ubuntu20.04でディスク容量を確認する方法

  2. Ubuntu 20.04 および 20.10 でディスク容量を確認するにはどうすればよいですか?

  3. ディスク/ディスクコピーを遅くする

  1. Ubuntu – Ubuntu 16.04でユニットファイルを作成しますか?

  2. パーティションの作成時に認識されないディスク ラベル

  3. ubuntu ライブ ディスクで docker を実行する