磁盘及文件管理系统入门(二)

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介:

目录:

1
2
3
4
5
6
     1 .添加新分区
     2 .分区创建工具:parted、mkfs、e2fs
     3 .目录
     4 .swap交换文件系统
     5 .文件系统日志
     6 .文件的路径访问

Linux磁盘及文件系统管理初步(02)

一.添加新分区

1.fdisk /dev/sda //或者parted 

2.cat /proc/partitions //查看是否被内核识别分区

centos5:partprobe [device]

centos6,7: partx,kpartx

partx -a [device] //可能需要执行两次

kpartx -af [device]

使用parted 分区,不用w,直接保存,而且内核会自动识别

partx -a /dev/sda

3.mkfs

4.mount


二.分区创建工具;parted,mkfs,e2fs

格式化:低级格式化,高级格式化

低级格式化:主要用于划分磁道//分区之前进行,划分磁道

高级格式化:分区之后对分区进行,创建文件系统

元数据:存放文件的属性信息,size,mode,user,timestamp,不包含文件名

//文件名是在目录上存放的

元数据区://高级格式化之后的

文件元数据:inode(index node)

//大小,权限,属主属组,时间戳,...

//每个文件的元数据(inodde)都是一样的,只是,里面填充的内容是不一样的

文件的内容和元数据是分开存放的

//元数据内容是由固定格式的,而文件的内容是不一定的

高级格式化:

把磁盘分割成两个部分:

    1:元数据区 //存放文件的属性信息,大小,mode等,不包括文件名

        //每个文件的苑数据区的格式都是一样的,知识填充内容不一样

//这个格式的数据空间就叫做inode(index node)

//数据块指针

    2:数据区 //存放真实的数据

//按照块存储的,比如划分我4096Kb/块

//不定时的增加和删除文件,导致一个文件分配的磁盘块不连续,-->碎片

//块是最小分配单元,windows 4096字节/块

查找文件,只能够先找元数据

链接文件:存储数据块指针的空间当中存储的是真实文件的访问路径;

自己并不占据磁盘块,只占用元数据区

设备文件:存储数据块指针的空间当中存储的是设备号(major,minor)

磁盘快索引:bitmap index

标识某磁盘快是否为空闲状态

//按位对应,索引0和1区分,

//inode也有索引,

磁盘图:

|----|-----------------------------|

|----|    |

|----| block    |

|----|    |

|----|-----------------------------|

|    | block bitmap    |

|____|_____________________________|

左侧从上往下:inode (index node) // inode bitmap

ls -i //查看inode编号

super block:

三.目录

/var/log/messages

//先去找 根的inode,根的inode是自己发现的,根的inode指向文件的一个数据

//通过根找到根的子级目录和文件的 var和var的对应inode

//找到var对应的磁盘快,块中描述着,var的子级目录和文件,找到message文件名和对应的inode的对应关系

free  //每次都要查找的话,比较慢因此会建立缓存

buff/cache 中既有元数据也有数据

/var 中只存放自己的孩子目录和文件

Linux支持众多的文件系统

但是每个文件系统的接口是不一样的

VFS:virtual file system

中间层,负责协调下面不同的文件系统

Linux的文件系统:ext2,ext3,ext4,xfs,reiserfs容易找回来,btrfs

xfs:单文件没有上线

光盘:iso9660

网络文件系统:nfs,cifs

集群文件系统:gfs2,ocfs2,

内核级分布式文件系统:ceph

windows的文件系统:vfat,ntfs

伪文件系统:/proc,sysfs,tmpfs,hugepagefs

Unix:UFS,FFS,JFS

交换文件系统:swap  

用户空间的分布式文件系统:mogilefs,moosefs,glusterfs

四:交换文件系统

Linux的swap 

windows的虚拟内存

用硬盘的一部分空间,充当内存使用

内存不够用的时候:把最近不常使用的放到硬盘上//最近不常使用算法

再次使用的时候,把其他的拿出来,把自己放进内存

//内存和硬盘之间来回交换数据,交换分区

//真实和CPU交互的是内存,而不是交换内存

//现在的linux和windows都支持虚拟内存,每个程序都假设自己有4G可用

文件系统管理

创建fs工具

mkfs.ext2,mkfs,ext4,mkfs,vfat 等

检测并修复文件系统的工具

fsck,ext3,fsck,vfat等

查看其属性的工具

dumpe2fs,tune2fs

调整fs属性

tune2fs

五:日志 

有日志的fs

无日志的fs

    突发情况:例如断电,系统崩溃,导致文件损坏,有的没有写入到硬盘,有的写入了

    //为了解决这个问题:

