Provided by: gdisk-noicu_0.8.8-1ubuntu0.1_amd64 bug


       gdisk - Interactive GUID partition table (GPT) manipulator


       gdisk [ -l ] device


       GPT  fdisk (aka gdisk) is a text-mode menu-driven program for creation and manipulation of
       partition tables. It will automatically convert an  old-style  Master  Boot  Record  (MBR)
       partition  table  or  BSD  disklabel  stored without an MBR carrier partition to the newer
       Globally Unique Identifier (GUID) Partition Table  (GPT)  format,  or  will  load  a  GUID
       partition  table.  When  used  with  the  -l command-line option, the program displays the
       current partition table and then exits.

       GPT fdisk operates mainly on the GPT headers and partition tables;  however,  it  can  and
       will  generate  a  fresh  protective  MBR,  when  required.  (Any  boot loader code in the
       protective MBR will not be disturbed.) If you've created an unusual protective  MBR,  such
       as a hybrid MBR created by gptsync or gdisk's own hybrid MBR creation feature, this should
       not be disturbed by most ordinary actions. Some advanced data recovery options require you
       to  understand  the  distinctions between the main and backup data, as well as between the
       GPT headers and the partition tables. For information on MBR  vs.  GPT,  as  well  as  GPT
       terminology    and    structure,    see    the    extended    gdisk    documentation    at or consult Wikipedia.

       The gdisk program employs a user interface similar to that of  Linux's  fdisk,  but  gdisk
       modifies  GPT partitions. It also has the capability of transforming MBR partitions or BSD
       disklabels into GPT partitions. Like the original fdisk program,  gdisk  does  not  modify
       disk structures until you explicitly write them to disk, so if you make a mistake, you can
       exit from the program with the 'q' option to leave your partitions unmodified.

       Ordinarily, gdisk operates on disk device files, such as /dev/sda or /dev/hda under Linux,
       /dev/disk0  under  Mac  OS  X, or /dev/ad0 or /dev/da0 under FreeBSD. The program can also
       operate on disk image files, which can be either copies of whole disks (made with dd,  for
       instance)  or raw disk images used by emulators such as QEMU or VMWare. Note that only raw
       disk images are supported; gdisk cannot work on compressed or other  advanced  disk  image

       The  MBR  partitioning  system uses a combination of cylinder/head/sector (CHS) addressing
       and logical block addressing (LBA). The former is  klunky  and  limiting.  GPT  drops  CHS
       addressing  and uses 64-bit LBA mode exclusively. Thus, GPT data structures, and therefore
       gdisk, do not need to deal with CHS geometries and all the problems they create. Users  of
       fdisk  will  note  that  gdisk  lacks  the  options  and  limitations  associated with CHS

       For best results, you should use an OS-specific partition table program whenever possible.
       For  example,  you  should make Mac OS X partitions with the Mac OS X Disk Utility program
       and Linux partitions with the Linux gdisk or GNU Parted program.

       Upon start, gdisk attempts to identify the partition type in use on the disk. If it  finds
       valid  GPT data, gdisk will use it. If gdisk finds a valid MBR or BSD disklabel but no GPT
       data, it will attempt to convert the MBR or disklabel into GPT form. (BSD  disklabels  are
       likely  to  have  unusable first and/or final partitions because they overlap with the GPT
       data structures, though.) GPT fdisk can identify, but not use data in, Apple Partition Map
       (APM) disks, which are used on 680x0- and PowerPC-based Macintoshes. Upon exiting with the
       'w' option, gdisk replaces the MBR or disklabel with a GPT.  This  action  is  potentially
       dangerous!  Your  system  may  become  unbootable,  and  partition  type  codes may become
       corrupted if the disk uses unrecognized type codes. Boot problems are particularly  likely
       if  you're multi-booting with any GPT-unaware OS. If you mistakenly launch gdisk on an MBR
       disk, you can safely exit the program without making any changes by using the 'q' option.

       The MBR-to-GPT conversion will leave at least one gap in the partition  numbering  if  the
       original  MBR used logical partitions. These gaps are harmless, but you can eliminate them
       by using the 's' option, if you  like.   (Doing  this  may  require  you  to  update  your
       /etc/fstab file.)

       When creating a fresh partition table, certain considerations may be in order:

       *      For  data  (non-boot)  disks,  and for boot disks used on BIOS-based computers with
              GRUB as the boot loader, partitions  may  be  created  in  whatever  order  and  in
              whatever sizes are desired.

       *      Boot  disks  for  EFI-based systems require an EFI System Partition (gdisk internal
              code 0xEF00) formatted as FAT-32.   The  recommended  size  of  this  partition  is
              between 100 and 300 MiB.  Boot-related files are stored here. (Note that GNU Parted
              identifies such partitions as having the "boot flag" set.)

       *      Some boot loaders for BIOS-based systems make use of a BIOS Boot  Partition  (gdisk
              internal  code  0xEF02),  in  which  the  secondary boot loader is stored, possibly
              without the benefit of a filesystem. (GRUB2 may optionally use such  a  partition.)
              This partition can typically be quite small (roughly 32 to 200 KiB), but you should
              consult your boot loader documentation for details.

       *      If Windows is to boot from a GPT disk,  a  partition  of  type  Microsoft  Reserved
              (gdisk internal code 0x0C01) is recommended. This partition should be about 128 MiB
              in size. It ordinarily follows the EFI System Partition  and  immediately  precedes
              the  Windows  data partitions. (Note that old versions of GNU Parted create all FAT
              partitions as this type, which actually makes the  partition  unusable  for  normal
              file storage in both Windows and Mac OS X.)

       *      Some  OSes'  GPT  utilities  create some blank space (typically 128 MiB) after each
              partition. The intent is to enable future disk utilities to use  this  space.  Such
              free  space  is  not required of GPT disks, but creating it may help in future disk
              maintenance.  You  can  use  GPT  fdisk's  relative  partition  positioning  option
              (specifying the starting sector as '+128M', for instance) to simplify creating such


       -l     List the partition table for the specified device and then exits.

       Most interactions with gdisk occur with  its  interactive  text-mode  menus.  Three  menus
       exist:  the main menu, the recovery & transformation menu, and the experts' menu. The main
       menu provides the functions that are most likely to be  useful  for  typical  partitioning
       tasks, such as creating and deleting partitions, changing partition type codes, and so on.
       Specific functions are:

       b      Save partition data to a backup file.  You  can  back  up  your  current  in-memory
              partition  table  to  a disk file using this option. The resulting file is a binary
              file consisting of the protective MBR, the main GPT header, the backup GPT  header,
              and  one copy of the partition table, in that order. Note that the backup is of the
              current in-memory data structures, so if you launch the program, make changes,  and
              then  use  this  option,  the  backup will reflect your changes. Note also that the
              restore option is on the recovery & transformation menu; the backup  option  is  on
              the main menu to encourage its use.

       c      Change  the  GPT  name of a partition. This name is encoded as a UTF-16 string, but
              proper entry and display of anything beyond basic ASCII  values  requires  suitable
              locale  and  font support. For the most part, Linux ignores the partition name, but
              it may be important in some OSes. GPT fdisk  sets  a  default  name  based  on  the
              partition  type  code.  Note  that  the  GPT  partition  name is different from the
              filesystem name, which is encoded in the filesystem's data structures.

       d      Delete a partition. This action deletes the entry from the partition table but does
              not  disturb  the  data within the sectors originally allocated to the partition on
              the disk. If a corresponding hybrid MBR partition  exists,  gdisk  deletes  it,  as
              well,  and expands any adjacent 0xEE (EFI GPT) MBR protective partition to fill the
              new free space.

       i      Show detailed partition information. The summary information produced  by  the  'p'
              command necessarily omits many details, such as the partition's unique GUID and the
              translation of gdisk's internal partition type code to a plain type name.  The  'i'
              option displays this information for a single partition.

       l      Display  a  summary of partition types. GPT uses a GUID to identify partition types
              for particular OSes and purposes. For ease of data entry,  gdisk  compresses  these
              into  two-byte (four-digit hexadecimal) values that are related to their equivalent
              MBR codes. Specifically, the MBR code is  multiplied  by  hexadecimal  0x0100.  For
              instance, the code for Linux swap space in MBR is 0x82, and it's 0x8200 in gdisk. A
              one-to-one correspondence is impossible, though. Most notably, the  codes  for  all
              varieties  of  FAT  and  NTFS partition correspond to a single GPT code (entered as
              0x0700 in sgdisk). Some OSes use a single MBR code but employ many  more  codes  in
              GPT.  For these, gdisk adds code numbers sequentially, such as 0xa500 for a FreeBSD
              disklabel, 0xa501 for FreeBSD boot, 0xa502 for FreeBSD swap, and so on.  Note  that
              these two-byte codes are unique to gdisk.

       n      Create a new partition. This command is modelled after the equivalent fdisk option,
              although some differences exist. You enter a partition number, starting sector, and
              an  ending sector. Both start and end sectors can be specified in absolute terms as
              sector numbers or as positions measured in kibibytes (K), mebibytes (M),  gibibytes
              (G),  tebibytes (T), or pebibytes (P); for instance, 40M specifies a position 40MiB
              from the start of the disk. You can specify locations relative to the start or  end
              of  the  specified default range by preceding the number by a '+' or '-' symbol, as
              in +2G to specify a point 2GiB after the default start sector, or -200M to  specify
              a  point  200MiB  before  the last available sector. Pressing the Enter key with no
              input specifies the default value, which is the  start  of  the  largest  available
              block for the start sector and the end of the same block for the end sector.

       o      Clear  out  all  partition  data.  This  includes  GPT  header  data, all partition
              definitions, and the protective MBR. The sector alignment is reset to  the  default
              (2048 sectors, or 1MB).

       p      Display basic partition summary data. This includes partition numbers, starting and
              ending  sector  numbers,  partition  sizes,  gdisk's  partition  types  codes,  and
              partition names. For additional information, use the 'i' command.

       q      Quit  from  the  program  without saving your changes.  Use this option if you just
              wanted to view information or if you make a mistake and want to  back  out  of  all
              your changes.

       r      Enter  the  recovery  &  transformation menu. This menu includes emergency recovery
              options (to fix damaged GPT data structures) and options to transform  to  or  from
              other partitioning systems, including creating hybrid MBRs.

       s      Sort  partition  entries.  GPT  partition  numbers  need  not  match  the  order of
              partitions on the disk. If you want them to match, you can use this  option.   Note
              that  some  partitioning utilities sort partitions whenever they make changes. Such
              changes will be reflected in your  device  filenames,  so  you  may  need  to  edit
              /etc/fstab if you use this option.

       t      Change  a  single  partition's  type code. You enter the type code using a two-byte
              hexadecimal number, as described earlier. You may also enter a  GUID  directly,  if
              you have one and gdisk doesn't know it.

       v      Verify  disk.  This option checks for a variety of problems, such as incorrect CRCs
              and mismatched main and backup data. This option  does  not  automatically  correct
              most  problems,  though;  for  that,  you  must  use  options  on  the  recovery  &
              transformation menu. If no problems are found, this command displays a  summary  of
              unallocated disk space.

       w      Write data. Use this command to save your changes.

       x      Enter  the experts' menu. Using this option provides access to features you can use
              to get into even more trouble than the main menu allows.

       ?      Print the menu. Type this command (or any other  unrecognized  command)  to  see  a
              summary of available options.

       The second gdisk menu is the recovery & transformation menu, which provides access to data
       recovery options  and  features  related  to  the  transformation  of  partitions  between
       partitioning  schemes  (converting  BSD  disklabels into GPT partitions or creating hybrid
       MBRs, for instance).  A few options on this menu duplicate functionality on the main menu,
       for the sake of convenience. The options on this menu are:

       b      Rebuild  GPT  header  from backup. You can use the backup GPT header to rebuild the
              main GPT header with this option. It's likely to be useful if your main GPT  header
              was damaged or destroyed (say, by sloppy use of dd).

       c      Load  backup  partition table. Ordinarily, gdisk uses only the main partition table
              (although the backup's integrity is checked when you launch the  program).  If  the
              main  partition  table has been damaged, you can use this option to load the backup
              from disk and use it instead. Note that this will almost certainly  produce  no  or
              strange partition entries if you've just converted an MBR disk to GPT format, since
              there will be no backup partition table on disk.

       d      Use main GPT header and rebuild the backup. This option is likely to be  useful  if
              the backup GPT header has been damaged or destroyed.

       e      Load  main partition table. This option reloads the main partition table from disk.
              It's only likely to be useful if you've tried to use  the  backup  partition  table
              (via 'c') but it's in worse shape then the main partition table.

       f      Load  MBR  and  build  fresh GPT from it. Use this option if your GPT is corrupt or
              conflicts with the MBR and you want to use the MBR as the basis for a  new  set  of
              GPT partitions.

       g      Convert  GPT into MBR and exit. This option converts as many partitions as possible
              into MBR form, destroys the GPT data structures, saves the new MBR, and exits.  Use
              this  option if you've tried GPT and find that MBR works better for you.  Note that
              this function generates  up  to  four  primary  MBR  partitions  or  three  primary
              partitions  and  as  many  logical  partitions  as  can  be generated. Each logical
              partition requires at least one unallocated  block  immediately  before  its  first
              block.  Therefore,  it  may  be possible to convert a maximum of four partitions on
              disks with tightly-packed partitions; however, if free space was  inserted  between
              partitions  when  they  were  created,  and  if the disk is under 2 TiB in size, it
              should be possible to convert all the partitions to MBR form.   See  also  the  'h'

       h      Create  a  hybrid MBR. This is an ugly workaround that enables GPT-unaware OSes, or
              those that can't boot from a GPT disk, to access up to three of the  partitions  on
              the  disk  by creating MBR entries for them. Note that these hybrid MBR entries can
              easily go out of sync with the GPT entries, particularly  when  hybrid-unaware  GPT
              utilities are used to edit the disk.  Thus, you may need to recreate the hybrid MBR
              if you use such tools.  Unlike  the  'g'  option,  this  option  does  not  support
              converting any partitions into MBR logical partitions.

       i      Show  detailed partition information. This option is identical to the 'i' option on
              the main menu.

       l      Load partition data from a backup file. This option  is  the  reverse  of  the  'b'
              option  on  the main menu. Note that restoring partition data from anything but the
              original disk is not recommended.

       m      Return to the main menu. This option enables you to enter main-menu commands.

       o      Print protective MBR data. You can see a summary of the protective MBR's partitions
              with this option. This may enable you to spot glaring problems or help identify the
              partitions in a hybrid MBR.

       p      Print the partition table. This option is identical to the 'p' option in  the  main

       q      Quit without saving changes. This option is identical to the 'q' option in the main

       t      Transform BSD partitions into GPT partitions. This option works on  BSD  disklabels
              held within GPT (or converted MBR) partitions. Converted partitions' type codes are
              likely to need manual adjustment. gdisk will  attempt  to  convert  BSD  disklabels
              stored  on  the  main  disk when launched, but this conversion is likely to produce
              first and/or last partitions that are unusable. The many BSD  variants  means  that
              the  probability  of gdisk being unable to convert a BSD disklabel is high compared
              to the likelihood of problems with an MBR conversion.

       v      Verify disk. This option is identical to the 'v' option in the main menu.

       w      Write table to disk and exit. This option is identical to the  'w'  option  in  the
              main menu.

       x      Enter  the  experts'  menu.  This option is identical to the 'x' option in the main

       ?      Print the menu. This option (or any unrecognized entry) displays a summary  of  the
              menu options.

       The third gdisk menu is the experts' menu. This menu provides advanced options that aren't
       closely related to recovery or transformation between partitioning  systems.  Its  options

       a      Set  attributes.  GPT  provides  a  64-bit attributes field that can be used to set
              features for each partition. gdisk  supports  four  attributes:  system  partition,
              read-only,  hidden,  and  do not automount. You can set other attributes, but their
              numbers aren't translated into anything useful. In  practice,  most  OSes  seem  to
              ignore these attributes.

       c      Change  partition  GUID.  You  can enter a custom unique GUID for a partition using
              this option. (Note this refers to the GUID that uniquely  identifies  a  partition,
              not  to  its  type  code,  which  you  can  change  with the 't' main-menu option.)
              Ordinarily, gdisk assigns this number randomly; however, you might want  to  adjust
              the number manually if you've wound up with the same GUID on two partitions because
              of buggy GUID assignments (hopefully not in gdisk) or sheer incredible coincidence.

       d      Display the sector alignment value. See the description of the 'l' option for  more

       e      Move  backup GPT data structures to the end of the disk. Use this command if you've
              added disks to a RAID array, thus creating a virtual disk with space  that  follows
              the  backup  GPT data structures. This command moves the backup GPT data structures
              to the end of the disk, where they belong.

       f      Randomize the disk's GUID and all partitions' unique GUIDs (but not their partition
              type  code  GUIDs).  This  function  may  be used after cloning a disk with another
              utility in order to render all GUIDs once again unique.

       g      Change disk GUID. Each disk has a unique GUID code, which  gdisk  assigns  randomly
              upon  creation  of the GPT data structures. You can generate a fresh random GUID or
              enter one manually with this option.

       h      Recompute CHS values in protective or hybrid MBR. This option can sometimes help if
              a  disk  utility, OS, or BIOS doesn't like the CHS values used by the partitions in
              the protective or hybrid MBR. In particular, the GPT specification requires  a  CHS
              value  of  0xFFFFFF for over-8GiB partitions, but this value is technically illegal
              by the usual standards. Some BIOSes hang if they encounter this value. This  option
              will  recompute  a  more  normal  CHS  value  -- 0xFEFFFF for over-8GiB partitions,
              enabling these BIOSes to boot.

       i      Show detailed partition information. This option is identical to the 'i' option  on
              the main menu.

       l      Change  the  sector  alignment  value. Disks with more logical sectors per physical
              sectors (such as modern Advanced Format drives), some RAID configurations, and many
              SSD devices, can suffer performance problems if partitions are not aligned properly
              for their internal data structures. On new  disks,  GPT  fdisk  attempts  to  align
              partitions on 2048-sector (1MiB) boundaries by default, which optimizes performance
              for all of these disk types.  On  pre-partitioned  disks,  GPT  fdisk  attempts  to
              identify  the alignment value used on that disk, but will set 8-sector alignment on
              disks larger than 300 GB even if lesser alignment values are  detected.  In  either
              case, it can be changed by using this option.

       m      Return to the main menu. This option enables you to enter main-menu commands.

       n      Create  a  new  protective  MBR.  Use  this option if the current protective MBR is
              damaged in a way that gdisk doesn't automatically detect and  correct,  or  if  you
              want to convert a hybrid MBR into a "pure" GPT with a conventional protective MBR.

       o      Print protective MBR data. You can see a summary of the protective MBR's partitions
              with this option. This may enable you to spot glaring problems or help identify the
              partitions in a hybrid MBR.

       p      Print  the  partition table. This option is identical to the 'p' option in the main

       q      Quit without saving changes. This option is identical to the 'q' option in the main

       r      Enter  the  recovery  &  transformations  menu. This option is identical to the 'r'
              option on the main menu.

       s      Resize  partition  table.  The  default  partition  table  size  is  128   entries.
              Officially,  sizes of less than 16KB (128 entries, given the normal entry size) are
              unsupported by the GPT specification; however, in practice they seem to  work,  and
              can  sometimes be useful in converting MBR disks. Larger sizes also work fine. OSes
              may impose their own limits on the number of partitions, though.

       t      Swap two partitions' entries in the partition table. One partition  may  be  empty.
              For instance, if partitions 1-4 are defined, transposing 1 and 5 results in a table
              with partitions numbered from 2-5. Transposing partitions in this way has no effect
              on their disk space allocation; it only alters their order in the partition table.

       u      Replicate  the  current  device's  partition  table  on another device. You will be
              prompted to type the new device's filename. After the  write  operation  completes,
              you  can  continue  editing  the  original device's partition table.  Note that the
              replicated partition table is an exact copy, including all  GUIDs;  if  the  device
              should have its own unique GUIDs, you should use the f option on the new disk.

       v      Verify disk. This option is identical to the 'v' option in the main menu.

       z      Zap  (destroy)  the  GPT  data  structures and exit. Use this option if you want to
              repartition a GPT disk using fdisk or some other GPT-unaware  program.   You'll  be
              given  the  choice  of  preserving the existing MBR, in case it's a hybrid MBR with
              salvageable partitions or if you've already created new MBR partitions and want  to
              erase  the  remnants  of  your  GPT  partitions.  If you've already created new MBR
              partitions, it's conceivable that this option will damage the first and/or last MBR
              partitions!  Such  an event is unlikely, but could occur if your new MBR partitions
              overlap the old GPT data structures.

       ?      Print the menu. This option (or any unrecognized entry) displays a summary  of  the
              menu options.

       In  many cases, you can press the Enter key to select a default option when entering data.
       When only one option is possible, gdisk usually bypasses the prompt entirely.


       As of October 2013 (version 0.8.8), gdisk should be considered beta software.  Known  bugs
       and limitations include:

       *      The  program  compiles  correctly  only  on  Linux, FreeBSD, Mac OS X, and Windows.
              Linux versions for x86-64 (64-bit), x86 (32-bit), and PowerPC  (32-bit)  have  been
              tested, with the x86-64 version having seen the most testing. Under FreeBSD, 32-bit
              (x86) and 64-bit (x86-64) versions have been tested. Only 32-bit versions  for  Mac
              OS  X  and  Windows  have  been tested by the author, although I've heard of 64-bit
              versions being successfully compiled.

       *      The FreeBSD version of the program can't write changes to the partition table to  a
              disk  when  existing  partitions on that disk are mounted. (The same problem exists
              with many other FreeBSD utilities, such as gpt, fdisk, and dd.) This limitation can
              be overcome by typing sysctl kern.geom.debugflags=16 at a shell prompt.

       *      The  fields  used to display the start and end sector numbers for partitions in the
              'p' command are 14 characters wide. This translates to a  limitation  of  about  45
              PiB. On larger disks, the displayed columns will go out of alignment.

       *      In  the  Windows version, only ASCII characters are supported in the partition name
              field. If an existing partition uses non-ASCII UTF-16 characters, they're likely to
              be  corrupted  in  the  'i' and 'p' menu options' displays; however, they should be
              preserved when loading and saving partitions. Binaries for Linux, FreeBSD, and OS X
              support full UTF-16 partition names.

       *      The  program  can  load  only  up  to  128 partitions (4 primary partitions and 124
              logical partitions) when converting from MBR format. This limit can  be  raised  by
              changing  the  #define  MAX_MBR_PARTS  line  in the basicmbr.h source code file and
              recompiling; however,  such  a  change  will  require  using  a  larger-than-normal
              partition table. (The limit of 128 partitions was chosen because that number equals
              the 128 partitions supported by the most common partition table size.)

       *      Converting from MBR format sometimes fails because of  insufficient  space  at  the
              start  or  (more commonly) the end of the disk. Resizing the partition table (using
              the 's' option in the experts' menu) can sometimes overcome this problem;  however,
              in  extreme  cases  it may be necessary to resize a partition using GNU Parted or a
              similar tool prior to conversion with gdisk.

       *      MBR conversions work only if the disk has correct LBA partition descriptors.  These
              descriptors  should  be  present on any disk over 8 GiB in size or on smaller disks
              partitioned with any but very ancient software.

       *      BSD disklabel support can create first and/or last partitions that overlap with the
              GPT  data  structures. This can sometimes be compensated by adjusting the partition
              table size, but in extreme cases the affected partition(s) may need to be deleted.

       *      Because of the highly variable nature of BSD disklabel structures, conversions from
              this  form  may be unreliable -- partitions may be dropped, converted in a way that
              creates overlaps with other partitions, or converted with incorrect  start  or  end
              values. Use this feature with caution!

       *      Booting  after  converting  an MBR or BSD disklabel disk is likely to be disrupted.
              Sometimes re-installing a boot loader will fix the problem, but other times you may
              need  to  switch  boot  loaders.  Except on EFI-based platforms, Windows through at
              least Windows 7 doesn't support booting from  GPT  disks.  Creating  a  hybrid  MBR
              (using  the  'h' option on the recovery & transformation menu) or abandoning GPT in
              favor of MBR may be your only options in this case.


       Primary author: Roderick W. Smith (


       * Yves Blusseau (

       * David Hubbard (

       * Justin Maggard (

       * Dwight Schauer (

       * Florian Zumbiehl (


       cfdisk (8), cgdisk (8), fdisk (8), mkfs (8), parted (8), sfdisk (8)  sgdisk  (8)  fixparts


       The gdisk command is part of the GPT fdisk package and is available from Rod Smith.