| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
| |
|
|
|
|
| |
todo list
|
|
|
|
|
| |
No one cares for PPC, and if they do they should file these
as bugs in the bug tracker.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
truncate, truncate_size: Used to truncate files to a particular
size, or to zero bytes.
mkdir_mode: Like mkdir but allows you to also specify the
initial permissions for the new directory.
utimens: Set timestamp on a file with nanosecond accuracy.
lchown: Corresponding to lchown(2) syscall (we already have chown).
The implementation is complicated by the fact that we had to
add an Int64 parameter type to the generator.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit changes guestfs_launch so that it both launches
the appliance and waits until it is ready (ie. the daemon communicates
back to us).
Since we removed the pretence that we could implement a low-level
asynchronous API, the need to call launch() followed by wait_ready()
has looked a bit silly.
Now guestfs_wait_ready() is basically a no-op. It is left in the
API for backwards compatibility. Any calls to guestfs_wait_ready()
can be removed from client code.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
swapon-device
swapoff-device
swapon-file
swapoff-file
swapon-label
swapoff-label
swapon-uuid
swapoff-uuid
mkswap-file
|
| |
|
|
|
|
|
| |
These commands can be used to make hard and symbolic links. The
readlink command is used to read existing symbolic links.
|
| |
|
| |
|
|
|
|
|
|
|
| |
This commit adds kernel and userspace architecture detection
(fully for Linux, partially for Windows). It adds an architecture
for each kernel detected, and an architecture for each root (ie.
userspace) found.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
This commit implements the RBufferOut type for returning
arbitrary 8 bit data from calls.
We also implement the guestfs_read_file call to read a
whole file that can contain any 8 bit content, but up to
a limit of ~ 2 MB.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The use case is to have a long-running guestfish process in
a shell script, and thus to avoid the overhead of starting
guestfish each time. Do:
eval `guestfish --listen`
guestfish --remote somecmd
guestfish --remote someothercmd
guestfish --remote exit
This patch also supports having multiple guestfish processes
at the same time.
The protocol is simple XDR messages over a Unix domain socket.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
These commands are used to create block and char device
nodes or FIFOs (named pipes) in the filesystem.
The umask command is required also because the permissions
used by mknod are masked by the umask.
Also document and guarantee that the umask starts as 022.
|
|
|
|
|
|
| |
Allow the qemu memory size to be specified either by API
calls or by setting the LIBGUESTFS_MEMSIZE environment
variable.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
This command estimates file usage for files and directories.
|
| |
|
|
|
|
|
|
|
|
| |
Use commands such as:
more /etc/passwd
less /etc/fstab
These commands are specific to guestfish.
|
| |
|
|
|
|
|
| |
These commands let you view parts of a large file without
passing the whole file over the network connection.
|
| |
|
|
|
|
|
| |
To run just selected tests, do:
TEST_ONLY="hexdump mkfs" make -C capitests check
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
You can invoke guestfish with:
guestfish -i libvirt-domain
guestfish -i disk-image(s)
|
|
|
|
|
| |
New '-f' option allows scripts to be written using:
#!/usr/bin/guestfish -f
|
| |
|
| |
|