From the Canyon Edge -- :-Dustin

Thursday, April 29, 2010

Reminder: Austin's Lucid Release Party!

So the inevitable finally happened today... Ubuntu 10.04 LTS has released! Unleash the Lucid Lynx...

Here in Austin, Texas, we're celebrating tomorrow night, Friday, April 30, 2010, at the aptly named Mean Eyed Cat, on West 5th Street.

Come join us for a brewskie and meet some of your fellow Ubuntu and Free Software enthusiasts.

Full details at:

See ya!


Monday, April 26, 2010

Ubuntu Manpages Repository Updates

The rock stars here at Canonical IS have rolled out some recent changes I made to the Ubuntu Manpage Repository. Mostly, these changes involve a couple of bug fixes.

But perhaps more obviously, I've modified the header and footer to align with the new Lucid theme. Mmmm... Purple. Gimp lens flares. Oooh. Aaaah.

One functional change of note ... Check out the printer icon on the top right corner. Now, you can print (or generate a PDF of) your favorite manpages ;-) I basically did that with screen(1) when I was originally writing Byobu (so that you don't have to read all 80 pages of screen's manual)!

Happy RTFMing... That's "Reading the fun manuals" ;-)


Friday, April 23, 2010

Pictor: A Photo Web App for your Cloud

So this post is long overdue... Several months back, I uploaded new package called Pictor to Ubuntu Lucid.

Now Pictor holds a special place in my heart as this was the first program I wrote that I freely shared with everyone I who asked for the source code. I didn't know much about free software at the time, but I was quite willing to share my code with anyone who asked for it. I actually wrote the heart of Pictor in 1997 when I created a website for some friends of mine in a jam band called Last Free Exit at Texas A&M University in College Station, Texas. I applied an Open Source license to it a few years later, and it's been in Launchpad/Bazaar for several years now, but I only recently got around to packaging it and adding it to Ubuntu.

Pictor is a pretty simple web interface for browsing and sharing pictures in a web interface. Now today, there's plenty of public ways to do this, such as Picasa, Flickr, Shutterbug, and countless others. But I don't think any of these existed in 1997 when I wrote Pictor.

And there is another key difference, though... Pictor is AGPL free software, and you can run it entirely on your own server or virtual machine in the cloud. No need to accept complicated license agreements or upload your photos to hosted services who might then own your content.

As such, Pictor is an excellent application for "the cloud". You can fire up an Ubuntu EC2 instance, that you own, sudo apt-get install pictor, and upload your pictures to share in EC2. When you're done sharing you kill the instance, and your pictures will disappear as well. All without turning over the rights to anyone.

Similarly, you can run your own permanent server, sharing your images with the world, or protecting them with an .htaccess authentication token.

If you're looking for a simple little application to try out cloud computing, take a look at Pictor in Ubuntu. It's a great way to put some content in private version of The Cloud, and see if the Cloud Computing model works for you!

Here's a few screenshots.

It recursively supports directory listing.

And dynamically creates thumbnail views.

And dynamically resizes each picture for viewing, extracts metadata and thumbnails from JPEG headers, and can run in a slideshow mode.

Or, if you'd like to peruse a simple album, you can click around this one. This is a single album I have temporarily published using Pictor to supplement my post on CraigsList (yeah, selling my boat...).

Publishing this album was as simple as:
  1. Installing Ubuntu 10.04 LTS Server in a KVM virtual machine
  2. Installing Pictor
    sudo apt-get install pictor
  3. And creating a symbolic link to a directory that contained the pictures I wanted to publish
    sudo mkdir /usr/share/pictor/pictures
    sudo ln -s /srv/media/boat /usr/share/pictor/pictures
And you're up and running!


Thursday, April 22, 2010

TLF2010: Ubuntu Enterprise Cloud Audio

The good people at the Texas Linux Fest have published the audio from my Ubuntu Enterprise Cloud demo and presentation.

You can find the 29MB OGG file here:
I used an Ubuntu 10.04 (Beta2) Server ISO written to a bootable USB stick, two laptops, and a Linksys switch (running DD-WRT). I deployed a two-system Ubuntu Enterprise Cloud (UEC), using Eucalyptus, an open source implementation of an Amazon EC2-compatible cloud that you can run locally, in your data center and on your own hardware. I demonstrated the installation and registration processes, and discussed a bit about the various UEC topologies. I also registered an image, ran an instance, and SSH'd into the instance. All within 45 minutes :-)


