Go to file
Mike Fleetwood 8093ba2ebd Record unallocated space within a partition (#499202)
Currently GParted assumes that a file system fills its containing
partition.  This is not always true and can occur when resizing is
performed outside of GParted or a resize operation fails.  GParted
doesn't display any information about unallocated space to the user
and in most cases it is simply included in used space.

Add partition unallocated space accounting.  Make GParted record the
unallocated space for mounted file system and display a warning in the
Partition Information dialog when too much unallocated space is found.

Partition::set_sector_usage( fs_size, fs_unused ), is the new preferred
method of recording file system usage because it allows the unallocated
space in a partition to be calculated.  Partition::Set_Unused() and
Partition::set_used() are now deprecated.

NOTES:

1)  Set the minimum unallocated space to be 5% before considering it
    significant to avoid false reporting.  Worst case found was a
    mounted xfs file system in a 100MiB partition, which reports as
    ~4.7% unallocated according to file system size from statvfs().
    However, it reports as having no unallocated space using xfs
    specific tools.

2)  Unallocated space is only a graphical representation for the user.
    GParted must still use relevant tools to resize file systems before
    shrinking the data and can't assume all unallocated space exists
    after the file system at the end of the partition.

Bug #499202 - gparted does not see the difference if partition size
              differs from filesystem size
