[Libguestfs] libguestfs on Ubuntu

Richard W.M. Jones rjones at redhat.com
Mon Dec 21 15:43:57 UTC 2009


So I got a lot further building libguestfs on Ubuntu, up to the point
where I can boot the appliance and run some simple commands.  We need
to push some patches upstream, and there are still some things in
Ubuntu itself which are broken.  This documents how far I've got.

(1) libguestfs from git, Ubuntu 9.10, all updated to the latest
versions.  You will of course also need to read the README file and
install the long list of dependencies, all of which are in the Ubuntu
repositories.

http://git.annexia.org/?p=libguestfs.git;a=summary
http://libguestfs.org/README.txt

(2) I'm going to post patches as follow-ups to this email, of which
most/all will be required.

(3) You will need debirf 0.25.  I installed it from:

http://gb.archive.ubuntu.com/ubuntu/pool/universe/d/debirf/

(4) This is how I'm configuring:

./autogen.sh \
  --with-readline \
  --with-repo=karmic \
  --with-mirror=http://gb.archive.ubuntu.com/ubuntu/ \
  --enable-debug-command

(5) make

(6) 'make check' fails during the Gnulib tests.

(7) After building you can do a quick sanity check:

$ ./fish/guestfish alloc /tmp/test.img 10M : run : list-devices
/dev/sda

If it doesn't work, add the '-v' option and post the full output here.

I was able to run some basic guestfish commands, but I didn't yet test
it extensively.

Rich.

----------------------------------------------------------------------
$ ./fish/guestfish 

Welcome to guestfish, the libguestfs filesystem interactive shell for
editing virtual machine filesystems.

Type: 'help' for help with commands
      'quit' to quit the shell

><fs> alloc /tmp/test.img
use 'alloc file size' to create an image
><fs> alloc /tmp/test.img 10M
><fs> run
open /dev/kvm: No such file or directory
Could not initialize KVM, will disable KVM support
><fs> list-devices 
/dev/sda
><fs> help part-disk 
NAME
    part-disk - partition whole disk with a single primary partition

SYNOPSIS
     part-disk device parttype

DESCRIPTION
    This command is simply a combination of "part_init" followed by
    "part_add" to create a single primary partition covering the whole disk.

    "parttype" is the partition table type, usually "mbr" or "gpt", but
    other possible values are described in "part_init".

    This command is dangerous. Without careful use you can easily destroy
    all your data.

><fs> part-disk /dev/sda mbr
><fs> mkfs ext3 /dev/sda1 
><fs> mount /dev/sda1 /
><fs> touch /hello
><fs> umount-all 
><fs> list-partitions 
/dev/sda1
><fs> sync
><fs> 
$ strings /tmp/test.img 
lost+found
hello
lost+found
hello

-- 
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
Read my programming blog: http://rwmj.wordpress.com
Fedora now supports 80 OCaml packages (the OPEN alternative to F#)
http://cocan.org/getting_started_with_ocaml_on_red_hat_and_fedora




More information about the Libguestfs mailing list