CentOSにVMware Toolsをインストールする

最近ではLinuxでもGUIベースでVMware Toolsのインストールができるようになってきた。
とはいえ、コマンドラインオンリーの場合も多いので、
コマンドベースでのVMware Toolsのインストールをメモしておく。

今回使用するディストリビューションはCentOSとする。
バージョンは6.9だが、6台ならほとんど一緒だろうと思う。
VMwareはplayerを使用している。


VMware Toolsのインストール


まずはCentOSを起動させて、Player>管理>VMware Toolsのインストール をクリックする。

vmt000.JPG

これでCDROMにVMware ToolsのISOファイルがマウントされる。
正常にマウントされればメッセージも出るが、下記のようにメニューの項目も変化する。
"VMware Toolsのインストール"が"VMware Toolsのインストールをキャンセル"となる。

vmt001.JPG

これで準備が整ったので、コマンド操作に移る。
コンソールよりはターミナルソフトで接続した方が何かと便利だ。

とりあえずマウント用のディレクトリがあるか確認。

 # ls /mnt
cdrom


自分の環境では"cdrom"というディレクトリが存在した。
もし無ければ下記のように作成する。
ディレクトリ名は任意で問題ないが、解りやすい方が良いと思う。

 # mkdir /mnt/cdrom


次はCDROMをマウントする。

 # mount /dev/cdrom /mnt/cdrom/
mount: ブロックデバイス /dev/sr0 は書き込み禁止です、読込み専用でマウントします


マウントした内容を確認。
中身が見えていればマウント成功となる。

 # ls /mnt/cdrom/
VMwareTools-10.1.6-5214329.tar.gz vmware-tools-upgrader-32
manifest.txt vmware-tools-upgrader-64
run_upgrader.sh


次に、TEMPディレクトリにファイルコピー用のディレクトリを作成する。
ディレクトリ名は任意で問題ない。
これはファイルを解凍したりすると複数ディレクトリやファイルが出来る為、
後々削除しやすくする為に一時ディレクトリにまとめている。

 # mkdir /tmp/vmtools


作成したディレクトリの確認。

 # ls /tmp
vgauthsvclog.txt.0 vmtools yum.log


次に、マウントポイントから一時ディレクトリに圧縮ファイルをコピーする。
コピー先のファイル名を変更しても良いが、今回はそのままの名前でコピーする。

 # cp /mnt/cdrom/VMwareTools-10.1.6-5214329.tar.gz /tmp/vmtools/


コピー確認。

 # ls /tmp/vmtools/
VMwareTools-10.1.6-5214329.tar.gz


正常にコピーできていれば、先程マウントしたCDROMをアンマウントする。

 # umount /mnt/cdrom


アンマウント確認。
正常にアンマウント出来ていれば、ディレクトリの中身が空っぽになる。

 # ls /mnt/cdrom/
※何も表示されずプロンプトが返ってくればOK


先程圧縮ファイルをコピーした一時ディレクトリに移動。

 # cd /tmp/vmtools/


次にコピーした圧縮ファイルを解凍する。
解凍時の注意としては"tar"のオプションから"-v"を外したほうが良い。
中身のファイルは大量にある為、ログが流れてしまうからだ。
特に気にならなければ"-v"ありでも何の問題もない。

 # tar -zxf VMwareTools-10.1.6-5214329.tar.gz


解答後、下記のように新しいディレクトリが出来ているのでそちらに移動する。

 # ls
VMwareTools-10.1.6-5214329.tar.gz vmware-tools-distrib
# cd vmware-tools-distrib/
# ls
FILES INSTALL bin caf doc etc installer lib vgauth vmware-install.pl


いよいよインストーラーを実行する。
対話形式でいちいち確認を求められるが、そのままEnterを押していけば良い。

 # ./vmware-install.pl
Creating a new VMware Tools installer database using the tar4 format.

Installing VMware Tools.

In which directory do you want to install the binary files?
[/usr/bin]

What is the directory that contains the init directories (rc0.d/ to rc6.d/)?
[/etc/rc.d]

What is the directory that contains the init scripts?
[/etc/rc.d/init.d]

