文件系统介绍

本文详细介绍了Linux文件系统的结构,包括根目录、主要目录的用途和文件类型。Linux采用单根倒置树结构,文件名区分大小写,支持隐藏文件。文件类型包括普通文件、目录、块设备、字符设备等。此外,文章还讨论了文件名规则和绝对路径与相对路径的区别。虚拟文件系统(VFS)作为各种文件系统间的抽象层,简化了应用程序的开发,提供统一的接口进行读写操作。
摘要由CSDN通过智能技术生成

一、文件系统

1、什么是文件系统
常规认知: 根目录
文件系统是操作系统用于明确存储设备组织文件的方法。
以上说的方法:就是文件管理系统(程序),简称文件系统
2、查看文件系统类型
a、Linux下

df -T

在这里插入图片描述
b、window下查看文件系统类型
在这里插入图片描述

  1. 什么是分区?
    a、
    windows: 随意(面向普通用户PC),目录即分区
    C(装系统的位置)也可以随意在C盘存放文件. D盘(用户随意发挥)

    b、
    Linux: 按照功能来分区,每个分区严格存放文件(开发者)
    嵌入式系统可以分为4个区,分别是:
    bootloader: 启动代码
    para: 启动代码向内核传递参数的位置
    kernel: 内核分区
    根分区等 文件系统结构

二、Linux文件系统与目录结构

以下参考博文:https://www.cnblogs.com/ddz-linux/p/10458383.html

在Linux系统中,目录被组织成一个:单根倒置树结构,文件系统从根目录开始,用**/**来表示。文件名称区分大小写( 大小写敏感还需要看具体的文件系统格式 ),以.开头的为隐藏文件,路径用/来进行分割(windows中使用\来分割),文件有两个种类:元数据与数据本身.在操作linux系统时,通常会遵循以下的分层结构规则:

LSB (Linux Standard Base) / FHS(Filesystem Hierarchy Standard)

1.文件系统结构

/:根目录,位于Linux文件系统目录结构的顶层,一般根目录下只存放目录,不要存放文件,/etc、/bin、/dev、/lib、/sbin应该和根目录放置在一个分区中。

/bin : 提供用户使用的基本命令, 存放二进制命令,不允许关联到独立分区,OS启动会用到里面的程序。

/boot:用于存放引导文件,内核文件,引导加载器.

/sbin:管理类的基本命令,不能关联到独立分区,OS启动时会用到的程序(重要的命令通常处于bin,不重要的则安装在sbin)。

/lib:存放系统在启动时依赖的基本共享库文件以及内核模块文件. 系统使用的函数库的目录 也存放了大量的脚本库文件 ,程序在执行过程中,需要调用时会用到

/lib64:存放64位系统上的辅助共享库文件.

/etc: 系统配置文件存放的目录,该目录存放系统的大部分配置文件和子目录,不建议在此目录下存放可执行文件 。

/home:普通用户主目录,当新建账户时,都会分配在此,建议单独分区,并分配额外空间用于存储数据。

/root: 系统管理员root的宿主目录,系统第一个启动的分区为/,所以最好将/root和/放置在一个分区下。

/media:便携式移动设备挂载点目录.

/mnt:临时文件系统挂载点.

/dev: 设备(device)文件目录,存放linux系统下的设备文件,访问该目录下某个文件,相当于访问某个设备,存放连接到计算机上的设备(终端、磁盘驱动器、光驱及网卡等)的对应文件 (b 随机访问,c 线性访问)

/opt:第三方应用程序的安装位置.

/srv: 服务启动之后需要访问的数据目录,存放系统上运行的服务用到的数据,如www服务需要访问的网页数据存放在/srv/www内。

/tmp:存储临时文件, 任何人都可以访问,重要数据一定不要放在此目录下。

/usr: 应用程序存放目录,/usr/bin 存放保证系统拥有完整功能而提供的应用程序, /usr/share 存放共享数据,/usr/lib 存放不能直接运行的,却是许多程序运行所必需的一些函数库文件,_/usr/local 存放软件升级包,第三方应用程序的安装位置,/usr/share/doc _系统说明文件存放目录。

/var :放置系统中经常要发生变化的文件,如日志文件。/var/log 日志目录及文件./var/tmp:保存系统两次重启之间产生的临时数据.

/proc: 用于输出内核与进程信息相关的虚拟文件系统,目录中的数据都在内存中,如系统核心,外部设备,网络状态,由于数据都存放于内存中,所以不占用磁盘空间

**/sys **: 用于输出当前系统上硬件设备相关的虚拟文件系统.

/selinux:存放selinux相关的信息安全策略等信息.

2.Linux下的文件类型

在这里插入图片描述
文件类型

在Linux中,使用命令查看文件,首字母会标记该文件的文件类型,一般有以下几种类型:

– : 普通文件
d: 目录文件
b:块文件
c:字符文件
l:符号链接文件
p:管道文件pipe
s:套字节文件socket

3.文件名规则

文件名最长为255字节(字节,不是字符)。包括路径在内的文件名称最长为4095字节。

文件颜色显示不同,代表了不同的文件格式。(以下为默认格式,可以自定义)

蓝色 -> 文件夹。

绿色 -> 可执行文件

红色 -> 压缩文件

浅蓝色 -> 链接文件

灰色 ->其他文件

在Linux中,除了斜杠和NUL字符,都是合法的。不推荐使用特殊符号来命名文件或者目录,容易引发混淆.比如空格, -,非要创建就用””引用起来,但如果遇到用特殊字符命名的特殊文件,在该文件上加上:文件路径后即可进行查看,创建,删除。

… 表示父目录 .表示当前目录

4.绝对路径与相对路径

绝对路径 :以正斜杠开始,表示该文件从根目录开始的完整位置路径,必须以根开始。

相对路径 :不以斜杠开始,指该文件相对于该目录的路径或某个目录的路径,不以根开始。可以作为一个简短的形式来指定一个文件名。

两个常用的小命令:

basename : 取文件本身的名称 不带目录

dirname : 取文件目录 ,不带文件名

三、虚拟文件系统Virtual File System

1、什么虚拟文件系统Virtual File System ?

		vfs就是对各种文件系统的一个抽象,它为各种文件系统提供了一个通用的接口,

2、 虚拟文件系统有什么作用?

	简化应用程序员的开发
		不管是什么文件类型,不管文件是磁盘还是设备,都只用open read write统一操作

在这里插入图片描述
Linux内核结构框图:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

秃秃秃秃哇

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值