open-vm-tools는 게스트를 더 잘 관리하고 원활한 사용자 상호 작용을 위해 VMware 제품의 여러 기능을 활성화하는 서비스 및 모듈 세트입니다. 여기에는 Linux 또는 게스트 운영 체제와 같은 기타 VMware 지원 Unix를 실행하는 가상 머신의 성능을 향상시키기 위한 커널 모듈이 포함되어 있습니다.
open-vm-tools는 VMware 제품에서 다음 기능을 활성화합니다.
게스트에서 전원 작업(재부팅 및 종료)을 정상적으로 실행합니다.
다양한 전원 작업 중에 게스트에서 내장 스크립트 또는 사용자 구성 스크립트를 실행합니다.
게스트 자동화를 향상시키기 위해 게스트에서 프로그램, 명령 및 파일 시스템 작업을 실행합니다.
게스트 작업에 대한 인증입니다.
게스트의 가용성을 확인하기 위해 vSphere HA 솔루션을 위해 게스트에서 호스트로 하트비트를 생성합니다.
게스트와 호스트 간의 시계 동기화.
호스트가 파일 시스템과 일치하는 게스트 스냅샷을 캡처할 수 있도록 게스트 파일 시스템을 정지합니다.
게스트 파일 시스템을 정지하는 동안 사전 동결 및 사후 해동 스크립트 실행.
전원을 켠 직후 게스트를 사용자 정의합니다.
게스트로부터 네트워크, 디스크, 메모리 사용량 정보를 주기적으로 수집합니다.
게스트의 그래픽 데스크탑 화면 크기를 조정합니다.
VMware Workstation 및 VMware Fusion에서 호스트와 게스트 파일 시스템 간의 공유 폴더 작업.
게스트와 호스트 또는 클라이언트 데스크톱 간에 텍스트, 그래픽, 파일을 복사하고 붙여넣습니다.
게스트와 호스트 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 배포판은 두 개 이상의 open-vm-tools 패키지를 제공합니다. "open-vm-tools"는 X 라이브러리에 대한 종속성이 없는 핵심 패키지이고 "open-vm-tools-desktop"은 "open-vm-tools" 코어 패키지 및 X 라이브러리에 대한 종속성이 있는 추가 패키지입니다. "open-vm-tools-sdmp" 패키지에는 서비스 검색용 플러그인이 포함되어 있습니다. 추가 패키지가 있을 수 있으므로 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 라이센스에 따라 사용 가능했습니다. 일부 경우에는 VMware가 기여했으며 계속해서 open-vm-tools를 통해 배포할 예정인 BSD 스타일 라이센스로 출시된 특정 타사 구성 요소가 있습니다.
우리는 Linux 커널 라이센스와 일관성을 유지하기 위해 커널 구성 요소에 대해 GPL v2를 선택했습니다. 우리는 일부 코드가 공유 라이브러리로 구현되고 독점 코드가 해당 라이브러리에 연결되는 것을 제한하고 싶지 않기 때문에 사용자 수준 구성 요소에 대해 LGPL v2.1을 선택했습니다. 일관성을 위해 우리는 LGPL v2.1에 따라 나머지 사용자 수준 코드에도 라이선스를 부여하기로 결정했습니다.
각 라이센스에는 서로 다른 의무가 있습니다. GPL, LGPL 라이센스에 대한 질문이 있는 경우 자유 소프트웨어 재단(Free Software Foundation)의 GPL FAQ 페이지에서 유용한 정보를 많이 제공합니다. X11, BSD 라이센스와 같은 다른 라이센스에 대한 질문이 있는 경우 오픈 소스 이니셔티브(Open Source Initiative)에는 메일링 리스트를 포함한 수많은 유용한 리소스가 있습니다. 소프트웨어 자유 법률 센터는 무료 및 오픈 소스 소프트웨어(FOSS) 개발자를 위한 법률 전문 지식과 컨설팅을 제공합니다.
오픈 소스 라이선스마다 소스 코드 릴리스에 대한 요구 사항이 다릅니다. 코드는 다양한 오픈소스 라이선스에 따라 공개되므로 해당 라이선스의 조건을 준수해야 합니다.
아니요, open-vm-tools 프로젝트에 대한 변경 사항을 다시 제공할 필요는 없습니다. 하지만 그렇게 하시길 권장합니다.
예, 해당 라이센스를 준수하는 한 가능합니다.
예! 그렇게 해주세요.
우리의 목표는 오픈 소스 버전을 상용 버전에 최대한 가깝게 만드는 것입니다. 그러나 현재 당사는 제3자로부터 라이센스를 받은 특정 구성 요소와 바이너리 형식으로만 제공되는 다른 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(서비스 검색) 플러그인을 빌드하려면 --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 설정을 포함하려면 구성 스크립트를 호출할 때 --enable-salt-minion
옵션을 사용하세요.
./configure --enable-salt-minion
구성 요소 관리자는 Linux 게스트에서 사용할 수 있는 VMware에서 사용할 수 있는 사전 구성된 구성 요소 집합을 관리합니다. 현재 관리할 수 있는 유일한 구성 요소는 Salt Minion Setup입니다.
선택적 컨테이너Info 플러그인은 Linux 게스트에서 실행 중인 컨테이너 목록을 검색하고 해당 목록을 게스트 변수 " guestinfo.vmtools.containerinfo "에 JSON 형식으로 게시합니다. 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 |
필요한 모든 종속성을 사용할 수 있을 때 구성 스크립트는 기본적으로 ContainerInfo를 빌드합니다. 종속성이 누락된 경우 ContainerInfo가 빌드되지 않습니다. --enable-containerinfo=no
사용하여 구성 스크립트를 호출하여 플러그인 빌드를 명시적으로 금지합니다.
./configure --enable-containerinfo=no
구성 스크립트에 --enable-containerinfo=yes
옵션이 제공되고 필요한 종속성을 사용할 수 없는 경우 구성 스크립트는 오류와 함께 종료됩니다.
./configure --enable-containerinfo=yes
이 프로젝트 구축에 대한 도움말이나 추가 설정을 찾고 있는 경우 다음 구성 명령을 사용하면 도움말 옵션 목록이 표시됩니다.
./configure --help
위 단계에서 구성을 사용할 때 첫 번째 호출 후 문제가 발생하지 않는 한 ./configure를 한 번만 호출하면 됩니다.
오늘부터 다양한 방법으로 참여할 수 있습니다:
지금 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 이상 릴리스
데비안 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에 라이센싱에 대한 유연성을 제공하고 향후 발생할 수 있는 저작권/라이센스 관련 문제를 방지하는 데도 도움이 됩니다. 귀하의 기여를 소스 트리에 포함시키려면 서명된 계약서 사본을 보내주시기 바랍니다. 다음 두 가지 방법 중 하나로 이를 수행할 수 있습니다. +1.650.427.5003으로 팩스를 보내고 Attn: Product & Technology Law Group Scan으로 이메일을 보내 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]