Articles

vmware / open-vm-tools

Was ist das open-vm-tools-Projekt?

open-vm-tools ist eine Reihe von Diensten und Modulen, die verschiedene Funktionen in VMware-Produkten für eine bessere Verwaltung von und nahtlose Benutzerinteraktionen mit Gästen ermöglichen. Es umfasst Kernel-Module zur Verbesserung der Leistung virtueller Maschinen, auf denen Linux oder andere von VMware unterstützte Unix-ähnliche Gastbetriebssysteme laufen.

open-vm-tools ermöglicht die folgenden Funktionen in VMware-Produkten:

  • Die Fähigkeit, Stromversorgungsvorgänge für virtuelle Maschinen ordnungsgemäß auszuführen.
  • Die Ausführung von VMware bereitgestellten oder vom Benutzer konfigurierten Skripten in Gästen während verschiedener Stromversorgungsvorgänge.
  • Die Fähigkeit, Programme, Befehle und Dateisystemoperationen in Gästen auszuführen, um die Gastautomatisierung zu verbessern.
  • Authentifizierung für Gastoperationen.
  • Periodisches Sammeln von Netzwerk-, Festplatten- und Speichernutzungsinformationen vom Gast.
  • Generierung von Heartbeat von Gästen zu Hosts, damit die HA-Lösung von VMware die Verfügbarkeit der Gäste bestimmen kann.
  • Uhrensynchronisation zwischen Gästen und Hosts oder Client-Desktops.
  • Quiescing von Gastdateisystemen, damit Hosts Dateisystem-konsistente Gast-Snapshots erfassen können.
  • Ausführung von Pre-Freeze- und Post-Thaw-Skripten beim Quiescing von Gastdateisystemen.
  • Die Möglichkeit, Gastbetriebssysteme unmittelbar nach dem Einschalten virtueller Maschinen anzupassen.
  • Aktivierung von gemeinsam genutzten Ordnern zwischen Host- und Gast-Dateisystemen auf VMware Workstation und VMware Fusion.
  • Kopieren und Einfügen von Text, Grafiken und Dateien zwischen Gästen und Hosts oder Client-Desktops.

Können Sie weitere Details zum aktuellen Code nennen, der veröffentlicht wird?

Die folgenden Komponenten wurden als Open-Source-Software veröffentlicht:

  • Linux-, Solaris- und FreeBSD-Treiber für verschiedene Geräte und den Zugriff auf das Dateisystem.
  • Der Memory-Balloon-Treiber für die Rückgewinnung von Arbeitsspeicher von Gästen.
  • Das PowerOps-Plugin zur Durchführung von Graceful Power Operation und zur Ausführung von Power-Skripten.
  • Das VIX-Plugin zum Ausführen von Programmen und Befehlen und zum Durchführen von Dateisystemoperationen in Gästen.
  • Das GuestInfo-Plugin zum periodischen Sammeln verschiedener Statistiken von Gästen.
  • Das TimeSync-Plugin zum Durchführen von Zeitsynchronisation.
  • Das dndcp-Plugin zum Unterstützen von Drag-and-Drop- und Text- und Dateikopier-/Einfügeoperationen.
  • Das ResolutionSet-Plugin zum automatischen Anpassen der Bildschirmauflösungen von Gästen basierend auf den Fenstergrößen.
  • Der Gastauthentifizierungsdienst.
  • Der Toolbox-Befehl zum Durchführen von Festplattenwischen und -schrumpfen, Verwalten von Energieskripten und Zeitsynchronisierung.
  • Die Gast-SDK-Bibliotheken zum Bereitstellen von Informationen über virtuelle Maschinen für Gäste.
  • Unterstützung von Clients und Servern für freigegebene Ordner.
  • Unterstützung für mehrere Monitore.
  • Die GTK Toolbox UI.

Ist open-vm-tools mit Linux-Distributionen verfügbar?

