一般fdisk用来管理linux的磁盘,进行分区,格式化等操作
fdisk命令用于观察硬盘实体使用情况,也可对硬盘分区。它采用传统的问答式界面,而非类似DOS fdisk的cfdisk互动式操作界面,因此在使用上较为不便,但功能却丝毫不打折扣。
fdisk参数使用方法:
语法:fdisk(选项)(参数)
-b:指定每个分区的大小;
-l:列出指定的外围设备的分区表状况;
-s:将指定的分区大小输出到标准输出上,单位为区块;
-u:搭配"-l"参数列表,会用分区数目取代柱面数目,来表示每个分区的起始地址;
-v:显示版本信息。
fdisk分区方法:
fdisk的命令行用法为: fdisk 硬盘设备名 例如:fdisk /dev/sdb
进入fdisk后,首先键入'm',即可显示fdisk全部菜单。
command (m for help): m
Command action
a toggle a bootable flag
b edit bsd disklabel
c toggle the dos compatibility flag
d delete a partition :删除磁盘
l list known partition types 列出磁盘信息
m print this menu
n add a new partition 新加磁盘
o create a new empty DOS partition table
p print the partition table 列出当前磁盘分区情况
q quit without saving changes
s create a new empty Sun disklabel
t change a partition's system id
u change display/entry units
v verify the partition table
w write table to disk and exit
x extra functionality (experts only)
再键入'p',显示当前分区表状态。
Command (m for help): p
Disk /dev/sdb: 3221 MB, 3221225472 bytes
255 heads, 63 sectors/track, 391 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 1 1 8001 8e Linux LVM
/dev/sdb2 2 26 200812+ 83 Linux
来解读一下上面的磁盘信息,sdb大小总共3221M,255个柱头,63个扇区,391个柱面。
小常识:磁头数(Heads)表示硬盘总共有几个磁头,也就是有几面盘片, 最大为 255 (用 8 个二进制位存储);
柱面数(Cylinders) 表示硬盘每一面盘片上有几条磁道,最大为 1023(用 10 个二进制位存储);
扇区数(Sectors) 表示每一条磁道上有几个扇区, 最大为 63(用 6个二进制位存储);
每个扇区一般是 512个字节, 理论上讲这不是必须的,但好像没有取别的值的。
然后看start-Edn对应的两列,是表示柱面的开始与结束。目前只用到26,剩下可用的为391-26个柱面。
每个分区对应的Id是磁盘是什么类型的分区,主分区或是交换分区,或者是扩展分区等。
小常识:LVM可以创建和管理“逻辑”卷,而不是直接使用物理硬盘。可以让管理员弹性的管理逻辑卷的扩大缩小,操作简单,而不损坏已存储的数据。可以随意将新的硬盘添加到LVM,以直接扩展已经存在的逻辑卷。LVM并不需要重启就可以让内核知道分区的存在。
删除分区: 举例删除刚才那两个分区
Command (m for help): d
Partition number (1-4): 1
Command (m for help): d
Selected partition 2
然后再输入print 查看当前磁盘信息
建立新分区:
Command (m for help): n
Command action
e extended
p primary partition (1-4) p //建立主分区
Partition number (1-4): 1 //分区号
First cylinder (1-391, default 1): //分区起始位置
Using default value 1
last cylinder or +size or +sizeM or +sizeK (1-391, default 391): 100 //分区结束位置,单位为扇区
Command (m for help): n //再建立一个分区
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 2 //分区号为2
First cylinder (101-391, default 101):
Using default value 101
Last cylinder or +size or +sizeM or +sizeK (101-391, default 391): +200M / /分区结束位置,单位为M
然后输入p,可以看到磁盘分区已经分好。这都是主分区,如果我想建立一个逻辑分区呢?
建立逻辑分区:
Command (m for help): n
Command action
e extended
p primary partition (1-4) e //选择扩展分区
Partition number (1-4): 3
First cylinder (126-391, default 126):
Using default value 126 Last cylinder or +size or +sizeM or +sizeK (126-391, default 391):
Using default value 391
然后再输入p,查看磁盘分区信息。
在扩展分区上建立两个逻辑分区:
Command (m for help): n
Command action
l logical (5 or over)
p primary partition (1-4) l //选择逻辑分区
First cylinder (126-391, default 126):
Using default value 126
Last cylinder or +size or +sizeM or +sizeK (126-391, default 391): +400M
最后确认所有分区建立成功。
Command (m for help):
p Disk /dev/sdb: 3221 MB, 3221225472 bytes
255 heads, 63 sectors/track, 391 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 1 100 803218+ 83 Linux
/dev/sdb2 101 125 200812+ 83 Linux
/dev/sdb3 126 391 2136645 5 Extended
/dev/sdb5 126 175 401593+ 83 Linux
保存退出
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
建立好分区之后我们还需要对分区进行格式化才能在系统中使用磁盘。
mkfs.ext2 /dev/sdb1