磁盘管理
磁盘结构
硬盘数据结构
扇区:盘片被分为多个扇形区域,每个扇区存放512字节的数据(扇区越多容量越大) 存放数据的最小单位 512字节
磁道:同一盘片不同半径的同心圆
柱面:不同盘片相同半径构成的圆(柱面和磁道数量相同
硬盘的存储容量
-
硬盘存储容量=磁头数(8个2进制)×磁道(柱面)数×每道扇区数(6个二进制)×每扇区字节数
1柱面=512 * 扇区数/磁头数×磁道=51263255=7.84M
-
可以用柱面/磁头/扇区来唯一定位磁盘上每一个区域
硬盘接口类型
硬盘按数据接口不同,大致分为ATA(IDE)和SATA以及SCSI,接口速度不是实际硬盘传输速度。
IDE(并口):并口数据线连接主板与硬盘,抗干扰性太差,且排线占用空间较大,不利电脑内部散热,已逐渐被SATA所取代。
SATA(串口): 抗干扰性强,支持热插拔等功能,速度快,纠错能力强。
SCSI小型机系统接口,SCSI硬盘广为工作站级个人电脑以及服务器所使用,资料传输时 CPU占用率较低,转速快,支持热插拔等
SAS 是新一代的SCSI技术, 和SATA硬盘相同,都是采取序列式技术以获得更高的传输速度,可达到6Gb/s
磁盘分区
分区的原因
- 优化I/O性能 读写
- 实现磁盘空间配额限制
- 提高修复速度
- 隔离系统和程序
- 安装多个OS
- 采用不同文件系统
分区的缺点
- 必须是连续空间
- 一旦分好区后无法增加减少空间
- 空间固定 inode 号分好后不变
MBR分区
MBR: 主引导记录, 是硬盘上的第一个扇区, 想要读数据得从这个扇区开始
容量
MBR:一共512字节
前446字节 开机引程序, 引导硬件 找到我们的操作系统
后64 字节 分区表 表明了分区范围 分区从哪到哪里
最后两个字节 代表 MRB 结束位
MBR 和GPT区别
MBR:支持2T以下硬盘,只能分4个分区,每个分区记录区占16字节,3个主分区,一个扩展分区
GPT:可以支持2T以上的硬盘,可以分128个分区
分区的分类
主分区: 可以直接使用,安装操作系统,存储文件等
扩展分区: 不可以直接使用,需要再 划分逻辑分区 让分区出超过4个
逻辑分区: 可以直接使用,存储文件
扩展的分区是特殊的主分区
主分区的序号为1-4
逻辑分区的序号 5-任意
文件系统
XFS ext4
存放文件和目录数据分区
高性能的日志文件系统
是一个全64-bit的文件系统,最大可以支持8EB的文件系统,1EB=1024PB1PB=1024TB
Centos 7系统中的默认使用的文件系统是xfs
Centos 6系统中的默认使用的文件系统是ext4
swap
为Linux系建立交换分区
当内存不足时,将硬盘的空间准转换成内存
Linux其它文件系统
FAT16、FAT32
最大只能支持32GB分区,单个文件也只能支持最大4GB。
NTFS
NTFS文件系统所具备3个功能:错误预警功能、磁盘自我修复功能和日志功能,单个文件64GB
JFS
主要是为满足服务器的高吞吐量和可靠性需求而设计、开发的。单个文件最大限制16TB,该文件系统最大支持1PB的容量。1PB=1024TB
挂载与解挂载
挂载规则
- 一个挂载点同一时间只能挂载一个设备
- 一个挂载点同一时间挂载了多个设备,只能看到最后一个设备的数据,其它设备上的数据将被隐藏
- 一个设备可以同时挂载到多个挂载点
- 通常挂载点一般是已存在空的目录
挂载命令
mount [ -t 类型 ] 存储设备 挂载点目录
mount -o loop ISO镜像文件 挂载点目录
-a 自动挂载所有支持自动挂载的设备
-o options:(挂载文件系统的选项)
df -h 可以详细显示挂载信息
解挂载
umount 挂载点
永久挂载
需要 将文件写入 /etc/fstab
UUID 可以确保唯一
blkid 可以查看UUID
在下边分区实验中将演示
分区工具
fdisk
fdisk [磁盘设备]
m 打印出菜单
p 打印出当前分区表
n 新建一个分区
d 删除一个分区
t 改变分区的属性,系统ID
w 保存
q 不保存退出
blkid
可以查看块设备属性信息
[root@lisi ~]# blkid
/dev/sda1: UUID="dd924c21-db72-4fc2-bb50-a1b807e11707" TYPE="xfs"
/dev/sda2: UUID="seCmIX-Qnsm-936E-LFi7-iycT-aW69-170SMy" TYPE="LVM2_member"
/dev/sr0: UUID="2017-09-06-10-51-00-00" LABEL="CentOS 7 x86_64" TYPE="iso9660" PTTYPE="dos"
mkfs
创建文件系统(格式化)常用选项
mkfs -t {ext2|ext3|ext4|xfs} 指定文件系统类型
mkfs -t ext4=mkfs.ext4
mkfs -t xfs=mkfs.xfs
mkswap
swap
特殊的文件系统,缓解内存不足,为了个别应为程序加内存有点浪费
添加交换分区的空间
swapon -a 开启全部
swapoff -a 关闭全部
磁盘分区实验过程
1、添加磁盘
2、刷新虚拟机,查看硬盘
3、添加分区
4、格式化文件系统
5、永久挂载
最后可以重启一下看看是否成功进入虚拟机
raid的类型和性能
raid 0
需要几块盘:实际只要 1块也可以做raido,提升性能至少2块
是否有备份功能:没有
是否提升读的性能:提升
是否提升写的性能:提升
能坏几块盘:0
raid 1
需要几块盘 2n
是否有备份功能: 有
提升是否提升读的性能: 提升
是否提升写的性能: 否略有下降
实际容量: 百分之50
能坏几块盘: 1组只能坏一块
raid 5
需要几块盘 3+n
是否有备份功能: 有
提升是否提升读的性能: 提升
是否提升写的性能: 否略有下降
实际容量: n-1
能坏几块盘: 1
raid 1+0
需要几块盘 2n n>=2
是否有备份功能: 有
提升是否提升读的性能: 提升
是否提升写的性能: 否略有下降
实际容量: 50%
能坏几块盘: 2 坏之后又三分之一的丢数据概率