The Fat Bloke Singshttps://blogs.oracle.com/fatbloke/
Thoughts from a Fat Blokeen-usCopyright 2015Sun, 22 Mar 2015 11:34:01 +0000Apache Roller BLOGS401ORA6 (20130904125427)https://blogs.oracle.com/fatbloke/entry/fatbloke_sings_his_last_atFatBloke Sings his Last (at Oracle)Fat Blokehttps://blogs.oracle.com/fatbloke/entry/fatbloke_sings_his_last_at
Wed, 29 Jan 2014 18:29:36 +0000VirtualBoxfatblokevirtualboxvirtualization<p>It has been a good run, but onwards and upwards, as they say...&nbsp;</p>
<p>After a run which incorporated Tarantella, Sun Microsystems and most recently Oracle, the Fat Bloke is finally signing off from Virtualization and Oracle.</p>
<p>As an industry (or maybe simply industrial <img src="https://blogs.oracle.com/images/smileys/wink.gif" class="smiley" alt=";-)" title=";-)" /> ) figure he was always going to be in demand, but how will his departure be received by the multitude (or both) of his fans? And where will they get their regular fix of cool stuff that you can do with VirtualBox and SGD?</p>
<p>Well, we can at least answer that one: future blogs will appear over on the <a href="https://blogs.oracle.com/virtualization/" title="Virtualization">Oracle Virtualization blog</a>&nbsp;.</p>
<p>And for the curious, or maybe plain desperate, look towards the west ( &nbsp;<a href="https://twitter.com/thefatbloke" title="FatBloke">@fatbloke</a>&nbsp; ) on Monday 3rd Feb, 2014.</p>
<p>Thank you and good night,</p>
<p>- FB&nbsp;</p>https://blogs.oracle.com/fatbloke/entry/cloning_from_a_given_pointCloning from a given point in the snapshot treeFat Blokehttps://blogs.oracle.com/fatbloke/entry/cloning_from_a_given_point
Thu, 17 Oct 2013 10:05:30 +0000VirtualBoxfatblokevirtualboxvirtualization<div style="border-width: 0px; background-color: #ffffff;">
<p><img alt="VirtualBox.png" src="http://blogs.oracle.com/virtualization/resource/virtualbox/VirtualBox.png" width="64" height="64" class="mt-image-left" style="cursor: default; float: left; margin: 0px 20px 20px 0px;" /></p>
<p>Although we have <a href="https://blogs.oracle.com/fatbloke/entry/what_s_new_in_virtualbox" title="New!">just released VirtualBox 4.3</a>, this quick blog entry is about a longer standing ability of VirtualBox when it comes to Snapshots and Cloning, and was prompted by a question posed internally, here in Oracle: &quot;Is there a way I can create a new VM from a point in my snapshot tree?&quot;.</p>
<p> </p>
<p>Here's the scenario: Let's say you have your favourite work VM which is Oracle Linux based and as you installed different packages, such as database, middleware, and the apps, you took snapshots at each point like this:</p>
<p><img width="600" src="https://blogs.oracle.com/fatbloke/resource/clone-from-snapshot/1.png" alt="Base system" /></p>
<p>But you then need to create a new VM for some other testing or to share with a colleague who will be using the same Linux and Database layers but may want to reconfigure the Middleware tier, and may want to install his own Apps. All you have to do is right click on the snapshot that you're happy with and clone:</p>
<p><img width="600" src="https://blogs.oracle.com/fatbloke/resource/clone-from-snapshot/2.png" /></p>
<p>Give the VM that you are about to create a name, and if you plan to use it on the same host machine as the original VM, it's a good idea to &quot;Reinitialize the MAC address&quot; so there's no clash on the same network:</p>
<p><img width="600" src="https://blogs.oracle.com/fatbloke/resource/clone-from-snapshot/3.png" /></p>
<p>Now choose the Clone type. If you plan to use this new VM on the same host as the original, you can use Linked Cloning else choose Full.&nbsp;</p>
<p> <img width="600" src="https://blogs.oracle.com/fatbloke/resource/clone-from-snapshot/4.png" /></p>
<p> </p>
<p>At this point you now have a choice about what to do about your snapshot tree. In our example, we're happy with the Linux and Database layers, but we may want to allow our colleague to change the upper tiers, with the option of reverting back to our known-good state, so we'll retain the snapshot data in the new VM from this point on:</p>
<p> </p>
<p> <img width="600" src="https://blogs.oracle.com/fatbloke/resource/clone-from-snapshot/5.png" /></p>
<p>The cloning process then chugs along and may take a while if you chose a Full Clone:</p>
<p><img width="600" src="https://blogs.oracle.com/fatbloke/resource/clone-from-snapshot/6.png" /></p>
<p>Finally, the newly cloned VM is ready with the subset of the Snapshot tree that we wanted to retain:</p>
<p><img width="600" src="https://blogs.oracle.com/fatbloke/resource/clone-from-snapshot/7.png" /></p>
<p>Pretty powerful, and very useful.&nbsp;</p>
<p>Cheers, </p>
<p>-FB&nbsp;</p>
<p> </p>
</div>https://blogs.oracle.com/fatbloke/entry/what_s_new_in_virtualboxWhat's New in VirtualBox 4.3?Fat Blokehttps://blogs.oracle.com/fatbloke/entry/what_s_new_in_virtualbox
Tue, 15 Oct 2013 16:39:45 +0000VirtualBoxfatblokevirtualboxvirtualization<div style="border-width: 0px; background-color: #ffffff;">
<p><img alt="VirtualBox.png" src="http://blogs.oracle.com/virtualization/resource/virtualbox/VirtualBox.png" width="64" height="64" class="mt-image-left" style="cursor: default; float: left; margin: 0px 20px 20px 0px;" /></p>
<p>Great news: <a href="http://www.oracle.com/us/corporate/press/2033376" title="Press Release">Oracle VM VirtualBox 4.3 is available</a> from today!</p>
<p>Let's take a quick look at what's new:</p>
<p> </p>
<h3>New Platforms&nbsp;</h3>
<p>We're at that time of year when vendors are releasing new versions of their platforms, ready to be installed onto new hardware offerings for the upcoming holiday season. So welcome Mac OS X 10.9 ( &quot;Mavericks&quot; ), Microsoft Windows 8.1 and Windows Server 2012 R2, and all the new Linux distributions too.&nbsp;</p>
<p>And so it is only natural that VirtualBox 4.3 should add support for these new platforms too.</p>
<p>But sometimes that is easier said than done. For example, some of the new platforms are designed for tablet, or laptop/tablet hybrid platforms and so use a multi-touch interface to navigate around the system. This all means that VirtualBox has to deliver a multi-touch virtual device that the guests can use, which is exactly what we did in 4.3. &nbsp;So if you're looking to check out such a system, such as Windows 8(.1), remember to choose the correct pointing device:</p>
<p><img width="400" src="https://blogs.oracle.com/fatbloke/resource/vbox4-3/multi-touch.png" alt="multi-touch" /></p>
<p>Another similarity about the new platforms is the increased use of desktop &quot;eye-candy&quot;, whether it is translucency, fade-in and out effects, or instant zoom. This means that we've had to improve our 3d acceleration support for guests such as Fedora, seen here on a Mac OS X 10.9 host, using a zoomed out view of running apps and a scaled workspace viewer on the right hand side:</p>
<p> <img width="600" src="https://blogs.oracle.com/fatbloke/resource/vbox4-3/Fullscreen_15_10_2013_14_38.png" alt="Fedora 19" /></p>
<p>(Don't forget to update your Guest Additions to the 4.3 version to get this going.)</p>
<p>We also improved the multi-monitor support especially when you are using multiple virtual monitors with multiple physical displays in full screen mode.</p>
<h3>Hypervisor improvements</h3>
<p>Another significant, but largely invisible change in 4.3 concerns the hypervisor itself. We have significantly revamped the internals of VirtualBox as a platform for future performance enhancements. Today, this has mainly improved boot times of guests, but we'll be building upon this in forthcoming updates.&nbsp;</p>
<h3>Networking Improvements</h3>
<p>In the Networking area we've got 3 bits of news:</p>
<p> </p>
<ol>
<li>IPv4 AND IPv6 almost everywhere - Host-only, Internal, Bridged and our new NAT Network mode now all offer IPv6 to guests;</li>
<li>IPv6 in VRDP - You can remotely connect to the consoles of your virtual machines via RDP over IPv6;</li>
<li>New NAT Network mode - yet another way of configuring the network of your vm's...</li>
</ol>
<p>Our existing NAT mode puts each guest vm on it's own private network. This is nice and easy and has served us very well over the years.</p>
<p>At the same time, many people use our Host-only networking to run multiple vm's on a private network that can talk to each other and also the host.</p>
<p>But what yet another group of people wanted was a private network where the guests could talk to each other but also to the internet too (or at least the network beyond the host). So this is what the new NAT Network mode offers. Diagrammatically, it looks like this:</p>
<p><img width="400" src="https://blogs.oracle.com/fatbloke/resource/vbox4-3/Nat-Diagram.png" alt="Diagram" /> </p>
<p>and the configuration dialog looks like this:</p>
<p><img width="600" src="https://blogs.oracle.com/fatbloke/resource/vbox4-3/NATConfig.png" alt="Dialogs" /> </p>
<p> </p>
<p>Hopefully you can see that this new NAT Network can be IPv6 or IPv4 and has an optional DHCP service. Also Port Forwarding is available to allow connections into the private network from the outside world.</p>
<h3>Other Bells and Whistles</h3>
<p>There are lots of other smaller improvements in 4.3 but 2 of my favorites are:&nbsp;</p>
<h4>Video Capture</h4>
<p>4.3 comes with a built-in video capture facility to record the contents of your guest's screens. The resultant movie is stored in .webm format so can be played back by most movie players or even Google Chrome.&nbsp;</p>
<h4>Virtual Webcam</h4>
<p>An extremely cool (but only experimental at this stage) feature is the VirtualBox virtual webcam device. This allows the guest to use the webcam of the host so that you can use Skype or Google Hangouts from within your guest. (Look for a separate blog on this feature)</p>
<h4>What next?</h4>
<p>In the time it has taken you to read this blog you could have downloaded 4.3 from the <a href="http://www.oracle.com/technetwork/server-storage/virtualbox/downloads/index.html" title="Oracle download">Oracle</a> or <a href="https://www.virtualbox.org/wiki/Downloads" title="Community Download">community</a> site to kick the tires yourself. </p>
<p>But there's still time, VirtualBox is only around 100Mb. Or if you were &quot;born not to lead but to read&quot; (apologies to Matt Groening), take a peek at the <a href="http://download.virtualbox.org/virtualbox/4.3.0/UserManual.pdf" title="User Guide">User Guide.</a></p>
<p>All in all, another solid release, one that we hope you'll enjoy discovering.</p>
<p>- FB&nbsp; </p>
</div>https://blogs.oracle.com/fatbloke/entry/3d_acceleration_with_ubuntu_guests3D Acceleration with Ubuntu guestsFat Blokehttps://blogs.oracle.com/fatbloke/entry/3d_acceleration_with_ubuntu_guests
Fri, 12 Jul 2013 18:09:22 +0000VirtualBoxfatblokevirtualboxvirtualization<p>There's a trend with some desktop Linux distributions to use more and more &quot;eye-candy&quot; which puts a greater strain on GPU functions offered by hypervisors.</p>
<p>VirtualBox offers 3D acceleration by intercepting OpenGL requests made by the guest vm, and passing then down to the host's OpenGL library to be executed directly by the host.&nbsp;</p>
<p>To Configure a VM to use VirtualBox 3D acceleration:</p>
<p> </p>
<ul>
<li>Make sure you install the Guest Additions into the Linux guest (Host+D);</li>
<li>Enable 3D acceleration in the VM settings;</li>
</ul>
<p> </p>
<p><img src="https://blogs.oracle.com/fatbloke/resource/3DAcceleration/12_07_2013_16_19-2.png" /> </p>
<p>Then simply crank up your linux guest.</p>
<p>But on some platforms, and in some circumstances, the wrong renderers may be used by the guest OS which results in s l o o w w w performance of the guest. &nbsp;</p>
<p>To check that you're using VirtualBox 3D acceleration on Ubuntu 12/13 type the following command:</p>
<blockquote style="margin: 0px 0px 0px 40px; border: none; padding: 0px;">
<pre>/usr/lib/nux/unity_support_test -p&nbsp;</pre>
</blockquote>
<p>If you see something like this:</p>
<p><img width="100%" src="https://blogs.oracle.com/fatbloke/resource/3DAcceleration/12_07_2013_18_21.png" /> </p>
<p> </p>
<p>... i.e. the OpenGL Renderer is NOT Chromium, then you are NOT using the VirtualBox OpenGL drivers. This can occur because of a race condition in the guest OS boot process. One workaround is to force the guest to load video drivers earlier in the boot sequence by running the following command:</p>
<blockquote style="margin: 0px 0px 0px 40px; border: none; padding: 0px;">
<pre>sudo bash -c 'echo vboxvideo &gt;&gt; /etc/modules'</pre>
</blockquote>
<p> Once you do this, and then you reboot the guest you should re-rerun:&nbsp;</p>
<blockquote style="margin: 0px 0px 0px 40px; border: none; padding: 0px;">
<pre>/usr/lib/nux/unity_support_test -p &nbsp;</pre>
</blockquote>
<div>
<p>Which hopefully will result in the Chromium renderers being seen to be used:</p>
<p><img width="100%" src="https://blogs.oracle.com/fatbloke/resource/3DAcceleration/12_07_2013_19_01.png" /> </p>
<p> </p>
<p>And a consequence is that your Linux guest will be faster and smoother.</p>
<p>Hope this helps.&nbsp;</p>
<p>- FB&nbsp;</p>
</div>https://blogs.oracle.com/fatbloke/entry/using_virtualbox_to_test_driveUsing VirtualBox to test drive Windows BlueFat Blokehttps://blogs.oracle.com/fatbloke/entry/using_virtualbox_to_test_drive
Thu, 27 Jun 2013 13:32:19 +0000VirtualBoxfatblokevirtualboxvirtualization<p><strong>[Update: From VirtualBox 4.2.16 there's a Windows 8.1 and Windows 2012 OS type which automatically sets this property and makes this blog redundant]</strong></p>
<p>Oracle VM VirtualBox is great for trying out the latest and greatest technologies and platforms. So when Microsoft recently announced the Developer Preview for Windows Server 2012 R2 and Windows 8.1, &nbsp;it was with eager anticipation that FatBloke ran to the <a href="http://technet.microsoft.com/en-us/evalcenter/dn205292.aspx" title="TechNet">TechNet Evaluation Center</a>&nbsp;to download the isos.</p>
<p>Once downloaded, &nbsp;a new VM in VirtualBox Manager was created that used Windows 2012 (64-bit) OS type and all the defaults were selected.</p>
<p>And on starting the VM, and pointing to the iso file to install from, the excitement rose as we saw a cool new splashscreen image:</p>
<p> <img width="75%" src="https://blogs.oracle.com/fatbloke/resource/WinServer2012R2/27_06_2013_14_02.png" /></p>
<p>But suddenly our hopes are dashed....</p>
<p> </p>
<p> </p>
<p><img width="75%" src="https://blogs.oracle.com/fatbloke/resource/WinServer2012R2/27_06_2013_13_58.png" /> </p>
<p> </p>
<p> </p>
<p>It would seem that this platform requires an instruction (<span style="background-color: #f7f7f7; font-size: 13px;">CMPXCHG16B)</span>&nbsp;that VirtualBox doesn't offer &quot;out-of-the-box&quot;.&nbsp;</p>
<p>Fear not, for the VirtualBox team knew that this day would finally arrive and have prepared an &quot;in case of emergency&quot; switch as follows:</p>
<p> </p>
<ol>
<li>Power off the vm;</li>
<li>At the command line type:&nbsp;<br />
<pre>VBoxManage setextradata [vmname] VBoxInternal/CPUM/CMPXCHG16B 1</pre>
</li>
<li>Start the VM and install Windows Server 2012 R2</li>
</ol>
<p> </p>
<p><img width="75%" src="https://blogs.oracle.com/fatbloke/resource/WinServer2012R2/27_06_2013_14_28.png" /> </p>
<p> </p>
<p>This will be enabled by default in a future release, but geeks can't wait, hence this blog. </p>
<p>Enjoy!</p>
<p>-FB&nbsp;</p>https://blogs.oracle.com/fatbloke/entry/upgrading_linux_guestsUpgrading Linux GuestsFat Blokehttps://blogs.oracle.com/fatbloke/entry/upgrading_linux_guests
Wed, 6 Mar 2013 18:53:38 +0000VirtualBoxfatblokevirtualboxvirtualization<p>Just last week Oracle released <a href="https://blogs.oracle.com/linux/entry/oracle_linux_6_4_has">Oracle Linux 6.4</a>&nbsp;and so it was time that Fat Bloke updated his Oracle Linux guests.</p>
<p>So after a simple and quick:</p>
<pre> yum update</pre>
<p>I was in a position to reboot into my freshly updated 6.4 vm. But after rebooting I found myself looking at a stuck screen that looked a little like this:</p>
<p><img width="550" src="https://www.evernote.com/shard/s44/sh/969a574d-97b3-4c90-84ee-97aab4419a84/bc942142b154d90f8bbd6e339a489b1a/res/681f20b9-1f99-45fa-86c9-fb1d4fa3fa13/skitch.png" /> </p>
<p>The reason for getting stuck like this was because the installed VirtualBox Guest Additions were configured for an older X11 server, and the new update had a newer version.</p>
<p>So here's how to fix this:</p>
<p> </p>
<ol>
<li>At this screen, type Ctrl-Alt-F2 to get to another virtual display;</li>
<li>login, and as root type:&nbsp;</li>
<pre>/etc/init.d/vboxadd-x11 setup&nbsp;</pre>
<p>like this:</p>
<p><img width="520" src="https://www.evernote.com/shard/s44/sh/162febee-9a89-4b71-a638-94d31a432f96/a6e4c64125a1150f25b58d7580cf64a9/res/e47ade8a-bbb7-4c5b-bf35-2820fedf7d76/skitch.png" /> </p>
<li> reboot</li>
<li>et, voila!</li>
<p><img width="520" src="https://www.evernote.com/shard/s44/sh/fe51c563-eb8d-4a1c-87f3-f5aa6108f60f/9a9ae326ee9f150e2088a03aa2c7638a/res/e06ebf21-b8be-4b60-95aa-f1ea2c5b82e6/skitch.jpg" /></p>
</ol>
<p> </p>
<p>Hope this helps,
</p>
<p>
-FB </p>https://blogs.oracle.com/fatbloke/entry/virtualbox_vms_with_multiple_vnicsUsing VirtualBox Host-only Networking to run servers in your lapFat Blokehttps://blogs.oracle.com/fatbloke/entry/virtualbox_vms_with_multiple_vnics
Fri, 25 Jan 2013 19:56:08 +0000VirtualBoxfatblokevirtualboxvirtualization<p>Since the initial blog about <a href="https://blogs.oracle.com/fatbloke/entry/networking_in_virtualbox1" title="Networking and VirtualBox">VirtualBox and Networking</a>, there have been lots of people asking how to run multiple server vm's on their laptops, allowing the host to also connect to these servers too. As it happens, I recently needed just such a configuration myself so thought I'd share how I did it...</p>
<p>On my Oracle Linux laptop, I wanted to set up a private network within my host on which I would run:</p>
<p> </p>
<ul>
<li>A <a href="https://edelivery.oracle.com/linux" title="Download">Oracle Linux</a> server running Oracle VDI which includes a MySQL database, Apache webserver, and other stuff;</li>
<li>A <a href="http://technet.microsoft.com/en-us/evalcenter/hh670538.aspx">Windows Server 2012</a> providing DNS, DHCP and Active Directory;</li>
<li>I also wanted my Linux laptop to be able to reach these guest machines on the private network, too.&nbsp;</li>
</ul>
<p> </p>
<p>Note that this had to be isolated to within my host machine because I was setting up a new Active Directory Domain (example.com) and we didn't want the Windows Server dishing out DHCP addresses to everyone in the office. But we did want the Linux Server to be able to talk with the Windows Server for directory services and name services.</p>
<p>So logically this looked like:</p>
<p><img width="100%" src="https://blogs.oracle.com/fatbloke/resource/host-only-networking/network_diagrams.pptx-20130125-161852.png.jpg" alt="Network" /> </p>
<p> </p>
<p> </p>
<h3>Creating the Windows Server VM</h3>
<p>I used the VirtualBox Manager to create a vm of OS type &quot;Windows 2012 (64-bit)&quot; but before running it for the first time, I modified the Network configuration of the guest to use the VirtualBox Host-only Ethernet Adaptor:</p>
<p><img width="75%" src="https://blogs.oracle.com/fatbloke/resource/host-only-networking/Screenshot-AD_Server_-_Settings.png" alt="Host Only" /><br /></p>
<p>I planned to use this Windows server to deliver DHCP addresses for the private host-only network, so I disabled the built-in DHCP server via the Preferences...Network dialog in the VirtualBox Manager (all this can be done form the command line too BTW). Like this:</p>
<p><img width="75%" src="https://blogs.oracle.com/fatbloke/resource/host-only-networking/Screenshot-Host-only_Network_Details-1.png" alt="DHCP Off" /><br /></p>
<p>And in the interests of full disclosure, here are my private adapter settings too:</p>
<p><img width="75%" src="https://blogs.oracle.com/fatbloke/resource/host-only-networking/Screenshot-AD_Server_-_Settings.png" /><br /></p>
<p> </p>
<p>I then installed Windows Server 2012 giving it a static IP address of 192.168.245.110 and name ad.example.com.</p>
<p>After initial install I added extra roles to make the server be an Active Directory Domain Controller, DNS Server and DHCP Server:</p>
<p><img width="100%" src="https://blogs.oracle.com/fatbloke/resource/host-only-networking/Screenshot-AD_Server_%5BRunning%5D_-_Oracle_VM_VirtualBox.png" alt="AD Services" /> </p>
<p> </p>
<h3>Creating the Linux Server</h3>
<p>The Linux server is an Oracle Linux (6.3) server. Again, I set the newly created vm to use a Host-only network (as above), and installed Oracle Linux, giving it &nbsp;a static IP address: 192.168.245.111 - vdi1.example.com, and set DNS to point to the AD server ad.example.com.&nbsp;</p>
<p>This all worked swimmingly, and both machines could see each other and use each other's services:</p>
<p><img width="100%" src="https://blogs.oracle.com/fatbloke/resource/host-only-networking/Screenshot-VDI_Server1_%5BRunning%5D_-_Oracle_VM_VirtualBox.png" alt="Ping and nslookup" /></p>
<p> N.B. the servers running in these vm's are full blown instances so watch out for security settings and the like which block connections between them and the host.</p>
<h3>The Host as a member of example.com&nbsp;</h3>
<p>The great thing about host-only networks is that the host itself sits on this network and so can partake in the fun.</p>
<p>The host sees this network just as another NIC:</p>
<pre>$ ifconfig vboxnet0
vboxnet0 &nbsp;Link encap:Ethernet &nbsp;HWaddr 0A:00:27:00:00:00 &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; inet addr:192.168.245.1 &nbsp;Bcast:192.168.245.255 &nbsp;Mask:255.255.255.0
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; inet6 addr: fe80::800:27ff:fe00:0/64 Scope:Link
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; UP BROADCAST RUNNING MULTICAST &nbsp;MTU:1500 &nbsp;Metric:1
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; RX packets:0 errors:0 dropped:0 overruns:0 frame:0
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; TX packets:2425 errors:0 dropped:0 overruns:0 carrier:0
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; collisions:0 txqueuelen:1000&nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; RX bytes:0 (0.0 b) &nbsp;TX bytes:643528 (628.4 KiB)</pre>
<p>Note that the IP address the host uses is configured when you set up the host-only network above.</p>
<h3>Using Multiple NICs</h3>
<p>I wanted to update the Windows and Linux guests using Software Update, but to do that I needed access to the Internet, which my host only adaptor did not provide for me. One way of doing this is to temporarily switch from Host-only to NAT networking, do the update, then switch back again. And VirtualBox lets you do this while the VM is running which is very cool.</p>
<p>But for my Linux VM I wanted something a bit more permanent. So I created a second Bridged virtual network adaptor so that my Linux VM had an address on my host's network as well as the example.com host-only network. To do this you do have to shutdown the guest OS, and then reconfigure the VM like this:</p>
<p><img width="75%" src="https://blogs.oracle.com/fatbloke/resource/host-only-networking/Screenshot-VDI_Server1_-_Settings.png" /></p>
<p>The guest simply then sees this as another interface:&nbsp;</p>
<pre>$ ifconfig
eth0 &nbsp; &nbsp; &nbsp;Link encap:Ethernet &nbsp;HWaddr 08:00:27:31:23:9F &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; inet addr:hidden &nbsp;Bcast:hidden &nbsp;Mask:255.255.255.0
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; inet6 addr: hidden Scope:Link
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; UP BROADCAST RUNNING MULTICAST &nbsp;MTU:1500 &nbsp;Metric:1
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; RX packets:563846 errors:0 dropped:0 overruns:0 frame:0
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; TX packets:360395 errors:0 dropped:0 overruns:0 carrier:0
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; collisions:0 txqueuelen:1000&nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; RX bytes:347709416 (331.6 MiB) &nbsp;TX bytes:260792184 (248.7 MiB)
eth1 &nbsp; &nbsp; &nbsp;Link encap:Ethernet &nbsp;HWaddr 08:00:27:4D:34:8B &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; inet addr:192.168.245.111 &nbsp;Bcast:192.168.245.255 &nbsp;Mask:255.255.255.0
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; inet6 addr: fe80::a00:27ff:fe4d:348b/64 Scope:Link
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; UP BROADCAST RUNNING MULTICAST &nbsp;MTU:1500 &nbsp;Metric:1
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; RX packets:468955 errors:0 dropped:0 overruns:0 frame:0
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; TX packets:387661 errors:0 dropped:0 overruns:0 carrier:0
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; collisions:0 txqueuelen:1000&nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; RX bytes:354834569 (338.3 MiB) &nbsp;TX bytes:104217032 (99.3 MiB)</pre>
<h3>Things to watch out for&nbsp;</h3>
<h4>Firewalls </h4>
<p>Server Operating Systems typically come as &quot;secure by default&quot; so watch out for firewalls blocking connections. As your host-only network is private anyway you could simply turn the firewall off, e.g. on Linux:</p>
<pre>/etc/init.d/iptables stop&nbsp;</pre>
<h4>Nameserver woes&nbsp;</h4>
<p>One issue that had me scratching my head for some time was that after I added a second interface to my VDI server, my name resolution stopped working. Eventually I figured it out: Linux has a feature called NetworkManager which detects new networks and reconfigures the system to use them. One of the results of this &quot;reconfiguration&quot; is an overwrite of the /etc/resolv.conf file which points to the nameservers. In my case this meant that the VDI server was no longer using the AD server for DNS. Linux experts could probably tell me how to elegantly fix this, but I found 2 solutions myself:</p>
<p> </p>
<p> </p>
<ol>
<li>Disable the Network Manager, so it will not restart at next boot. (sledgehammer)</li>
<p> </p>
<pre>chkconfig NetworkManager off</pre>
<p> </p>
<li>Use entries in /etc/hosts and ensure that /etc/nsswitch.conf has the line:</li>
<p> </p>
<pre>hosts: files dns&nbsp;
</pre>
</ol>
<h3>&nbsp;Conclusion</h3>
<p>I now have a very cool setup on my laptop which enables to play around with Oracle VDI, MySQL, Apache, Active Directory, and all the other services that Linux and Windows Servers offer, all without disturbing anyone else on the network.</p>
<p><a href="https://blogs.oracle.com/fatbloke/resource/host-only-networking/Screenshot-1.png"><img width="100%" src="https://blogs.oracle.com/fatbloke/resource/host-only-networking/Screenshot-1.png" alt="Desktop" /></a></p>
<p> </p>
<p>Hope this is useful to someone out there.</p>
<p>- FB </p>
<p> </p>https://blogs.oracle.com/fatbloke/entry/growing_your_virtualbox_virtual_diskGrowing your VirtualBox Virtual DiskFat Blokehttps://blogs.oracle.com/fatbloke/entry/growing_your_virtualbox_virtual_disk
Fri, 14 Dec 2012 17:10:11 +0000VirtualBoxfatblokevirtualboxvirtualization<p>Don't you just hate it when this happens:</p>
<p> <img width="100%" src="https://www.evernote.com/shard/s44/sh/f7435bca-1ab1-483b-a7de-8e092beca9fc/f7ef02a37ce13f85042af8156c68c420/res/c601ef8e-880f-424a-821b-d2fc30e39855/ScreenClip.png" alt="Out of disk space" /></p>
<p> </p>
<p>Fortunately, if you're running inside VirtualBox, you can resize your virtual disk and magically make your guest have a bigger disk very easily. There are 2 steps to doing this...</p>
<p> </p>
<h3>1. Resize the virtual disk</h3>
<p>Use the VBoxManage command line tool to extend the size of the Virtual Disk, specifying the path to the disk and the size in MB:</p> <font face="monospace"><span style="white-space: pre;">VBoxManage modifyhd &lt;uuid&gt;|&lt;filename&gt; [--resize &lt;megabytes&gt;|--resizebyte &lt;bytes&gt;]</span></font>
<pre>&nbsp;
</pre>
<p>If you booted up your guest at this point, the extra space is seen as an unformatted area on the disk, like this:</p>
<p> <img width="100%" src="https://www.evernote.com/shard/s44/sh/d3361966-acc7-4b22-aadd-ef052e6ef265/28db927d1c430e59745a253dd47d19ed/res/2f75088f-41e1-4f8a-a311-14c78255b0ad/ScreenClip.png?resizeSmall&amp;width=832" /></p>
<p>So we now need to tell the guest about the extra space available.</p>
<h3>2. Extend the guest's partition to use the extra space</h3>
<p>How you do this step depends on your guest OS type and the tools you have available. </p>
<p>Linux guests often include the excellent <strong><a href="http://gparted.sourceforge.net" title="Gparted">gparted </a></strong>partition editor, whereas Windows 7 and 8 provide the Computer Management tool which can resize partitions.</p>
<p>Unfortunately, with Windows XP the Computer Management tool couldn't do this. But I do have a couple of other options: </p>
<blockquote style="margin: 0px 0px 0px 40px; border: none; padding: 0px;">
<p>Most Linux installable .isos include the aforementioned <a href="http://gparted.sourceforge.net/" title="Gparted">gparted </a>tool, so I could simply attach, say, an Ubuntu install iso as a Virtual CD/DVD in my Windows XP vm and boot off that. (NB don't install Ubuntu, just run it from the CD). Then use gparted to extend the Windows XP partition, before finally rebooting.</p>
<p>But I took another route and plugged my resized virtual disk to a Windows Server 2012 vm I had lying around. Then I used the Computer Management tool in Windows Server 2012 to extend the partition of the Windows XP disk, before shutting down, unplugging the disk and reattaching to my Windows XP vm. (Note that if your vm's use different disk controllers, Windows will check the disks on booting, don't worry).</p>
</blockquote>
<p>When I finally boot up my&nbsp;Windows&nbsp;XP guest I see the available disk space and all is well.</p>
<p><img width="100%" src="https://www.evernote.com/shard/s44/sh/efa09823-b797-4e34-9fda-78c8dda1090d/137501175e2eef2afb9ce5de7a79b1d1/res/47b8c057-6c49-40c6-8b8a-fd14e8754d40/ScreenClip.png?resizeSmall&amp;width=832" alt="Free Space" /> </p>
<p> </p>
<p>At least until the next time <img src="https://blogs.oracle.com/images/smileys/wink.gif" class="smiley" alt=";-)" title=";-)" /></p>
<p>- FB&nbsp; </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>https://blogs.oracle.com/fatbloke/entry/creating_and_using_vm_groupsCreating and using VM Groups in VirtualBoxFat Blokehttps://blogs.oracle.com/fatbloke/entry/creating_and_using_vm_groups
Wed, 21 Nov 2012 12:45:51 +0000VirtualBoxfatblokevirtualbox<div style="border-width: 0px; background-color: #ffffff;">
<p><img alt="VirtualBox.png" src="http://blogs.oracle.com/virtualization/resource/virtualbox/VirtualBox.png" width="64" height="64" class="mt-image-left" style="cursor: default; float: left; margin: 0px 20px 20px 0px;" />With VirtualBox 4.2 we introduced the Groups feature which allows you to organize and manage your guest virtual machines collectively, rather than individually. </p>
<p>Groups are quite a powerful concept and there are a few nice features you may not have discovered yet, so here's a bit more information about groups, and how they can be used....</p>
<p> </p>
<h3>Creating a group</h3>
<p>Groups are just ad hoc collections of virtual machines and there are several ways of creating a group:</p>
<p> </p>
<ul>
<li>In the VirtualBox Manager GUI:</li>
<ul>
<li>Drag one VM onto another to create a group of those 2 VMs. You can then drag and drop more VMs into that group;</li>
<li>Select multiple VMs (using <b>Ctrl</b> or <b>Shift</b> and click) then&nbsp;</li>
<ul>
<li>select the menu: Machine...Group; or &nbsp;</li>
<li>press <b>Cmd+U</b> (Mac), or <b>Ctrl+U</b>(Windows); or</li>
<li>right-click the multiple selection and choose Group, like this:</li>
</ul>
</ul>
</ul>
<div style="text-align: center;"><img style="max-width: 75%;" src="https://www.evernote.com/shard/s44/sh/2ee3ee5f-520c-4079-9d4a-5c3677df6f22/5a752b5aa73e0e865fd21c4fd5e33cb7/res/d5928c9f-709e-4479-beaf-4c4217039441/Oracle_VM_VirtualBox_Manager-20121120-173122.png.jpg" /></div>
<ul>
<ul> </ul>
<li>From the command line:</li>
<ul>
<li>Group membership is an attribute of the vm so you can modify the vm to belong in a group. For example, to put the vm &quot;Ubuntu&quot; into the group &quot;TestGroup&quot; run this command:<br /></li>
</ul>
</ul>
</div>
<blockquote style="margin: 0px 0px 0px 40px; border: none; padding: 0px;">
<blockquote style="margin: 0px 0px 0px 40px; border: none; padding: 0px;">
<div style="border-width: 0px; background-color: #ffffff;">
<pre style="text-align: left;">VBoxManage modifyvm "Ubuntu" --groups "/TestGroup"</pre>
</div>
</blockquote>
</blockquote>
<div style="border-width: 0px; background-color: #ffffff;">
<div>
<h3>Deleting a Group</h3>
<p>Groups can be deleted by removing a group attribute from all the VMs that constitute that group. To do this via the command-line the syntax is:</p>
</div>
</div>
<blockquote style="margin: 0px 0px 0px 40px; border: none; padding: 0px;">
<blockquote style="margin: 0px 0px 0px 40px; border: none; padding: 0px;">
<div style="border-width: 0px; background-color: #ffffff;">
<div>
<pre>VBoxManage modifyvm "Ubuntu" --groups ""</pre>
</div>
</div>
</blockquote>
</blockquote>
<div style="border-width: 0px; background-color: #ffffff;">
<div>
<p>In the VirtualBox Manager, this is more easily done by right-clicking on a group header and selecting &quot;Ungroup&quot;, like this:</p>
<p style="text-align: center;"><img style="max-width: 75%;" src="https://www.evernote.com/shard/s44/sh/52b70a2f-8052-4d4c-b1de-08a622c409a6/e5758bbc35255ed9ef00c1ce4835414e/res/0469f167-2a1e-4e0b-a70c-4950b15f0098/Oracle_VM_VirtualBox_Manager-20121120-153327.png.jpg" /> </p>
<h3>Multiple Groups</h3>
<p>Now that we understand that Groups are just attributes of VMs, it can be seen that VMs can exist in multiple groups, for example, doing this:</p>
</div>
</div>
<blockquote style="margin: 0px 0px 0px 40px; border: none; padding: 0px;">
<blockquote style="margin: 0px 0px 0px 40px; border: none; padding: 0px;">
<div style="border-width: 0px; background-color: #ffffff;">
<div>
<pre>VBoxManage modifyvm "Ubuntu" --groups "/TestGroup","/ProjectX","/ProjectY"</pre>
</div>
</div>
</blockquote>
</blockquote>
<div style="border-width: 0px; background-color: #ffffff;">
<p>Results in:</p>
</div>
<blockquote style="margin: 0px 0px 0px 40px; border: none; padding: 0px;">
<div style="border-width: 0px; background-color: #ffffff;">
<p><img style="max-width: 30%;" src="https://www.evernote.com/shard/s44/sh/90f6fd21-3ec3-4cf6-abbb-4cfc5a149c8b/6b8fe1079d2246ae9fdcf8bbf6ebee6b/res/25fa9183-2e8b-499a-bd40-dbb51307336c/Oracle_VM_VirtualBox_Manager-20121121-110120.png.jpg" /></p>
</div>
</blockquote>
<div style="border-width: 0px; background-color: #ffffff;">
<p>Or via the VirtualBox Manager, you can drag VMs while pressing the <b>Alt</b> key (Mac) or <b>Ctrl</b> (other platforms).</p>
<h3>Nested Groups </h3>
<p>Just like you can drag VMs around in the VirtualBox Manager, you can also drag whole groups around. And dropping a group within a group creates a nested group.</p>
<p>Via the command-line, nested groups are specified using a path-like syntax, like this:</p>
</div>
<blockquote style="margin: 0px 0px 0px 40px; border: none; padding: 0px;">
<blockquote style="margin: 0px 0px 0px 40px; border: none; padding: 0px;">
<div style="border-width: 0px; background-color: #ffffff;">
<div>
<pre>VBoxManage modifyvm "Ubuntu" --groups "/TestGroup/Linux"</pre>
</div>
</div>
</blockquote>
</blockquote>
<div style="border-width: 0px; background-color: #ffffff;">
<div>
<p>...which creates a sub-group and puts the VM in it.</p>
</div>
</div>
<blockquote style="margin: 0px 0px 0px 40px; border: none; padding: 0px;">
<div style="border-width: 0px; background-color: #ffffff;">
<div>
<p><img style="max-width: 30%;" src="https://www.evernote.com/shard/s44/sh/5f473140-29c3-4598-a169-1840e4ce0c46/9b7a194f36ea909a3cf47a994e559e55/res/4154fb44-010c-4501-b07a-396dfb64b39c/Oracle_VM_VirtualBox_Manager-20121121-110736.png.jpg" /></p>
</div>
</div>
</blockquote>
<div style="border-width: 0px; background-color: #ffffff;">
<div>
<h3>Navigating Groups</h3>
<p>In the VirtualBox Manager, Groups can be collapsed and expanded by clicking on the carat to the left in the Group Header.</p>
<p>But you can also Enter and Leave groups too, either by using the <b>right-arrow</b>/<b>left-arrow</b> keys, or by clicking on the carat on the right hand side of the Group Header, like this:</p>
<p><img style="max-width: 75%;" src="https://www.evernote.com/shard/s44/sh/de3909c3-c622-4ad4-8c5c-72a5327d02a5/dec6bb40377f474da8da5cb4abea55e0/res/71857c96-a120-4ec1-9033-9e62995b5eda/Oracle_VM_VirtualBox_Manager-20121121-114309.png.jpg" /> .</p>
<p>..leading to a view of just the Group contents. You can Leave or return to the parent in the same way.</p>
<p><img style="max-width: 75%;" src="https://www.evernote.com/shard/s44/sh/88e0301d-f0cf-42ec-b3e3-0a451a1f62e8/cbf8ccd99860a2b47ea4d3888a11abaa/res/90fb9629-1af4-4d84-84bc-bbdae93246d9/Oracle_VM_VirtualBox_Manager-20121121-114218.png.jpg" /></p>
<p> </p>
<p>Don't worry if you are imprecise with your clicking, you can use a double click on the entire right half of the Group Header to Enter a group, and the left half to Leave a group. Double-clicking on the left half when you're at the top will roll-up or collapse the group.</p>
<p>&nbsp;</p>
<h3>Group Operations</h3>
<p>The real power of Groups is not simply in arranging them prettily in the Manager. Rather it is about performing collective operations on them, once you have grouped them appropriately.</p>
<p>For example, let's say that you are working on a project (Project X) where you have a solution stack of:</p>
<p> </p>
<ul>
<li>Database VM,</li>
<li>Middleware/App VM, and&nbsp;</li>
<li>a couple of client VMs which you use to test your app.</li>
</ul>
<p>With VM Groups you can start the whole stack with one operation. Select the Group Header, and choose Start:</p>
<p><img style="max-width: 75%;" src="https://www.evernote.com/shard/s44/sh/ba35c18b-df7e-4886-819d-53ad3b05d0b8/e941cc8d451c92de3ace78cc42491644/res/659dbb00-9876-40e7-be66-8345683a70a6/Oracle_VM_VirtualBox_Manager-20121121-121949.png.jpg" /></p>
<p>The full list of operations that may be performed on Groups are:</p>
<p> </p>
<ul>
<li>Start</li>
<ul>
<li>Starts from any state (boot or resume)</li>
<li>Start VMs in headless mode (hold <b>Shift</b> while starting)</li>
</ul>
<li>Pause</li>
<li>Reset</li>
<li>Close</li>
<ul>
<li>Save state</li>
<li>Send Shutdown signal</li>
<li>Poweroff</li>
</ul>
<li>Discard saved state</li>
<li>Show in filesystem</li>
<li>Sort</li>
</ul>
<p> </p>
<h3>Conclusion</h3>
<p>Hopefully we've shown that the introduction of VM Groups not only makes Oracle VM VirtualBox pretty, but pretty powerful too.&nbsp;</p>
<p>- FB&nbsp;</p>
</div>
</div>https://blogs.oracle.com/fatbloke/entry/what_s_new_in_oracleWhat's New in Oracle VM VirtualBox 4.2?Fat Blokehttps://blogs.oracle.com/fatbloke/entry/what_s_new_in_oracle
Thu, 13 Sep 2012 16:11:33 +0000VirtualBoxfatblokevirtualboxvirtualization<div style="border-width: 0px; background-color: #ffffff; ">
<p><img alt="VirtualBox.png" src="http://blogs.oracle.com/virtualization/resource/virtualbox/VirtualBox.png" width="64" height="64" class="mt-image-left" style="cursor: default; float: left; margin: 0px 20px 20px 0px; " />A year is a long time in the IT industry. Since the last VirtualBox feature release, which was a little over a year ago, we've seen:
</p>
<ul>
<li> new releases of cool new operating systems, such as Windows 8, ChromeOS, and Mountain Lion; </li>
<li>we've seen a myriad of new Linux releases from big Enterprise class distributions like Oracle 6.3 and Solaris 11, to accessible desktop distros like Ubuntu 12.04 and Fedora 17; </li>
<li>and we've also seen the spec of a typical PC or laptop double in power.</li>
</ul>
<p> All of these events have influenced our new VirtualBox version which we're releasing today. Here's how...</p>
<h3>Powerful hosts&nbsp;</h3>
<p>One of the trends we've seen is that as the average host platform becomes more powerful, our users are consistently running more and more vm's. Some of our users have large libraries of vm's of various vintages, whilst others have groups of vm's that are run together as an assembly of the various tiers in a multi-tiered software solution, for example, a database tier, middleware tier, and front-ends.&nbsp;</p>
<p>So we're pleased to unveil a more powerful VirtualBox Manager to address the needs of these users:</p>
<p><img width="100%" src="https://img.skitch.com/20120913-5w9qj8c9xwahtxp2rix5b4hie.jpg" alt="VirtualBox Manager" /><br /></p>
<h4>VM Groups</h4>
<p>Groups allow you to organize your VM library in a sensible way, e.g. &nbsp;by platform type, by project, by version, by whatever. To create groups you can drag one VM onto another or select one or more VM's&nbsp;and choose Machine...Group from the menu bar. You can expand and collapse groups to save screen real estate, and you can Enter and Leave a group (think iPad navigation here) by using the right and left arrow keys when groups are selected.</p>
<p>But groups are more than passive folders, because you can now also perform operations on groups, rather than all the individual VMs. So if you have a multi-tiered solution you can start the whole stack up with just one click.</p>
<h4>Autostart</h4>
<p>Many VirtualBox users run dedicated services in their VMs, for example, running a Wiki. With these types of VM workloads, you really want the VM start up when the host machine boots up. So with 4.2 we've introduced a cross-platform <a href="https://www.virtualbox.org/manual/ch09.html#autostart" title="Autostart">Auto-start mechanism</a> to allow you to treat VMs as host services.</p>
<h4>Headless VM Launching</h4>
<p>With VM's such as web servers, wikis, and other types of server-class workloads, the Console of the VM is pretty much redundant. For some time now VirtualBox has offered a separate launch mechanism for these VM's, namely the command-line interface commands <font face="courier new, courier, monospace">VBoxHeadless</font> or <font face="courier new, courier, monospace">VBoxManage startvm ... --type headless</font> commands. But with 4.2 we also allow you launch headless VMs from the Manager.</p>
<p>Simply hold down Shift when launching the VM from the Manager. &nbsp;It's that easy.</p>
<p>But how do you stop a headless VM? Well, with 4.2 we allow you to Close the VM from the Manager. (BTW best to use the ACPI Shutdown method which allows the guest VM to close down gracefully.)</p>
<p> <img width="75%" src="https://img.skitch.com/20120913-p8a7gf9xitm5wa3fumtxhsn8ag.jpg" alt="Shutdown VM" /></p>
<h4>Easy VM Creation</h4>
<p>For our expert users, the &nbsp;New VM Wizard was a little tiresome, so now there's a faster 2-click VM creation mode. Just Hide the description when creating a new VM.</p>
<h3>Powerful VMs&nbsp;</h3>
<p>As the hosts have become more powerful, so are the guests that are running inside them. Here are some of the 4.2 features to accommodate them:</p>
<h4>Virtual Network Interface Cards&nbsp;</h4>
<p>With 4.2, it's now possible to create VMs with up to 36 NICs, when using the ICH9 chipset emulation. But with great power comes great responsibility (didn't Obi-Wan say something similar?), and so we have also introduced <a href="https://www.virtualbox.org/manual/ch06.html#network_bandwidth_limit" title="Bandwidth limiter">bandwidth limiting</a> to prevent a rogue VM stealing the whole pipe.</p>
<h4>VLAN tagging</h4>
<p>Some of our users leverage VLANs extensively so we've enhanced the E1000 NICs to support this.&nbsp;</p>
<h4>Processor Performance</h4>
<p>If you are running a CPU which supports Nested Paging (aka EPT in the Intel world) such as most of the Core i5 and i7 CPUs, or are running an AMD Bulldozer or later, you should see some performance improvements from our work with these processors. And while we're talking Processors, we've added support for some of the more modern VIA CPUs too.</p>
<h3>Powerful Automation</h3>
<p>Because VirtualBox runs atop a fully blown operating system, it makes sense to leverage the capabilities of the host to run scripts that can drive the guest VMs. Guest Automation was introduced in a prior release but with 4.2 we've revamped the APIs to allow a richer and more powerful set of operations to be executed by the guest. Check out the IGuest APIs in the <a href="http://download.virtualbox.org/virtualbox/SDKRef.pdf" title="SDK">VirtualBox Programming Guide and Reference</a> (SDK).</p>
<h3>Powerful Platforms&nbsp;</h3>
<p>All the hardcore engineering that has gone into 4.2 has been done for a purpose and that is to deliver a fast and powerful engine that can run almost any x86 OS because of the integrity of the virtualization. So we're pleased to add support for these platforms:</p>
<p> </p>
<ul>
<li>Mac OS X &quot;Mountain Lion&quot;&nbsp;</li>
<li>Windows 8</li>
<li>Windows Server 2012</li>
<li>Ubuntu 12.04 (“Precise Pangolin”) </li>
<li>Fedora 17</li>
<li>Oracle Linux 6.3&nbsp; </li>
<li>Solaris 11</li>
</ul>
<p>Here's the proof:</p>
<p><img width="100%" src="https://img.skitch.com/20120913-chh7u4ib3krwh4pj2angp9kuar.jpg" alt="platforms" align="middle" /> </p>
<p>We don't have time to go into the myriad of smaller improvements such as support for burning audio CDs from a guest, bi-directional clipboard control, &nbsp;drag-and-drop of files into Linux guests, etc. so we'll leave that as an exercise for the user as soon as you've downloaded from the <a href="http://www.oracle.com/technetwork/server-storage/virtualbox/downloads/index.html" title="Oracle download">Oracle</a> or <a href="https://www.virtualbox.org/wiki/Downloads" title="Community Download">community</a> site and taken a peek at the <a href="http://download.virtualbox.org/virtualbox/4.2.0/UserManual.pdf" title="User Guide">User Guide.</a></p>
<p>So all in all, a pretty solid release, one that we hope you'll enjoy discovering.</p>
<p>- FB&nbsp; </p>
</div>https://blogs.oracle.com/fatbloke/entry/virtualbox_and_mountain_lion_macVirtualBox and Mountain Lion (Mac OS X 10.8)Fat Blokehttps://blogs.oracle.com/fatbloke/entry/virtualbox_and_mountain_lion_mac
Tue, 31 Jul 2012 16:36:42 +0000VirtualBoxoraclevirtualboxvirtualizationvm<div style="border-width: 0px; background-color: #ffffff; ">
<p><img alt="VirtualBox.png" src="http://blogs.oracle.com/virtualization/resource/virtualbox/VirtualBox.png" width="64" height="64" class="mt-image-left" style="cursor: default; float: left; margin: 0px 20px 20px 0px; " />[Update: </p>
<p>VirtualBox 4.1.20 and later are now completely compatible with Mountain Lion and this&nbsp;jiggery-pokery is no longer needed</p>
<p>- FB]</p>
<p>Apple released Mountain Lion (Mac OS X 10.8) late last week and a few people are stumbling over installing VirtualBox on it, so here are a few tips:</p>
<p>At the time of writing, the current version of VirtualBox is 4.1.18. Strictly speaking, this is not <a href="http://www.oracle.com/technetwork/server-storage/virtualbox/support/index.html" title="Commercial Support">commercially supported</a>, but VirtualBox users tend to be an intrepid and gung-ho bunch, and will try to run it on Mountain Lion anyway. They'll download VirtualBox and run the installer by clicking on the VirtualBox.mpkg icon:</p>
<p><img width="75%" src="https://img.skitch.com/20120731-bibk2h1sh2h3c38assjfwb3y98.png" /> </p>
<p>...and get a message like this:</p>
<p> <img width="50%" src="https://img.skitch.com/20120731-cmsiekb4uqms6q8776xu9kxad7.png" /></p>
<p>This will happen if you are using the default Security settings of Mountain Lion for downloaded applications, which probably look like this:</p>
<p><img width="75%" src="https://img.skitch.com/20120731-kyt25utksx6dsqcyjkkd2tkc1q.png" alt="Application Settings" /> </p>
<p>To get VirtualBox installed you can either:</p>
<p> </p>
<ol>
<li>temporarily allow applications downloaded from Anywhere in the System Preferences box above, changing it back after installation; or</li>
<li>hold Control key down as you click the .mpkg and choose Open. Doing this, you'll get a&nbsp;subtlety&nbsp;different dialog like this:</li>
</ol>
<div>
<p><img width="50%" src="https://img.skitch.com/20120731-gmrhq6n965dpbeb47tynkhu4q6.png" /></p>
<p>...which now has an Open button. Clicking on this will get VirtualBox installed too.</p>
<p>HTH someone out there.</p>
</div>
<p> </p>
<p>-FB&nbsp;</p>
<p>&nbsp;P.S. You can expect to see a &quot;Fully Supported&quot; version in the not too distant future <img src="https://blogs.oracle.com/images/smileys/wink.gif" class="smiley" alt=";-)" title=";-)" /> </p>
<p> </p>
<p> </p>
</div>https://blogs.oracle.com/fatbloke/entry/networking_in_virtualbox1Networking in VirtualBoxFat Blokehttps://blogs.oracle.com/fatbloke/entry/networking_in_virtualbox1
Fri, 8 Jun 2012 17:14:18 +0000VirtualBoxfatblokeoraclevirtualboxvirtualization<div style="border-width: 0px; background-color: #ffffff; ">
<p><img alt="VirtualBox.png" src="http://blogs.oracle.com/virtualization/resource/virtualbox/VirtualBox.png" width="64" height="64" class="mt-image-left" style="cursor: default; float: left; margin: 0px 20px 20px 0px; " />Networking in VirtualBox is extremely powerful, but can also be a bit daunting, so here's a quick overview of the different ways you can setup networking in VirtualBox, with a few pointers as to which configurations should be used and when.</p>
<p>VirtualBox allows you to configure up to 8 virtual NICs (Network Interface Controllers) for each guest vm (although only 4 are exposed in the GUI) and for each of these NICs you can configure:</p>
<p> </p>
<ol>
<li>Which virtualized NIC-type is exposed to the Guest.&nbsp;Examples include:</li>
<ul>
<li>Intel PRO/1000 MT Server (82545EM),&nbsp;</li>
<li>AMD PCNet FAST III (Am79C973, the default) or&nbsp;</li>
<li>a Paravirtualized network adapter&nbsp;(virtio-net).</li>
</ul>
<li>How the NIC operates with respect to your Host's physical networking.&nbsp;The main modes are:</li>
<ul>
<li><a href="#NAT">Network Address Translation (NAT)</a></li>
<li><a href="#Bridged">Bridged networking</a></li>
<li><a href="#Internal">Internal networking</a></li>
<li><a href="#Host-only">Host-only networking</a></li>
<li><a href="#NAT-PF">NAT with Port-forwarding</a></li>
<p> </p>
</ul>
</ol>
<p>The choice of NIC-type comes down to whether the guest has drivers for that NIC. &nbsp;VirtualBox, suggests a NIC based on the guest OS-type that you specify during creation of the vm, and you rarely need to modify this.</p>
<p> </p>
<p>But the choice of networking mode depends on how you want to use your vm (client or server) and whether you want other machines on your network to see it. So let's look at each mode in a bit more detail...
</p>
<h3><a name="NAT">Network Address Translation (NAT)</a></h3>
<p>This is the default mode for new vm's and works great in most situations when the Guest is a &quot;client&quot; type of vm. (i.e. most network connections are outbound). Here's how it works:</p>
<p><img src="https://img.skitch.com/20120608-dn68k55pai5macifgd38gke6yu.png" alt="NAT Networking" /><br /></p>
<p>When the guest OS boots, &nbsp;it typically uses DHCP to get an IP address. VirtualBox will field this DHCP request and tell the guest OS its assigned IP address and the gateway address for routing outbound connections. In this mode, every vm is assigned the same IP address (10.0.2.15) because each vm thinks they are on their own isolated network. And when they send their traffic via the gateway (10.0.2.2) VirtualBox rewrites the packets to make them appear as though they originated from the Host, rather than the Guest (running inside the Host).</p>
<p>This means that the Guest will work even as the Host moves from network to network (e.g. laptop moving between locations), and from wireless to wired connections too.</p>
<p>However, how does another computer initiate a connection into a Guest? &nbsp;e.g. connecting to a web server running in the Guest. This is not (normally) possible using NAT mode as there is no route into the Guest OS. So for vm's running servers we need a different networking mode....</p>
<h3><a name="Bridged">Bridged Networking</a></h3>
<p>Bridged Networking is used when you want your vm to be a full network citizen, i.e. to be an equal to your host machine on the network.</p>
<p>In this mode, a virtual NIC is &quot;bridged&quot; to a physical NIC on your host, like this:</p>
<p><img width="400" src="https://img.skitch.com/20120608-gpwbaktye3nji2iph1qjqdma8a.png" alt="Bridging to wired LAN" /> </p>
<p>The effect of this is that each VM has access to the physical network in the same way as your host. It can access any service on the network such as external DHCP services, name lookup services, and routing information just as the host does. Logically, the network looks like this:</p>
<p><img src="https://img.skitch.com/20120608-ktma7pnemi7kn7etmamt5ikex1.png" alt="Bridged Networking" /></p>
<p> </p>
<p>The downside of this mode is that if you run many vm's you can quickly run out of IP addresses or your network administrator gets fed up with you asking for statically assigned IP addresses. Secondly, if your host has multiple physical NICs (e.g. Wireless and Wired) you must reconfigure the bridge when your host jumps networks.&nbsp;</p>
<p>Hmm, so what if you want to run servers in vm's but don't want to involve your network administrator? Maybe one of the next 2 modes is for you...</p>
<h3><a name="Internal">Internal Networking</a></h3>
<p>When you configure one or more vm's to sit on an Internal network, VirtualBox ensures that all traffic on that network stays within the host and is only visible to vm's on that virtual network. Configuration looks like this:</p>
<p><img width="400" src="https://img.skitch.com/20120608-fje2i3q6suqjbajififu2g98j.png" alt="Configuring Internal Networks" /> </p>
<p>The internal network ( in this example &quot;intnet&quot; ) is a totally isolated network and so is very &quot;quiet&quot;. This is good for testing when you need a separate, clean network, and you can create sophisticated internal networks with vm's that provide their own services to the internal network. (e.g. Active Directory, DHCP, etc). Note that not even the Host is a member of the internal network, but this mode allows vm's to function even when the Host is not connected to a network (e.g. on a plane).</p>
<p><img src="https://img.skitch.com/20120608-x6q5csasa7gmgdjb3qd3i5ujwf.png" alt="Internal Network" /></p>
<p>Note that in this mode, VirtualBox provides no &quot;convenience&quot; services such as DHCP, so your machines must be statically configured or one of the vm's needs to provide a DHCP/Name service.</p>
<p>Multiple internal networks are possible and you can configure vm's to have multiple NICs to sit across internal and other network modes and thereby provide routes if needed. </p>
<p>But all this sounds tricky. What if you want an Internal Network that the host participates on with VirtualBox providing IP addresses to the Guests? Ah, then for this, you might want to consider Host-only Networking...</p>
<h3><a name="Host-only">Host-only Networking</a></h3>
<p>Host-only Networking is like Internal Networking in that you indicate which network the Guest sits on, in this case, &quot;vboxnet0&quot;:</p>
<p><img width="400" src="https://img.skitch.com/20120608-me7kpr7etx34hp9u1ak13d2g3e.png" alt="Host-Only Networking" /> </p>
<p>All vm's sitting on this &quot;vboxnet0&quot; network will see each other, and additionally, the host can see these vm's too. However, other external machines cannot see Guests on this network, hence the name &quot;Host-only&quot;.</p>
<p>Logically, the network looks like this:</p>
<p><img src="https://img.skitch.com/20120608-fyp8f21it6g7y17h2jsjh3b335.png" alt="Host-only networking" /> </p>
<p>This looks very similar to Internal Networking but the host is now on &quot;vboxnet0&quot; and can provide DHCP services. To configure how a Host-only network behaves, look in the VirtualBox Manager...Preferences...Network dialog:</p>
<p><img width="400" src="https://img.skitch.com/20120608-bdwc7m83srwn77nhkgs82ece8f.png" alt="Configure Host-only Networks" /><img width="400" src="https://img.skitch.com/20120608-d7iex9cjeyc26mcwtpeeamqgm.png" alt="DHCP Server" /> </p>
<p> </p>
<h3><a name="NAT-PF">Port-Forwarding with NAT Networking</a> </h3>
<p>Now you may think that we've provided enough modes here to handle every eventuality but here's just one more...</p>
<p>What if you cart around a mobile-demo or dev environment on, say, a laptop and you have one or more vm's that you need <strong>other</strong> machines to connect into? And you are continually hopping onto different (customer?) networks.</p>
<p>In this scenario:</p>
<p> </p>
<ul>
<li>NAT - won't work because external machines need to connect in.</li>
<li>Bridged - possibly an option, but does your customer want you eating IP addresses and can your software cope with changing networks?</li>
<li>Internal - we need the vm(s) to be visible on the network, so this is no good.</li>
<li>Host-only - same problem as above, we want external machines to connect in to the vm's.</li>
</ul>
<p> </p>
<p>Enter Port-forwarding to save the day!</p>
<p> </p>
<ol>
<li>Configure your vm's to use NAT networking;</li>
<li>Add Port Forwarding rules;</li>
<li>External machines connect to &quot;host&quot;:&quot;port number&quot; and connections are forwarded by VirtualBox to the guest:port number specified.</li>
</ol>
<p> </p>
<p>For example, if your vm runs a web server on port 80, you could set up rules like this:&nbsp;</p>
<p><img width="400" src="https://img.skitch.com/20120608-cy6u6jpgaamfh882bwmr7f49k7.png" alt="Port-forwarding" /> <img width="400" src="https://img.skitch.com/20120608-g8cthjns838u4yqp6w26mfkx1e.png" alt="Rules" /></p>
<p>...which reads: &quot;any connections on port 8080 on the Host will be forwarded onto this vm's port 80&quot;.</p>
<p><img src="https://img.skitch.com/20120608-mhcxu3k98ss1wq3y2ctg7fsidp.png" alt="Port Forwarding route" /> </p>
<p>&nbsp;This provides a mobile demo system which won't need re-configuring every time you open your laptop lid.</p>
<h3>Summary</h3>
<p>VirtualBox has a very powerful set of options allowing you to set up almost any configuration your heart desires.&nbsp;<br />For more information, check out the VirtualBox User Manual on <a href="https://www.virtualbox.org/manual/ch06.html" title="Manual">Virtual Networking</a>. </p>
<p>-FB&nbsp;</p>
<p> </p>
<p> </p>
</div>https://blogs.oracle.com/fatbloke/entry/passing_data_between_the_virtualboxPassing data between the VirtualBox Host and the GuestFat Blokehttps://blogs.oracle.com/fatbloke/entry/passing_data_between_the_virtualbox
Fri, 13 Apr 2012 06:20:32 +0000VirtualBoxfatblokevirtualboxvirtualization<p>Here's a good question: &quot;How can you figure out the VM name from within the VM itself?&quot;</p>
<p>While this data is not automatically available, the general purpose, and very powerful VirtualBox &quot;GuestProperty&quot; APIs can be used from the host and guest to pass arbitrary data, in key/value pairs format, in and out of the guest. Note that this does require that the VirtualBox Guest Additions have been installed in the guest.</p>
<p>To play with this, try using the &quot;<font face="'courier new', courier, monospace">VBoxManage</font>&quot; command line on your VirtualBox host machine, and &quot;<font face="'courier new', courier, monospace">VBoxControl</font>&quot; in the guest.</p>
<h3>Host syntax</h3>
<pre>VBoxManage guestproperty get &lt;vmname&gt;|&lt;uuid&gt;
&lt;property&gt; [--verbose]
VBoxManage guestproperty set &lt;vmname&gt;|&lt;uuid&gt;
&lt;property&gt; [&lt;value&gt; [--flags &lt;flags&gt;]]
VBoxManage guestproperty enumerate &lt;vmname&gt;|&lt;uuid&gt;
[--patterns &lt;patterns&gt;]
VBoxManage guestproperty wait &lt;vmname&gt;|&lt;uuid&gt; &lt;patterns&gt;
[--timeout &lt;msec&gt;] [--fail-on-timeout]&nbsp;&nbsp;<p></p></pre>
<h3>Guest syntax</h3>
<pre>VBoxControl.exe guestproperty &nbsp; &nbsp; &nbsp; &nbsp;get &lt;property&gt; [-verbose]
VBoxControl.exe guestproperty &nbsp; &nbsp; &nbsp; &nbsp;set &lt;property&gt; [&lt;value&gt; [-flags &lt;flags&gt;]]
VBoxControl.exe guestproperty &nbsp; &nbsp; &nbsp; &nbsp;enumerate [-patterns &lt;patterns&gt;]
VBoxControl.exe guestproperty &nbsp; &nbsp; &nbsp; &nbsp;wait &lt;patterns&gt;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;[-timestamp &lt;last timestamp&gt;]
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;[-timeout &lt;timeout in ms&gt;&nbsp;</pre>
<p> </p>
<p>So to solve our problem above, we set the vm name in the Host system on an arbitrary key like this:</p>
<pre>$ VBoxManage guestproperty set "Windows 7 (x64)" /MyData/VMname "Windows 7 (x64)"</pre>
<p>And within the guest we can use:</p>
<pre>C:\Program Files\Oracle\VirtualBox Guest Additions&gt;VBoxControl.exe guestproperty get /MyData/VMname
Oracle VM VirtualBox Guest Additions Command Line Management Interface Version 4.1.14
(C) 2008-2012 Oracle Corporation
All rights reserved.
Value: Windows 7 (x64)</pre>
<p>The GuestProperty API is pretty powerful, so for the interested, get more info in the <a href="https://www.virtualbox.org/manual/ch04.html#guestadd-guestprops" title="User Manual">User Manual</a>.</p>
<p>- FB&nbsp;</p>
<p> </p>
<p> </p>https://blogs.oracle.com/fatbloke/entry/creating_a_virtualbox_appliance_thatCreating a VirtualBox appliance that uses a click-thru licenseFat Blokehttps://blogs.oracle.com/fatbloke/entry/creating_a_virtualbox_appliance_that
Fri, 9 Mar 2012 19:02:15 +0000VirtualBoxfatblokeoraclevirtualboxvm<p>Lots of people use VirtualBox to create virtual appliances or vm's which they can share with others. There's a whole host of them over at the <a href="http://www.oracle.com/technetwork/community/developer-vm/index.html" title="Developer VMs">OTN Developer VM's page</a>, BTW.</p>
<p>But someone asked me how they would go about about redistributing a vm which required a &quot;click to accept&quot; type of license. Here's how:</p>
<p>When you are happy with the vm that you want to redistribute, you can use the GUI or command-line interface of VirtualBox to export the vm. &nbsp;</p>
<h2>Export&nbsp;</h2>
<ol>
<li>
<p>Choose &quot;File...Export Appliance...&quot; to bring up the Export wizard, then select the vm's that make up your appliance. (Note that you can export multiple vm's here. For example, the database vm may be separate from the business logic vm, etc).</p>
</li>
<p><a href="https://img.skitch.com/20120309-pxwyti8yn9ch3f5y7sjdr9nets.png"><img width="405" src="https://img.skitch.com/20120309-pxwyti8yn9ch3f5y7sjdr9nets.png" alt="Export Wizard" /></a></p>
<li>
<p>Choose the flavor of appliance: ovf or ova, and whether to create a manifest (hashes which can be used to determine if the appliance components arrived intact). Note that&nbsp;VirtualBox uses the extension to decide which type (ovf or ova) of appliance to create:</p>
</li>
<p><a href="https://img.skitch.com/20120309-ekh7hs24c3bykx13im64fifm6w.png"><img width="405" src="https://img.skitch.com/20120309-ekh7hs24c3bykx13im64fifm6w.png" alt="Export Settings" /></a></p>
<li>
<p>When you get to the Appliance Export Settings dialog you can describe who you are, what the appliance is called as well as specifying license text:</p>
</li>
<p><a href="https://img.skitch.com/20120309-6fij99xfqep2s33p9e9wmmx97.png"><img width="405" src="https://img.skitch.com/20120309-6fij99xfqep2s33p9e9wmmx97.png" alt="Appliance Export Settings" /></a></p>
<p>You can leave any of these fields empty, however, it is the presence of the License text field that causes VirtualBox to present the License at Import-time.</p>
</ol>
<p>BTW The command line interface syntax that&nbsp;achieves&nbsp;the same thing is:</p>
<pre>$ VBoxManage export
Usage:
VBoxManage export &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &lt;machines&gt; --output|-o &lt;ovf/ova&gt;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; [--legacy09|--ovf09|--ovf10|--ovf20]
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; [--manifest]
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; [--vsys &lt;number of virtual system&gt;]
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; [--product &lt;product name&gt;]
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; [--producturl &lt;product url&gt;]
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; [--vendor &lt;vendor name&gt;]
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; [--vendorurl &lt;vendor url&gt;]
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; [--version &lt;version info&gt;]
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; [--eula &lt;license text&gt;]
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; [--eulafile &lt;filename&gt;]</pre>
<p>So you can create scripts to automate the building of this.&nbsp;</p>
<p>The end result is the same: an ova file or an ovf file with stream-optimized disk images and an optional manifest file.&nbsp;</p>
<h2>Import</h2>
<p>Here's what this appliance would then look like on import:&nbsp;</p>
<ol>
<li>
<p>From the File...Import... menu in the VirtualBox Manager you select the ova or ovf file and you're show what the appliance contains:</p>
<p><a href="https://img.skitch.com/20120309-mpjb52sp8xx4d1fuydw4abkfsj.png"><img width="405" src="https://img.skitch.com/20120309-mpjb52sp8xx4d1fuydw4abkfsj.png" alt="Appliance Import Settings" /></a></p>
<p>At this point you can modify the devices if required, or change the MAC address (to avoid clashes with existing vm's).&nbsp;</p>
</li>
<li>
<p>But on continuing, if there is a License, it gets presented thus:</p>
<p><a href="https://img.skitch.com/20120309-exwq3frwcsihe3pdya3a2q2equ.png"><img width="405" src="https://img.skitch.com/20120309-exwq3frwcsihe3pdya3a2q2equ.png" alt="Software License Agreement" /></a></p>
<p>So your users can choose whether they want to accept your terms of use or not.&nbsp;</p>
</li>
</ol>
<p>That's all there is to it.</p>
<p>- FB&nbsp;</p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>https://blogs.oracle.com/fatbloke/entry/windows_8_in_virtualboxWindows 8 in VirtualBoxFat Blokehttps://blogs.oracle.com/fatbloke/entry/windows_8_in_virtualbox
Wed, 14 Sep 2011 13:00:06 +0000VirtualBoxfatblokevirtualboxvirtualization<p>Just a quick note for those people who are looking to run Windows 8 in Oracle VM VirtualBox.</p>
<p><a href="https://img.skitch.com/20110914-ewffetcf1s9nmhpkadtb97qujd.png"><img width="457" src="https://img.skitch.com/20110914-ewffetcf1s9nmhpkadtb97qujd.png" alt="Windows 8" /></a></p>
<p>Here's how I did it:</p>
<p> </p>
<ol>
<li>Go get it from the <a href="http://msdn.microsoft.com/en-us/windows/apps/br229516" target="_blank" title="MSDN">MSDN site</a>.&nbsp;&nbsp;I chose the 64-bit version but, be-warned, you need to assign more RAM (MS recommend 2GB, I used 1.5GB) to it than the 32-bit version (MS recommend 1GB).</li>
<li>Create a New Windows 7 VM in VirtualBox but change the RAM in the VM from 512MB to as above.</li>
<li>Configure the CD/DVD to point to the downloaded Developer Preview iso</li>
<li>Turn it on and go</li>
</ol>
<p>(FYI&nbsp;I used VirtualBox 4.1.2 on a Mac OS X Lion host)</p>
<p>Note that the Guest Additions &nbsp;don't recognise Windows 8 (fair enough at this stage, I guess) and the Windows Key features heavily in Windows 8 so if you use the Mac Cmd key as the VirtualBox Host Key, press the right Cmd key or choose a different Host Key in VirtualBox.</p>
<p>Cheers,</p>
<p>- FB&nbsp;</p>
<p> </p>
<p> </p>
<p> </p>https://blogs.oracle.com/fatbloke/entry/what_s_in_oracle_vmWhat's in Oracle VM VirtualBox 4.1?Fat Blokehttps://blogs.oracle.com/fatbloke/entry/what_s_in_oracle_vm
Tue, 19 Jul 2011 05:13:30 +0000VirtualBoxvirtualboxvirtualization<p>Another week, another VirtualBox release.</p>
<p>But unlike last week's <a href="/virtualization/entry/oracle_vm_virtualbox_4_02">maintenance release</a> on our stable 4.0.x branch, today's 4.1 release introduces some exciting new cutting edge features:</p>
<h2>VM clones</h2>
<p>A clone is a copy of an existing VM. So when would you need to copy a vm?</p>
<p>Well, examples include when you want to give many people their own vm to use (e.g. teachers and students, or employees), or for backing up a vm (instead of snapshots), or for when you want to build a grid for, say, a Hadoop-type application. </p>
<p>A clone is an (almost) exact copy of a vm. We say &quot;almost&quot;, because you can ask VirtualBox to assign a different MAC address to it so as not to confuse the network when you start 2 or more of them up. </p>
<p>In VirtualBox 4.1 we've made Cloning super easy.&nbsp;In the VirtualBox Manager simply right click on the vm and choose Clone.</p>
<p><a href="https://img.skitch.com/20110718-rqxmkdikun7in6h1qh3g78dpeb.png"><img width="404" src="https://img.skitch.com/20110718-rqxmkdikun7in6h1qh3g78dpeb.png" alt="Cloning" align="middle" /></a> </p>
<p>For the more intrepid, we also support Linked Clones, where the existing vm is the parent of the clone. These are faster to create and more space efficient but a little harder to understand. At the moment the ability to create linked clones is only available via the VBoxManage command line interface.</p>
<h2>Larger system support</h2>
<p>VirtualBox is used in many places and many ways.&nbsp;</p>
<p>One example is that VirtualBox is used in another Oracle product, <a href="http://www.oracle.com/us/technologies/virtualization/061153.html" title="Oracle VDI">Oracle VDI</a> <link /> to deliver a smarter way of running Enterprise desktops, namely by running them in vm's on the server, where they are more secure, manageable, and available from many devices.
</p>
<p>Now some servers are pretty big nowadays, not only in terms of CPU horsepower but also in the amount of RAM they can support. So with 4.1 we've enhanced VirtualBox to work great on all sizes of systems, even up to systems with <a href="http://en.wikipedia.org/wiki/Terabyte" title="Terabyte">1 Terabyte</a> of RAM.</p>
<h2>Improved remote access</h2>
<p>If your vms are running on another machine, VirtualBox provides a way to access them remotely via a service which is Microsoft RDP compatible. We've enhanced this service in a couple of ways:
</p>
<ul>
<li>Security: VRDP now supports TLS and server authentication to prevent, for example, Man-in-the-middle attacks.</li>
<li>Multiple Monitors: VRDP now supports multiple monitors on your client so your vm's can see and display on your multiple monitors.</li>
</ul>
<p> </p>
<h2>Windows 7 Aero </h2>
<p>We've developed a new WDDM driver for Windows Vista and 7 guests as part of the VirtualBox Guest Additions on these platforms. Using this driver the Windows guests can use transparency and other effects. </p>
<p>Note that this driver is relatively immature and so we've attached the &quot;experimental&quot; tag to it for now. </p>
<p>Here's an example of what it looks like on a Mac host:</p>
<p> <a href="https://img.skitch.com/20110719-84cnsg3gk2xtjidacaa13n7p6c.png"><img width="606" src="https://img.skitch.com/20110719-84cnsg3gk2xtjidacaa13n7p6c.png" alt="Cloning" align="middle" /></a></p>
<h2>Latest platform support</h2>
<p>VirtualBox 4.1 is ready for the latest Linux platforms, even when using cutting edge features such as Unity or Gnome 3. </p>
<p><a href="https://img.skitch.com/20110719-jepn19yqxrh5hnpts743fnasne.png"><img width="606" src="https://img.skitch.com/20110719-jepn19yqxrh5hnpts743fnasne.png" alt="Ubuntu 11.04" /></a></p>
<p>And one of these days we expect Apple to release Lion (the newest Mac OS X) and we're ready for that too.</p>
<h2>New Networking Mode</h2>
<p>VirtualBox already supports a powerful range of networking options from NAT (vm's IP address is translated in communications) to bridged (the vm is a full network citizen with it's own publicly accessible IP address) to host-only and internal networking (where vm's sit on a virtual network inside the host machine). </p>
<p>This latter model is extremely useful for test setups because you don't need to involve system administrators at all. But the downside is that maybe you can't fit all your running vm's in the same host. </p>
<p>UDP Tunneling is a new feature introduced in 4.1 which allows you to interconnect virtual machines running on different hosts.</p>
<h2>And lots more...</h2>
<p>There are so many more improvements and fixes throughout VirtualBox 4.1 ranging from :
</p>
<ul>
<li><b>features for the mere mortal:</b> an updated Virtual Media Manager, maintaining aspect ratio when in scale-view mode, proxy support for the update checker and an updated USB stack;</li>
<li><b>features for specific constituencies:</b> Crossbow and shared folder automount support for Solaris hosts;</li>
<li><b>advanced features for the very brave:</b> experimental support for SATA disk hotplugging and PCI passthrough.</li>
</ul>
<p> </p>
<p>So there should be something there for everyone <img src="https://blogs.oracle.com/images/smileys/smile.gif" class="smiley" alt=":-)" title=":-)" /> </p>
<p>To get the full list of changes, as always checkout the <a href="http://www.virtualbox.org/wiki/Changelog" title="ChangeLog">ChangeLog</a>, or <a href="http://www.oracle.com/technetwork/server-storage/virtualbox/downloads/index.html" title="Download">download</a> and kick the tires yourself.</p>
<p>- FB&nbsp;</p>https://blogs.oracle.com/fatbloke/entry/errors_when_importing_ovf_appliancesErrors when importing OVF appliancesFat Blokehttps://blogs.oracle.com/fatbloke/entry/errors_when_importing_ovf_appliances
Wed, 6 Apr 2011 05:54:38 +0000VirtualBoxovfvirtualboxvirtualization<p>This is another quick note to self which others may also benefit from....</p>
<p>There was a bug in the Export OVF code of VirtualBox 3.2.8 (and earlier) with vm's that have multiple hard disks. The bug was that each hard disk was given the same unique ID (UUID). Although the export seemed to work correctly, the resultant ovf looked something like this:</p>
<pre>...
&lt;StorageController name="SATA Controller" type="AHCI" PortCount="2" useHostIOCache="false" IDE0MasterEmulationPort="0" IDE0SlaveEmulationPort="1" IDE1MasterEmulationPort="2" IDE1SlaveEmulationPort="3"&gt;
&lt;AttachedDevice type="HardDisk" port="0" device="0"&gt;
<span class="Apple-style-span" style="color: rgb(255, 0, 0);"> &lt;Image uuid="{eb5b9e44-321f-4cc7-84c3-781fd9d5a661}"/&gt;
</span> &lt;/AttachedDevice&gt;
&lt;AttachedDevice type="HardDisk" port="1" device="0"&gt;
<span class="Apple-style-span" style="color: rgb(255, 0, 0);">&lt;Image uuid="{eb5b9e44-321f-4cc7-84c3-781fd9d5a661}"/&gt;</span>
&lt;/AttachedDevice&gt;
&lt;/StorageController&gt;&nbsp;
...
</pre>
<p> </p>
<p>and so when you came to import the appliance, the import failed because there are 2 disks with the same UUID.</p>
<p>The right solution is that the creator of the vm should upgrade to 3.2.12 or later and re-export again. But a hacky solution involves hand editing the ovf file:</p>
<p> </p>
<ol>
<li>remove the section between:</li>
<pre>&lt;vbox:Machine ....&gt;
....
&lt;/vbox:Machine&gt;
</pre>
<li>remove/rename the .mf manifest file (because the digital signature will be wrong now we've changed the .ovf file)</li>
<li>try importing again.&nbsp;</li>
</ol>
<p> </p>
<p>HTH&nbsp;</p>
<p>- FB&nbsp;</p>
<p> </p>https://blogs.oracle.com/fatbloke/entry/virtualbox_and_the_unbreakable_enterpriseVirtualBox and the Unbreakable Enterprise KernelFat Blokehttps://blogs.oracle.com/fatbloke/entry/virtualbox_and_the_unbreakable_enterprise
Thu, 24 Feb 2011 05:17:05 +0000VirtualBoxlinuxoraclevirtualboxvirtualizationvm<p>This has tripped me up twice now, so time to write it down <img src="https://blogs.oracle.com/images/smileys/smile.gif" class="smiley" alt=":-)" title=":-)" /></p>
<p>Oracle Linux 5 and now also&nbsp;<a href="http://blogs.oracle.com/linux/2011/02/oracle_linux_6_dvds_now_available.html" title="Oracle Linux 6">Oracle Linux 6</a> come with a choice of kernels: </p>
<p> </p>
<ul>
<li>a 100% Red Hat compatible one; and</li>
<li>the Unbreakable Enterprise Kernel.</li>
</ul>
<p> </p>
<p>When installing VirtualBox, or the VirtualBox Guest Additions, we need to build and install kernel drivers which are dependent on the version of Linux you are using. So we need a few packages to be installed to allow us to do this. </p>
<p>Here's how using the standard kernel:</p>
<pre><span class="Apple-tab-span" style="white-space:pre"> </span>yum update
<span class="Apple-tab-span" style="white-space:pre"> </span>yum install gcc
<span class="Apple-tab-span" style="white-space:pre"> </span>yum install kernel-devel
</pre>
<p>&nbsp;or if using the Unbreakable kernel:</p>
<pre><span class="Apple-tab-span" style="white-space:pre"> </span>yum update
<span class="Apple-tab-span" style="white-space:pre"> </span>yum install gcc
<span class="Apple-tab-span" style="white-space:pre"> </span>yum install kernel-uek-devel
</pre>
<p>&nbsp;There, now I'll never forget how to do this again.</p>
<p>-FB&nbsp;</p>
<p> </p>
<p> </p>https://blogs.oracle.com/fatbloke/entry/virtualbox_4_configuration_filesVirtualBox 4 configuration filesFat Blokehttps://blogs.oracle.com/fatbloke/entry/virtualbox_4_configuration_files
Tue, 4 Jan 2011 03:19:50 +0000VirtualBoxvirtualboxvirtualization<p>For those that are long time users of VirtualBox you'll notice a few changes with version 4.0. One of those changes is the location of VirtualBox configuration files for vm's, and where virtual disk and snapshot files are saved too. Here's what we've done:</p>
<p>When creating new vm's in VirtualBox 4.0 we've moved all the info about a vm into a subfolder. This makes it easier to, say, tar up the folder contents in order to share the vm with your friends without going through the export/import process. And because the saved state and snapshot files are under the same subfolder, then you can even move suspended vm's, and those with multi-generational snapshots too.</p>
<p>Here's a summary of where stuff has moved to:</p>
<p> </p>
<blockquote class="webkit-indent-blockquote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 40px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; ">
<table style="background-color: white; " border="1" cellpadding="2" cellspacing="0">
<tbody>
<tr>
<th> </th>
<th>Before 4.0</th>
<th>4.0 or above</th>
</tr>
<tr>
<td>Default machines folder</td>
<td>$HOME/.VirtualBox/Machines</td>
<td>$HOME/VirtualBox VMs</td>
</tr>
<tr>
<td>Default disk image location</td>
<td>$HOME/.VirtualBox/HardDisks</td>
<td>In each machine's folder</td>
</tr>
<tr>
<td>Machine settings file extension</td>
<td>.xml</td>
<td>.vbox</td>
</tr>
</tbody>
</table>
</blockquote>
<p>Another benefit of these changes is that we associate files with the .vbox extension with VirtualBox. So you can launch vm's by double clicking on the .vbox file, or create an Alias or Shortcut to a vm when you right click in the vm in the VirtualBox Manager, like this:</p>
<p> <img src="https://img.skitch.com/20110104-ta54ff43yy7ap6gcceijghky2y.png" alt="Create Shortcut" /></p>
<p> </p>
<p> </p>
<p>What about legacy vm's that you created prior to VirtualBox 4.0? </p>
<p>4.0 is backward compatible so things should just continue to work out of the box, with the vm information held in the old locations. However, some new features, such as file associations, won't work (because the config file is still the old .xml extension not the new .vbox one).&nbsp;</p>
<p>To migrate to the new 4.0 locations and filetypes you can perform a one-time export/import. You can either do this manually (&quot;File...Export Appliance&quot; and &quot;File...Import Appliance), or you script the process. On Linux/Solaris/Mac it would look like this:</p>
<pre>VBoxManage list vms | sed 's/.\*{ \*//;s/}//' | while read UUID; do VBoxManage export $UUID -o /tmp/$UUID.ova; VBoxManage import /tmp/$UUID.ova; done</pre>
<p>This may take a bit of time, so I'd run it overnight. </p>
<p>Hope this info is useful to someone.</p>
<p>Cheers,</p>
<p>-FB&nbsp;</p>
<p> </p>
<p> </p>
<p> </p>https://blogs.oracle.com/fatbloke/entry/oracle_vm_virtualbox_4_0Oracle VM VirtualBox 4.0 is released!Fat Blokehttps://blogs.oracle.com/fatbloke/entry/oracle_vm_virtualbox_4_0
Wed, 22 Dec 2010 09:31:00 +0000VirtualBoxvirtualboxvirtualization<p><font face="arial, helvetica, sans-serif">VirtualBox 4.0 is hot off the press so you may be wondering what's new?
Here's a very quick summary....</font></p> <a href="https://img.skitch.com/20101222-p6576ceq3akki5r1u7qj9j9sq6.png"> <img width="411" src="https://img.skitch.com/20101222-p6576ceq3akki5r1u7qj9j9sq6.png" alt="VirtualBox Manager" /></a>
<ul>
<li>
<p style="margin-bottom: 0cm; "><font size="2"><font face="arial, helvetica, sans-serif">Usability
Improvements</font></font></p>
<ul>
<li>
<p style="margin-bottom: 0cm; "><font size="2"><font face="arial, helvetica, sans-serif">A
major revamp of the VirtualBox Manager with features such as VM
Preview, an orderable VM list, and optional attribute panes,
allows admins or power users to customize the interface to make it
as simple or as comprehensive as they require.</font></font></p>
</li>
<li>
<p style="margin-bottom: 0cm; "><font size="2"><font face="arial, helvetica, sans-serif">Easy
shortcut creation enables users to launch vm's from their Desktop,
Start Menu, or from scripts, without the need to start the
VirtualBox Manager.</font></font></p>
</li>
<li>
<p style="margin-bottom: 0cm; "><font size="2"><font face="arial, helvetica, sans-serif">The
new scaleable display mode allows users to accommodate more
virtual displays on the same amount of physical screen
real-estate.</font></font></p>
</li>
</ul>
</li>
<li>
<p style="margin-bottom: 0cm; "><font size="2"><font face="arial, helvetica, sans-serif">Increased
capacity and throughput</font></font></p>
<ul>
<li>
<p style="margin-bottom: 0cm; "><font size="2"><font face="arial, helvetica, sans-serif">New
Asynchronous I/O model for networked (iSCSI) and local storage
delivers significant storage related performance improvements,
especially over 1GB LANs.</font></font></p>
</li>
<li>
<p style="margin-bottom: 0cm; "><font size="2"><font face="arial, helvetica, sans-serif">Improved
ability to run larger vms on smaller 32-bit hosts. This enables
large vms, for example, Oracle datacenter-class products, to run
on desktop systems such as 32-bit Windows hosts.</font></font></p>
</li>
</ul>
</li>
<li>
<p style="margin-bottom: 0cm; "><font size="2"><font face="arial, helvetica, sans-serif">Powerful
Virtual Appliance sharing</font></font></p>
<ul>
<li>
<p style="margin-bottom: 0cm; "><font size="2"><font face="arial, helvetica, sans-serif">Strongest
support for the Open Virtualization Formats in industry. This
release strengthens Oracle's commitment to standards, with the
adoption of ovf and now ova format appliances</font></font></p>
</li>
<li>
<p style="margin-bottom: 0cm; "><font size="2"><font face="arial, helvetica, sans-serif">Version
4.0 also provides easier direct sharing of vms too, with a new
configuration storage model. This new configuration storage model
holds all information about a virtual machine, such as virtual
hardware, virtual disk files, snapshots and saved state files into
a single folder.
<a href="https://img.skitch.com/20101222-edkpw4xwy44uxmksh83nh6q12s.png"><img width="371" src="https://img.skitch.com/20101222-edkpw4xwy44uxmksh83nh6q12s.png" alt="vm's in a folder" /></a></font></font></p>
</li>
<li>
<p style="margin-bottom: 0cm; "><font size="2"><font face="arial, helvetica, sans-serif">This
means that, for the first time, suspended vm's and vm's with
snapshots can be transferred.</font></font></p>
</li>
</ul>
</li>
<li>
<p style="margin-bottom: 0cm; "><font size="2"><font face="arial, helvetica, sans-serif">Latest
virtual hardware</font></font></p>
<ul>
<li>
<p style="margin-bottom: 0cm; "><font size="2"><font face="arial, helvetica, sans-serif">By
offering a new, modern chipset supporting PCI Express, VirtualBox
can support the most demanding of virtual workloads.</font></font></p>
</li>
<li>
<p style="margin-bottom: 0cm; "><font size="2"><font face="arial, helvetica, sans-serif">High
Definition Audio devices deliver fantastic sound quality for both
output and input (microphones) devices.</font></font></p>
</li>
<li>
<p style="margin-bottom: 0cm; "><font size="2"><font face="arial, helvetica, sans-serif">Hardware
offloading for virtual networking increases throughput via virtual
NICs.</font></font></p>
</li>
<li>
<p style="margin-bottom: 0cm; "><font size="2"><font face="arial, helvetica, sans-serif">Powerful
port-forwarding rules allow the user to run server vms on their
desktop device using NAT networking. This means that user can run,
say an Apache web server in a vm and connect to it via a host
port.
</font></font></p> <a href="https://img.skitch.com/20101222-br5mk9abddbq754h4rasyfpwt3.png"><img width="371" src="https://img.skitch.com/20101222-br5mk9abddbq754h4rasyfpwt3.png" alt="Port Forwarding" /></a> <br /> <a href="https://img.skitch.com/20101222-rsis1fywys8i5e73chb7ktuet3.png"><img width="371" src="https://img.skitch.com/20101222-rsis1fywys8i5e73chb7ktuet3.png" alt="Port Forwarding" /> </a> <br />
</li>
</ul>
</li>
<li>
<p style="margin-bottom: 0cm; "><font size="2"><font face="arial, helvetica, sans-serif">Open
Source Packaging and Licensing</font></font></p>
<ul>
<li>
<p style="margin-bottom: 0cm; "><font size="2"><font face="arial, helvetica, sans-serif">Fully
Open Source base product. No longer will there be any confusion
about separate editions of VirtualBox. For the first time there
is an OSS licensed binary meaning partners do not need to build
and maintain their own source tress. This lowers a barrier and is
expected to spark increased interest in VirtualBox virtualization
solutions.</font></font></p>
</li>
<li>
<p style="margin-bottom: 0cm; "><font size="2"><font face="arial, helvetica, sans-serif">Flexible
Extension Pack mechanism for add-on functions. By delivering a
pluggable Extension model in the style of Firefox Extensions,
Oracle are providing a way for ecosystem partners to offer
value-add functionality in an elegant and powerful way.<img width="371" src="https://img.skitch.com/20101222-g42hcwxga6qst55stwch1wa7gg.png" alt="Extensions" /></font></font></p>
</li>
<li>
<p style="margin-bottom: 0cm; "><font size="2"><font face="arial, helvetica, sans-serif">The
first Oracle VM VirtualBox Extension Pack will offer high-speed
USB 2.0, Remote Display Services and Network booting features.
This will be licensed under the same free for Personal Use and
Evaluation License as previous versions.</font></font></p>
</li>
</ul>
</li>
</ul>
<p>There is much, much more going on under the hood too, such as API changes and the introduction of an event driven model for API users, but we don't have time to cover this today. Suffice to say, we're really pleased with 4.0 and hope you are too.</p>
<p>- FB</p>https://blogs.oracle.com/fatbloke/entry/oracle_solaris_11_expressOracle Solaris 11 ExpressFat Blokehttps://blogs.oracle.com/fatbloke/entry/oracle_solaris_11_express
Fri, 19 Nov 2010 02:09:36 +0000VirtualBoxsolarisvirtualboxvirtualization<p>For the interested and curious, Oracle released a new platform this week: Oracle Solaris 11 Express is Solaris NextGen (FatBloke's term, not Oracle's <img src="https://blogs.oracle.com/images/smileys/wink.gif" class="smiley" alt=";-)" title=";-)" /> ). It has lots of <a href="http://www.oracle.com/technetwork/server-storage/solaris11/documentation/solaris-express-whatsnew-201011-175308.pdf" title="What's New">cool new features</a> including a new Image Packaging System which I tried out as part of the Automated Installation.</p>
<p>In a nutshell here's how I used the Automated Installation method:</p>
<p> </p>
<ol>
<li>I chose the smaller Automated Installer iso from the <a href="http://www.oracle.com/technetwork/server-storage/solaris11/downloads/index.html" title="Download">download page</a></li>
<li>Created a new vm in VirtualBox using OS Type of Solaris and memory of 1024MB;</li>
<li>Started up the vm and point the First Run Wizard at the local Automated Installer iso we just downloaded in 1.;</li>
<li>Followed the on-screen Solaris installation instructions, and it pulled extra packages from the default Solaris repository over the internet.</li>
<li>Don't forget to <a href="http://www.virtualbox.org/manual/ch04.html#id463751" title="HowTo install Guest Additions">install the VirtualBox Guest Additions for Solaris</a>&nbsp;for a smoother and faster experience.</li>
</ol>
<p> </p>
<p>Here's the end result (click to enlarge): </p>
<p><a href="http://img.skitch.com/20101119-8qgcp8feqrr96r92aep94j8a8u.png"><img width="427" src="http://img.skitch.com/20101119-8qgcp8feqrr96r92aep94j8a8u.png" alt="Oracle Solaris 11 Express on VirtualBox" /></a></p>
<p>Pretty slick, huh?&nbsp;</p>
<p>-FB<a href="http://img.skitch.com/20101119-8qgcp8feqrr96r92aep94j8a8u.png"> </a></p>https://blogs.oracle.com/fatbloke/entry/netapp_simulator_running_in_virtualboxRunning Storage Simulators in VirtualBoxFat Blokehttps://blogs.oracle.com/fatbloke/entry/netapp_simulator_running_in_virtualbox
Fri, 29 Oct 2010 10:30:53 +0000VirtualBoxvirtualboxvirtualization<p>I love hearing what people get up to with VirtualBox...</p>
<p>This week was all about Storage Simulators: using a vm to simulate a NAS device, complete with management tools, so you really get the idea of what you're buying into. I was reminded of 2 this week:</p>
<p> </p>
<ul>
<li>How to install the <a href="http://communities.netapp.com/docs/DOC-8378" title="NetApp OnTap simulator">NetApp OnTap Simulator</a>&nbsp;- a comprehensive HowTo that includes how to create the guest, how to install the OS (Oracle Enterprise Linux in this case) and then how to install the Simulator software.</li>
<li>How to use the&nbsp;<a href="http://www.oracle.com/webapps/dialogue/dlgpage.jsp?p_ext=Y&amp;p_dlg_id=8588618&amp;src=6870265&amp;Act=7" title="Sun Storage 7000 Simulator">Sun Storage 7000 Simulator</a>&nbsp;which is available as a handy ovf appliance that just imports and goes.</li>
</ul>
<p>&nbsp;</p>
<p>Drop me a comment if you have other interesting use cases.</p>
<p>-FB&nbsp;</p>https://blogs.oracle.com/fatbloke/entry/virtualbox_3_2_10_isVirtualBox 3.2.10 is releasedFat Blokehttps://blogs.oracle.com/fatbloke/entry/virtualbox_3_2_10_is
Mon, 11 Oct 2010 08:09:18 +0000VirtualBoxvirtualboxvirtualization<p>Version 3.2.10 has just been released and made available&nbsp;from the&nbsp;<a href="http://www.virtualbox.org/wiki/Downloads" title="Downloads">Usual</a> <a href="http://dlc.sun.com/virtualbox/vboxdownload.html" title="Download">Places</a>. </p>
<p>It fixes a <a href="http://www.virtualbox.org/wiki/Changelog" title="ChangeLog">bunch of stuff</a>&nbsp;and also adds support for yesterday's <a href="http://www.ubuntu.com/desktop/get-ubuntu/download" title="Get Ubuntu">Ubuntu 10.10</a> release and the forthcoming <a href="https://fedoraproject.org/wiki/Releases/14/Schedule" title="Fedora 14 wiki">Fedora 14</a>.</p>
<p>- FB&nbsp;</p>https://blogs.oracle.com/fatbloke/entry/starting_virtualbox_in_fullscreen_modeStarting VirtualBox in FullScreen modeFat Blokehttps://blogs.oracle.com/fatbloke/entry/starting_virtualbox_in_fullscreen_mode
Fri, 1 Oct 2010 09:29:14 +0000VirtualBoxvirtualboxvirtualization<p>Regular readers will know that this blog often acts as an extension to my built-in memory <img src="https://blogs.oracle.com/images/smileys/smile.gif" class="smiley" alt=":-)" title=":-)" />. So here's another &quot;memo-to-self&quot; which others may find useful:</p>
<p>Most VirtualBox commands start with :</p>
<pre>VBoxManage ...</pre> command. But to start up a vm in fullscreen mode use the following command:
<pre>VirtualBox --startvm vm_name --fullscreen</pre>
<p>-FB&nbsp;</p>https://blogs.oracle.com/fatbloke/entry/virtualbox_and_linux_kernel_updatesVirtualBox and Linux kernel updatesFat Blokehttps://blogs.oracle.com/fatbloke/entry/virtualbox_and_linux_kernel_updates
Wed, 8 Sep 2010 08:01:47 +0000VirtualBoxlinuxvirtualboxvirtualization<p>In order to weave its magic, VirtualBox uses loadable kernel modules both on the Host, and in the Guest as part of the Guest Additions. On Linux, these kernel modules are related to the version of the kernel that you're running and if you update the kernel then the modules need to be rebuilt to match the new version. Technologies such as <a href="http://en.wikipedia.org/wiki/Dynamic_Kernel_Module_Support" title="DKMS">dkms</a> handle this and so if you're running dkms you'll be in good shape.&nbsp;But if you aren't running dkms, then you may find that after an update and a reboot, VirtualBox or the Guest Additions don't run anymore. Here's how to fix things...&nbsp;</p>
<p>If your Linux system is setup to build modules you can just execute one of:</p>
<p> </p>
<ul>
<li>Host:&nbsp;
<pre>/etc/init.d/vboxdrv setup</pre>
</li>
<li>Guest:
<pre>/etc/init.d/vboxadd setup</pre>
</li>
</ul>
<p> </p>
<p>If your system is not setup to build kernel modules you will need to get the relevant packages to do this. For example, on Oracle Enterprise Linux you need to:</p>
<p> </p>
<ol>
<li>Update your system to the latest version: open a terminal and as root, execute&nbsp;</li>
<pre>yum update</pre>
<li>Install the GNU C compiler and the kernel development packages using </li>
<pre>yum install gcc
yum install kernel-devel</pre>
<li>Reboot your guest system in order to activate the updates before then running the commands above to rebuild the VirtualBox modules.&nbsp;</li>
</ol>
<p>&nbsp;This is covered in more depth in the VirtualBox User Manual in the sections on <a href="http://www.virtualbox.org/manual/ch02.html#externalkernelmodules" title="Host module">Host Modules</a> and <a href="http://www.virtualbox.org/manual/ch04.html#id2658274" title="Guest Additions">Guest Additions</a>.</p>
<p>
Hope this is some use to someone</p>
<p>-FB</p>https://blogs.oracle.com/fatbloke/entry/the_virtualbox_software_development_kitThe VirtualBox Software Development KitFat Blokehttps://blogs.oracle.com/fatbloke/entry/the_virtualbox_software_development_kit
Fri, 13 Aug 2010 11:00:39 +0000VirtualBoxvirtualboxvirtualization<p>One of the really neat things about VirtualBox is the elegance with which it is architected. At almost every layer there are published APIs which mean you can build really neat solutions to access the underlying services of VirtualBox. And the &quot;front ends&quot; to VirtualBox such as the GUI (VirtualBox.exe) and the Command Line (VBoxManage.exe) use these same public API's without no backdoors or private interfaces at all. Graphically, it looks like this:</p>
<p><a href="http://img.skitch.com/20100813-pshjkei7yx73xwcr1q53kj8mk2.png"><img width="910" src="http://img.skitch.com/20100813-pshjkei7yx73xwcr1q53kj8mk2.png" alt="VirtualBox API" /></a> </p>
<p>Third parties are also building cool solutions against these interfaces too. (BTW you really should checkout the still-under-development but <b>hugely</b> impressive&nbsp;<a href="http://code.google.com/p/phpvirtualbox/" title="phpVirtualBox">phpvirtualbox</a>)</p>
<p>And so, as the VirtualBox ecosystem grows, it's important that people stick to the APIs. So, if in doubt, consult the&nbsp;<a href="http://download.virtualbox.org/virtualbox/SDKRef.pdf" title="SDK Manual">VirtualBox Programming Guide and Reference</a>.</p>
<p>We hope you enjoy a little bedtime reading <img src="https://blogs.oracle.com/images/smileys/wink.gif" class="smiley" alt=";-)" title=";-)" /></p>
<p>-FB&nbsp;</p>https://blogs.oracle.com/fatbloke/entry/virtualbox_3_2_8_isVirtualBox 3.2.8 is releasedFat Blokehttps://blogs.oracle.com/fatbloke/entry/virtualbox_3_2_8_is
Mon, 9 Aug 2010 03:39:58 +0000VirtualBoxvirtualboxvirtualization<p>The Fat Bloke may sleep but the VirtualBox engineering team never seems to... Version 3.2.8, a maintenance release, was made available&nbsp;from the&nbsp;<a href="http://www.virtualbox.org/wiki/Downloads" title="Downloads">Usual</a> <a href="http://dlc.sun.com/virtualbox/vboxdownload.html" title="Download">Places</a>&nbsp;late last week.</p>
<p>It fixes a <a href="http://www.virtualbox.org/wiki/Changelog" title="ChangeLog">bunch of stuff</a>.</p>
<p>- FB&nbsp; </p>https://blogs.oracle.com/fatbloke/entry/virtualbox_log_filesVirtualBox log filesFat Blokehttps://blogs.oracle.com/fatbloke/entry/virtualbox_log_files
Tue, 27 Jul 2010 07:32:45 +0000VirtualBoxlogsvirtualboxvirtualization<p>OK, I have to admit that this entry is one for the connoisseur, but some of these blogs entries double up as my extended memory, so before I forget... <img src="https://blogs.oracle.com/images/smileys/wink.gif" class="smiley" alt=";-)" title=";-)" /></p>
<p>One of the key tools you can use to diagnose any issues with VirtualBox is the VirtualBox log file for a vm session. VirtualBox always creates a log file which reflects the lifecycle of the virtual machine.</p>
<h3>Log File Location</h3>
<p>VirtualBox log files live in a per-user/per-vm directory that will be something like:</p>
<p> </p>
<p> </p>
<ul>
<li>On Windows, this is %HOMEDRIVE%%HOMEPATH%\\.VirtualBox\\Machines\\&lt;vm name&gt;\\Logs; typically some- thing like C:\\Documents and Settings\\Username\\.VirtualBox\\Machines\\&lt;vm name&gt;\\Logs\\vbox.log</li>
<li>On Mac OS X, this is $HOME/Library/VirtualBox/Machines/&lt;vm name&gt;/Logs</li>
<li>On Unix-like systems (Linux, Solaris), this is $HOME/.VirtualBox/Machines/&lt;vm name&gt;/Logs</li>
</ul>
<p>The log files are rotated such that the most recent is always called vbox.log and older ones are vbox.log.[123].&nbsp;These log files contain lots of information about the capabilities of both the host and the guest vm and should be provided whenever reporting issues with VirtualBox.&nbsp; </p>
<h3>Log File Format&nbsp;</h3>
<p>The layout of the logfile varies based on whether you are resuming or starting initially but roughly follows this pattern:</p>
<p> </p>
<p> </p>
<blockquote class="webkit-indent-blockquote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 40px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; ">
<p> </p>
<p> </p>
<div>
<p> </p>
<table width="60%" style="background-color: white; " border="1" cellpadding="2" cellspacing="0">
<tbody valign="top">
<tr>
<th>Section</th>
<th>Content</th>
<th>Starts around...</th>
</tr>
<tr>
<td style="width: 50%; ">
<p>Header</p>
</td>
<td style="width: 50%; ">
<p> </p> VirtualBox version;<br />Host OS information;<br />Host hardware info&nbsp;<br />
<ul> </ul>
<p> </p>
</td>
<td>Start of file</td>
</tr>
<tr>
<td style="width: 50%; ">
<p>CFGM Dump</p>
</td>
<td style="width: 50%; ">A listing of the configuration information of guest (guest virtual hardware)</td>
<td>
<pre><p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">\*\*\* CFGM dump \*\*\*</p>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><!--EndFragment--></p></pre>
</td>
</tr>
<tr>
<td style="width: 50%; ">
<p>Host information (CPUID Dump)</p>
</td>
<td style="width: 50%; ">Low level CPU information of Host and what will be reflected to Guest</td>
<td>
<pre>\*\*\* CPUID dump \*\*\*</pre>
<p style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; text-indent: 0px; "><!--EndFragment--></p>
</td>
</tr>
<tr>
<td style="width: 50%; ">Creating the VM</td>
<td style="width: 50%; ">Information about the creation of the virtual machine environment</td>
<td>
<pre>\*\*\* End of CPUID dump \*\*\*</pre>
</td>
</tr>
<tr>
<td style="width: 50%; ">
<p>Powering on or&nbsp;Loading from a saved state&nbsp;</p>
</td>
<td style="width: 50%; ">When powering on you'll see very little in the logs at this stage. &nbsp;If loading from a saved state, information from the Saved State Manager about matching previous state to current environment.</td>
<td>
<pre>Changing the VM state from 'CREATED' to 'POWERING_ON'</pre>
<pre><p>Changing the VM state from 'CREATED' to 'LOADING'&nbsp;</p></pre>
</td>
</tr>
<tr>
<td style="width: 50%; ">Resuming/Running</td>
<td style="width: 50%; ">
<p>Once the saved state is loaded, or the vm is booted, the guest code is executed.</p>
</td>
<td>
<pre>Changing the VM state from 'POWERING_ON' to 'RUNNING'
<p>or&nbsp;</p></pre>
<pre>Changing the VM state from 'LOADING' to 'SUSPENDED'
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Changing the VM state from 'SUSPENDED' to 'RESUMING'.</p><p></p></pre>
</td>
</tr>
<tr>
<td style="width: 50%; ">
<p>Guest lifetime</p>
<p> </p>
</td>
<td style="width: 50%; ">
<p>This part of the log contains entries concerning the lifetime of the Guest.</p>
</td>
<td>
<pre>Changing the VM state from 'RESUMING' to 'RUNNING'.
<p>&nbsp;</p></pre>
</td>
</tr>
<tr>
<td style="width: 50%; ">Powering Off or Suspending</td>
<td style="width: 50%; ">A dump of the guest state at the time the vm was powered off.</td>
<td>
<p style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; text-indent: 0px; "> </p>
<pre>\*\*\* Guest state at power off \*\*\*</pre>
<p> </p>
<p style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; text-indent: 0px; "><!--EndFragment--></p>
</td>
</tr>
<tr>
<td style="width: 50%; ">Statistics</td>
<td style="width: 50%; ">
<p>The statistics collected during the session are dumped out.</p>
</td>
<td>
<pre>\*\*\* Statistics \*\*\*</pre>
</td>
</tr>
</tbody>
</table>
</div>
</blockquote>
<h3>Timestamps</h3>
<p>One final tip when you're looking to make sense of log files: each line begins with a timestamp. e.g.&nbsp;</p>
<pre>00:00:01.817 VRDP: TCP server listening on port 3389.</pre>
<p style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; text-indent: 0px; "><!--EndFragment--></p>
<p>This is in the format HH:MM:SS.ms and is usually relative to the start of the vm. If you prefer wall clock time you can set the environment variable before starting the vm:</p>
<pre>&nbsp;export VBOX_RELEASE_LOG_FLAGS=time; VBoxManage startvm Android</pre>
<p>&nbsp;- FB</p>https://blogs.oracle.com/fatbloke/entry/virtualbox_3_2_6_isVirtualBox 3.2.6 is released!Fat Blokehttps://blogs.oracle.com/fatbloke/entry/virtualbox_3_2_6_is
Sat, 26 Jun 2010 06:41:57 +0000VirtualBoxvirtualboxvirtualization<div style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; background-color: #ffffff; ">
<div style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; background-color: #ffffff; ">
<div style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; background-color: #ffffff; ">
<p>The 3.2.6 maintenance release was made available to&nbsp;download from the&nbsp;<a href="http://www.virtualbox.org/wiki/Downloads" title="Downloads">Usual</a> <a href="http://dlc.sun.com/virtualbox/vboxdownload.html" title="Download">Places</a> yesterday.</p>
<p>It fixes a <a href="http://www.virtualbox.org/wiki/Changelog" title="ChangeLog">bunch of stuff</a>.</p>
<div>
<p>- FB&nbsp;</p>
</div>
</div>
</div>
</div>https://blogs.oracle.com/fatbloke/entry/free_virtualbox_webinarFree VirtualBox WebinarFat Blokehttps://blogs.oracle.com/fatbloke/entry/free_virtualbox_webinar
Mon, 21 Jun 2010 02:24:42 +0000VirtualBoxvirtualboxvirtualization<table>
<tbody>
<tr>
<td valign="top">
<ul>
<li><strong>What</strong>: The VirtualBox team are running a free live webinar this week: &nbsp;&quot;What's new in Oracle VM VirtualBox 3.2?&quot;
</li>
<li><strong>When</strong>: Thurs 24th June, 9am Pacific Daylight Time
</li>
<li><strong>Who</strong>: Andy Hall and Achim Hasenmueller
</li>
<li><strong>Where:&nbsp;</strong><a href="http://event.on24.com/r.htm?e=220976&amp;s=1&amp;k=9E6B747EBA5A553D1AFB10E77225C84A&amp;partnerref=blogvmvirtualbox" title="Registration"><strong>Signup for it now</strong></a> </li>
</ul>
</td>
<td>
<p><img width="250" src="http://img.skitch.com/20100621-dsj9r1w9dkr6s3ckxg2dhrfxm3.png" alt="VirtualBox 3.2" /></p>
</td>
</tr>
</tbody>
</table>
<p>- FB&nbsp; </p>