Ja. open-vm-tools-Pakete für Userspace-Komponenten sind mit neuen Versionen der wichtigsten Linux-Distributionen verfügbar und werden in einigen Fällen als Teil der Betriebssysteminstallation installiert. Bitte lesen Sie den VMware KB-Artikel http://kb.vmware.com/kb/2073803 für Details. Alle führenden Linux-Anbieter unterstützen open-vm-tools und bündeln es mit ihren Produkten. Informationen zur Betriebssystemkompatibilität für open-vm-tools finden Sie imVMware Compatibility Guide unter http://www.vmware.com/resources/compatibilityAutomatic Die Installation von open-vm-tools zusammen mit der Betriebssysteminstallation macht eine separate Installation von open-vm-tools in Gästen überflüssig. Wenn open-vm-tools nicht automatisch installiert wird, können Sie es möglicherweise manuell aus dem öffentlichen Repository des Herstellers des Gastbetriebssystems installieren. Die Installation von open-vm-tools aus dem Repository des Linux-Anbieters reduziert die Ausfallzeit der virtuellen Maschine, da zukünftige Updates für open-vm-tools in den Wartungspatches und -updates des Betriebssystems enthalten sind.HINWEIS: Die meisten Linux-Distributionen liefern zwei oder mehr open-vm-tools-Pakete. „open-vm-tools“ ist das Kernpaket ohne Abhängigkeiten von X-Bibliotheken und „open-vm-tools-desktop“ ist ein zusätzliches Paket mit Abhängigkeiten vom „open-vm-tools“-Kernpaket und X-Bibliotheken. Das Paket „open-vm-tools-sdmp“ enthält ein Plugin für Service Discovery. Es kann noch weitere Pakete geben, bitte lesen Sie die Dokumentation des Betriebssystemherstellers. Beachten Sie, dass die open-vm-tools-Pakete, die mit Linux-Distributionen verfügbar sind, keine Linux-Treiber enthalten, da Linux-Treiber als Teil des Linux-Kernels selbst verfügbar sind. Die Linux-Kernel-Versionen 3.10 und später enthalten alle Linux-Treiber, die in open-vm-tools enthalten sind, mit Ausnahme des vmhgfs-Treibers. Der vmhgfs-Treiber war für die Aktivierung der Funktion „Shared Folders“ erforderlich, wird aber durch vmhgfs-fuse ersetzt, das keinen Kernel-Treiber benötigt.

Wird es weiterhin Unterstützung für VMware Tools und OSP geben?

VMware Tools werden weiterhin unter einer kommerziellen Lizenz verfügbar sein. Es wird empfohlen, open-vm-tools für die Linux-Distributionen zu verwenden, für die open-vm-tools verfügbar ist. VMware wird keine OSPs für Betriebssysteme bereitstellen, auf denen open-vm-tools verfügbar ist.

Wie profitieren andere Open-Source-Projekte davon?

Unter den Bedingungen der GPL können Mitglieder der Open-Source-Community den open-vm-tools-Code verwenden, um ihre eigenen Anwendungen zu entwickeln, ihn zu erweitern und zur Community beizutragen. Sie können auch einige oder alle Teile des Codes in ihre Projekte einbinden, vorausgesetzt, sie halten sich an die Bedingungen der GPL.

Unter welcher Lizenz wird der Code veröffentlicht?

Der Code wird unter der GPL v2 und GPL v2 kompatiblen Lizenzen veröffentlicht. Genauer gesagt, die Linux-Kernel-Module werden unter der GPL v2 veröffentlicht, während fast alle Komponenten der Benutzerebene unter der LGPL v2.1 veröffentlicht werden. Die SVGA- und Maustreiber sind schon seit längerer Zeit unter der X11-Lizenz verfügbar. Es gibt einige Komponenten von Drittanbietern, die unter BSD-ähnlichen Lizenzen veröffentlicht wurden, zu denen VMware in einigen Fällen beigetragen hat und die mit open-vm-tools weiter vertrieben werden.

Warum haben Sie diese Lizenzen gewählt?

Wir haben die GPL v2 für die Kernel-Komponenten gewählt, um mit der Lizenz des Linux-Kernels konsistent zu sein. Für die Komponenten der Benutzerebene haben wir die LGPL v2.1 gewählt, da ein Teil des Codes als gemeinsam genutzte Bibliotheken implementiert ist und wir proprietären Code nicht daran hindern wollen, gegen diese Bibliotheken zu linken. Aus Gründen der Konsistenz haben wir uns entschlossen, den restlichen Code der Benutzerebene ebenfalls unter der LGPL v2.1 zu lizenzieren.