Tuesday, April 13, 2010

Austin's Lucid Release Party

Our Ubuntu 10.04 LTS release is just around the corner, so it's time for another Austin Release Party...

We held the Jaunty release party at the Jackalope, and the Karmic release party at Aussie's (in honor of our favorite Koala)... Up next, The Mean Eyed Cat, paying our respects to the Lucid Lynx!

So join us on Friday, April 30th from 6pm at The Mean Eyed Cat, 1621 W Fifth St, Austin, TX 78703.

If you haven't been to the Mean Eyed Cat, you're in for a treat :-) This Johnny Cash-themed bar was actually the setting for a scene in the Texas Chainsaw Massacre 2.

Bring a USB key if you'd like to get a copy of Ubuntu 10.04 LTS, and leave a note in the comments below if you plan on joining us, or I'm going to send this guy after you if you don't...


Monday, April 12, 2010

Texas Linux Fest 2010

Howdy all-

I attended the first ever Texas Linux Fest right here in Austin this past Saturday, April 10, 2010. My compliments go to the organizers of the event! They were able to pull off this excellent event in the face of many naysayers. Congratulations, guys, it was an outstanding Linux conference, and I'm looking forward to it again next year.

Canonical had ample representation, and the Ubuntu booths (one Canonical, one LoCo) were very heavily visited. Jeremy Foshee was the hero of the Canonical booth over the course of the day. JFo's mouth was running about Ubuntu for a solid 8 hours ;-) We gave away several boxes of 9.10 Desktop and Server CDs, and hundreds of stickers and pins.

Joe "Zonker" Brockmeier gave the opening keynote, "A Musical Guide to the Future of Linux: Reprise". Joe is an excellent speaker, and I saw this talk in September 2009 in Portland. It's an interesting, engaging talk, comparing various distros to bands. I love his comparison of Fedora to Frank Zappa. But I can't quite abide Ubuntu being likened to Duran Duran, while SuSE is The Who! UPDATE: Ubuntu is now U2 in Joe's talk, so it seems that we have established ourself with a bit more staying power than a bad 80's fad! :-)

Meanwhile, I was working on a dry run of my presentation slated for later in the day. I decided to use the Lucid daily server image, rather than the Beta2 image because there was a bugfix I wanted for the sake of my installation.

I attended a talk by Jeff Gehlbach on OpenNMS, a tool for monitoring Linux systems on a very large scale basis. Looks like a pretty interesting tool. We should perhaps package this for Debian and Ubuntu.

And then I listened to Chip Rosenthal's talk on hosting your own mail server (and "saying goodbye to Gmail"). This was a good talk. Chip started with his age-old mail solution (mutt running inside of a screen session on his server at home). And then showed his Palm Pre -- the first Linux smart phone he's ever owned (same phone I use). The Pre has terminal and ssh application, but the size and format of the interface just doesn't lend itself to mutt. So he built his own mailserver, using Ubuntu and dovecot. I didn't learn anything earthshattering here, but I thought his talk was an excellent showcase for the Ubuntu Server and dovecot.

After lunch, I attended a talk about Ubuntu on ARM, by Canonical's Pete Graner and David Mandala. I learned quite a bit, actually. The ARM space is quite challenging, giving the fragmentation of the architecture, with each vendor making their own strange customizations to the design. The revisions are happening quite fast, which makes it very challenging for Ubuntu, as a distro, to keep up.

