*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->Linux man pages -> cfdisk (8)              



NAME    [Toc]    [Back]

       cfdisk - Curses based disk partition table manipulator for Linux

SYNOPSIS    [Toc]    [Back]

       cfdisk [ -agvz ] [ -c cylinders ] [ -h heads ] [ -s sectors-per-track ]
       [ -P opt ] [ device ]

DESCRIPTION    [Toc]    [Back]

       cfdisk is a curses based program for partitioning any hard disk	drive.
       Typical values of the device argument are:

	      /dev/hda [default]

       In order to write the partition table cfdisk needs something called the
       `geometry' of the disk: the number of `heads' and the number  of  `sectors
  per  track'. Linux does not use any geometry, so if the disk will
       not be accessed by other operating systems, you can safely  accept  the
       defaults  that  cfdisk  chooses for you. The geometry used by cfdisk is
       found as follows. First the partition table is examined,  to  see  what
       geometry  was used by the previous program that changed it. If the partition
 table is empty, or contains garbage, or does not point at a consistent
	geometry, the kernel is asked for advice. If nothing works 255
       heads and 63 sectors/track is assumed. The geometry can	be  overridden
       on  the command line or by use of the `g' command. When partitioning an
       empty large modern disk, picking 255  heads  and  63  sectors/track  is
       always  a  good idea.  There is no need to set the number of cylinders,
       since cfdisk knows the disk size.

       Next, cfdisk tries to read the current partition table  from  the  disk
       drive.	If it is unable to figure out the partition table, an error is
       displayed and the program will exit.  This  might  also	be  caused  by
       incorrect  geometry  information,  and can be overridden on the command
       line.  Another way around this problem is with  the  -z	option.   This
       will ignore the partition table on the disk.

       The  main display is composed of four sections, from top to bottom: the
       header, the partitions, the command  line  and  a  warning  line.   The
       header  contains  the  program  name and version number followed by the
       disk drive and its geometry.  The partitions  section  always  displays
       the  current partition table.  The command line is the place where commands
 and text are entered.  The available commands  are  usually  displayed
  in  brackets.   The  warning  line is usually empty except when
       there is important information to be displayed.	The current  partition
       is  highlighted	with  reverse  video  (or an arrow if the -a option is
       given).	All partition specific commands apply to  the  current	partition.

       The  format  of	the partition table in the partitions section is, from
       left to right: Name, Flags, Partition Type, Filesystem Type  and  Size.
       The  name  is  the partition device name.  The flags can be Boot, which
       designates a bootable partition or NC, which stands for "Not Compatible
       with  DOS  or  OS/2".   DOS,  OS/2 and possibly other operating systems
       require the first sector of the first partition on  the	disk  and  all
       logical partitions to begin on the second head.	This wastes the second
       through the last sector of the first track of the first head (the first
       sector  is  taken by the partition table itself).  cfdisk allows you to
       recover these "lost" sectors with  the  maximize  command  (m).	 Note:
       fdisk(8)  and some early versions of DOS create all partitions with the
       number of sectors already maximized.  For  more	information,  see  the
       maximize  command  below.   The partition type can be one of Primary or
       Logical.  For unallocated space on the drive, the  partition  type  can
       also  be  Pri/Log, or empty (if the space is unusable).	The filesystem
       type section displays the name of the filesystem used on the partition,
       if  known.   If	it  is	unknown, then Unknown and the hex value of the
       filesystem type are displayed.  A special case occurs  when  there  are
       sections of the disk drive that cannot be used (because all of the primary
 partitions are used).  When this is detected, the filesystem  type
       is displayed as Unusable.  The size field displays the size of the partition
 in megabytes (by default).  It can also display the size in sectors
  and cylinders (see the change units command below).  If an asterisks
 (*) appears after the size, this means that the partition  is  not
       aligned on cylinder boundaries.

DOS 6.x WARNING    [Toc]    [Back]

       The DOS 6.x FORMAT command looks for some information in the first sector
 of the data area of the partition, and treats this  information  as
       more  reliable than the information in the partition table.  DOS FORMAT
       expects DOS FDISK to clear the first 512 bytes of the data  area  of  a
       partition  whenever a size change occurs.  DOS FORMAT will look at this
       extra information even if the /U flag is given -- we  consider  this  a
       bug in DOS FORMAT and DOS FDISK.

       The  bottom  line is that if you use cfdisk or fdisk to change the size
       of a DOS partition table entry, then you must also use dd to  zero  the
       first 512 bytes of that partition before using DOS FORMAT to format the
       partition.  For example, if you were using cfdisk to make a DOS	partition
 table entry for /dev/hda1, then (after exiting fdisk or cfdisk and
       rebooting Linux so that the partition table information is  valid)  you
       would  use the command "dd if=/dev/zero of=/dev/hda1 bs=512 count=1" to
       zero the first 512 bytes of the partition. Note:

       BE EXTREMELY CAREFUL if you use the dd command, since a small typo  can
       make all of the data on your disk useless.

       For  best results, you should always use an OS-specific partition table
       program.  For example, you should make  DOS  partitions	with  the  DOS
       FDISK program and Linux partitions with the Linux fdisk or Linux cfdisk

COMMANDS    [Toc]    [Back]

       cfdisk commands can be entered by pressing the  desired	key  (pressing
       Enter  after  the  command  is  not  necessary).  Here is a list of the
       available commands:

       b      Toggle bootable flag of the current partition.  This allows  you
	      to select which primary partition is bootable on the drive.

       d      Delete  the  current  partition.	 This will convert the current
	      partition into free space and merge it with any free space immediately
  surrounding the current partition.  A partition already
	      marked as free space or marked as unusable cannot be deleted.

       g      Change the disk  geometry  (cylinders,  heads,  or  sectors-pertrack).
	WARNING: This option should only be used by people who
	      know what they are doing.  A command line option is also	available
  to	change	the  disk  geometry.  While at the change disk
	      geometry command line, you can choose to change  cylinders  (c),
	      heads (h), and sectors per track (s).  The default value will be
	      printed at the prompt which you can accept  by  simply  pressing
	      the  Enter  key, or you can exit without changes by pressing the
	      ESC key.	If you want to change the default value, simply  enter
	      the  desired  value and press Enter.  The altered disk parameter
	      values do not take effect until you return  the  main  menu  (by
	      pressing	Enter or ESC at the change disk geometry command line.
	      If you change the geometry such that the	disk  appears  larger,
	      the  extra  sectors  are	added  at  the end of the disk as free
	      space.  If the disk appears smaller,  the  partitions  that  are
	      beyond the new last sector are deleted and the last partition on
	      the drive (or the free space at the end of the drive) is made to
	      end at the new last sector.

       h      Print the help screen.

       m      Maximize disk usage of the current partition.  This command will
	      recover the the unused space between the partition table and the
	      beginning of the partition, but at the cost of making the partition
 incompatible with DOS, OS/2 and  possibly  other  operating
	      systems.	This option will toggle between maximal disk usage and
	      DOS, OS/2, etc. compatible disk usage.  The default when	creating
  a  partition is to create DOS, OS/2, etc. compatible partitions.

       n      Create new partition from free space.  If the partition type  is
	      Primary  or  Logical,  a partition of that type will be created,
	      but if the partition type is Pri/Log, you will be  prompted  for
	      the  type  you want to create.  Be aware that (1) there are only
	      four slots available for primary partitions and (2) since  there
	      can  be  only  one extended partition, which contains all of the
	      logical drives, all of the logical  drives  must	be  contiguous
	      (with  no  intervening  primary partition).  cfdisk next prompts
	      you for the size of the  partition  you  want  to  create.   The
	      default size, equal to the entire free space of the current partition,
 is display in megabytes.	You can either press the Enter
	      key  to accept the default size or enter a different size at the
	      prompt.  cfdisk accepts size entries in megabytes (M) [default],
	      kilobytes  (K),  cylinders  (C)  and sectors (S) by entering the
	      number immediately followed by one of (M, K, C or  S).   If  the
	      partition  fills the free space available, the partition is created
 and you are returned to the main command line.   Otherwise,
	      the  partition can be created at the beginning or the end of the
	      free space, and cfdisk will ask you to choose where to place the
	      partition.  After the partition is created, cfdisk automatically
	      adjusts the other partition's partition types if all of the primary
 partitions are used.

       p      Print  the partition table to the screen or to a file. There are
	      several different formats for the partition that you can	choose

	      r      Raw data format (exactly what would be written to disk)

	      s      Partition table in sector order format

	      t      Partition table in raw format

	      The raw data format will print the sectors that would be written
	      to disk if a write command is selected.  First, the primary partition
  table is printed, followed by the partition tables associated
 with each logical partition.  The data is printed in  hex
	      byte by byte with 16 bytes per line.

	      The partition table in sector order format will print the partition
 table ordered by sector number.  The fields, from  left  to
	      right,  are the number of the partition, the partition type, the
	      first sector, the last sector, the offset from the first	sector
	      of  the  partition  to  the start of the data, the length of the
	      partition, the filesystem type (with the hex value in  parenthesis),
  and  the  flags  (with the hex value in parenthesis).  In
	      addition to the primary and logical partitions, free  and  unusable
  space  is  printed	and  the extended partition is printed
	      before the first logical partition.

	      If a partition does not start or end on a cylinder  boundary  or
	      if  the  partition length is not divisible by the cylinder size,
	      an asterisks (*) is printed after the  non-aligned  sector  number/count.
   This usually indicates that a partition was created
	      by an operating system that either does not align partitions  to
	      cylinder	boundaries or that used different disk geometry information.
  If you know the disk geometry of  the  other  operating
	      system, you could enter the geometry information with the change
	      geometry command (g).

	      For the first partition on the disk and for all  logical	partitions,
  if the offset from the beginning of the partition is not
	      equal to the number of sectors per track (i.e.,  the  data  does
	      not start on the first head), a number sign (#) is printed after
	      the offset.  For the remaining partitions, if the offset is  not
	      zero, a number sign will be printed after the offset.  This corresponds
 to the NC flag in the partitions section  of  the  main

	      The partition table in raw format will print the partition table
	      ordered by partition number.  It will leave  out	all  free  and
	      unusable	space.	The fields, from left to right, are the number
	      of the partition, the flags (in hex), the starting head,	sector
	      and  cylinder, the filesystem ID (in hex), the ending head, sector
 and cylinder, the starting sector in the partition  and  the
	      number of sectors in the partition.  The information in this table
 can be directly translated to the raw data format.

	      The partition table entries only have 10 bits available to  represent
  the starting and ending cylinders.  Thus, when the absolute
 starting (ending) sector number is on  a  cylinder  greater
	      than 1023, the maximal values for starting (ending) head, sector
	      and cylinder are printed.  This is the method used by OS/2,  and
	      thus  fixes  the problems associated with OS/2's fdisk rewriting
	      the partition table when it is not in this format.  Since  Linux
	      and  OS/2 use absolute sector counts, the values in the starting
	      and ending head, sector and cylinder are not used.

       q      Quit program.  This will exit the program  without  writing  any
	      data to disk.

       t      Change the filesystem type.  By default, new partitions are created
 as Linux partitions, but since cfdisk can create partitions
	      for other operating systems, change partition type allows you to
	      enter the hex value of the filesystem you desire.  A list of the
	      know  filesystem	types  is  displayed.	You  can  type	in the
	      filesystem type at the prompt or accept the  default  filesystem
	      type [Linux].

       u      Change  units  of  the  partition  size display.	It will rotate
	      through megabytes, sectors and cylinders.

       W      Write partition table to disk (must  enter  an  upper  case  W).
	      Since  this might destroy data on the disk, you must either confirm
 or deny the write by entering `yes' or `no'.  If you  enter
	      `yes',  cfdisk  will  write  the partition table to disk and the
	      tell the kernel to re-read the partition table  from  the  disk.
	      The re-reading of the partition table works is most cases, but I
	      have seen it fail.  Don't panic.	It will be correct  after  you
	      reboot  the  system.   In all cases, I still recommend rebooting
	      the system--just to be safe.

       Up Arrow

       Down Arrow
	      Move cursor to the previous or next  partition.	If  there  are
	      more  partitions than can be displayed on a screen, you can display
 the next (previous) set of partitions by moving  down  (up)
	      at the last (first) partition displayed on the screen.

       CTRL-L Redraws the screen.  In case something goes wrong and you cannot
	      read anything, you can refresh the screen from the main  command

       ?      Print the help screen.

       All of the commands can be entered with either upper or lower case letters
 (except for Writes).  When in a sub-menu or at a prompt to enter a
       filename, you can hit the ESC key to return to the main command line.

OPTIONS    [Toc]    [Back]

       -a     Use  an  arrow  cursor instead of reverse video for highlighting
	      the current partition.

       -g     Do not use the geometry given by the disk  driver,  but  try  to
	      guess a geometry from the partition table.

       -v     Print the version number and copyright.

       -z     Start  with  zeroed partition table.  This option is useful when
	      you want to repartition your entire  disk.   Note:  this	option
	      does not zero the partition table on the disk; rather, it simply
	      starts the program without reading the existing partition table.

       -c cylinders

       -h heads

       -s sectors-per-track
	      Override	the  number  of cylinders, heads and sectors per track
	      read from the BIOS.  If your BIOS or  adapter  does  not	supply
	      this  information  or  if it supplies incorrect information, use
	      these options to set the disk geometry values.

       -P opt Prints the partition table in specified formats.	opt can be one
	      or  more	of "r", "s" or "t".  See the print command (above) for
	      more information on the print formats.

EXIT STATUS    [Toc]    [Back]

       0: No errors; 1: Invocation error; 2: I/O error; 3: cannot  get	geometry;
 4: bad partition table on disk.

SEE ALSO    [Toc]    [Back]

       fdisk(8), parted(8), sfdisk(8)

BUGS    [Toc]    [Back]

       The current version does not support multiple disks.

AUTHOR    [Toc]    [Back]

       Kevin E. Martin (martin@cs.unc.edu)

The BOGUS Linux Release 	  3 June 1995			     CFDISK(8)
[ Back ]
 Similar pages
Name OS Title
fdisk Linux Partition table manipulator for Linux
sfdisk Linux Partition table manipulator for Linux
set_usage Tru64 checks whether a disk partition is in use and sets the fstype of the partition in the disk label
opendisk NetBSD open a disk partition
check_usage Tru64 checks whether a disk partition is in use
installboot OpenBSD installs a bootstrap on an FFS disk or partition
installboot OpenBSD installs a bootstrap on an FFS disk or partition
mediainit HP-UX initialize disk or partition DDS tape
gbde FreeBSD Geom Based Disk Encryption
picobsd FreeBSD floppy disk based FreeBSD system
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service