原创投稿 | Linux操作系统下的文件系统

乐乐快跑,马哥门徒,马哥教育原创作者联盟成员,专注于运维领域知识分享,强于知识体系构建。

操作系统我们粗略的可以分为两层即内核层和shell层,内核层下面是硬件。shell是一个人机交谈的窗口,内核是负责对硬件底层的东西进行抽象,以及对上层shell提供服务。这个逻辑看起来挺完美无瑕的,但是计算机这个东西就是这么奇葩,你要是在深入点儿琢磨他,你就会发现很多想不到的问题,这里我们稍微深入点儿, Linux下一切皆文件想必大家都是耳熟能详,那么Linux操作系统是怎么管理这些文件的呢?这些文件是怎么分类的呢? 操作系统的逻辑结构已经被科学家规划的很完美了。人发明计算机是为人服务的,为了使人机交

互更完美,又不影响计算机的逻辑结构,于是科学家们给计算机加入了一个小的系统,就是文件系统。文件系统的作用就是管理计算机的所有文件,这样操作系统通过文件系统就可以管理所有文件了。既然这样我们就有必要对文件系统做个详细的了解,特别是Linux的文件系统。

文件系统的作用我在重申一遍他是管理计算机的文件,这个大家一定要记住,文件系统分很多种,这里我简单的说三种分类,单机式文件系统,共享式文件系统,分布式文件系统。这三种分类是我们今后的学习都会接触

到的,今天我们只说单机式文件系统。什么是单机式。文件系统,简单理解就是只能给一个操作系统使用的文件系统就是单机式文件系统。Linux下主要有ext4 xfs.之前那些过时的ext3了,我们就不必去深究了,学技术一定要跟得上时代。文件系统的特点我也不多说,下面我用一幅图说明下他是怎么跟操作系统连接在一起的

从图上我们可以看到ext4文件系统是一个树状的结构,树根(/)挂载在操作系统上,这个就是操作系统管理文件的入口。文件系统下面有很多文件夹。我们一起来了解下这些文件夹各装些什么文件,有什么作用。(注意有些没有在图上显示出来,不代表没有)

/boot 这里存放的是启动Linux时使用的一些核心文件。

/dev dev是device(设备)的缩写。这个目录下是所有Linux的外部设备

/etc 这个目录用来存放系统管理所需要的配置文件和子目录。

/home 用户的主目录,比如说有个用户叫wang,那他的主目录就是/home/lele也可以用~lele表示。

/lib 这个目录里存放着系统最基本的动态链接共享库

/lost+found 这个目录平时是空的,当系统不正常关机后,这里就成了一些无家可归的文件的避难所

/mnt 这个目录是空的,系统提供这个目录是让用户临时挂载别的文件系统

/proc 这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。也就是说,这个目录的内容不在硬盘上而是在内存里

/root 系统管理员(也叫超级用户)的主目录

/sbin s就是Super User的意思,也就是说这里存放的是系统管理员使用的管理程序

/tmp 这个目录不用说,一定是用来存放一些临时文件的地方了

/var 这个目录中存放着那些不断在扩充着的东西,为了保持/usr的相对稳定,那些经常被修改的目录可以放在这个目录下,实际上许多系统管理员都是这样干的。顺带说一下系统的日志文件就在/var/log目录中

/usr 这是最庞大的目录,我们要用到的应用程序和文件几乎都存放在这个目录下

生产中我们知道这些目录的作用对我们掌握Linux有很大帮助,大家不要觉得很简单无所谓了,我一直在寻找最快的学习方法,想最大化的发挥自己的脑细胞,后来发觉什么事儿都不可能“无水之源”,你要做什么事儿就要有做这个事情的基础知识。当你有这些基础知识才能发挥自己的脑细胞来进一步的深究问题!

这里我在说下XFS文件系统,XFS文件系统是redhat7.0开始的使用的文件系统,其结构上与ext4大致一样,都是单机文件系统,其性能上比ext4要强大多了,这里我们稍微了解下就好了,别太深入,以后有机会在给大家说下。

原文发布于微信公众号 - 马哥Linux运维(magedu-Linux)

原文发表时间:2017-05-06

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Java架构师历程

如何进行微服务的API测试

作为构建复杂系统的架构,微服务在开发社区中获得了巨大的吸引力。虽然人们开始明白它并不是解决所有应用程序架构问题的灵丹妙药,但是分享与依赖关系和扩展相关的挑战的应...

1.1K20
来自专栏杨建荣的学习笔记

用脚本来讲一个技术生活的故事 (r9笔记第32天)

对于生活,用文字表达是一种非常好的方式,作为技术人,我决定使用一个脚本来映射技术生活中的一些小故事,也是在今天突然想到的。 对的,你没有看错,就是下面这个命令。...

37730
来自专栏工科狗和生物喵

如何构建局域网极速云盘(速度神快)--局域网内共享文件详解

正文之前 因为我是两部电脑工作,一部Windows,一部Mac,windows自带系统天赋,很多东西子在windows下安装简直如同吃饭喝水一般简单,但是在Ma...

62260
来自专栏CDN及云技术分享

微型分布式架构设计范例

设计该系统初衷是基于描绘业务(或机器集群)存储模型,分析代理缓存服务器磁盘存储与回源率的关系。

1.1K280
来自专栏与神兽党一起成长

Webservice On Netty

Java的世界属于开源的世界,所谓开源的世界,只要你能想到的点子就一定有人实现了,没有你就自己造一个啊。

17820
来自专栏小程序

【云加小程序2018年4月】更新日志

23240
来自专栏JAVA高级架构

如何设计一个麻雀般的微型分布式架构?

设计该系统初衷是基于描绘业务(或机器集群)存储模型,分析代理缓存服务器磁盘存储与回源率的关系。系统意义是在腾讯云成本优化过程中,量化指导机房设备扩容。前半部分是...

13530
来自专栏杨建荣的学习笔记

大分区表的手工并行优化

这段时间饱受大分区表的性能之苦,碰到最大的一个分区表有1个t左右,操作起来每个细节都需要格外小心,我这次和大家分享的案例应用的分区表不是很大,有80G左右。但是...

30840
来自专栏程序员互动联盟

FFMPEG在嵌入式硬件上应用之——基本环境搭建及编译

这篇文章是以前工作的一些实际经验总结,这里给大家分享一下,顺便做了一下记录以备以后使用时参考,本文(记录)与目前网上很多关于ffmpeg的文章相比有两个特点: ...

36370
来自专栏程序员八阿哥

王老板Python面试(1):HTTP中GET与POST的区别?

GET和POST是HTTP请求的两种基本方法,要说它们的区别,接触过WEB开发的人都能说出一二。

12310

扫码关注云+社区

领取腾讯云代金券