linux系统下高级存储管理
- 文件系统详解
ext4: ext4是第四代扩展文件系统(Fourth extended filesystem)
类型: 索引文件系统
文件系统: 分区格式化方式,包括ext3,ext4,xfs等。
系统限制: ext3–文件系统最大16TB,ext4–文件系统最大16TB,xfs–文件系统最大100TB
图示:
名词:
inode: 记录文件的元数据(文件的属性,大小,权限等),一个文件占用一个inode,同时记录文件数据所在的block number,inode大小为128bytes。
block: 存储文件的实际数据,文件过大,数据过多时,一个文件会占用多个block,block大小默认为4K。
superblock: 处在每个block group的第一个位置,记录着block和inode的总量,inode和block的已使用及未使用量。
block group: 多个inode和block的集合
示例:
1,查看一个文件的inode:
ls -l -i
2,查看一个分区的节点数:
df -i
3,观察inode的变化
4,测试:如果inode用完,分区内是否还能创建文件
由此得出结论,一个磁盘的文件个数由inode决定,文件大小由存储空间决定
- 文件链接
1,软链接/符号链接:
软链接就像windows的快捷方式,软链接内记录的只是源文件的绝对路径,所以失去源文件,链接文件不可用
示例:
2,硬链接:
硬链接更像复制一份文件到当前分区,硬链接不能跨分区创建,同时链接文件不依赖源文件
示例:
- 磁盘冗余阵列–RAID
作用: 容错,提升磁盘的读写速度。
类型:
1,RAID0:RAID0条带集要两块磁盘以上,一条数据分段分别存储在每个磁盘上,读写速率提升(100%N),但是不容错。
2,RAID1:RAID1镜像集,磁盘个数为双数,一条数据会被复制成双份,每份各存在不同磁盘上,容量被减半,读写速率一般,但是容错。
3,RAID5:RAID5带奇偶校验条带集,三块磁盘以上,利用率(n-1)/n,读写速率快,容错,一条数据被分成n-1份,每份各储存在一个磁盘上,剩下一个磁盘用来存储校验和
不同场景RAID的使用:
1,硬RAID: 需要RAID卡,有自己的CPU,处理速度快,有电池和无电池。
2,软RAID: 通过操作系统实现,比如Windows、Linux