summaryrefslogtreecommitdiffstats
path: root/resize
Commit message (Collapse)AuthorAgeFilesLines
* doc: Add notes on how GPT works on 4k sector disks.Richard W.M. Jones2012-05-181-2/+13
| | | | | | | | | | I used scsi_debug to create a 4k sector virtual disk: modprobe scsi_debug dev_size_mb=128 sector_size=4096 I then used 'gdisk' to create lots of partitions, and used 'hexdump' to examine what was written to disk. (cherry picked from commit 2fd2c85f6a42575749b9d38bd2f1512ae25db760)
* resize, sparsify: Add a simple-minded check to stop indisk = outdisk.Richard W.M. Jones2012-04-171-0/+6
| | | | (cherry picked from commit 84d450210b3ea01de3fe26b2cf1db2b492d77aec)
* Ensure that SOURCES are always in EXTRA_DIST, even if OCaml not available.Richard W.M. Jones2012-04-021-5/+3
| | | | (cherry picked from commit 6e3de762782b050fe7ad675297089a42026f05c4)
* resize: Fix --output-format flag (RHBZ#798196).Richard W.M. Jones2012-03-012-3/+10
| | | | | Update the test to use the --format and --output-format flags. (cherry picked from commit 88ba4da4d6c07762fc95c96ea67019f0ebf4677c)
* resize: Document steps to avoid UNMOUNTABLE_BOOT_VOLUME BSOD (RHBZ#797986).Richard W.M. Jones2012-03-011-0/+8
| | | | | (Thanks Grant Williamson for finding and fixing this problem) (cherry picked from commit a93d4a9dc1aea6940886c85d4b09f21cbfc80969)
* resize, sparsify: find progress mini-library in out-of-tree builds (2)Hilko Bengen2012-01-241-1/+1
| | | | (cherry picked from commit b7122eaa58ccd153a8c39bc3b6f890755c5df089)
* Do not run appliance-related checks if not building applianceHilko Bengen2012-01-231-1/+4
|
* Replace setting of environment variables with usage of local run scriptHilko Bengen2012-01-231-3/+1
| | | | (Includes fix by RWMJ)
* resize, sparsify: find progress mini-library in out-of-tree buildsHilko Bengen2012-01-201-1/+1
|
* Fixed out-of-tree compilation of OCaml code after .depend files removalHilko Bengen2012-01-201-2/+3
|
* Tempus fugit.Richard W.M. Jones2012-01-186-6/+6
| | | | Update all copyright dates to 2012.
* build: Remove .depend files from gitMatthew Booth2012-01-112-10/+1
| | | | | Remove generated .depend files from source control, and don't barf when they don't exist while bootstrapping.
* build: Fix automake warningsMatthew Booth2012-01-041-3/+5
|
* extra tests: Test virt-resize.Richard W.M. Jones2011-11-293-4/+18
| | | | | | | | This adds the virt-resize --debug-gc option which causes virt-resize to call Gc.compact before exiting, allowing GC and memory problems to be tested. Add an extratest which runs virt-resize under valgrind.
* Update FSF address.Matthew Booth2011-11-084-4/+4
|
* resize: Remove requirement for ocaml Pcre library.Richard W.M. Jones2011-11-032-18/+9
| | | | | This library is not available in RHEL 6, and in any case removing the dependency is a simple change.
* resize: Add tests for some Utils functions.Richard W.M. Jones2011-11-033-2/+98
|
* virt-resize: Be much more conservative about moving first partition.Richard W.M. Jones2011-10-261-5/+26
| | | | | | | | | | | | Commit 2910413850c7d9e8df753afad179e415f0638d6d caused Windows 7 resizes to break with the 0xc0000225 boot error. Change the --align-first auto (default) option so that it is more conservative about when it moves the first partition. In particular it doesn't move it if it's already aligned (as it is for Win7), nor if there is more than one partition (also Win7). Tested with: Windows XP, 2003, 7, Ubuntu 10.10 and RHEL 5.
* virt-resize: Handle extended and logical partitions (RHBZ#642821).Richard W.M. Jones2011-10-262-17/+90
|
* resize: Get the partition table type of the source disk earlier.Richard W.M. Jones2011-10-261-7/+17
| | | | | | Also we only permit MBR (DOS) and GPT partition tables. In theory previously we allowed other partition table types, but it is unlikely that it would have worked in reality.
* ocaml: Make sure virt-resize, virt-sparsify are rebuilt if Guestfs API changes.Richard W.M. Jones2011-10-252-8/+8
| | | | | | | | Add a dependency so these tools are rebuilt from scratch if the Guestfs API changes. This prevents the error: "[...] make inconsistent assumptions over interface Guestfs". This commit includes the generated changes to .depend files.
* resize: Add --align-first auto|never|always option.Richard W.M. Jones2011-10-203-16/+129
| | | | | The first partition can now be aligned. We fix the bootloader correctly for Windows by adjusting the "Hidden Sectors" field.
* resize: Add --alignment flag to allow partition alignment to be picked.Richard W.M. Jones2011-10-202-11/+57
|
* resize: Refactor the code for creating target partitions.Richard W.M. Jones2011-10-201-92/+97
| | | | | | | | | | | | | The old code mixed the business of planning the layout of the target partitions with the creation of the target partitions. The replacement code separates these into two tasks: firstly we create a new 'partitions' list with the target layout, secondly this directly drives the creation of the partitions. As part of this change I have *removed* the old code that was supposed to handle extended/logical MBR partitions. It simply didn't work, and didn't have any hope of working, and there is a separate bug open to fix it.
* resize: Remove p_size field from partitions structure.Richard W.M. Jones2011-10-201-12/+13
| | | | | | This field simply contained a duplicate copy of p_part.part_size. There is no functional change in this commit.
* virt-resize: Align partitions to multiple of 128 sectors (instead of 64).Richard W.M. Jones2011-10-061-4/+5
| | | | | This gives us effectively 64 KByte alignment, optimal for all current types of storage.
* New tool: virt-sparsify to make disk images sparse.Richard W.M. Jones2011-10-041-0/+1
|
* Stable OCaml dependencies.Richard Jones2011-09-122-8/+9
|
* man pages: Add a standard EXIT STATUS section to most pages.Richard W.M. Jones2011-08-271-0/+5
|
* resize: Add --machine-readable option for machine friendly output.Richard W.M. Jones2011-08-265-23/+109
|
* resize: Use guestfish progress bar mini-library.Richard W.M. Jones2011-08-265-27/+164
| | | | | | | | There are two benefits: - the progress bars look better - there is a reasonably accurate estimate of how long each operation will take
* out-of-tree build: fix documentation generationHilko Bengen2011-08-151-1/+1
|
* build: Set TMPDIR for local testing.Richard W.M. Jones2011-08-081-1/+2
| | | | | | This avoids conflicts with the globally installed libguestfs appliance, or lets us build in multiple local directories at the same time without conflicts.
* resize: Clarify examples in the man page.Richard W.M. Jones2011-07-141-3/+27
|
* resize: Add btrfs support to virt-resize (RHBZ#721275).Richard W.M. Jones2011-07-142-5/+24
|
* docs: resize: Not just limited to resizing filesystems in partitions.Richard W.M. Jones2011-07-141-4/+2
| | | | If you use --LV-expand then filesystems in LVs can be resized too.
* virt-resize: Arrange options in man page in alphabetical order.Richard W.M. Jones2011-07-131-95/+95
|
* virt-resize: Add --ntfsresize-force option.Richard W.M. Jones2011-07-132-3/+14
| | | | | Use the non-deprecated g#ntfsresize_opts API call, and also add the --ntfsresize-force option for forcing resize.
* Ubuntu: Fix compilation of virt-resize if old libguestfs already installed.Richard W.M. Jones2011-06-041-1/+5
|
* doc: Use I<-...> for cross-references to command line options.Richard W.M. Jones2011-05-011-13/+13
| | | | This is now used consistently across all the documentation.
* Remove ad-hoc run*locally scripts, replace with './run'Richard W.M. Jones2011-04-162-54/+0
| | | | | Remove all the run*locally scripts and replace with a single top level ./run shell script.
* resize: Include stamp file for manpage in CLEANFILES.Richard W.M. Jones2011-04-121-0/+2
|
* resize: Update dependencies.Richard W.M. Jones2011-04-101-6/+6
|
* resize: Don't build this directory in parallel.Richard W.M. Jones2011-04-101-0/+4
|
* resize: Consistent use of 'part' in help output.Richard W.M. Jones2011-04-101-4/+4
|
* resize: Missing \n after version.Richard W.M. Jones2011-04-101-1/+1
|
* resize: Link with local copy of guestfs.Richard W.M. Jones2011-04-091-2/+2
|
* build: virt-resize manpage.Richard W.M. Jones2011-04-091-6/+5
|
* Rewrite virt-resize in OCaml.Richard W.M. Jones2011-04-098-0/+1938
This is a fairly straightforward translation of Perl virt-resize into OCaml. It is bug-for-bug and feature-for-feature identical to the Perl version, except as noted below. The motivation is to have a more solid, high-level, statically safe compiled language to go forwards with fixing some of the harder bugs in virt-resize. In particular contracts between different parts of the program are now handled by statically typed structures checked at compile time, instead of the very ad-hoc unchecked hash tables used by the Perl version. OCaml and the ocaml-pcre library (Perl-Compatible Regular Expressions bindings for OCaml) are required. Extra features in this version: - 32 bit hosts are now supported. - We try hard to handle the case where the target disk is not "clean" (ie. all zeroes). It usually works for this case, whereas the previous version would usually fail. However it is still recommended that the system administrator creates a fresh blank disk for the target before running the program. - User messages are a bit more verbose and helpful. You can turn these off with the -q (--quiet) option. There is one lost feature: - Ability to specify >= T (terabytes) sizes in command line size expressions has been removed. This probably didn't work in the Perl version. Other differences: - The first partition on the target is no longer aligned; instead we place it at the same sector as on the source. I suspect that aligning it was causing the bootloader failures. - Because it's easier, we do more sanity checking on the source disk. This might lead to more failures, but they'd be failures you'd want to know about. - The order in which operations are performed has been changed to make it more logical. The user should not notice any functional difference, but debug messages will be quite a bit different. - virt-resize is a compiled binary, not a script.