Commit Graph

2565 Commits

Author SHA1 Message Date
Mike Fleetwood 30086b2e80 Include failing mount command in the error dialog (#742741)
On RHEL/CentOS 6 GParted fails to mount nilfs2 file system.  Include the
failing file system mount command in the error dialog so the user knows
what command failed.  The error dialog now looks like:

    (-) Could not mount /dev/sdc1 on /mnt/1

        # mount -v /dev/sdc1 "/mnt/1"
        mount: you must specify the filesystem type

                                           [  OK  ]

Also stop telling the dialog that the secondary text contains pango
markup as the command line and error message certainly isn't pango
markup text.

Bug 742741 - Nilfs2 file system is unusable on RHEL/CentOS 6
2015-03-09 10:50:40 -06:00
Mike Fleetwood 53fb18096d Add GParted internal detection of nilfs2 (#742741)
GParted can create a nilfs2 file system on RHEL/CentOS 6, yet both
libparted and blkid are too old to recognise it when created.  Add
GParted internal detection of nilfs2 file systems.

Easy way to get the required signature needed to recognise nilfs2 is
using wipefs to report the signature bytes it erases, using a more up to
date distribution.  So using CentOS 7:

    # mkfs.nilfs2 /dev/sdb1
    # wipefs -a /dev/sdb1
    /dev/sdb1: 2 bytes were erased at offset 0x00000406 (nilfs2): 34 34

Also from util-linux source libblkid/src/superblocks/nilfs2.c
    #define NILFS_SB_MAGIC 0x3434

Bug 742741 - Nilfs2 file system is unusable on RHEL/CentOS 6
2015-03-09 10:50:39 -06:00
Mike Fleetwood f5c044142c Display libparted "loop" partition tables via "none" instead (#741430)
For libparted recognised file systems covering the whole disk device,
libparted reports the partition table as "loop".  With libparted 3.1 and
earlier, the partition device was reported wrongly as /dev/sdb1, instead
of /dev/sdb, by the ped_partition_get_path() call.  This causes GParted
to fail to report file system usage, label and UUID, and busy status.
Also multiple file system tool command errors from using the wrong
device are displayed.

    # mkfs.ext4 -L whole-ext4 /dev/sdb
    # ./gpartedbin

Example partition errors:

    e2label: No such file or directory while trying to open /dev/sdb1
    Couldn't find valid filesystem superblock.

    tune2fs 1.42.8 (20-Jun-2013)
    tune2fs: No such file or directory while trying to open /dev/sdb1
    Couldn't find valid filesystem superblock.

    dumpe2fs 1.42.8 (20-Jun-2013)
    dumpe2fs: No such file or directory while trying to open /dev/sdb1
    Couldn't find valid filesystem superblock.

    Unable to read the contents of this file system!
    Because of this some operations may be unavailable.
    This cause might be a missing software package.
    The following list of software packages is required for ext4 file
    system support: e2fsprogs v1.41+.

This also breaks most of the manipulation operations, again because it
is using the wrong device name.

Fix by ignoring libparted's "loop" partition table and just let it get
displayed via the "none" partition table mechanism.

Doing this renders the direction taken in bug 683643 to make GParted
work with libparted "loop" partition tables mute, as GParted no longer
works with such partition tables.  Instead they are replaced by "none"
partition tables within GParted.

    Bug 683643 - Doesn't properly support partitionless drives
    https://bugzilla.gnome.org/show_bug.cgi?id=683643

Bug 741430 - GParted cannot recognise LVM signature on unpartitioned
             drive
2015-03-09 10:17:22 -06:00
Mike Fleetwood 474c5b10b3 Set activate/deactivate partition menu item name earlier (#741430)
So that, even though the menu item is greyed out, it is correctly named
Activate or Deactivate for an LVM2 Physical Volume on a whole disk
device, rather than the default Mount or Unmount.

Bug 741430 - GParted cannot recognise LVM signature on unpartitioned
             drive
2015-03-09 10:17:22 -06:00
Mike Fleetwood dd049e8b4b Disable manipulation operations on "none" partition tables (#741430)
At this time we are providing read-only support for file systems on
whole disk devices.  Also all manipulation operations fail at the
calibrate step with libparted error "unrecognised disk label", and
manage flags is for real partitions only.

Bug 741430 - GParted cannot recognise LVM signature on unpartitioned
             drive
2015-03-09 10:17:22 -06:00
Mike Fleetwood cbf8bd741d Display whole disk file systems via partition table "none" (#741430)
For file systems which libparted recognises, when found on the whole
disk device, it reports with partition table "loop" and a partition
covering the whole disk.  GParted duly displays this to the user.

For file systems which libparted doesn't recognise it reports
"unrecognised disk label".  As of the latest libparted 3.2, these file
system aren't recognised and can't currently be shown when on the whole
disk device:

    BitLocker, Crypt LUKS, exFAT, F2FS, LVM2 Physical Volume,
    Linux Software RAID, ReFS, Reiser 4

So only when libparted doesn't recognise a file system on the whole disk
device and GParted does, either via blkid or it's internal code, display
this with partition table "none".

Bug 741430 - GParted cannot recognise LVM signature on unpartitioned
             drive
2015-03-09 10:17:22 -06:00
Mike Fleetwood ed827cf59a Create helper function set_partition_label_and_uuid() (#741430)
Move code which queries the file system label and UUID of a partition
into a separate helper function.

Bug 741430 - GParted cannot recognise LVM signature on unpartitioned
             drive
2015-03-09 10:17:22 -06:00
Mike Fleetwood 005a842f25 Support querying whole disk devices for signatures (#741430)
Make GParted_Core::get_filesystem() capable of recognising file system
signatures on whole disk devices.  Pass NULL for lp_partition to make it
read signatures from the whole disk rather than a specific partition.
Add debugging to test it works.

    # fgrep sdb /proc/partitions
       8    16    8388608 sdb
    # lvm pvcreate /dev/sdb
     Writing physical volume data to disk "/dev/sdb"
     Physical volume "/dev/sdb" successfully created
    # ./gpartedbin
    ======================
    libparted : 1.8.1
    ======================
    Unable to open /dev/sdb - unrecognised disk label.
    DEBUG: /dev/sdb (lvm2 pv)

Bug 741430 - GParted cannot recognise LVM signature on unpartitioned
             drive
2015-03-09 10:17:22 -06:00
Mike Fleetwood a9f08ddc7d Rename local variable to fsname in get_filesystem() (#741430)
Used 'fstype' as the name of local variable storing the FILESYSTEM
enumeration type.

'fs_type' was the name of the local variable storing the string with the
name of the file system type.  Rename it to 'fsname' to distinguish it
from the aforementioned variable.

Bug 741430 - GParted cannot recognise LVM signature on unpartitioned
             drive
2015-03-09 10:17:22 -06:00
Mike Fleetwood cb645b16cf Refactor GParted internal file system signature detection (#741430)
Refactor GParted internal file system signature detection to remove code
duplication.  There were 5 separate copies of code to: allocate a
buffer, open, read and close the device, free the buffer and compare the
signature.

Bug 741430 - GParted cannot recognise LVM signature on unpartitioned
             drive
2015-03-09 10:17:22 -06:00
Mike Fleetwood bd9c76f602 Reorder crypt-luks detection (#741430)
(1) Add recognition of LUKS signatures detected by blkid command, via
the FS_Info cache.

(2) Relocate internal GParted detection of LUKS signature to back after
libparted and blkid identification.  This reverses previous commit:

    7695593d21
    Improve crypt-luks detection (#578300)

Bug 578300 must have been caused by either: (1) reading stale data from
the whole disk device, or (2) formatting as LUKS over the top of ext3
leaving old signatures behind.  Case (1) has been resolved by commit:

    3bea067596
    Flush devices when scanning to prevent reading stale signatures
    (#723842)

Re-tested case (2) and find that no old signatures are left behind:

    # mkfs.ext3 /dev/sda8
    # wipefs /dev/sda8
    offset               type
    ----------------------------------------------------------------
    0x438                ext3   [filesystem]
                         UUID:  756dcd5f-73c5-4881-81ee-dc88e8b18f42
    # cryptsetup luksFormat /dev/sda8
    # wipefs /dev/sda8
    offset               type
    ----------------------------------------------------------------
    0x0                  crypto_LUKS   [crypto]
                         UUID:  de15ed1a-f461-46b7-803b-d0fd3b4bd680

Bug 741430 - GParted cannot recognise LVM signature on unpartitioned
             drive
2015-03-09 10:17:22 -06:00
Josef Andersson 956d169cae Updated Swedish translation 2015-03-08 12:36:28 +00:00
Stas Solovey 2dd504654a Updated Russian translation 2015-03-05 23:07:30 +00:00
Marco Ciampa 43913debaf Updated italian translation 2015-03-03 07:42:38 +01:00
Balázs Úr 40243fe6f3 Updated Hungarian translation 2015-03-01 16:31:30 +00:00
Γιάννης Κουτσούκος a615e9f0bf Updated Greek translation 2015-02-27 12:32:02 +00:00
Dušan Kazik e79faf7bdf Updated Slovak translation 2015-02-22 08:07:40 +00:00
Maria Mavridou 9984c296dd Updated Greek translation 2015-02-21 23:30:50 +00:00
Muhammet Kara 18c6116059 Updated Turkish translation 2015-02-16 13:15:50 +00:00
Enrico Nicoletto 5f9ca11da7 Updated Brazilian Portuguese translation 2015-02-11 15:33:06 +00:00
Piotr Drąg 78b7286753 Updated Polish translation 2015-02-08 14:12:18 +01:00
Mike Fleetwood 70cc6187d5 Fix double quote error creating XFS file systems (#744108)
Trying to create an XFS file system causes the following error and
the create new xfs file system step to never complete.

    # ./gpartedbin
    ======================
    libparted : 2.4
    ======================

    (gpartedbin:15572): glibmm-CRITICAL **:
    unhandled exception (type Glib::Error) in signal handler:
    domain: g-shell-error-quark
    code  : 0
    what  : Text ended before matching quote was found for ". (The text was 'mkfs.xfs -f -L "mylabel" " /dev/sdb8')

Creation of XFS file systems was broken by the extra stray double quote
added to the command before the device name, by commit:

    63aeb150ac
    Rename member variables and methods in Partition class (#741424)

Bug 744108 - Creating an XFS file system never completes
2015-02-07 10:33:12 -07:00
Marek Černocký 900e0b7300 Updated Czech translation 2015-02-03 19:27:47 +01:00
Mike Fleetwood 9294a10fbd Correct dialog title displaying libparted exceptions (#743825)
Encountered this dialog:

    Libparted Bug Found!

    (-) Invalid argument during seek for read on /dev/md1

                          [ Retry ] [ Cancel ] [ Ignore ]

After investigation found that GParted was asking libparted to read from
sector -1.  Libparted was actually reporting an error but GParted was
incorrectly displaying this as a bug.  This was because setting the
dialog title was falling through from the error case to the bug case.
Fix this.

Also provide unique titles for all libparted exception types so that
they can all be distinguished.

 *  List of exceptions from libparted: enum _PedExceptionType
    http://www.gnu.org/software/parted/api/group__PedException.html

Bug 743825 - gparted displaying dialog: libparted bug found!
2015-02-03 09:45:55 -07:00
Marek Černocký 89f85de5ac Updated Czech translation 2015-02-03 08:57:01 +01:00
Marek Černocký 7ab366af50 Updated Czech translation 2015-02-03 08:56:59 +01:00
Curtis Gedak ed9d537227 Add Mike Fleetwood to menu_help_about 2015-02-01 13:14:05 -07:00
Curtis Gedak db42cf78b1 Fix incorrect email address in help manual 2015-02-01 12:36:24 -07:00
Curtis Gedak 3b97063c23 Provide credit for help manual enhancements by Mike Fleetwood 2015-02-01 11:14:37 -07:00
Curtis Gedak 44eaabc57c Provide credit for patch by Michael Zimmermann
Provide credit for patch to add support for GPT partition names.
Also indicate significant effort by Sinlu Bes while we tried different
ideas for how GPT partition name support should work.
2015-02-01 11:01:41 -07:00
Mike Fleetwood 64d569cfb2 Describe the name partition operation in the Manual (#741424)
Bug 741424 - Add support for GPT partition names
2015-02-01 10:08:23 -07:00
Mike Fleetwood becbd7ac85 Use file system label terminology in the Manual (#741424)
Update the GParted Manual to reflect the change in terminology from
Partition Label to File System Label in the GParted GUI.  And make it
explicit that it is the file system label in a partition being changed.

Bug 741424 - Add support for GPT partition names
2015-02-01 10:08:23 -07:00
Michael Zimmermann 1f5841b4ad Add support for GPT partition names (#741424)
Embedded devices (Android) use GPT partition names to identify
partitions, instead of file system labels.  Add support for viewing and
changing them.

As partition names are used to provide unique identification they are
never copied when copying the contents of one partition to another.

Note that GNU/Linux uses file system labels, UUIDs or device names for
identification during the boot process and afterwards so while partition
names can be used, they are optional and purely for user information.

Bug 741424 - Add support for GPT partition names
2015-02-01 10:08:23 -07:00
Mike Fleetwood b278782ef6 Remove redundant second if condition in Display_Info()
Remove second inner if condition performing the same check as the outer
if:
    partition.type != GParted::TYPE_UNALLOCATED
2015-02-01 10:08:23 -07:00
Mike Fleetwood e1dc89cd11 Rename class to Dialog_FileSystem_Label (#741424)
class Dialog_Partition_Label   -> Dialog_FileSystem_Label
file Dialog_Partition_Label.h  -> Dialog_FileSystem_Label.h
file Dialog_Partition_Label.cc -> Dialog_FileSystem_Label.cc

Bug 741424 - Add support for GPT partition names
2015-02-01 10:08:23 -07:00
Mike Fleetwood 04450c577c Rename class to OperationLabelFileSystem (#741424)
class OperationLabelPartition   -> OperationLabelFileSystem
file OperationLabelPartition.h  -> OperationLabelFileSystem.h
file OperationLabelPartition.cc -> OperationLabelFileSystem.cc

Bug 741424 - Add support for GPT partition names
2015-02-01 10:08:23 -07:00
Mike Fleetwood 3630b9c83b Rename methods in GParted_Core and Win_GParted classes (#741424)
class GParted_Core:
    label_partition() -> label_filesystem()

class Win_GParted:
    allow_label_partition()    -> allow_label_filesystem()
    activate_label_partition() -> activate_label_filesystem()

Bug 741424 - Add support for GPT partition names
2015-02-01 10:08:23 -07:00
Mike Fleetwood 63aeb150ac Rename member variables and methods in Partition class (#741424)
class Partition:
    have_label    -> have_filesystem_label
    label         -> filesystem_label
    label_known() -> filesystem_label_known()
    get_label()   -> get_filesystem_label()
    set_label()   -> set_filesystem_label()

Bug 741424 - Add support for GPT partition names
2015-02-01 10:08:23 -07:00
Mike Fleetwood d480800600 Rename enum to OPERATION_LABEL_FILESYSTEM (#741424)
This and the following few commits rename variables, methods, classes,
etc from *label_partition* to *label_filesystem* so that the code also
reflects that it is the label of the file system that is being modified
and to separate it from the name partition operation about to be added.

enum OPERATION_LABEL_PARTITION -> OPERATION_LABEL_FILESYSTEM

Bug 741424 - Add support for GPT partition names
2015-02-01 10:08:23 -07:00
Mike Fleetwood 332a2e7a79 Rename Partition Label to File System Label in the GUI (#741424)
Rename the Partition Label concept to File System Label throughout the
GUI.  This is to better reflect that it is the label of the file system
that is being modified and to separate it from the Partition Name
concept about to be added.

Bug 741424 - Add support for GPT partition names
2015-02-01 10:08:23 -07:00
Mike Fleetwood 8b45219a2d Make swap usage match figures reported by swapon -s (#742647)
GParted reports used figure of active swap space from 4 KiB upwards,
actually 1 page, where as 'swapon -s' reports figures from 0 upwards.
This is because GParted is counting the 1 page swap space overhead as
used space.

    # sfdisk -s /dev/sdb1
    262144
    # mkswap /dev/sdb1
    # swapon /dev/sdb1
    # swapon -s
    Filename                Type            Size    Used    Priority
    /dev/sdb1               partition       262140  0       -1

For this case GParted reports used as 4 KiB.
(ptn size - swap size = 262144 - 262140 = 4)

Instead make GParted report used figure without any overhead from 0
upwards, matching what 'swapon -s' reports.

Bug 742647 - Swap usage doesn't match figures reported by swapon -s
2015-01-28 11:38:53 -07:00
Curtis Gedak d916cee115 Append -git to version for continuing development 2015-01-26 10:35:31 -07:00
Curtis Gedak 23091fbee7 ========== gparted-0.21.0 ========== 2015-01-26 10:01:46 -07:00
Curtis Gedak 570680826d Update copyright year 2015-01-26 09:48:36 -07:00
Enrico Nicoletto 4d0147a508 Updated Brazilian Portuguese translation 2015-01-26 10:56:19 +00:00
Alexandre Franke 68134e533a Updated French translation 2015-01-23 01:32:56 +00:00
Alexandre Franke a4d06f0a6b Updated French translation 2015-01-23 01:30:42 +00:00
Anders Jonsson 3fecfdd2c9 Updated Swedish translation 2015-01-22 21:40:29 +00:00
Milo Casagrande f3e5103282 Updated Italian translation 2015-01-20 07:32:46 +00:00
Daniel Mustieles 7a74aace5c Updated Spanish translation 2015-01-19 18:24:44 +01:00