In which directory do you want to install the daemon files?
[/usr/sbin]

In which directory do you want to install the library files?
[/usr/lib/vmware-tools]

The path "/usr/lib/vmware-tools" does not exist currently. This program is
going to create it, including needed parent directories. Is this what you want?
[yes]


In which directory do you want to install the common agent library files?
[/usr/lib]
In which directory do you want to install the common agent transient files?
[/var/lib]

In which directory do you want to install the documentation files?
[/usr/share/doc/vmware-tools]

The path "/usr/share/doc/vmware-tools" does not exist currently. This program
is going to create it, including needed parent directories. Is this what you
want? [yes]

The installation of VMware Tools 10.1.6 build-5214329 for Linux completed
successfully. You can decide to remove this software from your system at any
time by invoking the following command: "/usr/bin/vmware-uninstall-tools.pl".

Before running VMware Tools for the first time, you need to configure it by
invoking the following command: "/usr/bin/vmware-config-tools.pl". Do you want
this program to invoke the command for you now? [yes]

Initializing...


Making sure services for VMware Tools are stopped.



Found a compatible pre-built module for vmci. Installing it...


Found a compatible pre-built module for vsock. Installing it...


The module vmxnet3 has already been installed on this system by another
installer or package and will not be modified by this installer.

The module pvscsi has already been installed on this system by another
installer or package and will not be modified by this installer.

The module vmmemctl has already been installed on this system by another
installer or package and will not be modified by this installer.

The VMware Host-Guest Filesystem allows for shared folders between the host OS
and the guest OS in a Fusion or Workstation virtual environment. Do you wish
to enable this feature? [yes]

Found a compatible pre-built module for vmhgfs. Installing it...


Found a compatible pre-built module for vmxnet. Installing it...


The vmblock enables dragging or copying files between host and guest in a
Fusion or Workstation virtual environment. Do you wish to enable this feature?
[yes]

VMware automatic kernel modules enables automatic building and installation of
VMware kernel modules at boot that are not already present. This feature can
be enabled/disabled by re-running vmware-config-tools.pl.

Would you like to enable VMware automatic kernel modules?
[yes]

Do you want to enable Guest Authentication (vgauth)? Enabling vgauth is needed
if you want to enable Common Agent (caf). [yes]

No X install found.

Creating a new initrd boot image for the kernel.
Generating the key and certificate files.
Successfully generated the key and certificate files.
vmware-tools-thinprint start/running
initctl: Job failed to start
Unable to start services for VMware Tools

Execution aborted.

#


"aborted"???なぜ!?
"Job failed to start"というエラーが出ている。なんだこれは・・・?

その後何回やっても改善しなかったが、色々と調べてみたところ、
どうやら"fuse-libs"というパッケージが入っていないとダメらしい。

前に"package-cleanup --leaves"か何かで不要と判断して削除してしまったのだろうか?
原因究明は置いておいて早速インストールする。

 # yum -y install fuse-libs


まさかそんなところで引っかかってくるとは・・・。
Linuxの恐ろしいところである。

"fuse-libs"インストールが終わったので、
気を取り直して再度インストーラーを実行する。

 # ./vmware-install.pl 
A previous installation of VMware Tools has been detected.

The previous installation was made by the tar installer (version 4).

Keeping the tar4 installer database format.

You have a version of VMware Tools installed. Continuing this install will
first uninstall the currently installed version. Do you wish to continue?
(yes/no) [yes]

Uninstalling the tar installation of VMware Tools.

Stopping services for vmware-tools

initctl: Unknown instance:
Stopping services for vmware-tools-thinprint

vmware-tools-thinprint stop/waiting
This program previously created the directory /etc/vmware-tools, and was about
to remove it. Since there are files in that directory that this program did not
create, it will not be removed.

The removal of VMware Tools 10.1.6 build-5214329 for Linux completed
successfully.

Installing VMware Tools.

In which directory do you want to install the binary files?
[/usr/bin]

What is the directory that contains the init directories (rc0.d/ to rc6.d/)?
[/etc/rc.d]

