文件系统目录结构(Linux)
文件系统目录
- 概述
- 一、文件系统结构
- 1. 什么是文件系统目录结构?
- 2.具体有:
- 二、文件类型
- 三、 文件系统(文件管理系统的方法)的种类有哪些?
- 四、 什么是分区?
- 五、虚拟文件系统Virtual File System (VFS)
- 1.什么是虚拟文件系统?
- 2.虚拟文件系统有什么作用?
- 补充
- 1.文件名规则
- 2.绝对路径与相对路径
概述
在Linux系统中,目录被组织成一个:单根倒置树结构,文件系统从根目录
开始,用/
来表示。文件名称区分大小写
( 大小写敏感还需要看具体的文件系统格式 ),以 .
开头的为隐藏文件,路径用/来进行分割(windows中使用\来分割),文件有两个种类:元数据
与数据本身
.在操作linux系统时,通常会遵循以下的分层结构规则:
LSB (Linux Standard Base) / FHS(Filesystem Hierarchy Standard) // Linux标准库/文件系统层次标准
一、文件系统结构
1. 什么是文件系统目录结构?
常规认知: 根目录,不是分区,和windows不同
2.具体有:
/ 根目录,所有linux操作系统的顶点目录,不像windows,每个分区都有一个顶点目录,一般根目录下只存放目录,不要存放文件。
/boot 存放系统启动时相关的文件,比如kernel内核,grub引导菜单.(不要删除.)
/bin 存放的都是命令,但仅普通用户能执行
/sbin 超级管理员能执行的命令.
/home 存放普通用户的家目录
/root 超级管理员的家目录,普通用户是无法进入
/etc 存放配置文件的目录,
/etc/hostname 主机名
/etc/hosts 本地解析域名一种方式
/etc/sysconfig/network-script/ifcfg-* 网卡的配置文件
/dev 设备目录,硬盘\硬盘的分区\光盘.....
/dev/null 黑洞,接收所有的东西,只进不出
/dev/zero 摇钱树,可以生产源源不断的数据
/dev/random 产生随机数的一个设备
/dev/pts/0 虚拟的Bash Shell终端,提供给远程用户使用 0,代表一个终端 1代表2个终端 以此类推
/usr 类似于windows的C盘下面的windows目录
/usr/bin 存放保证系统拥有完整功能而提供的应用程序,
/usr/share 存放共享数据
/usr/lib 存放不能直接运行的,却是许多程序运行所必需的一些函数库文件
/usr/local 存放软件升级包,第三方应用程序的安装位置
/usr/share/doc _系统说明文件存放目录。
/usr/lib 共享库文件,后缀都是so结尾, share object
/usr/lib64 共享库文件64位,后缀都是so结尾, share object
/usr/local 早起大家都把软件放在这个目录下,和windows C:\ProgramFile
/var 存放一些可变化的内容,比如/var/log日志,可以人为让其发生变化,也或者是随着时间推移产生变化
/tmp 存放临时文件,无论哪个用户都可以放
/proc 反馈当前运行的进程的状态信息.
/run 存放程序运行后所产生的pid文件
/media 便携式移动设备挂载点目录
/mnt 提供挂载的一个目录
/opt 早期第三方厂商的软件存放的目录.
/srv 物理设备产生的一些文件在 Linux 系统中,有几个目录是比较重要的,平时需要注意不要误删除或者随意更改内部文件。
/etc: 这个是系统中的配置文件,如果你更改了该目录下的某个文件可能会导致系统不能启动。
/bin, /sbin, /usr/bin, /usr/sbin: 这是系统预设的执行文件的放置目录,比如 ls 就是在/bin/ls 目录下的。值得提出的是,/bin, /usr/bin 是给系统用户使用的指令(除root外的通用户),而/sbin, /usr/sbin 则是给root使用的指令。
/var: 这是一个非常重要的目录,系统上跑了很多程序,那么每个程序都会有相应的日志产生,而这些日志就被记录到这个目录下,具体在/var/log 目录下,另外mail的预设放置也是在这里。
/proc: 用于输出内核与进程信息相关的虚拟文件系统,目录中的数据都在内存中,如系统核心,外部设备,网络状态,由于数据都存放于内存中,所以不占用磁盘空间
/sys: 用于输出当前系统上硬件设备相关的虚拟文件系统
/selinux:存放selinux相关的信息安全策略等信息.
二、文件类型
在Linux中,使用命令查看文件,首字母会标记该文件的文件类型,一般有以下几种类型:
- – : 普通文件
- d: 目录文件
- b:块文件
- c:字符文件
- l:符号链接文件
- p:管道文件pipe
- s:套字节文件socket
三、 文件系统(文件管理系统的方法)的种类有哪些?
FAT VFAT NTFS EXT1/2/3/4 HFS ....树莓派查看文件系统的命令: df -Tvfat : boot(bootloader, kernel)ext4 : 根目录tmpfs : 内存文件系统
四、 什么是分区?
windows: 随意(面向普通用户PC),目录即分区C(装系统的位置)也可以随意在C盘存放文件. D盘(用户随意发挥)Linux: 按照功能来分区,每个分区严格存放文件(开发者) 嵌入式系统可以分为4个区,分别是bootloader、 启动代码para、 启动代码向内核传递参数的位置kernel、 内核分区根分区等 文件系统结构
五、虚拟文件系统Virtual File System (VFS)
1.什么是虚拟文件系统?
vfs就是对各种文件系统的一个抽象,它为各种文件系统提供了一个通用的接口
2.虚拟文件系统有什么作用?
例如:调用 读、写 函数,本来不同分区,要调用的函数是不一样的,这样会使程序在不同区复杂化,而虚拟文件系统解决这个困扰,————简化应用程序员的开发不管是什么文件类型,不管文件是磁盘还是设备,都只用open read write统一操作
补充
1.文件名规则
文件名最长为255字节(字节,不是字符)。包括路径在内的文件名称最长为4095字节。
文件颜色显示不同,代表了不同的文件格式。(以下为默认格式,可以自定义)
蓝色 -> 文件夹。
绿色 -> 可执行文件
红色 -> 压缩文件
浅蓝色 -> 链接文件
灰色 ->其他文件
在Linux中,除了斜杠和NUL字符,都是合法的。不推荐使用特殊符号来命名文件或者目录,容易引发混淆。比如空格, -,非要创建就用” ”引用起来,但如果遇到用特殊字符命名的特殊文件,在该文件上加上:文件路径后即可进行查看,创建,删除。
… 表示父目录
. 表示当前目录
2.绝对路径与相对路径
绝对路径 :以正斜杠开始,表示该文件从根目录开始的完整位置路径,必须以根开始。
相对路径 :不以斜杠开始,指该文件相对于该目录的路径或某个目录的路径,不以根开始。可以作为一个简短的形式来指定一个文件名。
两个常用的小命令:
- basename : 取文件本身的名称 不带目录
- dirname : 取文件目录 ,不带文件名
本文中补充的内容来自:
链接 作者: DreamDZhu
文件系统目录结构(Linux)相关推荐
- linux 源码目录结构 文件系统目录结构
学习Linux也有一段时间了,具体来整理一下Linux源码的目录结构和文件系统的目录结构,以便加深记忆. 一.Linux源码的目录结构 首先上一张截图,如下所示: 再看各个文件的介绍,借用一下其他资源 ...
- 文件系统(文件系统目录结构、磁盘分区、虚拟文件系统)、linux内核结构框图
什么是文件系统? 常规认知就是根目录下那些文件,但其实并不是那样.文件系统是操作系统用于明确存储设备(常见的是磁盘,也有基于NAND Flash的固态硬盘)或分区上的文件的方法和数据结构:即在存储设备 ...
- Linux下文件系统目录结构
Linux 文件系统目录结构简介 对于Linux来讲它的树型结构与Windows不同,Windows可以有多个分区,每个分区都有根,但Linux 只有一个根,其他的所有文件.目录或硬盘分区.软盘.光盘 ...
- linux根文件系统目录结构
一.介绍 linux根文件系统也就是我们平时所说的rootfs,所有的文件都要在文件系统下才能被识别,包括所有的配置文件,这里介绍一下根文件系统目录结构 二.总统结构 /bin:linux的常用命令 ...
- Linux源码目录结构和Linux文件系统目录结构
学习Linux也有一段时间了,具体来整理一下Linux源码的目录结构和文件系统的目录结构,以便加深记忆. 一.Linux源码的目录结构 首先上一张截图,如下所示: 再看各个文件的介绍,借用一下其他资源 ...
- 【Linux】第三部分 Linux文件系统目录结构
[Linux]第三部分 Linux文件系统目录结构 文章目录 [Linux]第三部分 Linux文件系统目录结构 3. Linux文件系统目录结构 总结 3. Linux文件系统目录结构 可以右键打开 ...
- android根文件系统目录结构
1.Android系统分区 2.根文件系统目录结构 cache :是缓存临时文件夹, etc :指向 /system/etc ,众所周知的配置文件存放目录 system :是Android根文件系统中 ...
- Android 10 根文件系统和编译系统(一):根文件系统目录结构
配套系列教学视频链接: Android 10.0 AOSP源码编译:https://edu.csdn.net/course/detail/35479 Android 10.0 根文件系统和编译系统:h ...
- Linux文件系统目录结构详解
引言 对于每一个Linux学习者来说,了解Linux文件系统的目录结构,是学好Linux的至关重要的一步.,深入了解linux文件目录结构的标准和每个目录的详细功能,对于我们用好linux系统只管重要 ...
最新文章
- SRCNN-图像超分辨的学习
- python configparser 参数 用法
- ML.NET 1.1 发布,模型构建器升级和新的异常检测算法
- python编辑器vim下载_vim做python编辑器
- OpenCV学习笔记(3)——Scalar数据类型理解
- Web安全系列(二):XSS 攻击进阶(初探 XSS Payload)
- 微信朋友圈+html+字体,一键修改微信朋友圈字体,快来试试吧
- 连接真机开发安卓(Android)移动app MUI框架 添加购物车等——混合式开发(四)
- JAVA基本数据类型所占字节数是多少?
- 代码管理工具TortoiseGit配置(GIT的客户端)
- python经典数据类型
- [转]用 ASP.NET 2.0 改进的 ViewState 加快网站速度
- Python学习-第3课(函数作用域、列表集合字典元祖)
- wireshark解密本地https流量笔记
- 开源项目学习之(二)------iBase4J环境搭建
- 【PyQt】PyQt4使用qt-designer进行设计
- CR渲染器全景图如何渲染颜色通道_CR渲染如何设置渲染AO图和材质通道?
- Xcode生成IPA包
- 计算机网络期末复习提纲,湖南科技大学《计算机网络微课堂》课题笔记
- java递归计算N!
热门文章
- 网易2017实习生笔试6
- 兽语八级—使用机器学习解读鸡的“语言”
- 详解函数中的 arguments
- vs2017安装mvc框架_2017年PHP MVC框架的现状
- 【Python语言基础】——Python 删除文件
- C++之std::atmoic、std::pair、enum class
- java ssm 基于springboot的志愿者招募网站
- 通过mac地址查找PC位于那个接入层交换机上
- 【晶振专题】案例:为什么对着STM32低速32.768K晶振哈口气就不起振了?
- 新的开始,全力以赴!