内存-->日志区--->硬盘

    数据先放到日志去,存到硬盘后,删除日志区的记录,

除了ext2没有日志,其他基本都有

    1.需要预留空间做日志区,存储数据

    2.性能的损失,一个文件需要写两次

六.访问同一个文件的不同路径

硬链接:多个文件路径指向同一个inode;//对应的是inode

    //inode和原来的是相同的

特性:

    (1):目录不支持硬链接

    (2):硬链接不能跨文件系统

    (3):创建硬链接会增加inode引用计数

符号链接{软连接}://存放的是路径名

    指向一个文件路径的另一个文件路径

    //inode 和原来的是不一样的

        (1):符号链接与文件是两个各自独立的文件,各有自己的inode

     //创建符号链接,不会增加链接次数

(2):支持对目录创建符号链接,可以跨文件系统

        (3):删除符号链接文件不影响源文件,但删除原文件,符号指定的路径即不存在

ln aa bb //为aa创建硬链接bb

-rw-r--r-- .3  ///3是被硬链接的次数

ln -s src link_file

-v 显示创建过程

注意:符号链接文件的大小是其指定的文件的路径字符的字节数












本文转自MT_IT51CTO博客,原文链接:http://blog.51cto.com/hmtk520/1942904,如需转载请自行联系原作者

相关实践学习
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
相关文章
|
4天前
|
弹性计算 关系型数据库 微服务
基于 Docker 与 Kubernetes(K3s)的微服务:阿里云生产环境扩容实践
在微服务架构中,如何实现“稳定扩容”与“成本可控”是企业面临的核心挑战。本文结合 Python FastAPI 微服务实战,详解如何基于阿里云基础设施,利用 Docker 封装服务、K3s 实现容器编排,构建生产级微服务架构。内容涵盖容器构建、集群部署、自动扩缩容、可观测性等关键环节,适配阿里云资源特性与服务生态,助力企业打造低成本、高可靠、易扩展的微服务解决方案。
1106 0
|
3天前
|
机器学习/深度学习 人工智能 前端开发
通义DeepResearch全面开源!同步分享可落地的高阶Agent构建方法论
通义研究团队开源发布通义 DeepResearch —— 首个在性能上可与 OpenAI DeepResearch 相媲美、并在多项权威基准测试中取得领先表现的全开源 Web Agent。
529 10
|
13天前
|
人工智能 运维 安全
|
12天前
|
人工智能 测试技术 API
智能体(AI Agent)搭建全攻略:从概念到实践的终极指南
在人工智能浪潮中,智能体(AI Agent)正成为变革性技术。它们具备自主决策、环境感知、任务执行等能力,广泛应用于日常任务与商业流程。本文详解智能体概念、架构及七步搭建指南,助你打造专属智能体,迎接智能自动化新时代。
|
4天前
|
弹性计算 Kubernetes jenkins
如何在 ECS/EKS 集群中有效使用 Jenkins
本文探讨了如何将 Jenkins 与 AWS ECS 和 EKS 集群集成,以构建高效、灵活且具备自动扩缩容能力的 CI/CD 流水线,提升软件交付效率并优化资源成本。
301 0
|
11天前
|
人工智能 异构计算
敬请锁定《C位面对面》,洞察通用计算如何在AI时代持续赋能企业创新,助力业务发展!
敬请锁定《C位面对面》,洞察通用计算如何在AI时代持续赋能企业创新,助力业务发展!
|
12天前
|
机器学习/深度学习 人工智能 自然语言处理
B站开源IndexTTS2,用极致表现力颠覆听觉体验
在语音合成技术不断演进的背景下,早期版本的IndexTTS虽然在多场景应用中展现出良好的表现,但在情感表达的细腻度与时长控制的精准性方面仍存在提升空间。为了解决这些问题,并进一步推动零样本语音合成在实际场景中的落地能力,B站语音团队对模型架构与训练策略进行了深度优化,推出了全新一代语音合成模型——IndexTTS2 。
807 23
|
4天前
|
缓存 供应链 监控
VVIC seller_search 排行榜搜索接口深度分析及 Python 实现
VVIC搜款网seller_search接口提供服装批发市场的商品及商家排行榜数据,涵盖热销榜、销量排名、类目趋势等,支持多维度筛选与数据分析,助力选品决策、竞品分析与市场预测,为服装供应链提供有力数据支撑。
|
4天前
|
缓存 监控 API
Amazon item_review 商品评论接口深度分析及 Python 实现
亚马逊商品评论接口(item_review)可获取用户评分、评论内容及时间等数据,支持多维度筛选与分页调用,结合Python实现情感分析、关键词提取与可视化,助力竞品分析、产品优化与市场决策。