open-vm-tools は、VMware 製品のいくつかの機能を有効にして、ゲストの管理を改善し、ゲストとのシームレスなユーザー操作を可能にするサービスとモジュールのセットです。これには、Linux またはその他の VMware サポート Unix などのゲスト オペレーティング システムを実行している仮想マシンのパフォーマンスを強化するためのカーネル モジュールが含まれています。
open-vm-tools は、VMware 製品の次の機能を有効にします。
ゲストでの電源操作 (再起動とシャットダウン) の正常な実行。
さまざまな電源操作中に、ゲスト内で組み込みまたはユーザーが構成したスクリプトを実行します。
ゲスト内でプログラム、コマンド、ファイル システム操作を実行して、ゲストの自動化を強化します。
ゲスト操作の認証。
ゲストの可用性を判断するために、vSphere HA ソリューションのゲストからホストへのハートビートを生成します。
ゲストとホスト間のクロック同期。
ゲスト ファイル システムを静止して、ホストがファイル システムの一貫性のあるゲスト スナップショットをキャプチャできるようにします。
ゲスト ファイル システムの静止中に、凍結前および解凍後のスクリプトを実行します。
電源投入直後のゲストのカスタマイズ。
ゲストからのネットワーク、ディスク、メモリ使用量情報の定期的な収集。
ゲストのグラフィカルデスクトップ画面のサイズを変更します。
VMware Workstation および VMware Fusion 上のホスト ファイル システムとゲスト ファイル システム間の共有フォルダ操作。
ゲストとホストまたはクライアント デスクトップ間でのテキスト、グラフィック、およびファイルのコピー アンド ペースト。
ゲスト UI とホスト UI の間でファイルをドラッグ アンド ドロップします。
ゲスト内で実行中のアプリケーション、サービス、コンテナーを定期的に収集します。
GuestStore からのコンテンツへのアクセス。
データをゲスト データ パブリッシャーに公開します。
ゲスト変数で指定された Salt-Minion の望ましい状態を管理します。
次のコンポーネントがオープンソース ソフトウェアとしてリリースされています。
さまざまなデバイスおよびファイル システム アクセス用の Linux、Solaris、および FreeBSD ドライバー。
正常な電源操作を実行し、電源スクリプトを実行するための PowerOps プラグイン。
プログラムとコマンドを実行し、ゲストでファイル システム操作を実行するための VIX プラグイン。
ゲストからさまざまな統計を定期的に収集する GuestInfo プラグイン。
時刻同期を実行する TimeSync プラグイン。
ドラッグ アンド ドロップ、テキストおよびファイルのコピー/ペースト操作をサポートする dndcp プラグイン。
ウィンドウ サイズに基づいてゲスト画面の解像度を自動的に調整する ResolutionSet プラグイン。
静止スナップショット操作をサポートする vmbackup プラグイン。
GuestStore の操作をサポートする GuestStore プラグイン。
ゲスト データ公開操作をサポートする gdp プラグイン。
アプリケーション情報を定期的に収集する AppInfo プラグイン。
サービス情報を定期的に収集する ServiceDiscovery プラグイン。
コンテナ情報を定期的に収集する ContainerInfo プラグイン。
必要な状態の操作を処理するための ComponentMgr プラグイン。
ゲスト認証サービス。
ディスクのワイプと縮小、電源スクリプトの管理、および時刻同期を実行するためのツールボックス コマンド。
仮想マシンに関する情報をゲストに提供するゲスト SDK ライブラリ。
共有フォルダーのサポートのためのクライアントとサーバー。
マルチモニターのサポート。
その他のユーティリティ。
はい。ユーザー空間コンポーネント用の open-vm-tools パッケージは、主要な Linux ディストリビューションの新しいバージョンで利用可能であり、場合によっては OS インストールの一部としてインストールされます。詳細については、VMware KB 記事 http://kb.vmware.com/kb/2073803 を参照してください。すべての主要な Linux ベンダーは open-vm-tools をサポートしており、自社製品にバンドルしています。 open-vm-tools の OS 互換性については、http://www.vmware.com/resources/compatibility にある VMware 互換性ガイドを参照してください。 OS のインストールとともに open-vm-tools が自動インストールされるため、個別にインストールする必要がなくなります。ゲストでopen-vm-tools。 open-vm-tools が自動的にインストールされない場合は、ゲスト OS ベンダーのパブリック リポジトリから手動でインストールできる場合があります。 Linux ベンダーのリポジトリから open-vm-tools をインストールすると、open-vm-tools への将来の更新が OS メンテナンス パッチと更新に含まれるため、仮想マシンのダウンタイムが短縮されます。注: ほとんどの Linux ディストリビューションには、2 つ以上の open-vm-tools パッケージが同梱されています。 「open-vm-tools」は X ライブラリに依存しないコア パッケージで、「open-vm-tools-desktop」は「open-vm-tools」コア パッケージと X ライブラリに依存する追加パッケージです。 「open-vm-tools-sdmp」パッケージには、Service Discovery のプラグインが含まれています。追加のパッケージがある場合があります。OS ベンダーのドキュメントを参照してください。 Linux ドライバーは Linux カーネル自体の一部として利用できるため、Linux ディストリビューションで利用できる open-vm-tools パッケージには Linux ドライバーが含まれていないことに注意してください。 Linux カーネル バージョン 3.10 以降には、vmhgfs ドライバーを除く、open-vm-tools に存在するすべての Linux ドライバーが含まれています。共有フォルダー機能を有効にするために vmhgfs ドライバーが必要でしたが、カーネル ドライバーを必要としない vmhgfs-fuse に置き換えられました。
VMware Tools は引き続き商用ライセンスに基づいて利用可能です。 open-vm-tools が利用可能な Linux ディストリビューションでは、open-vm-tools を使用することをお勧めします。 VMware は、open-vm-tools が利用可能なオペレーティング システム用の OSP を提供しません。
GPL の条件に基づいて、オープン ソース コミュニティのメンバーは、open-vm-tools コードを使用して独自のアプリケーションを開発し、拡張し、コミュニティに貢献することができます。 GPL の条項に準拠している限り、コードの一部またはすべてをプロジェクトに組み込むこともできます。
このコードは、GPL v2 および GPL v2 互換ライセンスに基づいてリリースされています。より具体的に言うと、Linux カーネル モジュールは GPL v2 でリリースされており、ユーザー レベルのコンポーネントのほぼすべては LGPL v2.1 でリリースされています。 SVGA およびマウス ドライバーは、X11 ライセンスに基づいてかなり長い間入手可能でした。 BSD スタイル ライセンスの下でリリースされる特定のサードパーティ コンポーネントがあり、VMware が場合によってはこれに貢献しており、引き続き open-vm-tools で配布されます。
Linux カーネルのライセンスとの一貫性を保つために、カーネル コンポーネントには GPL v2 を選択しました。ユーザー レベル コンポーネントに LGPL v2.1 を選択したのは、一部のコードが共有ライブラリとして実装されており、独自のコードがそれらのライブラリにリンクすることを制限したくないためです。一貫性を保つために、残りのユーザーレベル コードも LGPL v2.1 に基づいてライセンス供与することにしました。
これらのライセンスにはそれぞれ異なる義務があります。 GPL、LGPL ライセンスに関する質問については、Free Software Foundation の GPL FAQ ページに多くの役立つ情報が提供されています。 X11、BSD ライセンスなどの他のライセンスに関する質問については、Open Source Initiative にメーリング リストなどの役立つリソースが多数あります。 Software Freedom Law Center は、無料およびオープンソース ソフトウェア (FOSS) 開発者に法的専門知識とコンサルティングを提供します。
オープンソース ライセンスが異なれば、ソース コードのリリースに関する要件も異なります。コードはさまざまなオープン ソース ライセンスに基づいてリリースされているため、対応するライセンスの条件に従う必要があります。
いいえ、open-vm-tools プロジェクトに加えた変更をコントリビュートする必要はありません。ただし、そうすることをお勧めします。
はい、適切なライセンスに準拠している限り、可能です。
はい!ぜひそうしてください。
私たちの目標は、オープンソース バージョンを商用バージョンにできる限り近づけることに努めることです。ただし、現在、サードパーティからライセンスを取得した特定のコンポーネントや、バイナリ形式でのみ利用可能な他の VMware 製品のコンポーネントも使用しています。
いいえ、あなたのプロジェクト/製品は VMware プロジェクト/製品ではないためです。
open-vm-tools は、GNU Automake ツールを使用して Makefile を生成し、すべてのソースをビルドします。 Automake の詳細については、http://www.gnu.org/software/automake/ を参照してください。
次の手順は、最新の Linux ディストリビューションで機能します。
autoreconf -i ./configure make sudo make install sudo ldconfig
オプションの sdmp (Service Discovery) プラグインを構築するには、 --enable-servicediscovery
オプションを使用して構成スクリプトを呼び出します。
./configure --enable-servicediscovery
ソルトミニオンのセットアップ
コンポーネントマネージャープラグイン
ContainerInfo プラグイン (オプション)
Linux での Salt サポートは、VMware 仮想マシン上で Salt Minion をセットアップするための単一の bash スクリプトで構成されています。 このスクリプトでは、システム上で「curl」コマンドと「awk」コマンドを使用できる必要があります。
open-vm-tools パッケージを提供する Linux プロバイダーは、別のオプション パッケージ「open-vm-tools-salt-minion」で Salt Minion サポートを提供することをお勧めします。
open-vm-tools ビルドに Salt Minion セットアップを含めるには、configure スクリプトを呼び出すときに--enable-salt-minion
オプションを使用します。
./configure --enable-salt-minion
コンポーネント マネージャーは、Linux ゲストで使用できる、VMware から入手可能な事前構成されたコンポーネントのセットを管理します。 現在、管理できる唯一のコンポーネントは Salt Minion Setup です。
オプションのcontainerInfoプラグインは、Linuxゲスト上で実行されているコンテナのリストを取得し、そのリストをJSON形式でゲスト変数「 guestinfo.vmtools.containerinfo 」に公開します。 containerInfo プラグインは、gRPC を使用してcontainerd デーモンと通信し、必要な情報を取得します。 Docker によって管理されるコンテナーの場合、プラグインは libcurl を使用して Docker デーモンと通信し、コンテナーの名前を取得します。
このプラグインには追加のビルドおよびランタイム依存関係が必要なため、Linux ベンダーは、このプラグインを別のオプション パッケージ「open-vm-tools-containerinfo」でリリースすることをお勧めします。 これにより、この機能を使用していない顧客にとって不必要な依存関係が回避されます。
依存関係を構築する | ランタイム |
---|---|
libcurl4-openssl-dev | curl |
protobuf-compiler | protobuf |
libprotobuf-dev | grpc++ |
protobuf-compiler-grpc | |
libgrpc++-dev | |
golang-github-containerd-containerd-dev | |
golang-github-gogo-protobuf-dev |
依存関係を構築する | ランタイム |
---|---|
libcurl-devel | curl |
protobuf-compiler | protobuf |
protobuf-devel | grpc-cpp |
grpc-plugins | |
grpc-devel | |
containerd-devel |
必要な依存関係がすべて利用可能な場合、configure スクリプトはデフォルトで ContainerInfo を構築します。 依存関係が不足している場合、ContainerInfo は構築されません。 --enable-containerinfo=no
を指定して構成スクリプトを呼び出し、プラグインのビルドを明示的に禁止します。
./configure --enable-containerinfo=no
構成スクリプトにオプション--enable-containerinfo=yes
が指定されており、必要な依存関係が利用できない場合、構成スクリプトはエラーで終了します。
./configure --enable-containerinfo=yes
このプロジェクトのビルドに関するヘルプや追加の設定を探している場合は、次の configure コマンドを使用すると、ヘルプ オプションのリストが表示されます。
./configure --help
上記の手順でconfigureを使用する場合、最初の呼び出し後に問題が発生しない限り、./configureを1回呼び出すだけで済みます。
今日からいくつかの異なる方法で参加できます。
今すぐ open-vm-tools の使用を開始し、フィードバックをお寄せください。
機能の拡張を提案します。
問題セクションでバグを特定して送信します: https://github.com/vmware/open-vm-tools/issues
他のオペレーティング システムへのコードの移植を開始します。 open-vm-tools を使用するオペレーティング システムのリストは次のとおりです。
Red Hat Enterprise Linux 7.0 以降のリリース
SUSE Linux Enterprise 12 以降のリリース
Ubuntu 14.04 以降のリリース
CentOS 7 以降のリリース
Debian 7.x 以降のリリース
Oracle Linux 7以降
Fedora 19 以降のリリース
openSUSE 11.x 以降のリリース
Flatcar Container Linux、すべてのリリース
Rocky 8 以降のリリース
AlmaLinux OS 8 以降のリリース
はい。当初は VMware エンジニアのみがコミッターとなります。開発インフラストラクチャを展開するにあたり、プロジェクトに外部コミッターを追加することも検討します。
最初は、バグ修正、パッチ、新機能を電子メールまたはバグ レポートの添付ファイルとしてプロジェクト開発メーリング リストに送信できます。ソース コードを寄稿するには、提出プロセスの一環として寄稿契約フォームに記入する必要があります。このプロセスの詳細については、近日中にお知らせします。
open-vm-tools プロジェクトの機能ロードマップとスケジュールは、引き続き VMware によって定義されます。当初は、VMware エンジニアのみが承認されたコミッターになります。受け取った提出物をプロジェクトに統合するのに適しているかどうかを審査します。私たちは、プロジェクトに対する実証済みの貢献に基づいて、コミュニティ コミッターをプロジェクトに追加する予定です。最後に、強化提案やサブプロジェクトの設立などのプロセスも確立する予定です。
open-vm-tools プロジェクトのメイン ソース ツリーに受け入れられるコントリビューションは、おそらく VMware Tools の一部となるでしょう。また、帰属の価値を認識し、皆様の貢献を尊重します。したがって、VMware 製品とともに配布されるコミュニティからの貢献を認めます。
はい。私たちは、プロジェクトに対して行われたすべての貢献をカバーする標準的な貢献契約を締結しています。これにより、VMware とあなたは、あなたが貢献しているコードに対する共同の著作権権を得ることができます。また、この契約により VMware はライセンスに関して柔軟性が得られ、将来発生する可能性のある著作権/ライセンス関連の問題を回避することにも役立ちます。私たちのソースツリーにあなたの貢献を含めるために、署名された契約書のコピーを私たちに送っていただくようお願いします。これは、次の 2 つの方法のいずれかで実行できます。 +1.650.427.5003、宛先: Product & Technology Law Group にファックスで送信します。 スキャンして、oss-queries_at_vmware.com に電子メールで送信します。 契約書: http://open-vm-tools.sourceforge.net/ファイル/vca.pdf
open-vm-tools ソースには、ゲスト ディストリビューション名を公式に認識されている短縮名にマッピングするテーブルが含まれています。このテーブルと関連コードを変更するプル リクエストを送信しないでください。ここでの変更には、VMware ホストでの追加の変更を伴う必要があります。 VMware ホストによって認識されない値は無視されます。
Linux バージョンに合わせて VM を構成する場合は、適切な汎用 Linux 指定を使用してください。 利用可能な選択は、使用されている仮想ハードウェアのバージョンによって異なります。
その他の 5.x 以降の Linux (64 ビット)
その他の 5.x 以降の Linux (32 ビット)
その他の 4.x Linux (64 ビット)
その他の 4.x Linux (32 ビット)
その他の 3.x Linux (64 ビット)
その他の 3.x Linux (32 ビット)
その他の Linux (64 ビット)
その他の Linux (32 ビット)
ゲスト OS カスタマイズ サポート マトリックスには、カスタマイズがサポートされているゲスト オペレーティング システムの詳細が記載されています。
VMware 製品相互運用性マトリックスには、VMware Tools (open-vm-tools を含む) および他の VMware 製品のさまざまなバージョンの互換性に関する詳細が記載されています。
open-vm-tools は次の言語をサポートしています。
英語
フランス語
ドイツ語
スペイン語
イタリア語
日本語
韓国人
簡体字中国語
繁体字中国語
質問の内容に応じて、これらのメーリング リストのいずれかに電子メールを送信してください。
開発関連の質問: [email protected]
その他の質問: [email protected]
プロジェクトの一般的なお知らせ: [email protected]