Setting up a Ubuntu 12.04 Guest as HVM, Converting it to PV

With Ubuntu 12.04 it’s remarkably simple to convert a HVM guest to PV. This will probably work in much the same way with Ubuntu 12.10 as well. Here’s what i did:

Requirements

  • VM Host running Xen 4.1 or later (mine is running the default packages provided by debian 6 / squeeze)
  • A spare drive (will also work with a disk-image-file)
  • Ubuntu Server installation ISO

Installation Phase

In the installation phase, i am running this machine as a HVM machine. The config can be found below. I basically give it a hard disc and the CD-ISO as disks and tell it to boot from CD. Everything else is pretty much default.

# Hostname
name    = 'machine'

# HVM-Loader.
kernel  = '/usr/lib/xen-4.0/boot/hvmloader'
device_model='/usr/lib/xen-4.0/bin/qemu-dm'
builder = 'hvm'

memory  = 2048
shadow_memory = 8
vcpus   = 2

disk    = [
           'phy:/dev/sdc,ioemu:hda,w',
           'phy:/dev/loop21,ioemu:hdc:cdrom,r' # i need to loop CD-Isos, not sure, why.
          ]

#  Networking
vif         = [ 'mac=11:22:33:44:55:66,bridge=br0' ]

boot='d'
vnc=1
vncpasswd = 'setup-something-nice'

Fire up your machine with xm create machine.cfg and connect to it via VNC. Install Ubuntu the way you like.

Converting to PV

After the setup, i usually turn the machine off and mount the hard-disk on the VM host. I alter two things: I add a /etc/init/hvc0.conf (which is a copy from /etc/init/tty1.conf with slight alterations) and i put some static settings into /etc/network/interfaces.

I then reboot the machine with this Xen-Config:

name        = 'machine'
kernel      = '/boot/vmlinuz-3.2.0-31-generic'
ramdisk     = '/boot/initrd.img-3.2.0-31-generic'
root        = '/dev/xvda1 ro,console=hvc0'

memory      = '2048'
vcpus       = '2'

disk        = [
                'phy:/dev/sdc,xvda,w'
              ]

vif         = [ 'mac=11:22:33:44:55:66,bridge=br0' ]

on_poweroff = 'destroy'
on_reboot   = 'restart'
on_crash    = 'restart'

Mobile Browsers and Multi-Touch Behaviour Compared

I recently came across a link to a MSDN-Blogpost that claimed to solve Multitouch-Interaction Cross-Platform in the browser. I was intrigued and started to experiment with it. The first step was to gather some data on the promised cross-platform-aspect.

I basically asked everyone i knew to fire up their cellphones and try the link themselves. Here’s what we found.

OS Device Browser Points Remark
Android 2.2.1 htc Magic Stock-Browser (Webkit) 1 2 fingers zoom
Android 2.2.2 Motorola Atrix Opera 12 Android 2
Android 2.2.2 Motorola Atrix Stock-Browser (Webkit) 1 2 fingers zoom
Android 2.3.7 htc Desire Z Opera 12 Android 4 device-max
Android 2.3.7 htc Desire Z Stock-Browser (Webkit) 1 2 fingers zoom
Android 4.0.3 Samsung Galaxy Note Chrome Beta (0.18) 8
Android 4.0.3 Samsung Galaxy Note Firefox 12 1 2 fingers zoom
Android 4.0.3 Samsung Galaxy Note Opera Mini 0 single touch scrolls
Android 4.0.3 Samsung Galaxy Note Stock-Browser (Webkit) 10
Android 4.0.3 Samsung Galaxy S2 Chrome Beta (0.18) 8 possibly more
Android 4.0.3 Samsung Galaxy S2 Dolphin HD (8.2.1) 4
Android 4.0.3 Samsung Galaxy S2 Firefox 12 1 2 fingers zoom
Android 4.0.3 Samsung Galaxy S2 Opera 12 Android 8 possibly more
Android 4.0.3 Samsung Galaxy S2 Stock-Browser (Webkit) 4+
iOS 4.2.1 Apple iPod Touch Safari 5
iOS 5.1 Apple iPod Touch (3rd Gen) Safari 5
iOS 5.1.1 Apple iPhone 4 Safari 5
webOS hp pre 3 Stock-Browser 0 did not work
Windows Phone 7.5 Nokia Lumia 800 Internet Explorer 9 Mobile 0 did not work
Windows Phone 7.5 Samsung Focus (SGH-i917) Internet Explorer 9 Mobile 0 did not work

Learnings

Apple supports multi-touch in the browser far enogh back that it won’t be an issue.

Android’s stock browser gains multi-touch capability in Android 4. Other broswers support it at 2.2 already. Firefox for Android doesn’t support multi-touch at the moment.

What i find puzzling is the fact that Microsoft’s own demo doesn’t run on the two Windows Phone 7.5 devices i could find. If anyone can successfully draw in that demo, please drop me a line.

Also, too few people own webOS-Devices.

Thanks to everyone who contributed! If you try it yourself, please send your findings to me, i’ll add them to the list.


WordPress Themes: Menu instead of Pagelist

So you found this nice theme that really works well for your blog? That’s great. But sometimes Themes are not updated by their authors to use the latest features in WordPress. In my Case, i am using Simple Green by Flavius Matis, but it hasn’t been modified for quite some time. The Plugin doesn’t yet feature WordPress Menus, which were introduced recently.

Read the rest of this entry »


Email VBS

Nur zur dokumentation, falls mal jemand eine Mail aus der von einem Windows-Rechner aus einem Script senden will. Das hier in eine Datei packen, mailserver, from und to einstellen, als .vbs speichern und ausführen.

Set mailing = CreateObject("CDO.Message")

' Configuration
mailing.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
mailing.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "mailserver"
mailing.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
mailing.Configuration.Fields.Update

' Actual Content
mailing.From = "sender@example.com"
mailing.To = "test@example.com"
mailing.Subject = "Script-Mail!"
mailing.TextBody = "Hallo Welt"

'Sending
mailing.Send

Copy & Paste in der Kommandozeile!

Hier ein Eintrag aus der Nerd-Ecke: Die Windows-eigene Kommandozeile kann (fast) ganz normales Copy&Paste! Und das ohne den Umweg über das Fenster-Menü!

Locate the Edit Options section and tick the two check-boxes that labelled as Quick Edit Mode and Insert Mode respectively.

Read the rest of this entry »



Author

Claudius Coenen is a tech-enthusiast. He's writing on all kinds of topics, including programming, technology, gadgets and media.

This site features his occasional articles, findings, documentations.

Categories

Connect

RSS Recent Bookmarks

Legal