Next I learned about Drizzle from Monty Taylor. Drizzle is a fork of MySQL by a number of former MySQL developers (who appear to be fairly frustrated with Sun and now Oracle's handling of MySQL). From Monty's talk, Drizzle is by design quite pluggable and extensible. I noticed that we have several Drizzle libraries in Ubuntu already. I'm going to take a closer look at these at some point.

I think the most interesting talk of the day was by Bradley Kuhn, about the lack of Software Freedom in the Software-as-a-Service (SaaS) model. He spoke extensively from the Free Software Foundation's point of view on Cloud Computing, SaaS, and the Affero GPL (AGPL). I really like the AGPL, and have used it for several of my projects, including Musica and Pictor. Bradly has a number of excellent points, and some very poignant concerns. I don't necessary agree with all of his platforms, but fully support his efforts to ensure that software freedom is not simply sliced out of SaaS offerings. Personally, I try to support and prefer free offerings (Identica over Twitter, Launchpad over SourceForge and GitHub) where possible, though not yet universally (I still use both Blogger and Wordpress). Unfortunately, questions from the audience ran about 10 minutes over time which, cut into my presentation a bit...

So my presentation was next, on the Ubuntu Enterprise Cloud. In 40 minutes, I was able to:
  • introduce Cloud Computing, Amazon EC2, Canonical, Eucalyptus, and the Ubuntu Enterprise Cloud (components and topologies)
  • boot a DD-WRT router, setup and install 2 Dell Vostro 1220 laptops with Lucid Beta2, with one machine serving as the Cloud Controller and the other a Node Controller, reboot them both, register an image, run an instance, and SSH'd into it
  • show a bit of the UEC administrative web interface, the euca2ools euca-* commands, and how byobu can be used to monitor the UEC services running and estimate the EC2 cost of an instance
All in all, I was pleased. It all worked ;-) I think I successfully moved the VGA cable 7 times among 3 laptops during the course of the presentation (thanks Bryce!). And a big thanks to my wife, Kim, who came and sat in the back row. She initially called it Nerdapalooza :-) but she said she had a good time and gained new appreciation for the importance of the work that we do in the Free Software world.

Jon "maddog" Hall followed my presentation, talking about Project Caua -- an interesting idea about bringing the Internet to masses of poor people in densely populated urban settings such as Sao Paulo, Brazil, using Linux servers, thin clients, and desktop virtualization. I think Ubuntu has all the tools that Maddog needs to make this work. I really hope it takes off.

Randal Schwartz delivered the closing keynote. His talk was highly entertaining, and shared many interesting anecdotes about his experiences with Larry Wall, Linus Torvalds, and Richard Stallman. It was a good "motivational" talk, in that he encouraged many of the non-technical attendees to get involved in Open Source through non-traditional means. He also distanced himself from (his words...) "FSF Hard Liners", claiming to be a more practical guy. When talking about making money off of open source, he said something that really hit home for me...he said that even if he were filthy rich, he'd probably wake up and do the same thing everyday -- answer a bunch of emails and questions on mailing lists, maybe hack a little, etc. I was disappointed that he claimed to actually not even run Linux at all (his slides were on a Mac, running OSX). I guess I could have done without that detail about the Texas Linux Fest's closing keynote speaker. Oh well. Other than that, it was a great day.

Again, thanks to the sponsors and organizers of the TLF. Here's to doing it again next year!


Friday, April 9, 2010

UEC Demo in Austin Tomorrow

I will be giving a preview demo of the 10.04 LTS release of the Ubuntu Enterprise Cloud, tomorrow, Saturday, April 10, 2010 at 4pm in Austin at the Texas Linux Fest.

In my presentation, I will use:
  • One free Ubuntu Server ISO (10.04 Beta2 64-bit) burned to a USB stick
  • Two laptops, and
  • Twenty Minutes
And you will witness the ease of deploying an Ubuntu Enterprise Cloud (UEC), Canonical's open source implementation of an Amazon EC2-compatible cloud that you can run locally, in your own data center and on your own hardware.

In this presentation, you will learn about the UEC, Eucalyptus, Cloud topologies, the installation process, registering nodes, running and terminating instances in the Cloud, and the UEC Image Store.
Bring a blank 1GB+ USB key and I'll even burn you a copy of the same ISO I use in my presentation (time permitting).
Cloud Computing is here, and Ubuntu is a phenomenal platform on which you can construct your private Cloud today. Since 2004, Ubuntu has revolutionized the Linux desktop. Attend this session and learn how Ubuntu is changing the landscape of the Linux server.


Thursday, April 8, 2010

Alfresco and Ubuntu

The alfresco-community package recently landed in Canonical's Partner Archive for Ubuntu 9.10, thanks to Brian Thomason's packaging efforts.

