何をするにしても母艦の用意が必要だ。
UART接続はWindowsPCからTeraTermで行いたい。
SSHターミナルによるログインも同様。
Kernelの再構築を行ったり、NFSサーバーの為にはLinuxPCが必要。
古いPCにLinuxを入れる事も考えたが、いちいち複数のPCを立ち上げるのも面倒だ。
Windows8.1のノートPCにVMWare上の動作するubuntu-14.04をインストールする事とする。
VMWareは以下から入手。
https://www.vmware.com/jp/
VMware-player-6.0.2-1744117.exe
ubuntsのインストールメディアイメージは以下から入手。
https://www.ubuntulinux.jp/download/ja-remix
ubuntu-14.04-desktop-amd64.iso
BeagleBone BlackからゲストOSにアクセスしやすいようにネットワーク設定はBridge設定とする。
ubuntu-14.04のインストール自体は特に問題無く完了。
ここからは、ゲストOSのパッケージのアップデートを行う。
temp-host@temp-host:~$ sudo apt-get update temp-host@temp-host:~$ sudo apt-get upgrade
ちなみにubuntsでターミナルウインドウを出す簡単な方法はCTR+ALT+T。
これでターミナルを出現させランチャに登録すると良い。
テキストエディッタは好みによるが、ターミナルからgeditを起動しこれもランチャに登録。
ブラウザとしてChoromeをダウンロードしランチャに登録。
だいたいGUIアプリとしてはこれで十分。後はいらないアプリをランチャから削除する。
ゲストOSとホストOSとの間のやり取りを行うためにゲストOSにvmtoolsをインストールする。
仮想CDにある内容を適当な場所にコピーし解凍する。
以下は~$配下に解凍した場合の例。
temp-host@temp-host:~$ ls -ls 合計 48 12 -rw-r--r-- 1 temp-host temp-host 8980 8月 16 23:04 examples.desktop 4 drwxrwxr-x 2 temp-host temp-host 4096 8月 16 23:39 vmtools 4 drwxr-xr-x 2 temp-host temp-host 4096 8月 16 23:15 ダウンロード 4 drwxr-xr-x 2 temp-host temp-host 4096 8月 16 23:15 テンプレート 4 drwxr-xr-x 2 temp-host temp-host 4096 8月 16 23:15 デスクトップ 4 drwxr-xr-x 2 temp-host temp-host 4096 8月 16 23:15 ドキュメント 4 drwxr-xr-x 2 temp-host temp-host 4096 8月 16 23:15 ビデオ 4 drwxr-xr-x 2 temp-host temp-host 4096 8月 16 23:15 ピクチャ 4 drwxr-xr-x 2 temp-host temp-host 4096 8月 16 23:15 ミュージック 4 drwxr-xr-x 2 temp-host temp-host 4096 8月 16 23:15 公開 temp-host@temp-host:~$ cd vmtools temp-host@temp-host:~/vmtools$ ls -la 合計 59844 drwxrwxr-x 3 temp-host temp-host 4096 8月 16 23:39 . drwxr-xr-x 17 temp-host temp-host 4096 8月 16 23:38 .. -rw-rw-r-- 1 temp-host temp-host 61260572 3月 22 08:25 VMwareTools-9.6.2-1688356.tar.gz drwxr-xr-x 7 temp-host temp-host 4096 3月 22 08:24 vmware-tools-distrib temp-host@temp-host:~/vmtools$ cd vmware-tools-distrib/ temp-host@temp-host:~/vmtools/vmware-tools-distrib$ ls -la 合計 480 drwxr-xr-x 7 temp-host temp-host 4096 3月 22 08:24 . drwxrwxr-x 3 temp-host temp-host 4096 8月 16 23:39 .. -rw-r--r-- 1 temp-host temp-host 260079 3月 22 08:24 FILES -rw-r--r-- 1 temp-host temp-host 2538 3月 22 08:24 INSTALL drwxr-xr-x 2 temp-host temp-host 4096 3月 22 08:24 bin drwxr-xr-x 2 temp-host temp-host 4096 3月 22 08:24 doc drwxr-xr-x 5 temp-host temp-host 4096 3月 22 08:24 etc drwxr-xr-x 2 temp-host temp-host 4096 3月 22 08:24 installer drwxr-xr-x 15 temp-host temp-host 4096 3月 22 08:24 lib -rwxr-xr-x 1 temp-host temp-host 192871 3月 22 08:24 vmware-install.pl temp-host@temp-host:~/vmtools/vmware-tools-distrib$ sudo ./vmware-install.pl [sudo] password for temp-host: 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] What is the directory that contains the init scripts? [/etc/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 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 9.6.2 build-1688356 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. The module vmci has already been installed on this system by another installer or package and will not be modified by this installer. The module vsock has already been installed on this system by another installer or package and will not be modified by this installer. 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] Before you can compile modules, you need to have the following installed... make gcc kernel headers of the running kernel Searching for GCC... Detected GCC binary at "/usr/bin/gcc". The path "/usr/bin/gcc" appears to be a valid path to the gcc binary. Would you like to change it? [no] Searching for a valid kernel header path... Detected the kernel headers at "/lib/modules/3.13.0-34-generic/build/include". The path "/lib/modules/3.13.0-34-generic/build/include" appears to be a valid path to the 3.13.0-34-generic kernel headers. Would you like to change it? [no] Using 2.6.x kernel build system. make: ディレクトリ `/tmp/modconfig-haVtiz/vmhgfs-only' に入ります /usr/bin/make -C /lib/modules/3.13.0-34-generic/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. \ MODULEBUILDDIR= modules make[1]: ディレクトリ `/usr/src/linux-headers-3.13.0-34-generic' に入ります CC [M] /tmp/modconfig-haVtiz/vmhgfs-only/backdoor.o CC [M] /tmp/modconfig-haVtiz/vmhgfs-only/backdoorGcc64.o CC [M] /tmp/modconfig-haVtiz/vmhgfs-only/cpName.o CC [M] /tmp/modconfig-haVtiz/vmhgfs-only/bdhandler.o CC [M] /tmp/modconfig-haVtiz/vmhgfs-only/cpNameLinux.o CC [M] /tmp/modconfig-haVtiz/vmhgfs-only/cpNameLite.o CC [M] /tmp/modconfig-haVtiz/vmhgfs-only/dentry.o CC [M] /tmp/modconfig-haVtiz/vmhgfs-only/dir.o CC [M] /tmp/modconfig-haVtiz/vmhgfs-only/file.o CC [M] /tmp/modconfig-haVtiz/vmhgfs-only/filesystem.o CC [M] /tmp/modconfig-haVtiz/vmhgfs-only/fsutil.o CC [M] /tmp/modconfig-haVtiz/vmhgfs-only/hgfsBd.o CC [M] /tmp/modconfig-haVtiz/vmhgfs-only/hgfsEscape.o CC [M] /tmp/modconfig-haVtiz/vmhgfs-only/hgfsUtil.o CC [M] /tmp/modconfig-haVtiz/vmhgfs-only/inode.o CC [M] /tmp/modconfig-haVtiz/vmhgfs-only/link.o CC [M] /tmp/modconfig-haVtiz/vmhgfs-only/message.o CC [M] /tmp/modconfig-haVtiz/vmhgfs-only/module.o CC [M] /tmp/modconfig-haVtiz/vmhgfs-only/page.o CC [M] /tmp/modconfig-haVtiz/vmhgfs-only/request.o CC [M] /tmp/modconfig-haVtiz/vmhgfs-only/rpcout.o CC [M] /tmp/modconfig-haVtiz/vmhgfs-only/stubs.o CC [M] /tmp/modconfig-haVtiz/vmhgfs-only/super.o CC [M] /tmp/modconfig-haVtiz/vmhgfs-only/transport.o CC [M] /tmp/modconfig-haVtiz/vmhgfs-only/vmci.o CC [M] /tmp/modconfig-haVtiz/vmhgfs-only/kernelStubsLinux.o LD [M] /tmp/modconfig-haVtiz/vmhgfs-only/vmhgfs.o Building modules, stage 2. MODPOST 1 modules CC /tmp/modconfig-haVtiz/vmhgfs-only/vmhgfs.mod.o LD [M] /tmp/modconfig-haVtiz/vmhgfs-only/vmhgfs.ko make[1]: ディレクトリ `/usr/src/linux-headers-3.13.0-34-generic' から出ます /usr/bin/make -C $PWD SRCROOT=$PWD/. \ MODULEBUILDDIR= postbuild make[1]: ディレクトリ `/tmp/modconfig-haVtiz/vmhgfs-only' に入ります make[1]: `postbuild' は更新済みです make[1]: ディレクトリ `/tmp/modconfig-haVtiz/vmhgfs-only' から出ます cp -f vmhgfs.ko ./../vmhgfs.o make: ディレクトリ `/tmp/modconfig-haVtiz/vmhgfs-only' から出ます The vmxnet driver is no longer supported on kernels 3.3 and greater. Please upgrade to a newer virtual NIC. (e.g., vmxnet3 or e1000e) 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? [no] Thinprint provides driver-free printing. Do you wish to enable this feature? [yes] Disabling timer-based audio scheduling in pulseaudio. Detected X server version 1.15.1 Distribution provided drivers for Xorg X server are used. Skipping X configuration because X drivers are not included. Creating a new initrd boot image for the kernel. update-initramfs: Generating /boot/initrd.img-3.13.0-34-generic vmware-tools-thinprint start/running vmware-tools start/running The configuration of VMware Tools 9.6.2 build-1688356 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; and, 3. Restart your X session. Enjoy, --the VMware team Found VMware Tools CDROM mounted at /media/temp-host/VMware Tools. Ejecting device /dev/sr0 ... temp-host@temp-host:~/vmtools/vmware-tools-distrib$
途中でいくつかの設問があるが、やりたい事はホストOSとゲストOS間のコピペだけなので すべてデフォルト選択(つまりエンターキー連打)で問題ない。
無事インストールできたのでゲストOSの再起動を行う。
temp-host@temp-host:~$ sudo reboot
ホストOSの再起動後、テキストのコピペ、ファイルのコピペがゲストOS⇔ホストOS間でできるようになった。
vmtoolsがあればクリップボードの共有やファイルのコピペができるので、ホストOSで調べていた内容を ゲストOSを起動後にゲストOS側のterminalにペースト等ができるので便利だ。
後、実を言うとずいぶん長い間、VMWareのゲストOSを正常終了させる方法が判らなかった。
方法は簡単で、shutdownコマンドを入力して、後はただひたすら待つだけだ。
temp-host@temp-host:~$ sudo shutdown -h now
shutdownコマンドを入力してから起動シーケンスが終わり、画面がブラックアウトしてから実際にVMWareが正常終了するまで かなり時間が必要なだけであった。