VirtualboxのゲストのUbuntuにポートフォワードで接続する

以前、virtualboxにインストールしたUbuntuに手の込んだ方法で接続する方法を紹介しました

今回は、ポートフォワードという方法で接続する紹介を勉強しましたので、記事にします。

設定したいOSのSettingsをクリックしてNetworkの設定のタブに移動します。そして、Adapter 1の設定画面でPort Forwardingをクリックします。


すると以下のような画面が出ます。右はしのプラスボタンをクリックして以下のようにSSHとhttpのポートを開放します。



以上で設定完了です。
SSH接続は以下のように行います。
$ ssh kappa@localhost -p 2222
ゲストのUbuntuを起動してapacheが起動した状態で、以下のようにしてhttp://localhost8080に接続すれば、サーバー側のディレクトリを閲覧することが可能です。



以下のサイトを参考にさせて頂きました。
http://www.karakaram.com/virtualbox-port-fowarding

VirtualboxのゲストOSの環境をコピーする

Virtualboxを使用していると、ついついチャレンジングなことをゲスト環境でしてしまい、復旧に手間がかかることがあります。そういった時にゲストOSの環境をそのままコピーしておくことができると大変便利です。それには以下のようにターミナルを用いた処理を必要とします。以下、VirtualboxにUbuntuというゲストOSが入っている前提で話を進めます。

#以下のディレクトリに移動する
$ pwd
/Users/kappa/VirtualBox VMs/Ubuntu

$ ls
Logs             Ubuntu.vbox      Ubuntu.vdi

Snapshots        Ubuntu.vbox-prev 

#virtualboxに備え付けのコピーコマンドを実行する
$ VBoxManage clonehd Ubuntu.vdi Ubuntu_copy.vdi

$ ls
Logs             Ubuntu.vbox      Ubuntu.vdi

Snapshots        Ubuntu.vbox-prev Ubuntu_copy.vdi

これでゲスト環境のコピーファイルが完成しました。Ubuntu_copy.vdiです。最後にこれをVirtualboxに読み込みます。以下はGUI作業です。

最初はこんな感じです。

 FileからVirtual Media Managerを開きます。
 Copyをクリックします。
先ほどターミナルでコピーしたUbuntu_copy.vdiを選択して後はデフォルトの設定に任せていけば、仮想環境がコピーされます。ただし、この段階では仮想ハードディスクがコピーされただけみたいです。

最後に普段行うように、新しいゲストOSの作成を行います。

ここがミソです。Use an existing virtual hard drive fileを選択します。そして、先ほどこコピーしたものを選択します。


これでコピー終了です。


ちゃんと起動し、ログイン画面が表示されました。







Virtualbox4.3.2にWindows8.1をインストールする

Virtualbox4.3.2にWindows8.1(64bit)をインストールをしたときのメモを書きます。

ポイントは2つです。
一つ目はOSが64bitなら、virtualbox側も64bitにそろえること。
二つ目はVirtualbox4.3.2にWindows8.1(64bit)の組み合わせでは、インストール時にエラーが出てしまいます。そこで以下のサイトを参考にして、仮想ハードディスク(名前はWindows8とした)ターミナルからvirtualboxに向けてコマンドを入力してやる必要があります。
$ VBoxManage setextradata Windows8 VBoxInternal/CPUM/CMPXCHG16B 1

参考サイト
http://zak-za-k.blogspot.jp/2013/07/virtualbox-for-macwindows81error-code.html
http://fnya.cocolog-nifty.com/blog/2013/06/virtualbox-wi-1.html

作業時のスクリーンキャプチャを添付しておきます。
以下のようなバージョンで仮想ハードディスクを設定します。
仮想ハードディスクを作成した後はこんな感じ。



killを使ってアプリケーションを強制終了

OS Xを使用していると、アプリケーションの強制終了に苦慮することがあります。そこで今回は、killコマンドを用いて指定したアプリケーションを強制終了することを考えます。

今、Google Chromeがフリーズしてしまったとします。
こういった時は、ターミナルを起動して、以下の作業を行います。


ちなみにpsのカラムは、以下のようになります。

PID : Process IDentification
TTY : そのプロセスが実行されているターミナルの生。??であれば、そのプロセスがGUI画面以外で実行されていことを意味する。
TIME : 特定のプロセスを実行するのに要した時間
CMD : 実行しているプロセスの完全なパス名

【参考文献】
Dave Taylor著 酒井皇治訳『入門 Unix for OS X 』オライリージャパン 2013