| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
Add a new section called "EXTENDING LIBGUESTFS" to the
guestfs manual page which contains all the information
previously in "HACKING".
|
|
|
|
|
|
| |
This should allow us to perform filesystem-based write
tests much more quickly, because we don't need to recreate
the filesystem from scratch each time.
|
| |
|
| |
|
|
|
|
| |
This fixes commit 18374b5b7d3154e0b8b8a07e3590f6eee762b58e.
|
|
|
|
|
|
|
|
|
|
|
|
| |
I have diffed the output from the original virt-df with this
new version, and they agree very closely. Some differences:
- Old virt-df have a divide-by-zero error in cases where the
number of used inodes was 0. New virt-df fixes this.
- New virt-df uses gnulib human_readable library which displays
numbers to 3 significant figures for -h output (old version
used an ad hoc function).
|
|
|
|
|
|
|
|
| |
This tool replaces virt-list-filesystems and virt-list-partitions with
a new tool written in C with a more uniform command line structure
and output.
This existing Perl tools are deprecated but remain indefinitely.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
With changes in the core API since 1.5, virt-cat was little
more than a Perl wrapper which did some command line argument
processing. Thus it could easily be rewritten in C.
This version also shares core command line argument processing
with guestfish and guestmount, so the options have changed
slightly (old-style command line *is* supported).
virt-cat -a disk.img file [file ...]
virt-cat -d domname file [file ...]
Several other guestfish options are supported including encryption,
and with the new style multiple files can be downloaded. See the
man page for details.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
'src/generator.ml' is no more. Instead the generator is logically
split up over many different source files.
Read generator/README for help and tips.
We compile the generator down to bytecode, not native code. This
means it will run more slowly, but is done for maximum portability.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This uses the optional po4a package to split these files into
PO files for translation, and reassemble afterwards.
Note this creates an extra pot file (po-docs/libguestfs-docs.pot).
We don't (yet) combine this with the main po/libguestfs.pot file.
The 'libguestfs-docs.pot' file included in this commit is not the
real thing, just a short cut down snippet for testing. The real
thing is created if you update one of the dependent files and
rebuild.
Note also the dummy ja.po, for testing the principles.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit makes the semi-independent hivex library into a
separate upstream project. The git repo for hivex is now:
http://git.annexia.org/?p=hivex.git;a=summary
Downloads of hivex are available here:
http://libguestfs.org/download/
All questions, patches, bugs etc should be sent to the libguestfs
mailing list and bug tracker.
|
|
|
|
| |
Tested in only limited situations, with Mono on Linux.
|
|
|
|
|
|
|
|
|
|
|
| |
* HACKING: Expand indentation TABs.
* configure.ac: Likewise.
* daemon/daemon.h: Likewise.
* daemon/guestfsd.c: Likewise.
* fuse/guestmount.c: Likewise.
* hivex/LICENSE: Likewise.
* src/generator.ml: Likewise.
* tools/virt-win-reg: Likewise.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This implements FUSE filesystem support so that any libguestfs-
accessible disk image can be mounted as a local filesystem.
Note: file writes (ie. write(2) system call) is not yet implemented.
The API needs more test coverage, particularly lesser-used system
calls.
The big unresolved issue is UID/GID mapping between guest filesystem
IDs and the host. It's not easy to automate this because you need
extra details about the guest itself in order to get to its
UID->username map (eg. /etc/passwd from the guest).
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In hivex/: This mini-library allows us to extract Windows
Registry binary files ("hives").
There are also two tools: hivexml converts a hive to a
self-describing XML format. hivexget can be used to extract
single subkeys from a hive.
New tool: virt-win-reg. This is a wrapper around the library
functionality allowing you to pull out data from the registries
of Windows guests.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This moves the tool programs into a single directory:
cat/* -> tools/virt-cat
df/* -> tools/virt-df
edit/* -> tools/virt-edit
rescue/* -> tools/virt-rescue
This in itself simplifies the build process because we only need
one Makefile and one copy of 'run-locally'.
'run-*-locally' has become just 'run-locally' and takes an extra
parameter which is the name of the tool, eg:
run-locally cat [virt-cat params...]
virt-inspector stays in its own directory, because this contains
more than just a single Perl script.
|
|
|
|
|
|
|
|
| |
"make syntax-check" was failing. This fixes it.
* HACKING: Indent with spaces, not TABs.
* configure.ac: Likewise.
* rescue/virt-rescue: Likewise.
* src/generator.ml: Likewise.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Edit any file in a guest. This was possibly previously
using guestfish, but having a separate command makes it
simpler.
The usage is simply:
virt-edit mydomain /some/file
It runs $EDITOR or vi on the file, and if the user changes
it, uploads the result back to the VM.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This command runs a "rescue appliance" against a virtual machine
or disk image. This is useful for making ad-hoc interactive
changes to virtual machines.
$ virt-rescue --ro /dev/vg_trick/F11x64
Welcome to virt-rescue, the libguestfs rescue shell.
Note: The contents of / are the rescue appliance.
You have to mount the guest's partitions under /sysroot
before you will be able to examine them.
bash: cannot set terminal process group (-1): Inappropriate ioctl for device
bash: no job control in this shell
><rescue> mount /dev/vg_f11x64/lv_root /sysroot
EXT4-fs (dm-0): barriers enabled
kjournald2 starting: pid 269, dev dm-0:8, commit interval 5 seconds
EXT4-fs (dm-0): internal journal on dm-0:8
EXT4-fs (dm-0): delayed allocation enabled
EXT4-fs: file extents enabled
EXT4-fs: mballoc enabled
EXT4-fs (dm-0): mounted filesystem with ordered data mode
><rescue> ls /sysroot/
bin dev home lib64 media opt root selinux sys usr
boot etc lib lost+found mnt proc sbin srv tmp var
><rescue> exit
|
| |
|
| |
|
|
|
|
|
| |
* HACKING: Make (setq indent-tabs-mode nil) apply to nearly all
files, not just C-mode ones.
|
|
|
|
| |
* HACKING: Convert leading TABs.
|
|
|
|
|
|
|
| |
* cfg.mk (disable_temporarily): Remove sc_TAB_in_indentation,
to enable the "make syntax-check" that enforces this.
* .x-sc_TAB_in_indentation: New file. Exceptions.
* HACKING: Document the policy, with tips on how to conform.
|
|
|
|
|
|
|
|
|
|
|
| |
Do it by running this command:
[exempted files are matched via .x-sc_TAB_in_indentation]
git ls-files \
| pcregrep -vf .x-sc_TAB_in_indentation \
| xargs pcregrep -l '^ *\t' \
| xargs perl -MText::Tabs -ni -le \
'$m=/^( *\t[ \t]*)(.*)/; print $m ? expand($1) . $2 : $_'
|
|
|
|
|
|
|
| |
%Q => simple shell quoted string
%R => path will be prefixed by /sysroot
eg. snprintf (cmd, sizeof cmd, "cat %R", path); system (cmd);
|
|
|
|
|
|
|
|
|
|
|
| |
This is an end-user testing tool, designed to test basic functionality
of libguestfs/qemu/kernel combination on the end-user's final host
machine.
It does not perform a thorough test, but should be enough to find
most booting issues.
Also this is intended to be used when reporting bugs.
|
|
|
|
|
|
|
|
|
| |
This script is just a simpler way to cat a file from a VM. It
is otherwise equivalent to using guestfish.
virt-cat someguest /etc/fstab
virt-cat someguest /var/log/messages | tail
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|