fdisk是各种Linux发行版本中最常用的分区工具,其功能强大,使用灵活,且适用平台广泛,不仅Linux操作系统,在Windows和Dos操作系统下也被广泛地使用。由于fdisk对使用者的要求较高,所以一直都被定位为专家级别的分区工具,其命令格式如下:
fdisk [-u] [-b sectorsize] [-C cyls] [-H heads] [-S sects] device
fdisk -l [-u] [device ...]
fdisk -s partition ...
fdisk -v
其中的常用命令选项说明如下所述。
q -b sectorsize:定义磁盘扇区的大小,有效值包括512、1024和2048,该选项只对老版本内核的Linux操作系统有效。
q -C cyls:定义磁盘的柱面数,一般情况下不需要对此进行定义。
q -H heads:定义分区表所使用的磁盘磁头数,一般为255或者16。
q -S sects:定义每条磁道的扇区数,一般为63。
q -l:显示指定磁盘设备的分区表信息。如果没有指定磁盘设备,则显示/proc/partitions文件中的信息。
q -u:在显示分区表时,以扇区代替柱面作为显示的单位。
q -s partition:在标准输出中以block为单位显示分区的大小。
q -v:显示fdisk的版本信息。
q device:整个磁盘设备的名称,对于IDE磁盘设备,设备名为/dev/hd[a-h];对于SCSI磁盘设备,设备名为/dev/sd[a-p]。
例如要查看第一块IDE磁盘(/dev/hda)的分区表信息,命令如下所示。
# fdisk -l /dev/hda
Disk /dev/hda: 81.9 GB, 81964302336 bytes //磁盘设备名为/dev/hda,大小 //为81.9GB
255 heads, 63 sectors/track, 9964 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System //分区列表
/dev/hda1 * 1 650 5221093+ b W95 FAT32
/dev/hda2 651 9506 71135820 f W95 Ext'd (LBA)
/dev/hda5 651 905 2048256 b W95 FAT32
/dev/hda6 906 1288 3076416 7 HPFS/NTFS
/dev/hda7 1289 7537 50194934 83 Linux
/dev/hda8 7538 7728 1534176 82 Linux swap / Solaris
#
//在/dev/目录下会有相应的磁盘设备文件与之对应
# ll /dev/hda*
brw-r----- 1 root disk 3, 0 Aug 24 15:24 had //磁盘设备文件
brw-r----- 1 root disk 3, 1 Aug 19 02:02 hda1 //磁盘分区设备文件
brw-r----- 1 root disk 3, 2 Aug 19 02:02 hda2
brw-r----- 1 root disk 3, 5 Aug 19 02:02 hda5
brw-r----- 1 root disk 3, 6 Aug 19 02:02 hda6
brw-r----- 1 root disk 3, 7 Aug 19 02:02 hda7
brw-r----- 1 root disk 3, 8 Aug 19 02:02 hda8
可以看到,这是一台安装有windows和Linux的机器,磁盘的大小为81.9 GB,有1个主分区、1个扩展分区和4个逻辑分区,其中不但有Linux和swap分区,还有Windows的fat32和ntfs分区,这些都是可以并存的。
又如,要显示上例中的第3个逻辑分区(/dev/hda7)的大小,可以使用-s选项,其命令如下所示。
# fdisk -s /dev/hda7
6144831
该分区的大小为6144831个块。要显示fdisk程序的版本号,命令如下所示。
# fdisk -v
fdisk (util-linux 2.13-pre7)
可以看到,当前的fdisk版本号为util-linux 2.13-pre7。