一、磁盘:硬盘
本质上是计算机的村粗设备。磁盘由一个或者多个具有磁性的盘片组成。盘片上覆盖有磁性的材料
读写数据用的
存储:操作系统,应用程序、图片、文档、视频
读取视频文件:
硬盘----计算机内存----cpu-----操作系统-----人类能够识别的内容
在工作当中,主要还是机械硬盘。
数据恢复强,能恢复90%
固态能恢复60-70%
磁盘分为扇区,每个扇区分为512字节,是磁盘的最小储存单位
.
二、硬盘分区:
1、主引导记录:MBR
MBR:一共446字节,在操作系统安装的时候写入主引导程序
MBR:一段引导程序。
作用:
- 检查磁盘的分区合法性(功能是否正常,磁盘位置是否正确),加载操作系统。
引导系统找到正常工作和位置正确的硬盘,引导操作系统读取硬盘中的内容
MBR表只能分区2T以下的
2、硬盘分区:
主分区 扩展分区(逻辑分区)
创建逻辑分区必须要先创建扩展分区
主分区和扩展分区加在一起只能有4个
Linux的硬盘必须要分区之后才能使用
不受4个分区的限制
2、GPT分区:
GUID PARTITION TABLE,比MBR的分区方式更好
用标识符GUID来表示分区和硬盘的,支持的容量更大,分区也更多
一共可以分128个分区,而且不受2T的限制
最大可以支持9.4zb
2T 以下用MBR分区 fdisk
2T以上用GTP分区 gdisk
硬盘分区:
- 不分区就没有引导记录表,没有引导记录表,系统找不到硬件设备
- 优化I/O性能 input/output 优化读写性能
- 隔离系统和程序
- 可以采用不同的文件系统
分区:
1、分区一旦建立无法修改,只能全部删除重启再来。
2、不够灵活,所有的空间都来自一块硬盘,而且是连续的空间
3、没有冗余功能(没有高可用,坏了就坏了)。没有备份功能,需要工作人员手动备份
lsblk:查看分区情况
scan:
刷新硬件设备接口信息,同步到内核信息表,系统可以直接识别硬件设备。无需重启服务器
进入/etc/profile 修改永久配置
alias scan='echo "- - -" > /sys/class/scsi_host/host0/scan;echo "- - -" > /sys/class/scsi_host/host1/scan;echo "- - -" > /sys/class/scsi_host/host2/scan'
partprobe 刷新,如果硬盘没加载出来
3、fdisk分区命令:
m:帮助信息
n:新建分区
p:查看当前硬盘的分区情况
d:删除分区
t:变更分区类型
w:保存分区操作,并且退出
q:不保存分区操作,退出
分区类型:83默认的分区类型,82swap,8e逻辑卷LVM
4、扩展分区:
大小一般为512字节或者1K。存储分区表信息
逻辑分区必须要建立在扩展分区的基础之上
存储逻辑分区分分区表
你创建扩展分区给的多大空间,逻辑分区只能分多大空间
为什么我们买到的硬盘200G,到手之后190G呢?
- 算法:
1G=1000MB
1G=1024MB
- 分区表。
5、主分区和逻辑分区的作用:
主分区最多可以分4个(MBR情况下),每个主分区都可以独立的安装一个操作系统。而且也可以存储数据。
逻辑分区,基于扩展分区才可以创建逻辑分区,逻辑分区不能安装操作系统(没有分区表),只能存储数据
分配好分区还不能用,硬盘、光盘都要挂载才能使用(不能直接挂载,要先安装文件系统)
三、文件系统:
分区完之后的硬盘,必须要创建文件系统才可以挂载
文件系统用来管理Linux系统中的文件和目录
管理存储设备的数据存储和访问。
1、文件系统的作用:
- 数据组织和存储。组织数据的结构,把文件分为不同的目录,以及把数据存储在物理设备上
- 数据保护。为什么会有权限,文件系统提供的权限控制
- 数据访问。文件系统提供了对存储设备的访问的接口,通过访问可以访问硬盘上的数据
- 数据管理。文件系统提供了,复制、删除、移动、重命名
2、centos7文件系统:XFS
XFS:适用于大型文件的管理、高性能存储的需求
ext3、ext4 是centos5、6的文件系统
文件系统安装:mkfs.xfs /dev/sdb1
之后挂载就可以使用了
3、创建硬盘分区步骤:
分为三步:
1、分区、不分区没有分区表,没有分区表操作系统找不到
2、创建文件系统:
mkfs.xfs /dev/sdb1
3、挂载:
mount /dev/sbd1 /date
四、swap分区,交换分区
free -h查看系统内存
主要作用:当系统的物理内存不够时 swap分区就会释放空间供物理内存使用。物理内存使用完之后,这一部分内存要还给swap分区
buff/cache :缓存 页缓存
buff(缓存):缓存的是文件系统中的元数据(目录和文件的权限、时间戳)
cache(页缓存):缓存的是存储设备中的数据和文件(经常访问的)
total:物理内存总大小。
used:已使用的内存大小。
free:未使用的内存大小。
shared:被共享使用的内存大小。
buff/cache:用于缓存的内存大小,包括缓存和页缓存。
available:还可用于程序和文件系统的内存大小。
五、lvm逻辑卷管理:
lvm的主要作用就是动态扩容,可以在不解除挂载点,也不妨碍其他用户的使用的情况下进行扩容
lvm在概念上和fdisk相同,但是他是逻辑意义上的硬盘
使用lvm的时候不考虑底层物理磁盘的概念
boot分区不能够创建lvm
物理卷:真正意义上的提供磁盘存储的物理硬盘或者分区
卷组:把多个物理卷组合起来就成了卷组,就成了一个卷组。可以是一个硬盘里的多个分区,也可以是不同硬盘的不同分区
卷组就是逻辑上的硬盘
lv分区:把这个逻辑硬盘进行分区
上图的PE:物理扩展,作用是lvm逻辑卷的最小存储单元,PE大小4Mb 可以调整,一般就是默认
物理卷相关命令:
1.创建物理卷
pvcreate 创建
pvdispaly 显示物理卷的详细情况
pvremove 删除物理卷
pvscan 扫描物理卷
卷组相关命令:
2.创建卷组
vgcreate 创建卷组
vgdispaly 显示卷组的详细情况
vgremove 移除卷组
vgscan 扫描卷组
vgextend 扩容卷组
vgreduce 缩容卷组
lv:
3.对卷组进行分区
lvcreate 创建逻辑卷
lvdispaly 显示逻辑卷的详细情况
lvremove 移除逻辑卷
lvscan 扫描逻辑卷
lvextend 扩容逻辑卷
lvreduce 缩容逻辑卷
针对硬盘的操作,没有缩容的概念
六、实验详细攻略:
1、硬盘分区:
- 分区。
不分区没有分区表,没有分区表操作系统找不到
2、创建文件系统:
mkfs.xfs /dev/sdb1
3、挂载:
mount /dev/sbd1 /date
- 分区:
设置scan
进入/etc/profile 修改永久配置
alias scan='echo "- - -" > /sys/class/scsi_host/host0/scan;echo "- - -" > /sys/class/scsi_host/host1/scan;echo "- - -" > /sys/class/scsi_host/host2/scan'
之后source /etc/profile 刷新一下
2、创建文件系统:mkfs.xfs /dev/sdb1
文件能读写、复制、命名......一系列操作
3、挂载:mount /dev/sbd1 /b1
挂载的意思是 让一个目录有5G内存 将硬盘的容量挂载到指定目录里
先创建一个目标目录 b1 准备挂载
这时临时挂载
下面是永久挂载:
vim /etc/fstab
blkid:查询系统设备唯一编号 uuid
defaults 默认,默认拥有所有权限(读写、同步、自动挂载.......)
0:不备份
0:系统启动时不检查文件系统
之后保存退出 mount -a 刷新一下
就永久挂载了
挂载镜像也是一样
/dev/cdrom /mnt iso9660 defaults 0 0
大于2t的硬盘分区 gdisk:
操作也是一样的,只是分盘的时候有点小差别
2、lvm逻辑卷管理:
必须要有几个没挂载的分区
以下是逻辑卷的创建思维图
1、创建物理卷(可以省略直接第二步)
pvdisplay查看物理卷
2、创建组卷
vgcreate ‘组名’ /dev/sdb1 /dev/sdb2 /dev/sdc1 /dev/sdd1
vgdisplay ‘组名’查看组卷
3、创建逻辑卷
lvdisplay ky32查看逻辑卷
lsblk 查看分区情况
之后就是安装文件系统 、 挂载目录。然后目录就能使用了
过程和普通分区挂载一样
装文件系统:
mkfs.xfs /dev/ky32/test1
挂载目录:
根目录创建 挂载目录mulu1 mulu2 mulu3
采用永久挂载:进入vim /etc/fstab
之后mount -a刷新
df -a查看挂载
lv逻辑卷就建好了
3、逻辑卷扩容:
先扩组卷 在扩lv逻辑卷
扩展卷组:
将普通分区 sdd2(10G) 扩展进卷组
vgextend ‘目标卷组’ ‘普通分区物理设备’
vgdisplay 查看
之后扩展lv逻辑卷:
lvextend -L +6G ‘指定逻辑卷’ -r
-L 指定内存大小
-r 刷新
如果没有-r
手动刷新:xfs_growfs /dev/ky32/test3
4、swap扩容:
free -h 查看内存使用情况:
1、使用fdisk工具创建新的分区/dev/sdb1,类型为Linux Swap
2、使用命令mkswap /dev/sdb1将新分区格式化为Swap分区格式。
3、使用命令swapon /dev/sdb1启用新创建的Swap分区。
取消挂载swap:swapoff /dev/sdb1