Alfresco is an open source enterprise content management system that offers an integrated solution for many facets of the content management domain, similar to EMC's Documentum product.

I think you would be hard pressed to find an easier way of deploying Alfresco on a Linux platform than simply:
  1. Installing the Ubuntu 9.10 Server
  2. Adding the Canonical Partner Archive
    sudo apt-add-repository 'deb lucid partner'
    sudo apt-get update

  3. And installing alfresco-community
    sudo apt-get install alfresco-community
Heck, you could try this out in EC2 with the Ubuntu 9.10 image for merely a few cents an hour!

Now doing something with Alfresco is perhaps a different challenge, if you're a Java-challenged Ubuntu sysadmin like me.

I'm happy to point you to an excellent article by Josh McJilton about Dashlets in Alfresco, which he developed at least in part on Ubuntu.

Give that a go, and let us know how the alfresco-community package on the Ubuntu Server is working out for you!


Wednesday, April 7, 2010

kqemu and Ubuntu

Several people have asked over the last few months about kqemu in Ubuntu. Here's a concise set of FAQs on the topic.

What is kqemu?

kqemu is a kernel module that "accelerates" QEMU virtualization by allowing guests to run some operations directly on the host's CPU. In this respect, it's similar to kvm.

Beyond the kernel module, kqemu requires support from the QEMU userspace emulator to take advantage of the kqemu kernel hooks.

How is it different from kvm?

Unlike kvm, kqemu has never been accepted in the upstream Linux kernel.

Also different from kvm is the fact that kqemu works on hardware that does not support CPU Virtualization Technology (VT extensions), see Intel VT and AMD-V.

When would I want to use kqemu?

If your CPU supports VT or you have access to hardware that supports VT, you have no need for kqemu, as kvm is a far more complete, better performing, fully supported, and more modern alternative. Otherwise, kqemu arguably may be useful on some legacy hardware without VT.

How do I know if my hardware supports VT?

Just run kvm-ok from a command line and it should tell you.

Why was support for kqemu dropped from Ubuntu?

Quite simply, the upstream QEMU community deprecated kqemu in favor of kvm.

The upstream qemu-0.11 release series (which was in Ubuntu 9.10) disabled kqemu in the build. And the upstream qemu-0.12 release series (which is in Ubuntu 10.04 LTS) actually removed all remnants of the kqemu hooks from the source.

Why did upstream QEMU drop support for kqemu?

This was thoroughly discussed on the upstream qemu-devel mailing list by the developers of QEMU, as well as many users. An open poll was conducted by QEMU upstream to gauge the usefulness of kqemu. (The Ubuntu Server Team also conducted a poll and held a discussion on the topic at UDS-Lucid in Dallas, Texas in November 2009.)

You can read the hundreds of messages, as well as the handful of bug reports, if you like, but there are two primary reasons:
  1. kqemu has no active maintainer. Upstream is open to reconsidering kqemu support, if an active maintainer steps up, fixes the open issues, and commits to providing ongoing support.
  2. kqemu code within QEMU actually conflicts or breaks KVM code paths (specifically some required for 64-bit KVM support).
What are my alternatives to kqemu in Ubuntu 9.10, Ubuntu 10.04 LTS, and beyond?

Ideally, you would have access to VT-capable hardware, and use qemu-kvm, leveraging its outstanding performance, security model, and support from the various communities responsible for delivering it to you in Ubuntu (including the upstream Linux kernel, QEMU development team, Ubuntu Server Community, and the Canonical Server Team).

We cannot stress this enough:
  • KVM is absolutely your best option for enterprise-ready, production-critical, supported deployments of Virtualization stacks built upon Ubuntu Servers.
If, instead, you're looking for occasionally running non-critical virtual machines on your Ubuntu desktop, I would recommend VirtualBox (see the virtualbox-ose package in Ubuntu). VirtualBox provides decent performance on systems without VT, as well as a rather user-friendly interface. VirtualBox is currently in Ubuntu Universe, so it is supported on a best-effort basis by the Ubuntu Community and Canonical.


Tuesday, April 6, 2010

eCryptfs to the Rescue

My Patriot Torqx 128GB SSD bit the dust a couple of weeks ago.

