磁盘类型:
机械硬盘:盘片,马达,磁头,磁臂组成的机械结构存储器。
固态硬盘:由芯片和集成电路组成。
硬盘尺寸:
1.8英寸,2.5英寸,3.5英寸。
接口:
并口 ide(针脚)/串口sata
转速:
5400转 7200转 15000转
基本分区
磁盘简介
命名方式:kernel(内核)对不同接口硬盘命名方式
IDE:
其中hd表示设备类型为IDE硬盘,x为盘号,表示第几块硬盘(a为基本盘,b为基本从属盘,c为辅助主盘,d为辅助从属 盘),“-”代表分区,前4个分区用数字1到4表示,它们是主分区或扩展分区,从5开始就是逻辑分区(扩展分区不能直接 使用,需切割出逻辑分区,逻辑分区的数量没有限制)
SATA:
/dev/sda(/dev设备文件目录,s即sata串口,d磁盘,a第一块)
/dev/sdb
分区方式
MBR:主引导启动记录(MBR,Master Boot Record)位于磁盘最前面的一段引导
MBR最大支持磁盘容量<2TB。设计时发分配四个分区。如果希望超过4个分区 ,则需要放弃主分区改为扩展分区和逻辑 分区。
GPT:全局唯一标识分区表(GUTDPartition Table,编写GPT)是一个实体硬盘的分区表的结构布局的标准。
MBR最大支持磁盘容量 >2TB,支持128个分区。
管理磁盘
管理磁盘流程:分区(mbr,gpt)-->格式化,文件系统Filesystem --> 挂载mount
查看磁盘信息
1. ll /dev/sd*
![](https://img-blog.csdnimg.cn/200ca0c4b4b3472abbaa6403253852c1.png)
2. lsblk
NAME | 设备名 |
MAJ:MIN | 主要和次要设备号 |
RM | 设备是否可移动设备。注意,在本例中设备sdb和sr0的RM值等于1,这说明他们是可移动设备。 |
SIZE | 列出设备的容量大小信息 |
RO | 表明设备是否为只读 |
TYPE | 块设备是否是磁盘或磁盘上的一个分区 |
MOUNTPOINT | 设备挂载的挂载点 |
创建分区(MBR)
启动分区工具 fdisk /dev/sdb
1.创建分区选择n 输入操作或帮助指令
2.请选择主分区或扩展分区
3.选择分区号
4.选择磁盘开始的分区
5.选择磁盘分区的结束扇区,两种方式,a.输入结束扇区 b.直接选择大小,即+2G.
6.输入w保存分区信息,并且会自动退出分区工具。
刷新分区表:partprobe /dev/sdb
创建文件系统
mkfs.ext4 /dev/sdb1 : make file system extend4(扩展) 格式化第二块sata硬盘的第一个分区
挂载mount
mkdir /mnt/disk1 mount -t ext4 /dev/sdb1 /mnt/disk1
创造挂载点,一个分区一个挂载点。
查看挂载分区,显示磁盘使用情况 df -hT
h 显示单位
T显示分区类型
![](https://img-blog.csdnimg.cn/35a63f2f7fca4b21b60a9196c2a726a6.png)
逻辑分区
一块硬盘使用MBR,划分分区 两种情况 a.四个主分区 b.三主+一个扩展分区(扩展分区里可划分n个逻辑分区)。
删除分区
划分逻辑分区
![](https://img-blog.csdnimg.cn/8982a4597fee414bb3fb9628e3ff1f18.png)
占满四个分区后只能划分逻辑分区,系统自动默认划分逻辑分区。
逻辑分区,格式化挂载(创造文件系统)
挂载方式同上,但注意扩展分区不可挂载。
取消磁盘挂载 umount /dev/sdb3 (相当于U盘拔出,数据没有消失)
重新挂载后在磁盘 /dev/sdb3 中的数据没有丢失。
交换分区(swap)
“提升”内存容量,
设置大小,设置交换分区大小一般为内存的2倍。
查看swap (free -m)
划分swap分区
准备磁盘时,分区同上,划分主分区。
格式化分区 mkswap /dev/sdc1
挂载分区 swapon /dev/sdc1
取消交换分区挂载 swapoff /dev/sdc2
关于分区挂载的注意事项
1.当挂载文件中本身有文件时,挂在后,是看不见文件的,此时的挂载文件只链接到挂载磁盘的目录。(相当于一个入口)
2.重新挂载后在磁盘 /dev/sdb3 中的数据没有丢失。
总结:目录文件挂载后是入口,取消挂载后就是目录,里面所有文件都不会消失
逻辑卷lvm
一种磁盘管理方式,性质与上述无异。但是可以随意扩张大小。
差异
创建LVM
1.pv:将物理磁盘转化为物理卷
[root@localhost toy]# pvcreate /dev/sdd
Physical volume "/dev/sdd" successfully created.
2.vg:创建卷组
[root@localhost toy]# vgcreate vg1 /dev/sdd
Volume group "vg1" successfully created
3.lv:创建lv卷
lvcreate -L 200M -n lv1 vg1
创建逻辑卷 大小 名字 组名
4.创造文件系统并挂载。
[root@localhost toy]# mkfs.ext4 /dev/vg1/lv1
[root@localhost toy]# mkdir /mnt/lv1
[root@localhost toy]# mount /dev/vg1/lv1 /mnt/lv1
VG管理
扩大VG:vgextend 由5G扩大到7G
a.创建pv,使用第二步将pv增加到vg中
b.扩展vg
[root@localhost toy]# pvcreate /dev/sdd1
[root@localhost toy]# vgextend vg1 /dev/sdd1
LV扩容
扩大LV:lvextend
a.查看vg空间,看是否有空余。
b.扩展LV
c.刷新文件大小。
[root@localhost toy]# vgs
[root@localhost toy]# lvextend -L +2G /dev/vg1/lv1
[root@localhost toy]# resize2fs /dev/vg1/lv1
演示截图
![](https://img-blog.csdnimg.cn/3729a53c1fd245518143be1e5c4cddbc.png)
![](https://img-blog.csdnimg.cn/7ab3a84c325f47178c8686ff72746643.png)
![](https://img-blog.csdnimg.cn/90929eed9cd84da085afcc1e8f5f6fb4.png)
![](https://img-blog.csdnimg.cn/7448267808c649e18aa1c34d1cbdf894.png)
![](https://img-blog.csdnimg.cn/8c7d533843874c8bbacd4e25bcb39ff6.png)
![](https://img-blog.csdnimg.cn/c82418095def4c04934d7589969b0bc1.png)
![](https://img-blog.csdnimg.cn/3c9ebd3443b5459e82210551a2c5e782.png)
![](https://img-blog.csdnimg.cn/1c382981c9924c78b45b402e374979d2.png)
文件系统(EXT4)详解
文件系统
windows: FAT3 NTFS
linux: EXT3 EXT4
类型:索引(index)文件系统
系统限制:ext3:文件系统最大16TB
ext4:文件系统最大16TB
xfs:文件系统最大100TB
名称:inode:记录文件属性(文件的元数据metadata)一个文件占用一个inode,同时记录此文件所需的block数。,inode大小为128bytes。
block:储存文件的实际数据,若文件较大,会占用多个block,block大小默认为4k。
superblock:a.block与inode的总量,b.未使用与已使用的inode/block的数量。
![](https://img-blog.csdnimg.cn/df5e15e3e51047f7b5b6860f6e783aed.png)
![](https://img-blog.csdnimg.cn/64da6bbd3e704cd1a6cab84ec1b36231.png)
实验
一
1.观察某个分区的inode节点数,df -i
2.创建一个文件 , touch file{1..18971}
3.观察inode的变化。
4.但可以在文件中写数据。
5.注意此时磁盘空间显示是有剩余空间的。
二
1.向目标分区写入大量数据,填满。
dd if =/dev/zero of=/mnt/disk5/file1 bs=1k count=1000
根据以上两个实验证明,磁盘空间的限制根据inode和block两方面决定
文件链接
ln -s(表示软连接,没有则为硬链接) 源文件 链接文件地址
符号链接
1.lrwxrwxrwx :l 代表 软链接,
2../Desktop/3.txt -> /3.txt :箭头指向源文件。
软链接,文件目录都可且可以在不同磁盘,但是源文件删除链接文件不可以访问,数据会丢失。
硬链接
1.创建同分区硬链接成功,创建不同分区硬链接失败。
硬链接,文件可以目录不可以且不可以在不同磁盘,但是源文件删除链接文件还可以访问,数据不会丢失。
RAID
廉价磁盘亢余(rongyu)阵列,保证数据的安全性,以及提高读写速率。
类型
RAID0
RAID0条带集2块磁盘以上读写速率100%*n,但不容错。
RAID1
RAID镜像集2块磁盘,容量50%容错。
RAID5(木桶效应)
数据盘+校验盘+热备盘(前两块坏了,自动补上)最少3块盘
RAID5带奇偶校验带集3块磁盘以上利用率(n-1)/n
不同场景使用RAID
1.硬RAID:需要RAID卡,有自己的cpu,处理速度快,有电池和无电池。
2.软RAID:通过操作系统实现,比如windows,linux
软RAID示例
1.准备磁盘
2.创建RAID
mdadm -C /dev/md0 -l5 -n3 -x1 . dev.sd{d,e,g}
创建RAID 第一个RAID设备 RAID5(小写L) RAID成员数量 热备盘数量 磁盘地址
创建文件系统
挂载
查看版本信息
[root@localhost toy]# mdadm -D /dev/md0
/dev/md0:
Version : 1.2
Creation Time : Mon Oct 30 16:18:55 2023
Raid Level : raid5
Array Size : 2093056 (2044.00 MiB 2143.29 MB)
Used Dev Size : 1046528 (1022.00 MiB 1071.64 MB)
Raid Devices : 3
Total Devices : 4
Persistence : Superblock is persistentUpdate Time : Mon Oct 30 16:20:48 2023
State : clean
Active Devices : 3 //活跃
Working Devices : 4 //工作中
Failed Devices : 0 //损坏数量
Spare Devices : 1 //热备Layout : left-symmetric
Chunk Size : 512K //校验码大小Consistency Policy : resync
Name : localhost.localdomain:0 (local to host localhost.localdomain)
UUID : 8c306c65:74ba118f:11a9a934:5c3c0c97
Events : 18Number Major Minor RaidDevice State
0 8 16 0 active sync /dev/sdb //同步
1 8 48 1 active sync /dev/sdd //同步
4 8 64 2 active sync /dev/sde //同步3 8 80 - spare /dev/sdf
模拟硬盘损坏,热备盘补上
spare rebuilding 恢复备份。