2012-06-18 10:24:28 -06:00
compose Remove README.compose because String::compose is not used in GParted 2011-09-26 16:48:14 -06:00
data Enabled GParted to use themed app icon (Tango theme). 2008-09-22 22:41:49 +00:00
doc Update copyright year 2011-01-16 10:45:25 -07:00
help Updated Spanish translation 2012-03-30 11:56:06 +02:00
include Record unallocated space within a partition (#499202) 2012-06-18 10:24:28 -06:00
po Fix more spelling mistakes in en_CA translation 2012-06-17 10:59:18 -04:00
src Record unallocated space within a partition (#499202) 2012-06-18 10:24:28 -06:00
.cvsignore ignore all projectfiles 2004-09-29 13:15:57 +00:00
.gitignore Add .csettings to .gitignore 2011-05-31 11:26:29 -06:00
AUTHORS Update AUTHORS file 2012-02-03 11:58:04 -07:00
COPYING Initial revision 2004-09-19 20:24:53 +00:00
COPYING-DOCS Added COPYING-DOCS and removed help/C/legal.xml file. The GFDL license should be translated only once per language, and not for each and every project that uses the license. See GParted bug #550047 2008-09-01 17:01:14 +00:00
ChangeLog Add note that ChangeLogs are no longer used 2009-04-19 15:19:15 -06:00
HACKING Update HACKING notes with git specific comments 2009-04-19 15:44:31 -06:00
Makefile.am Enhance Makefile generated ChangeLog entries 2010-03-25 10:54:00 -06:00
NEWS Minor indentation change to NEWS for last release 2012-05-22 11:15:42 -06:00
README Implement changing UUID for NTFS (#667278) 2012-02-10 10:33:13 -07:00
autogen.sh Ensure that m4 directory exists 2009-04-18 14:47:32 -06:00
configure.in Append -git to version for continuing development 2012-04-09 13:46:54 -06:00
gparted.desktop.in.in Correct desktop files for name and generic name entries (#600048) 2009-11-02 13:57:25 -07:00
gparted.doap Add some entries to gparted.doap file 2009-11-03 14:37:31 -07:00
gparted.in Ensure graphical error message displayed when run by non-root user 2011-02-27 11:41:40 -07:00

README

GPARTED
=======
Gparted is the Gnome Partition Editor for creating, reorganizing, and
deleting disk partitions.

A hard disk is usually subdivided into one or more partitions.  These
partitions are normally not re-sizable (making one smaller and the
adjacent one larger.)  Gparted makes it possible for you to take a
hard disk and change the partition organization, while preserving the
partition contents.

More specifically, Gparted enables you to create, destroy, resize,
move, check, label, and copy partitions, and the file systems
contained within.  This is useful for creating space for new operating
systems, reorganizing disk usage, and mirroring one partition with
another (disk imaging).

Gparted can also be used with storage devices other than hard disks,
such as USB flash drives, and memory cards.

Visit http://gparted.org for more information.


NEWS
----
Information about changes to this release, and past releases can be
found in the file:
   NEWS


INSTALL
-------
a. Pre-built Binary

   Many GNU/Linux distributions already provide a pre-built binary
   package for GParted.  Instructions on how to install GParted on
   some distributions is given below:

      (K)Ubuntu or Debian
      -------------------
      sudo apt-get install gparted

      Fedora
      ------
      su -
      yum install gparted

b. Building from Source

   Building Gparted from source requires that several dependencies are
   installed.  These include:
      g++
      e2fsprogs
      parted
      gtkmm24
      gettext
      gnome-doc-utils     - required if help documentation is to be built

   On (K)Ubuntu, these dependencies may be obtained by running the
   following command;
      sudo apt-get install build-essential e2fsprogs uuid uuid-dev \
                           gnome-common libparted-dev libgtkmm-2.4-dev \
                           libdevmapper-dev gnome-doc-utils

   On Fedora, you will need to run (as root);
      yum install gtkmm24-devel parted-devel e2fsprogs-devel gettext \
                  'perl(XML::Parser)' desktop-file-utils libuuid-devel \
                  gnome-doc-utils rarian-compat
      yum groupinstall 'Development Tools'

   On openSUSE, these dependencies may be obtained by running the
   following command;
      sudo zypper install automake autoconf gcc-g++ make gnome-common \
                          libuuid-devel parted-devel gtkmm2-devel \
                          gnome-doc-utils-devel

   Briefly, the shell commands `./configure; make; make install' should
   configure, build, and install this package.

   If you wish to build this package without the help documentation use
   the --disable-doc flag:
      E.g., ./configure --disable-doc

   If you wish to build this package for use on a desktop that does not
   support scrollkeeper use the --disable-scrollkeeper flag:
      E.g., ./configure --disable-scrollkeeper

   If you wish to build this package to use native libparted /dev/mapper
   dmraid support use the --enable-libparted-dmraid flag:
      E.g., ./configure --enable-libparted-dmraid

   Please note that more than one configure flags can be used:
      E.g., ./configure --disable-doc --enable-libparted-dmraid

   The INSTALL file contains further GNU installation instructions.


COPYING
-------
The copying conditions can be found in the file:
   COPYING


DIRECTORIES
------------
compose  - contains String::ucompose() function

data     - contains desktop icons

doc      - contains manual page documentation

help     - contains GParted Manual and international translations

include  - contains source header files

m4       - contains macro files

po       - contains international language translations

src      - contains C++ source code


DISTRIBUTION NOTES
------------------
Gparted uses GNU libparted to detect and manipulate devices and partition
tables.  Several optional packages provide additional file system support.
Optional packages include:

   btrfs-tools
   e2fsprogs
   dosfstools
   mtools          - required to read and write FAT16/32 volume labels and UUIDs
   hfsutils
   hfsprogs
   jfsutils
   nilfs-utils
   ntfsprogs / ntfs-3g
   reiser4progs
   reiserfsprogs
   xfsprogs, xfsdump

   NOTE:  * If the vol_id command is in the search PATH, it will be used
            to read linux-swap, reiser4, hfs, and hfs+ file system
            volume labels.
          * If the blkid command is in the search path, it will be used
            to read file system UUIDs and labels.  It is also used for
            ext4 file system detection.
            blkid is part of the util-linux package and e2fsprogs
            package before that.


For Linux software RAID support, the following package is required:
   mdadm           - tool to administer Linux MD arrays


For dmraid support, the following packages are required:

   dmsetup         - removes /dev/mapper entries
   dmraid          - lists dmraid devices and creates /dev/mapper entries

For GNU/Linux distribution dmraid support, the following are required:
   - kernel built with Device Mapping and Mirroring built.  From menuconfig,
     it is under Device Drivers -> <something> (RAID & LVM).
   - dmraid drive arrays activated on boot (e.g., dmraid -ay).


For LVM2 Physical Volume support the following command is required:
   lvm             - LVM2 administration tool
And device-mapper support in the kernel.


For attempt data rescue for lost partitions, the following package
is required:
   gpart           - guesses PC-type hard disk partitions


Several more commands are optionally used by GParted if found on the system.
These commands include:

   blkid         - used to read volume labels and detect ext4 file systems
   vol_id        - used to read volume labels
   udisks        - used to prevent automounting of file systems
   devkit-disks  - used to prevent automounting of file systems
   {filemanager} - used in attempt data rescue to display discovered
                   file systems.  (e.g., nautilus, pcmanfm)
   hal-lock      - used to prevent automounting of file systems
   gksu          - used to acquire root privileges in .desktop file,
                   but only if available when gparted source is configured.
   udevinfo      - used in dmraid to query udev name
   udevadm       - used in dmraid to query udev name
   yelp          - used to display help manual