磁盘结构
磁盘结构磁盘主要分为以下结构:
- 磁头(head):对磁盘的数据进行读写
- 磁道(track):当磁盘旋转时,磁头若保持在一个位置上,则每个磁头都会在磁盘表面划出一个圆形轨迹,这些圆形轨迹就叫做磁道。 磁盘上的磁道是一组记录密度不同的同心圆
- 扇区(sector):磁盘上的每个磁道被等分为若干个弧段,这些弧段便是硬盘的扇区。硬盘的第一个扇区,叫做引导扇区。 一个扇区的大小为512个字节。
- 柱面(cylinder):在有多个盘片构成的盘组中,由不同盘片的面,但处于同一半径圆的多个磁道组成的一个圆柱面。
整个磁盘的存储大小为:
存储容量 = 磁头数 × 磁道(柱面)数 × 每道扇区数 × 每扇区字节数
磁盘的使用
一块新的硬盘或者U盘等外部设备在插入PC后,需要完成以下事情:
- 在/dev/下创建一个新的目录,用来代表该磁盘。如/dev/hda,/dev/hdb等。
- 磁盘最开始需要进行格式化,使用
mkfs
命令为磁盘进行格式化,确定文件系统类型。 - 对硬盘进行分区后才可以使用。
- 在Linux中挂载到一个已经存在的目录下才可以访问该磁盘,否则无法访问。使用
mount
与unmount
来进行挂载和卸载。
一般挂在点都在/mnt/xxx目录下,并且该目录必须是已经存在的,否则无法挂载
fdisk的使用
在Linux中,使用fdisk来查看当前的硬盘以及硬盘的分区、文件系统等信息。并且使用fdisk命令可以为磁盘进行分区。
fdisk的命令有以下这些:
Fdisk命令详解:
命令 | 备注 |
---|---|
m | 获取帮助 |
n | 新建分区 |
p | 显示分区表 |
d | 删除分区 |
b | 设置卷标 |
w | 写入分区表 |
t | 改变分区文件系统类型 |
v | 检验分区 |
l | 显示fdisk所支持的文件系统代码 |
q | 退出 |
fdisk示例
- 使用
fdisk -l
查看当前所有硬盘以及分区的状态。
# fdisk -l
Disk /dev/sda: 10.7 GB, 10737418240 bytes
255 heads, 63 sectors/track, 1305 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 13 104391 83 Linux
/dev/sda2 14 1305 10377990 8e Linux LVM
Disk /dev/sdb: 5368 MB, 5368709120 bytes
255 heads, 63 sectors/track, 652 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk /dev/sdb doesn't contain a valid partition table
可以看到目前有两个磁盘:
- sda:10.7G,255个磁头,63个磁道,1305个扇区
- 主分区1:/dev/sda1
- 主分区2:/dev/sda2
- sdb:5G,255个磁头,63个磁道,652个扇区
- 无分区
分区的概念
Linux中,磁盘只有被分区完后,才可以被挂载到目录下。
分区有三种:主分区,扩展分区,逻辑分区,每个磁盘最多只能有四个主分区,而可以有多个扩展分区,在扩展分区中,还可以创建多个逻辑分区。
- 主分区:创建完后即可挂载
- 扩展分区:扩展分区创建完后,还需要创建逻辑分区才可以被挂载
示例
格式化一块硬盘(hdb),并且对其进行分区,分区后进行挂载
创建主分区
- 通过
fdisk /dev/hdb
进入磁盘的命令模式
进入格式化命令模式 - 输入
n
代表创建分区,e
代表扩展分区,p
代表主分区
新建主分区 - 输入
First Cylinder
的值代表分区初始的柱面值,以及分区的大小+3G
代表为该分区分3G
输入初始柱面的值以及分区大小 - 输入
p
查看创建的分区/dev/hdb1
新建分区
创建扩展分区
- 与创建主分区步骤相同,只是在选择
command action
的时候,选择e
,表示创建扩展分区
创建后的扩展分区 - 在创建完扩展分区后,来创建逻辑分区,输入
l
代表创建逻辑分区
创建逻辑分区 -
与创建主分区、扩展分区一样,为逻辑分区选择起始的柱面,以及分配的大小
分配分区大小 -
查看扩展分区
查看分区信息
分区格式化
在磁盘分区创建完毕后,需要为分区通过mkfs
进行格式化,赋予它文件系统:
如ext2
,ext3
,vfat
等
使用命令 mkfs -t ext3 /dev/hdb1
分别对分区hdb1
进行格式化处理,格式化为ext3文件类型
其中mkfs –t ext3
命令等价于mkfs.ext3
,mkfs -t ext2
命令等价于mkfs.ext2
分区挂载
当分区格式化完成文件系统后,就可以通过mount
与unmount
进行挂载与卸载了,当分区挂载到具体目录后,即可进行创建文件、删除文件等文件操作了。
如mount /dev/hdb1 /mnt/hdb1
就会将/dev/hdb1
分区挂载到/mnt/hdb1
目录下,也就是该目录下的文件都会被写到/dev/hdb1
的磁盘分区中保存。
网友评论