It just disappeared. The kernel simply stopped seeing the device. Poof. And then really weird, nasty things happened, until my OS crumbled like a house of cards. Upon reboot, not even the BIOS could see the drive.

After digging through Patriot's forums, it seems that I'm hardly the first person that this has happened to :-( Actually, it seems that many of these SSD sold in December 2009 and January 2010 are suffering from the problem.

Remarkably, it can be "solved" by a firmware update. And even more remarkably, Microsoft Windows is required to apply said update. Yeah, bummer.

So I had to contact Patriot and RMA my drive. Right--I had to FedEx my drive back to the manufacturer.

Thankfully, my private data was safely locked away in encryption provided by eCryptfs!


Canonical Jobs: Virtualisation Developer

Howdy all! Just an FYI...

Canonical is hiring a new Virtualization developer. We are specifically looking for experience developing, packaging, and deploying KVM, QEMU, and Libvirt. Working at Canonical is both fun and rewarding, the travel is exciting, and our product is really something to be proud of!

If you have deep virtulisation experience, take a look at (reposted below):

Virtualisation Developer, Server Team

Job Location: Your home with broadband. Some international travel will be required.

Job Summary: We are looking for a Server Engineer with a strong background in virtualisation technologies to play a key development and integration role on the Ubuntu Server Team - one of the technical teams that makes up the Ubuntu Platform Team. As part of the core Ubuntu team, you will work on a broad range of technical tasks: including feature planning, development, packaging, integration, bug-fixing and maintenance. The successful candidate will ensure a first class user experience by packaging, bug fixing and development of virtualisation technologies and related applications. Strong communication and relationship skills are as important as superb technical skills in this role, as the successful candidate will be responsible for process communication and coordination between Ubuntu and external partners, as well as ensuring commonality of purpose and technical approach. This job involves international travel several times a year, usually for one week at a time.
Reports To: Server Team Manager

Key responsibilities:

  • Be a member of the Ubuntu Server Team with responsibility for the quality of key components of the Ubuntu Server edition.
  • Take on primary maintenance of some components of the Ubuntu Server, covering virtualisation technologies and related areas.
  • Collaborate with other teams in the Ubuntu community and with upstream developers where appropriate, to make sure that Ubuntu Server includes the very best in free software and that our goals are taken into account by other projects.

Required skills and experience:

  • A strong and demonstrated grasp of Linux server technologies
  • Comprehensive understanding of multiple hypervisor technologies, like KVM, QEMU, XEN, Vmware, or Virtualbox and management tools like libvirt and ovirt.
  • Substantial experience designing, implementing, configuring, deploying and administering hypervisor systems in a production environment
  • Solid experience programming C and at least one dynamic language, preferably Python.
  • Experience with Amazon EC2, UEC or similar cloud computing technology
  • Familiarity with open source development tools and methodology, especially those in common use for Ubuntu and Debian package maintenance.
  • Strong English language communication skills, especially in online environments such as mailing lists and IRC
  • Ability to be productive in a globally distributed team through self-discipline and self-motivation, delivering according to a schedule.
  • Ability to collaborate in real time with team members in US and European time zones

Desired skills and experience:

  • Experience with packaging in at least one Linux distribution, Ubuntu or Debian packaging experience a plus
  • Experience with container technologies like LXC and OpenVZ
  • Experience with OVF
  • Experience with kernel development, especially for virtualisation
  • Solid grasp of UNIX security models and experience with secure software design practices such as privilege separation
  • Affinity with the Open Source community, preferably by demonstrated contributions
Apply for this job

Other Canonical and Ubuntu jobs are posted at:


Friday, April 2, 2010

Try *this* on your Smartphone!

In my previous post, I ranted about my Palm Pre eating some important pictures I had taken...

Well, I went looking for them in the Pre's flash memory, using photorec(1).

I simply plugged my Pre into my Ubuntu laptop, tapped the Pre's screen selecting USB Drive, and the Pre shows up as /dev/sdc.

Next I ran
sudo photorec

I worked my way through a few options, and scanned the entire 8GB disk, which took ~20 minutes.

I actually found my missing pictures!

Moreover, photorec recovered several megabytes of C, C++, Javascript, and Shell source code!

I'm not going to post it here, as it's not my copyright and I don't see an open source license, but if you're curious what's lingering around on your SmartPhone's backing disk, give photorec a try ;-)