What is the directory that contains the init scripts?
[/etc/rc.d/init.d]

In which directory do you want to install the daemon files?
[/usr/sbin]

In which directory do you want to install the library files?
[/usr/lib/vmware-tools]

The path "/usr/lib/vmware-tools" does not exist currently. This program is
going to create it, including needed parent directories. Is this what you want?
[yes]

In which directory do you want to install the common agent library files?
[/usr/lib]

In which directory do you want to install the common agent transient files?
[/var/lib]

In which directory do you want to install the documentation files?
[/usr/share/doc/vmware-tools]

The path "/usr/share/doc/vmware-tools" does not exist currently. This program
is going to create it, including needed parent directories. Is this what you
want? [yes]

The installation of VMware Tools 10.1.6 build-5214329 for Linux completed
successfully. You can decide to remove this software from your system at any
time by invoking the following command: "/usr/bin/vmware-uninstall-tools.pl".

Before running VMware Tools for the first time, you need to configure it by
invoking the following command: "/usr/bin/vmware-config-tools.pl". Do you want
this program to invoke the command for you now? [yes]

Initializing...


Making sure services for VMware Tools are stopped.



Found a compatible pre-built module for vmci. Installing it...


Found a compatible pre-built module for vsock. Installing it...


The module vmxnet3 has already been installed on this system by another
installer or package and will not be modified by this installer.

The module pvscsi has already been installed on this system by another
installer or package and will not be modified by this installer.

The module vmmemctl has already been installed on this system by another
installer or package and will not be modified by this installer.

The VMware Host-Guest Filesystem allows for shared folders between the host OS
and the guest OS in a Fusion or Workstation virtual environment. Do you wish
to enable this feature? [yes]

Found a compatible pre-built module for vmhgfs. Installing it...


Found a compatible pre-built module for vmxnet. Installing it...


The vmblock enables dragging or copying files between host and guest in a
Fusion or Workstation virtual environment. Do you wish to enable this feature?
[yes]

VMware automatic kernel modules enables automatic building and installation of
VMware kernel modules at boot that are not already present. This feature can
be enabled/disabled by re-running vmware-config-tools.pl.

Would you like to enable VMware automatic kernel modules?
[yes]

Do you want to enable Guest Authentication (vgauth)? Enabling vgauth is needed
if you want to enable Common Agent (caf). [yes]

No X install found.

Creating a new initrd boot image for the kernel.

NOTE: both /etc/vmware-tools/GuestProxyData/server/key.pem and
/etc/vmware-tools/GuestProxyData/server/cert.pem already exist.
They are not generated again. To regenerate them by force,
use the "vmware-guestproxycerttool -g -f" command.

vmware-tools-thinprint start/running
vmware-tools start/running
The configuration of VMware Tools 10.1.6 build-5214329 for Linux for this
running kernel completed successfully.

You must restart your X session before any mouse or graphics changes take
effect.

You can now run VMware Tools by invoking "/usr/bin/vmware-toolbox-cmd" from the
command line.

To enable advanced X features (e.g., guest resolution fit, drag and drop, and
file and text copy/paste), you will need to do one (or more) of the following:
1. Manually start /usr/bin/vmware-user
2. Log out and log back into your desktop session
3. Restart your X session.

to use the vmxnet driver, either reboot or
1. stop networking or stop any interface using the vmxnet or pcnet32 driver
2. remove the pcnet32 module with 'rmmod pcnet32'
3. remove the vmxnet module with 'rmmod vmxnet'
4. load the vmxnet module with 'modprobe -v vmxnet'
5. and restart networking or restart the stopped network interfaces

Enjoy,

--the VMware team

#


やった!今度はちゃんとインストールできたや。
インストール後は一旦再起動する。

 # reboot
または
# shutdown -r now


再起動後、ステータスを確認。
下記のようになっていれば問題なし。

 # status vmware-tools
vmware-tools start/running



意外なところに落とし穴があったが、最終的に上手くいったので良しとしよう。
次はVMware Toolsのアンインストール方法もメモっておこうかな。


以上。



Windows上でラクラク学べるLinux OS 超入門


この記事へのコメント