Welche Verpflichtungen ergeben sich aus der/den Lizenz(en)?

Jede dieser Lizenzen hat unterschiedliche Verpflichtungen.

Für Fragen zu den GPL- und LGPL-Lizenzen bietet die GPL-FAQ-Seite der Free Software Foundation eine Menge nützlicher Informationen.Für Fragen zu den anderen Lizenzen, wie z.B. den X11- und BSD-Lizenzen, bietet die Open Source Initiative zahlreiche nützliche Ressourcen, einschließlich Mailinglisten.

Das Software Freedom Law Center bietet juristische Expertise und Beratung für Entwickler von freier und quelloffener Software (FOSS).

Kann ich diesen Code ganz oder teilweise in meiner eigenen Software verwenden? Muss ich den Quellcode freigeben, wenn ich das tue?

Die verschiedenen Open-Source-Lizenzen haben unterschiedliche Anforderungen bezüglich der Freigabe des Quellcodes. Da der Code unter verschiedenen Open-Source-Lizenzen veröffentlicht wird, müssen Sie die Bedingungen der entsprechenden Lizenzen einhalten.

Muss ich alle Änderungen, die ich am Code vornehme, zurückgeben?

Nein, Sie sind nicht verpflichtet, alle Änderungen, die Sie vornehmen, an das open-vm-tools-Projekt zurückzugeben. Wir ermutigen Sie jedoch, dies zu tun.

Kann ich diesen Code ganz oder teilweise in einem anderen Open-Source-Paket verwenden?

Ja, solange Sie die entsprechende(n) Lizenz(en) einhalten.

Kann ich dieses Paket für mein bevorzugtes Betriebssystem erstellen?

Ja! Bitte tun Sie das.

Wird sich die kommerzielle Version (VMware Tools) von der Open-Source-Version (open-vm-tools) unterscheiden? Wenn ja, wie?

Unser Ziel ist es, die Open-Source-Version so nah wie möglich an die kommerzielle Version heranzuführen. Allerdings verwenden wir derzeit bestimmte Komponenten, die von Drittanbietern lizenziert wurden, sowie Komponenten aus anderen VMware-Produkten, die nur in binärer Form verfügbar sind.

Wenn ich den Code aus dem open-vm-tools-Projekt in meinem Projekt/Produkt verwende, kann ich mein Projekt/Produkt dann VMware Tools nennen?

Nein, da Ihr Projekt/Produkt kein VMware Projekt/Produkt ist.

Wie baue ich open-vm-tools?

open-vm-tools verwendet das GNU Automake Tool zur Erzeugung von Makefiles, um alle Quellen zu bauen. Weitere Informationen zu Automake finden Sie hier: http://www.gnu.org/software/automake/

Projekt-Build-Informationen:

Die folgenden Schritte funktionieren auf den meisten aktuellen Linux-Distributionen:

autoreconf -i./configuremakesudo make installsudo ldconfig

Um das optionale sdmp (Service Discovery) Plugin zu bauen, verwenden Sie die --enable-servicediscovery Option, um das configure-Skript aufzurufen:

./configure --enable-servicediscovery

Konfigurationsoptionen und Hilfe abrufen

Wenn Sie Hilfe oder zusätzliche Einstellungen für die Erstellung dieses Projekts suchen, zeigt der folgende configure-Befehl eine Liste von Hilfsoptionen an:

./configure --help

Bei der Verwendung von configure in den obigen Schritten ist es nur notwendig, ./configure einmal aufzurufen, es sei denn, es gab ein Problem nach dem ersten Aufruf.

Wie kann ich heute mitmachen?

Sie können sich heute auf verschiedene Arten einbringen:

  • Starten Sie heute mit open-vm-tools und geben Sie uns Feedback.

  • Schlagen Sie Funktionserweiterungen vor.

  • Identifizieren Sie Bugs und reichen Sie diese unter Issues ein: https://github.com/vmware/open-vm-tools/issues

  • Beginnen Sie mit der Portierung des Codes auf andere Betriebssysteme. Hier ist die Liste der Betriebssysteme mit open-vm-tools:

    • Red Hat Enterprise Linux 7.0 und spätere Releases
    • SUSE Linux Enterprise 12 und spätere Releases
    • Ubuntu 14.04 und spätere Releases
    • CentOS 7 und spätere Releases
    • Debian 7.x und spätere Versionen
    • Oracle Linux 7 und spätere Versionen
    • Fedora 19 und spätere Versionen
    • openSUSE 11.x und spätere Versionen