A Palm Pre Rant

While I'm usually a rather positive person, this post will not be, so beware...

I use a Palm Pre as my primary phone. I previously wrote about about my Pre and my G1. I love that it's running Linux (WebOS), and I really like many things about the phone and OS. But there's a ton of little things that are really starting to drive me nuts about it.

Every time Palm forces an upgrade of my OS, several things break. Most recently, the 1.4 upgrade broke Terminal and MyTether -- two of my most frequently used applications. Moreover, what's with forcing a user to upgrade? I was so much happier with the old version.

The Touchstone charging station is a complete waste of money. I thought it was pretty cool that it uses magnetic induction to "wirelessly" charge the phone. But the software integration with it is absolutely terrible. It's simply unusable on the nightstand next to the bed, since the backlight is forced on (with no way to disable), so bright as to disturb your sleep. Other times, it appeared to be charging, but wasn't actually doing so, and the phone just slowly committed suicide. It's $70, doesn't include a USB cable, and doesn't work very well at all. Buy yourself a $5 retractable microUSB cable and skip the Touchstone entirely.

I love that the headphones jack is a standard 1/8" plug. But about half the time I use it, the sensor that detects whether it has a plug in it or not gets "stuck", and I spend the next 20-30 minutes plugging and unplugging the 1/8" head phones plug into the slot until I can by chance get the friggin' sensor to reset. This is a giant pile of suck that renders your phone unusable until you can get the sensor to reset. I pray that I'm never in an emergency situation where I need my phone and this happens :-/

And finally, it just recently "ate" a bunch of pictures that I had taken of some flipcharts we were using to take notes at an Ubuntu Server sprint. Yeesh. So I can't really even trust it to save the pictures that I take.

So my take on the Pre after ~6 months, from best to worst...
  • Linux -- awesome
  • Real keyboard -- awesome
  • App store -- decent, but less than Android or iPhone
  • Flip-mechanics -- feels kind of cheap
  • OS graphics/effects -- pretty nice, I guess
  • OS stability -- okay-ish
  • OS speed -- kinda slow for some things
  • Battery life -- not so great (less than 24 hours)
  • Sprint forcing OS upgrade -- highly undesired
  • Touchstone -- waste of money, skip it entirely
  • Headphone jack issue -- should force a recall of the devices, IMHO
  • Arbitrarily deleting pictures -- WTF
So I guess I'm starting to look for another smart phone. I don't think I'm in love with the Pre. We were never married, of course. Just courting. And in the end, I don't think we're meant for one another. She's just a little bit unstable and immature for me :-)

How long until I can buy a mass market smartphone running Ubuntu? Is that too much to ask? ;-)


Thursday, April 1, 2010

Server Bug Zapping: Eucalyptus, Euca2ools, Cloud-Init, Cloud-Utils

Mathias Gug, Scott Moser, and I traveled to Santa Barbara, California to sprint with Dan Nurmi of Eucalyptus Systems.

It was a bit of a hectic week, as Eucalyptus had just named Marten Mickos their new CEO. Congratulations to Eucalyptus on what appears to be a huge step forward in their business development in the open source cloud space!

We spent quite a bit of the week triaging and fixing bugs in Ubuntu's cloud packages. Here's a few stats, looking back at the week:
Ubuntu 10.04 LTS is really shaping up to be a great UEC release. I'm quite looking forward to it!


Server Bug Zapping: Libvirt

Jamie Strandboge and I spent today working on Ubuntu Lucid's libvirt package.

We did a bit of testing of the libvirt 0.7.7 merge that Jamie has in his PPA, and we spent several hours triaging all of Ubuntu's libvirt bugs.

We managed to reduce the number of open bugs from 78 to 41 with a thorough testing of Lucid's libvirt package against the open bugs, a bit of duplicate matching, and some expiration of a few others.

I uploaded one libvirt fix to an issue that can be solved with the new upstart job. If we decide to upload 0.7.7 to Lucid, there's a few others that will be closed too. And if not, we can cherry pick a few commits.

Finally, if you can give us some help, try installing Jamie's libvirt 0.7.7 merge in Lucid and let us know how well it works for you, and if there are any regressions. Cheers!