dd if=/dev/zero of=/mnt/disk4/1.txt bs=1M count=1000
whtch -0.5 'df -hT'
物理磁盘的空间是限定的,不便于管理(拷贝,删除,授权),单靠物理磁盘,是解决不了空间增长的问题,所以就要进行扩容。
三、逻辑卷LVM
目的:管理磁盘的一种方式,性质与基本磁盘无异
特点:随意扩张大小
术语:
PV:物理卷(Physical volume)
VG:卷组(Volume Group)
LV:逻辑卷(Logical Volume)
1.创建LVM
准备物理磁盘 ll /dev/sd*
1.1PV
pvcreate /dev/sdc 创建物理卷
1.2.VG
vgcreate vg1 /dev/sdc 创建卷组
1.3LV
lvcreate -L 4G -n lv2 vg1
指定大小,单位M,G,创建逻辑卷 -L大小,-n卷名 vg1组名
1.4创建文件系统并挂载
mkfs.ext4 /dev/vg1/lv1 创建文件系统
mkdir /mnt/lv1 创建挂载点
mount /dev/vg1/lv1 /mnt/lv1 挂载
2.VG管理
扩大VG vgextend
环境:/dev/vg1 容量由4G 扩容到6G
步骤一:创建PV,耳后试用第二部,将PV增加到VG中
pvcreate /dev/sdd
步骤二:扩展VG,同时包含方法一
vgextend vg1 /dev/sdd
vgs 查看vg
3.LV扩容
扩大LV lvextend
3.1LV扩容
1.查看VG空间
vgs
观察VG是否有剩余空间
2.扩容LV
lvextend -L +4G /dev/vg1/lv2 增加200M空间,给lv2
3.2FS扩容
先观察文件系统当前容量
df -hT
resize2fs /dev/vg1/lv2
再次观察df -hT的分区大小,和上一次的对比一下,大小已经发生改变
对比结果,文件系统大小已然发生改变
四、文件系统详解
问题1:文件是如何准确放到磁盘某个位置的?
问题2:文件是如何在磁盘(渺茫的空间)快速定位读取的?
答案:文件系统
EXT4文件系统
1.类型:索引文件系统
2.系统限制
Ext3:文件系统最大16TB
Ext4:文件系统最大16TB
XFS:文件系统最大100TB
3.名词
inode
- 记录文件的属性(文件的元数据,元数据:文件的属性,大小,权限,属组,属主,连接数,块数量,块编号)
- 一个文件占用一个inode,同时记录此文件数据所在的block number
- inode大小为128bytes
- ll -i 文件名 创造一个文件,观察inode信息
block
- 存储文件的实际数据
- 实际存储文件的内容,若文件较大,会占用多个block
- block大小为默认4k
问题一:分区中,文件的数量和什么有关系?
1.df -i 观察某个分区中的inode节点数
2.创建一个文件 touch
3.再次观察inode节点数
4.创造大量文件,观察inode节点使用情况 touch file{1..3000}
5.在另一个shell里,观察inode变化情况 watch -n 2 ‘df -i’
6.最后还能否创建新文件呢?不能,inode决定了文件系统中文件的数量
7.能否向已存在的文件中写入内容呢?可以的,block决定了文件存储的空间
问题二:当分区空间大小消耗完毕,还能否新增文件?
1.向目标分区写入大量数据,填满dd if=/dev/zero of=/disk1/5.txt bs=1k count=1000
2.查看目标分区容量,已满 df -hT
3.创造新文件touch
4.得出结论,磁盘空间的限制根据inode和block两方面请清理掉填满的分区。避免不必要的报错。
superblock
- block与inode的总量
- 未使用与已使用的inode/block数量
五、文件链接
1.符号链接
符号链接也叫软链接
ln -s /file1 /home/file1 创建软链接
源文件和软链接文件,开头的l表示他为软链接
总结
- 软链接像快捷方式,可以对文件和目录做软链接
- 软链接记录的只是源文件的绝对路径
- 软链接失去源文件不可用
2.硬链接
ln /file1 /home/file1 创建硬链接
总结
- 硬链接只能针对文件做,不能对目录做
- 硬链接稚嫩恶搞在同分区做
六、RAID(这里只是软raid)
1.简介
RAID:廉价磁盘冗余阵列
作用:容错,提升读写速率
2.类型:
- RIAD0:至少两块硬盘,读写速度快,但不容错
- RAID1:RAID1镜像集至少两块磁盘,容量50%,读写速度一般,有容错
- RAID5:至少三块硬盘,两块数据盘,一块校验盘,如果多几块为热备盘,任意一块硬盘坏掉的话,热备盘将自动成为坏掉的那个盘,如果坏两块就不行了
3.不同场景RAID的使用
硬RAID:需要RAID卡,有自己的CPU,处理速度快,有电池和无电池
软RAID:通过操作系统实现,比如Windows,Liunx
4.创建RAID
mdadm -C /dev/md0 -l5 -n3 -x1 /dev/sd{d,e,f,g}
-C创建RAID /dev/md0 第一个RAID设备 -l5 RAID5 -n RAID成员数量 -x热备磁盘的数量
软RAID实例
1.准备硬盘
2.创建RAID
mdadm -C /dev/md0 -l5 -n3 -x1 /dev/sd{d,e,f,g}
3.格式化,挂载
4.查看RAID信息
mdadm -D /dev/md0
5.模拟一块硬盘损坏并移除