| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
(cherry picked from commit 508f1ee87e816bf6b6fc8e629ccbb2d61a971169)
|
|
|
|
|
|
| |
Note for stable-1.2:
Cherry picked from development commit c53e64a and rebased
against stable-1.2 tree.
|
|
|
|
|
|
|
|
|
| |
Fix copyright years.
Fix URLs to point to new PRC site.
Make sure guestfish(1) and guestfs(3) manpages reference the
current list of tools.
(cherry picked from commit 9a608a1516bd339dc6d5ebe9952d3bced273c416)
|
|
|
|
|
|
|
|
|
|
| |
- copy more than 64 boot loader sectors across, since real boot
loaders (eg. for Windows) can be much larger than this
- copy bootable flag and ID byte to new partitions
- start the first partition on the new disk at the same sector
offset as on the old disk
- sync the disks before existing
(cherry picked from commit add5e22563972210f5c8baf9e8cf651fc1a7bbd8)
|
|
|
|
|
|
|
|
|
| |
These APIs flesh out further the partitioning API.
Note for stable-1.2 branch:
Cherry picked from b68c030adfdbefe65bc9 and modified
to apply against stable-1.2. We need these new APIs
in order to support bugfixes in virt-resize.
|
|
|
|
|
|
|
|
|
| |
Previously we used strtok. However this has the problem that
strtok considers multiple delimiter characters to be like a single
delimiter, eg. "1:::2" would be parsed the same as "1:2". In
other words, the previous code would skip over or fail if there
are empty fields.
(cherry picked from commit cb9350019cc6382a35c98f522c9c4d221c92b605)
|
|
|
|
|
|
| |
This allows us to make the RUN_PARTED macro do something else
along the error path, other than just returning -1.
(cherry picked from commit 440ad646cdf31bdb5ad2bc92fc51fa6df3fb9c63)
|
|
|
|
| |
(cherry picked from commit 30752ac7ca042f533b8d0c4c6144400a8532b154)
|
|
|
|
| |
(cherry picked from commit d1dd00606d0b5b1430598e5092b017aa15d9ee11)
|
| |
|
| |
|
|
|
|
| |
(cherry picked from commit 3765f97898a1194d96ab4124e1eb46e25701b3b2)
|
|
|
|
|
|
|
| |
Detect if qemu dies during launch by wait(2)-ing for it, and
then getting EOF on the qemu pipe. This was broken in null
vmchannel mode, causing a hang.
(cherry picked from commit e35debd642bea240609775610b68145dab0a634b)
|
|
|
|
|
|
|
| |
Always check that pid > 0 before calling kill (pid, 9). The
issue was that sometimes pid == 0, and this ends up killing
ourselves.
(cherry picked from commit dc5df3bfec706803e75a5f2454293db30e753249)
|
|
|
|
|
|
|
|
|
| |
This warning is currently a fatal error. The code attempts
to retry the accept call, but because we don't reset sock = -1
the retry doesn't happen and it dies anyway.
Set sock = -1 so the retry attempt can happen.
(cherry picked from commit fb4ec82d97f71963ea7f830cb0bc38abefcbac99)
|
|
|
|
|
| |
Fedora 11 is almost EOL at this point.
(cherry picked from commit 0ce9b2bb9bcac61f7fb5dd2811d9b3b621f8309b)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This includes various code cleanups:
(a) A regression test for RHBZ#580246.
(b) Use write instead of fwrite to write out the tar file. This is
just because the error handling of write seems to be better
specified and easier to use.
(c) Use size_t instead of int for length.
(d) Clearer debug messages when in verbose mode.
(cherry picked from commit de7ef2a0fdcbcddfd35ecb8ee2804e1ca0968454)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The problem was this sequence of events:
(1) File transfer goes through OK.
(2) pclose returns failure (because 'tar' subprocess failed)
(3) We try to cancel the transfer by calling cancel_receive.
Step (3) fails because the transfer (as far as the library is
concerned) has succeeded, so causing a hang.
The more fundamental reason why we see steps (1) and (2) is that
'tar' does NOT fail immediately if there is a write error. Instead
it continues reading and discarding the input until the end of the
input before giving "Error exit delayed from previous errors".
IMHO this is a bug with tar, since an ENOSPC write error should
be fatal for tar.
(cherry picked from commit 07f4b20ae959069fca41756b0dc103ec5fa99754)
|
|
|
|
|
|
|
|
|
| |
$ guestfish /tmp/disk.img
/tmp/disk.img: unknown command
Did you mean to open a disk image? guestfish -a disk.img
For a list of commands: guestfish -h
For complete documentation: man guestfish
(cherry picked from commit 4c50f4c38d9a50fbf983c79dd208d1b1598fef8a)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
posix_fallocate has a non-standard way to return error indications.
Thus all our calls to posix_fallocate were effectively unchecked. For
example:
$ guestfish alloc test.img 1P
$ echo $?
0
$ ll test.img
-rw-rw-r--. 1 rjones rjones 0 2010-04-06 11:02 test.img
$ rm test.img
With this change, errors are detected and reported properly:
$ ./fish/guestfish alloc test.img 1P
fallocate: File too large
This is a fix for:
https://bugzilla.redhat.com/show_bug.cgi?id=579664
(cherry picked from commit 2ade61d1f864c75ce65c358e4ac8a012a897b89a)
|
|
|
|
| |
(cherry picked from commit fb0375a0984efca96db1277398f9fe50ecdd578d)
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit fixes the 'Use%' field in the output so it matches what
coreutils' 'df' command would print.
Firstly we change the calculation to use the space available to root,
not the space available to non-root. This means it matches what 'df'
when run as root in the guest would show.
Secondly we display this rounded up to the next whole percent (ie. using
ceil), which is also what 'df' does.
Thirdly we change the regression test so it tests this.
Note that even with these changes you are not guaranteed to get precisely
the same figures from inside and outside the guest, as it depends on
how quiescent the guest is and how recently the superblock was synced.
Thanks: Rita Wu
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Since commit 977edb3185fe8f we have been passing TERM from the
library into the appliance (for the benefit of virt-rescue).
However this changes the output of parted, which I would argue
is a bug in parted:
TERM=xterm /sbin/parted -m -- /dev/sda unit b print 2>&1 | hexdump -C
00000000 1b 5b 3f 31 30 33 34 68 42 59 54 3b 0a 2f 64 65 |.[?1034hBYT;./de|
Notice the escape-sequence junk before the official "BYT;"
header.
By setting TERM=dumb we avoid this.
|
| |
|
|
|
|
| |
This is a re-fix for RHBZ#505329.
|
| |
|
|
|
|
|
| |
We set it on the kernel command line, then get it out from
there when the rescue appliance boots.
|
| |
|
| |
|
|
|
|
|
|
| |
Change the appliance so PATH includes common directories. Thus
we don't need to hard-code paths to binaries (eg. "/sbin/fdisk")
everywhere.
|
|
|
|
|
|
|
| |
Previously we used newSVpv (str, len), but if len == 0 then
this means Perl tries to calculate the string length using
strlen(3). This is not desirable when we know the length, in
which case we should use newSVpvn instead.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
The problem is that mkfs was making an ext2 filesystem,
which later we were checking with e4fsck. e4fsck corrects
an "error" on the filesystem:
/dev/VG/LV: Adding dirhash hint to filesystem.
e4fsck returns 1 (errors corrected) which we were interpreting
as an error return.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
Virt-resize is the main contribution here, a program which can
be used to expand and shrink partitions in disk images.
Virt-list-partitions is used as an ancillary tool for planning
resize operations.
|
|
|
|
|
|
|
| |
This is similar to 'guestfs_dd', but it copies just a fixed
number of bytes from the source to the destination. It's an
error if the source is too short or if the destination is too
small.
|
| |
|
|
|
|
|
|
|
|
| |
For ARCHFLAGS change, see:
http://www.ruby-forum.com/topic/129717#579065
We also add a test for the <guestfs.h> header and include
that header when testing the library.
|