仮想化

VirtualBoxで仮想シリアルポート同士をクロス接続する

 シリアル通信を行うプログラムのテストをするときに、仮想マシン上でなんとかしたい場合があります。
 普通はそんな状況は滅多にないでしょうが、稀に無いとも言えません。しかもそんな稀なケースでは得てして送信側と受信側の2つのポートが必要だったりします。

 そこで、仮想マシンに2つの仮想シリアルポートを作り、それを名前付きパイプでクロス接続することにします。

 VMwareなら片方をサーバ、もう一方をクライアントにしてオシマイです。
 それではつまらないので、VirtualBoxならどうすればいいのか。そんな設定は無いぞ。

 やってみました。

 両方の仮想シリアルポートのポートモードをパイプにして、同じパイプを参照するようにすれば良いかと思ったら、「そのパイプはすでに使っている」とか言って設定できません。VMwareのようにサーバとクライアントを選ぶこともできません。

 こんなときはVBoxManagerのヘルプを見てみます。

$ VBoxManager modifyvm

 とやると仮想マシンの設定変更コマンドヘルプがズラズラ〜と出てきます。この中の–uartmodeが目的のオプションです。

$ VBoxManager modifyvm 仮想マシン名 --uart1 on
$ VBoxManager modifyvm 仮想マシン名 --uart2 on
$ VBoxManager modifyvm 仮想マシン名 --uartmode1 server パイプのファイル名
$ VBoxManager modifyvm 仮想マシン名 --uartmode2 client パイプのファイル名

 と設定してやると、 仮想マシン上でいい塩梅にクロス接続されます。

VMware 仮想ディスクの容量を拡張する

VMware Technorogy NetworkのダウンロードページからVMware Virtual Disk Development Kit(VDDK)をダウンロード&インストールする(要登録)。

$ vmware-vdiskmanager -x 20G hoge.vmdk

という感じ容量を拡張。

GPartedのISOイメージをダウンロードして、仮想マシンをGPartedのISOイメージから起動。

パーティションをリサイズして再起動。
シャットダウンが終わると「ディスクを抜いてEnterを押せ」と言うので、仮想マシンのCD-ROMドライブからGPartedのISOイメージを解除して再起動。

Linuxゲストはスワップパーティションが後ろにつかえてリサイズできないときがある。
そんなときは一旦スワップパーティションを削除してから改めていちばん後ろに作り直してやると、スワップパーティションの前に隙間が空くので、前にあるパーティションがリサイズできるようになる。

UbuntuでのVMware Workstation再設定

カーネルアップデートなどの後、VMware関連モジュールのリビルドを行うコマンド。

Ubuntu12.04.1 VMware8.0.4

ページのトップへ