fdisk –l 列出所有安装的磁盘及分区信息
Fdisk是IBM的老牌分区工具,支持绝大多数操作系统,几乎所有的Linux操作系统都默认装有fdisk;包括在Linux Rescue模式下依然能够使用。fdisk是基于MBR的分区工具(是当年IMB设计给PC机来使用的),所以如果需要使用GPT,则无法使用fdisk进行分区。只有超级用户权限才可以执行fdisk,因为命令都是/sbin下面,需要特权级的用户。可以先查看系统中所有的SCSI硬盘和分区信息。
[root@ITM ~]# ls -l /dev/sd*
brw-r----- 1 root disk 8, 0 08-1801:55 /dev/sda
brw-r----- 1 root disk 8, 1 08-1801:55 /dev/sda1
brw-r----- 1 root disk 8, 2 08-18 01:55/dev/sda2
brw-r----- 1 root disk 8, 3 08-1801:55 /dev/sda3
brw-r----- 1 root disk 8, 4 08-1801:55 /dev/sda4
brw-r----- 1 root disk 8, 5 08-1801:55 /dev/sda5
brw-r----- 1 root disk 8, 6 08-1717:56 /dev/sda6
硬盘分区的表示:在Linux 是通过hd*x 或 sd*x 表示的,其中 hd大多是IDE硬盘;sd大多是SCSI或移动存储,* 表示的是a、b、c ……,代表整个硬盘, x表示的数字 1、2、3 ……,代表分区。
接下来就可以使用fdisk命令显示出该系统上sda硬盘的分区信息了。
[root@ITM~]# fdisk -l /dev/sda
Disk/dev/sda: 320.0 GB, 320071851520 bytes
255heads, 63 sectors/track, 38913 cylinders
Units= cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 3825 30724281 7 HPFS/NTFS
/dev/sda2 3826 4080 2048287+ 83 Linux
/dev/sda3 4081 5100 8193150 83 Linux #普通分区
/dev/sda4 5101 38913 271602922+ 5 Extended
/dev/sda5 5101 5355 2048256 82 Linux swap / Solaris #交换分区
/dev/sda6 5356 6630 10241406 83 Linux
[root@ITM~]#
Units开始的那一行为每个磁柱的大小,对于这个硬盘,每个磁柱的大小约为8MB。
该sda磁盘总共有6630个cylinder(柱面),每个磁道有63个sectors(小扇区),有255个heads(磁头),那么这块sda的总的空间大小为:255*63*38913*512B=320070320640B。
该sda硬盘有3个主分区(sda[1-3]),1个扩展分区(sda4),扩展分区容量=逻辑分区容量加和。
引导(Boot):表示引导分区,在上面的例子中有*的为boot分区;
Start (开始):表示的一个分区从X cylinder(磁柱)开始;
End (结束):表示一个分区到 Y cylinder(磁柱)结束;
id和System 表示的是分区号码和分区类型,
Blocks(容量):表示的意思的确是容量的意思,其单位是K;一个分区容量的值是由下面的公式而来的;
Blocks = (相应分区End数值 - 相应分区Start数值)x 单位cylinder(磁柱)的容量
分区创建
在/dev/sda这个SCSI硬盘上创建新的分区。
[root@ITM~]# fdisk /dev/sda
Thenumber of cylinders for this disk is set to 38913.
Thereis nothing wrong with that, but this is larger than 1024,
andcould in certain setups cause problems with:
1)software that runs at boot time (e.g., old versions of LILO)
2)booting and partitioning software from other OSs
(e.g., DOS FDISK, OS/2 FDISK)
Command(m for help): n #添加一个新的分区,new的意思
Firstcylinder (6631-38913, default 6631): #回车,接受默认的起始磁柱
Usingdefault value 6631
Lastcylinder or +size or +sizeM or +sizeK (6631-38913, default 38913): +128 #直接指定磁柱大小
Command(m for help): p #查看
Disk/dev/sda: 320.0 GB, 320071851520 bytes
255heads, 63 sectors/track, 38913 cylinders
Units= cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 3825 30724281 7 HPFS/NTFS
/dev/sda2 3826 4080 2048287+ 83 Linux
/dev/sda3 4081 5100 8193150 83 Linux
/dev/sda4 5101 38913 271602922+ 5 Extended
/dev/sda5 5101 5355 2048256 82 Linux swap / Solaris
/dev/sda6 5356 6630 10241406 83 Linux
/dev/sda7 6631 6759 1036161 83 Linux
Command(m for help):w #保存退出,write的意思
Thepartition table has been altered!
Callingioctl() to re-read partition table.
WARNING:
Re-reading the partition table failed with error 16: 设备或资源忙.
Thekernel still uses the old table.
Thenew table will be used at the next reboot.
Syncingdisks.
当w指令执行完后,系统就将所创建的新分区的信息写入磁盘的分区表中。分区创建完成后,系统还不能识别该分区,需要重启系统或使用partprob命令之后,系统才能识别这个分区。
[root@ITM~]# partprobe #重新初始化内存中内核的分区信息表
[root@ITM~]# fdisk -l
Disk/dev/sda: 320.0 GB, 320071851520 bytes
255heads, 63 sectors/track, 38913 cylinders
Units= cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 3825 30724281 7 HPFS/NTFS
/dev/sda2 3826 4080 2048287+ 83 Linux
/dev/sda3 4081 5100 8193150 83 Linux
/dev/sda4 5101 38913 271602922+ 5 Extended
/dev/sda5 5101 5355 2048256 82 Linux swap / Solaris
/dev/sda6 5356 6630 10241406 83 Linux
/dev/sda7 6631 6759 1036161 83 Linux
一个硬盘上创建的分区并不能直接存放数据,需要使用格式化命令将这个分区格式化为一个系统可以识别的文件系统才能正常使用。
amily:"3P�z�5