Dürfen externe Entwickler Committer für das Projekt werden?

Ja. Anfangs werden nur VMware-Ingenieure Committer sein. Während wir unsere Entwicklungsinfrastruktur ausbauen, werden wir auch externe Committer in das Projekt aufnehmen.

Wie kann ich Codeänderungen wie Bugfixes, Patches und neue Funktionen an das Projekt übermitteln?

Zunächst können Sie Bugfixes, Patches und neue Funktionen als Anhang an E-Mails oder Bugreports an die Mailingliste für die Projektentwicklung übermitteln. Um Quellcode beizusteuern, müssen Sie als Teil des Einreichungsprozesses ein Beitragsvereinbarungsformular ausfüllen. Weitere Details zu diesem Prozess werden wir in Kürze bekannt geben.

Wie sieht das Governance-Modell für die Verwaltung dieses Open-Source-Projekts aus?

Die Feature-Roadmap und die Zeitpläne für das open-vm-tools-Projekt werden weiterhin von VMware definiert. Anfänglich werden die VMware-Ingenieure die einzigen zugelassenen Committer sein. Wir werden eingehende Beiträge daraufhin überprüfen, ob sie für die Aufnahme in das Projekt geeignet sind. Wir werden versuchen, Committer aus der Community in das Projekt aufzunehmen, die nachweislich zum Projekt beitragen. Schließlich planen wir auch, einen Prozess für Verbesserungsvorschläge, die Einrichtung von Unterprojekten usw. einzurichten.

Werden Sie Code, den ich beisteuere, mit VMware-Produkten ausliefern?

Beiträge, die in den Hauptquellbaum des open-vm-tools-Projekts aufgenommen werden, werden wahrscheinlich ein Teil der VMware Tools sein. Wir erkennen auch den Wert der Zuschreibung an und schätzen Ihre Beiträge. Daher werden wir Beiträge aus der Community anerkennen, die mit VMware-Produkten vertrieben werden.

Muss ich etwas unterschreiben, bevor ich einen Beitrag leiste?

Ja. Wir haben eine Standard-Beitragsvereinbarung, die alle Beiträge zum Projekt abdeckt. Sie gibt VMware und Ihnen gemeinsame Urheberrechte an dem Code, den Sie beisteuern. Die Vereinbarung gibt VMware außerdem Flexibilität bei der Lizenzierung und hilft außerdem, Probleme mit dem Urheberrecht und der Lizenzierung zu vermeiden, die in der Zukunft auftreten können. Damit wir Ihren Beitrag in unseren Source-Tree aufnehmen können, bitten wir Sie, uns eine unterzeichnete Kopie der Vereinbarung zuzusenden. Sie können dies auf zwei Arten tun:Faxen Sie an +1.650.427.5003, Attn: Product & Technology Law GroupScannen Sie die Vereinbarung und senden Sie sie per E-Mail an oss-queries_at_vmware.comAgreement: http://open-vm-tools.sourceforge.net/files/vca.pdf

Welche Betriebssysteme werden für die Anpassung unterstützt?

Die Support-Matrix für die Anpassung von Gastbetriebssystemen enthält Details zu den für die Anpassung unterstützten Gastbetriebssystemen.

Welche Versionen von open-vm-tools sind mit anderen VMware-Produkten kompatibel?

Die VMware-Produktinteroperabilitätsmatrix liefert Details über die Kompatibilität verschiedener Versionen von VMware Tools (einschließlich open-vm-tools) und anderen VMware-Produkten.

Welche Sprachen werden unterstützt?

open-vm-tools unterstützt die folgenden Sprachen:

  • Englisch
  • Französisch
  • Deutsch
  • Spanisch
  • Italienisch
  • Japanisch
  • Koreanisch
  • Vereinfachtes Chinesisch
  • Traditionelles Chinesisch

Mailing-Listen

Bitte senden Sie eine E-Mail an eine dieser Mailing-Listen, je nach Art Ihrer Frage.

Eine Antwort schreiben

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.