On Tue, Jan 31, 2012 at 01:29:58PM -0800, dan farmer wrote:
Is there anyway to convince find0 to put the results in memory rather
than
writing to a file? I really don't want to have to write it to a file and
then read it again just to process the results. I see guestfish has an
option to write to stdout (but the lib doesn't have a documented way) for
some reason.
These so-called "FileIn" and "FileOut" APIs only read and write to
files. However in Linux you can easily convert this to a file
descriptor, or even in-memory operation. This page describes the
/dev/fd method:
http://libguestfs.org/guestfs.3.html#uploading_and_downloading_to_pipes_a...
Note that if you want to actively read or write from the other end of
the /dev/fd file descriptor, then there has to be another process or
thread involved. This is because the libguestfs API is synchronous
and so the thread which makes the guestfs_* call will be doing
blocking read(2) and write(2) system calls. This makes it rather hard
to use /dev/fd/* from guestfish, which is single-threaded, but you can
still use pipes, eg:
find0 / - | <some other program>
It'd be nice to point to either a scalar (or w/e var) or filename
and let me
worry if I have enough memory to hold all that. I suppose I could write
my own walker, try to intercept the writes of guestfish, change the
source, try tricks with named pipes, (not going to call guestfish from
inside perl!) hoping for an easier answer.
At some point you hit the limits of guestfish and it's better to use
the real perl bindings, ie. Sys::Guestfs.
[...]
P.s. If there's a better place to ask for such things, let me
know; looking
at
archives it seems more patch/dev stuff here than the charter suggests,
but I'm fine with w/e.
Usually better to ask libguestfs questions here:
https://www.redhat.com/mailman/listinfo/libguestfs
Rich.
P.p.s. Is there a repository for scripts or things written for
libguestfs?
I'm
familiar with the recipes page
(
http://libguestfs.org/guestfs-recipes.1.html)
but haven't found much else other than rich's blog. But unless libguestfs
dies on me along the way I'm planning on writing various things in the next
few months that may or may not see the light of day, but don't want to spam
folks if there's another option or no interest.
^..^
_______________________________________________
virt-tools-list mailing list
virt-tools-list(a)redhat.com
https://www.redhat.com/mailman/listinfo/virt-tools-list
--
Richard Jones, Virtualization Group, Red Hat
http://people.redhat.com/~rjones
virt-p2v converts physical machines to virtual machines. Boot with a
live CD or over the network (PXE) and turn machines into Xen guests.
http://et.redhat.com/~rjones/virt-p2v