VMware Toolsをインストールし、ホストOSとゲストOSで任意のフォルダを共有する設定を行う。
罠にハマって地味に時間をくった。
続き物なので趣旨や準備などを確認したい場合はこちらを先に読んで欲しい。
VMware + Debian jessieでウェブサーバ その1
VMware Toolsのインストール
VMware Toolsをインストールすると、ホストOS(今回のテスト環境ではWindows7 Pro 64bit)の任意のフォルダをゲストOS(VMにインストールしたDebian jessie)と共有することが出来る。
簡単に言うと、Windows側でフォルダに好きなファイルを放り込んだらゲストOS側で即読めるって事だね。
open-vm-toolsは使わない
詳しくは最後の方で書くけど、open-vm-toolsが推奨されている感じだったけどテスト環境では動かなかった。
ランタイム フォルダ共有状態をアップデートできません:ゲスト OS 内での共有フォルダ ファイルのマウント中にエラーが発生しました
というやつ。
これでだいぶ時間を食ってしまったけど、結局今は推奨されてないほうのインストール方法を取ることで無事にフォルダの共有が可能になった。
なので今回はクラシックなインストール方法で解説する。
必要なパッケージのインストール
予め必要になるパッケージをインストールしておく。
必要になるのは以下の4つ。
- perl
- gcc
- make
- linux-headers
不足しているパッケージがあればさっくりインストール。
[bash]
apt-get update
apt-get -y install perl gcc make
apt-get install linux-headers-$(uname -r)
[/bash]
VM Toolsのインストール準備
VMのPlayer→管理にあるVMware Toolsのインストールをクリックする。
そうするとインストーラなどが入ったCD(のイメージ)が挿入された状態になるので、マウントして必要なファイルを取り出す。
[bash]
cd /mnt
mkdir cdrom
mount /dev/cdrom /mnt/cdrom
cd cdrom
[/bash]
VMwareTools-10.0.5-3228253.tar.gz が目的のブツなので、適当な場所にコピーする。
大体どこでも良いので/home/ktms内にコピーしたが、/tmp以下なども普通だ。
コピーが終わったら展開する。
[bash]
cp VMwareTools-10.0.5-3228253.tar.gz ~ktms/.
cd ~ktms
tar xvfz VMwareTools-10.0.5-3228253.tar.gz
cd vmware-tools-distrib
[/bash]
vmware-install.plの実行
いよいよインストールを開始する。
必要なパッケージがしっかり揃っていれば、基本的に何か聞かれたらそのままEnterを押すだけでよかった。
ただし、それはインストールが始まってからの話であり、一番最初に「open-vm-tools推奨してるから使いなよ」みたいな事を言われるので(今回のケースでは)デフォルトのNoでなくYesと入力する。
[bash]
perl vmware-install.pl
#問題のopen-vm-tools使いなよっていうやつ。yesと入力してEnter
open-vm-tools are available from the OS vendeor and VMware recommends using.
open-vm-tools. See http://kb.vmware.com/kb/2073803 for more information
do you still want to proceed with tihs legacy installer?
#以下は何か聞かれたら黙ってEnterで無事にインストールが完了する・・・はず。
[/bash]
共有するフォルダの設定
Player→管理→仮想マシン設定を開く。
オプションタブに共有フォルダ項目があるので、「常に有効」をチェックすると共有フォルダ追加ウィザードがでる。
今回はDebian jessieのデータが入ったフォルダにshareフォルダを作ってホストパスにそれを指定した。
名前はゲスト側でマウントしたときのディレクトリ名になる。
このあたりは好きなように指定したら良い。
属性は「この共有を有効化」のみチェックをつけて完了。
自動的にDebian jessie側でマウントされるのでdfコマンドで確認する。
マウント先を変更する
デフォルトでは共有するフォルダが/mnt/hgfsにマウントされる。
これを例えば/home/ktmsにマウントしたい場合がある、というか大半だと思う。
方法としては以下のとおりだ。
- 任意のディレクトリを指定してマウントする
- デフォルトの設定は維持してシンボリックリンクを貼る
1に関しては、以下を参考にコマンドを入力する。
mount -t vmhgfs .host:/ /home/user1/shares
すべての共有を /home/user1/shares にマウントします。mount -t vmhgfs .host:/foo /tmp/foo
共有 foo を /tmp/foo にマウントします。mount -t vmhgfs .host:/foo/bar /var/lib/bar
共有 foo 内のサブディレクトリ bar を /var/lib/bar にマウントします。
そのままでは再起動時すると再度マウントが必要になるので、/etc/fstabの編集などが必要になりそうだ。
2.に関しては、楽といえば楽な感じだが、本記事のテーマどおりApacheで共有フォルダを公開する場合、Apacheがシンボリックリンクをたどれるようにしないとダメだと思うので、そこだけは気をつけておきたい。
今回はとりあえずシンボリックリンクにしたよ。楽だからね。
[bash]
ln -s /mnt/hgfs/share /home/ktms/share
[/bash]
あとがき
vmware-install.plを実行したらopen-vm-toolsインストールしたら?といわれたが、インストールしても「ランタイム フォルダ共有状態をアップデートできません」と出てどうにもならなかった。
インストール時にエラーは出ていなかったので理由はサッパリ。
検証する前にapt-get —purge remove open-vm-tools とアンインストールし、vmware-install.plでのインストールに必要なものを揃えて試したら普通に動いたので闇の中だ。
そもそも推奨しているのであればVMware Toolsのインストールをはじめたとき先に言えよ!ってなったし、推奨してるなら動いてちょうだいよ!ってなったし、色々ストレスがたまる展開。
別にそこまで面倒でもないので最初から普通にしたらよかったな・・・。
さて、お次はDebian jessieにApache(2.4)をインストールして設定するよ。
2016年01月16日 追記
VMware + Debian jessieでウェブサーバ その3
コメント