引言:冯诺依曼体系中的数据存储器就是我们常说的磁盘或硬盘,它是计算机不可缺少的一个组件,下面来看看Linux中磁盘的基础概念及管理工具fdisk
实验环境CentOS7.2
磁盘概念
按磁盘属性分类有机械硬盘跟固态硬盘
(1)机械硬盘:内部真空
磁盘:正反面含有磁性物质的盘片,由一个马达固定所有磁盘转动,固定角速度
每个盘片正反面各有一个磁头,所有磁头固定在一个机械臂上
平均寻道时间:5400rpm, 7200rpm, 10000rpm, 15000rpm转速
track(磁道):每个盘片上出厂格式化
sector(扇区):512bytes单位
cylinder(柱面):不同盘面上同一编号的磁道组合在一起,分区划分按照柱面实现
越靠近较外部分区的柱面组成的分区,越快。Windows上c盘在最外面
(2)固态硬盘
类似与多个并行U盘,工作模式上模拟机械硬盘的机制。
电器设备,速度个人笔记本是原来的3到5倍,读400个iops(io per second)、写200iops
在正式介绍Linux设备文件前需先了解一个概念:MBR
MBR(Master Boot Record):主引导分区,为一个编号为0的512字节的扇区
446bytes:bootloader,引导加载器程序,主引导记录,引导启动操作系统的程序;
64bytes:分区表,每16bytes标识一个分区,一共只能有4个分区;
2bytes:表示MBA是否有效;55AA为有效;
注意:
1) 主分区最多四个,扩展分区只能一个
2) 扩展分区不能单独使用,要继续分成逻辑分区,逻辑分区可以由多个
3) 一个分区就是一个独立的文件系统
4) 主分区和扩展分区的标识:1-4;逻辑分区:5+
其在Linux中的创建新磁盘分区会涉及主分区与扩展分区内容
/dev
不管是机械硬盘还是固态硬盘对于Linux看来它都是属于/dev/下的文件
设备文件名
1)磁盘:IDE: /dev/hd[a-z]
SCSI, SATA, USB, SAS: /dev/sd[a-z]
2)分区:/dev/sda#: /dev/sda1, ...
注意:CentOS 6和7统统将硬盘设备文件标识为/dev/sd[a-z]#
/dev设备文件介绍
1)设备文件:关联至设备的驱动程序;设备的访问入口;
2)设备号:
major:主设备号,区分设备类型;用于标明设备所需要的驱动程序;
minor:次设备号,区分同种类型下的不同的设备;是特定设备的访问入口;
比如/dev/sd# :sd为主设备号,#为次设备号。
引用设备的方式:设备文件名,卷标,UUID
磁盘管理工具fdisk:
fdisk:
创建查看分区
(1)查看磁盘的分区信息:
命令使用格式:fdisk -l [-u] [device...]:列出指定磁盘设备上的分区情况;
(2)管理分区
命令使用格式:fdisk /dev/sd# :创建,删除,保存磁盘分区配置。
fdisk提供了一个交互式接口来管理分区,它有许多子命令,分别用于不同的管理功能;所有的操作均在内存中完成,没有直接同步到磁盘;直到使用w命令保存至磁盘上;
以下命令选项为m中的常用选项:
n:创建新分区 d:删除已有分区
t:修改分区类型 l:查看所有已经ID
w:保存并退出 q:不保存并退出
m:查看帮助信息 p:显示现有分区信息
命令演示:
1、对已使用的磁盘设备,创建新分区,若没有可用空间则自动退出。
2、对新添加的磁盘创建新分区。
3、创建扩展分区,及删除已存在分区
保存退出后,将逻辑分区删除
注意:在已经分区并且已经挂载其中某个分区的磁盘设备上创建的新分区,内核可能在创建完成后无法直接识别;
通知内核强制重读磁盘分区表:
查看:cat /proc/partitions
CentOS 5:partprobe [device]
CentOS 6,7:partx, kpartx
partx -a [device]
kpartx -af [device]