根文件系统的层级结构

文件系统的层级结构

FHS:Filesystem Hierarchy Standard(文件系统层次化标准)

目录

/ 根目录

/bin: 所有用户可用的基本命令程序文件;

/sbin:供系统管理使用的工具程序

/boot:引导加载器必须用到的各静态文件;例如:kernel   时常是一个单独的分区

/dev: 存储特殊文件或设备文件;

设备有两种类型:字符设备(线性设备),块设备(随机设备);

硬盘,分区,键盘,鼠标,USB,tty等所有的设备文件都放在这个目录。

/etc:系统程序的配置文件,系统的所有配置文件都存放在此目录中。

/home:普通用户家目录的集中位置;一般每个普通用户的家目录默认为此目录下与用户名同名的子目录,/home/USERNAME;

/root: 管理员的家目录:可选;

二进制文件必要的库文件

/lib: 为系统启动或根文件系统上的应用程序(/bin,/sbin等)提供共享库,以及为内核提供内核模块

/bin: 所有用户可用的基本命令程序文件;

/sbin:存放系统管理所需要的命令

libc.so.*  :动态链接C库

ld* : 执行时间链接器/加载程序

modules:用于存储内核模块的目录;

/lib64:64位系统特有的存放64位共享库的路径;

/media: U盘  CD-ROM等的挂载目录

/mnt: 临时挂载目录

/opt:可选应用软件包的安装位置,可选路径

/tmp:为那些会产生临时文件的程序提供的用于存储临时文件的目录;可供用户执行写入操作:有特殊权限:

/srv: 当前主机为服务提供的数据

/proc: 虚拟文件系统,将内核与进程状态归档为文本文件

/proc: 内核及进程存储其相关信息;它们多为内核参数,例如net.ipv4.ip_forward,虚拟为net/ipv4/ip_forward, 存储于/proc/sys/,因此其完整路径为/proc/sys/net/ipv4/ip_forware;

/sys: sysfs虚拟文件系统提供了一种比proc更为理想的访问内核数据的路径; 其主要作用在于为管理linux设备提供一种统一模型的接口;

/usr:全局共享的只都数据路径;

存放只能读的命令和其他文件。

所有的程序安装在这里,本地安装的程序和其他东西在/usr/local下

/usr/X11R6  X Window系统

/usr/bin  用户和管理员的标准命令

/usr/include   c/c++等各种开发语言环境的标准include文件

/usr/lib  应用程序及程序包的连接库

/usr/local/    系统管理员安装的应用程序目录

/usr/local/share 系统管理员安装的共享文件

/usr/sbin  用户和管理员的标准命令

/usr/share     存放使用手册等共享文件的目录

/usr/share/dict 存放词表的目录(选项)

/usr/share/man 系统使用手册

/usr/share/misc 一般数据

/usr/share/sgml SGML数据(选项)

/usr/share/xml XML数据(选项)

src:程序源码文件的存储位置

/usr/local:让系统管理员安装本地应用程序:也通常用于安装第三方程序:

/var: /var hierarchy , 存储常发生变化的数据的目录;

/var:

存放应用程序数据和日志记录的目录,例如,Apache Web服务器的文档一般就放在/var/www/html下。

/var/cache 应用程序缓存目录

/var/lib  各种状态数据

/var/lock 文件锁定纪录

/var/log 日志记录

/var/opt /opt目录的变量数据

/var/run 进程的标示数据

/var/spool 存放电子邮件,打印任务等的队列目录。

/var/tmp 临时文件目录

/var/mail 电子邮件

/var/spool/rwho

/var/account 处理账号日志(选项)

/var/crash 系统错误信息(选项)

/var/games 游戏数据

/var/yp NIS等黄页数据(选项)

/sys 文件系统下的目录结构

/sys 下的目录结构是经过精心设计的:在 /sys/devices 下是所有设备的真实对象,包括如视频卡和以太网卡等真实的设备,也包括 ACPI 等不那么显而易见的真实设备、还有 tty, bonding 等纯粹虚拟的设备;在其它目录如 class, bus 等中则在分类的目录中含有大量对 devices 中真实对象引用的符号链接文件; 清单 1 中在 /sys 根目录下顶层目录的意义如下:

表 1. /sys 下的目录结构

/sys 下的子目录

所包含的内容

/sys/devices

这是内核对系统中所有设备的分层次表达模型,也是 /sys 文件系统管理设备的最重要的目录结构,下文会对它的内部结构作进一步分析;

/sys/dev

这个目录下维护一个按字符设备和块设备的主次号码(major:minor)链接到真实的设备(/sys/devices下)的符号链接文件,它是在内核 2.6.26 首次引入;

/sys/bus

这是内核设备按总线类型分层放置的目录结构, devices 中的所有设备都是连接于某种总线之下,在这里的每一种具体总线之下可以找到每一个具体设备的符号链接,它也是构成 Linux 统一设备模型的一部分;

/sys/class

这是按照设备功能分类的设备模型,如系统所有输入设备都会出现在 /sys/class/input 之下,而不论它们是以何种总线连接到系统。它也是构成 Linux 统一设备模型的一部分;

/sys/block

这里是系统中当前所有的块设备所在,按照功能来说放置在 /sys/class 之下会更合适,但只是由于历史遗留因素而一直存在于 /sys/block, 但从 2.6.22 开始就已标记为过时,只有在打开了 CONFIG_SYSFS_DEPRECATED 配置下编译才会有这个目录的存在,并且在 2.6.26 内核中已正式移到 /sys/class/block, 旧的接口 /sys/block 为了向后兼容保留存在,但其中的内容已经变为指向它们在 /sys/devices/ 中真实设备的符号链接文件;

/sys/firmware

这里是系统加载固件机制的对用户空间的接口,关于固件有专用于固件加载的一套API,在附录 LDD3 一书中有关于内核支持固件加载机制的更详细的介绍;

/sys/fs

这里按照设计是用于描述系统中所有文件系统,包括文件系统本身和按文件系统分类存放的已挂载点,但目前只有 fuse,gfs2 等少数文件系统支持 sysfs 接口,一些传统的虚拟文件系统(VFS)层次控制参数仍然在 sysctl (/proc/sys/fs) 接口中中;

/sys/kernel

这里是内核所有可调整参数的位置,目前只有 uevent_helper, kexec_loaded, mm, 和新式的 slab 分配器等几项较新的设计在使用它,其它内核可调整参数仍然位于 sysctl (/proc/sys/kernel) 接口中 ;

/sys/module

这里有系统中所有模块的信息,不论这些模块是以内联(inlined)方式编译到内核映像文件(vmlinuz)中还是编译为外部模块(ko文件),都可能会出现在 /sys/module 中:

编译为外部模块(ko文件)在加载后会出现对应的 /sys/module/<module_name>/, 并且在这个目录下会出现一些属性文件和属性目录来表示此外部模块的一些信息,如版本号、加载状态、所提供的驱动程序等;

编译为内联方式的模块则只在当它有非0属性的模块参数时会出现对应的 /sys/module/<module_name>, 这些模块的可用参数会出现在 /sys/modules/<modname>/parameters/<param_name> 中,

如 /sys/module/printk/parameters/time 这个可读写参数控制着内联模块 printk 在打印内核消息时是否加上时间前缀;

所有内联模块的参数也可以由 "<module_name>.<param_name>=<value>" 的形式写在内核启动参数上,如启动内核时加上参数 "printk.time=1" 与 向 "/sys/module/printk/parameters/time" 写入1的效果相同;

没有非0属性参数的内联模块不会出现于此。

/sys/power

这里是系统中电源选项,这个目录下有几个属性文件可以用于控制整个机器的电源状态,如可以向其中写入控制命令让机器关机、重启等。

参考:https://www.ibm.com/developerworks/cn/linux/l-cn-sysfs/

时间: 2024-10-03 21:54:32

根文件系统的层级结构的相关文章

04 Linux根文件系统和目录结构及bash特性

Linux文件系统: Linux:glibc 程序编译方式: 动态链接式编译 静态链接式编译 进程的类型: 终端:硬件设备,在硬件设备上可以关联一个用户接口,从而让用户用此接口与操作系统打交道 与终端相关:通过终端启动 与终端无关:操作引导启动过程当中自动启动 操作系统的组成: 静态:kernel(内核),application(应用程序) 文件系统:层级结构 FHS: Filesystem Hierarchy Standard(文件系统层次化标准) /bin:所有用户可用的基本命令程序文件 /

4.Linux根文件系统和目录结构及bash特性

4.1Linux目录结构和根文件系统全面讲解 Linux文件系统: Linux:glibc 程序编译方式: 动态链接 静态编译 进程的类型: 终端:硬件设备, 关联一个用户接口 与终端相关:通过终端启动 与终端无关:操作引导启动过程当中自动启动 操作系统的组成: 静态:Kernel,application 文件系统:层级结构 FHS: Filesystem Hierachry Stanard /bin: 所有用户可用的基本命令程序文件 /sbin:供系统管理使用的工具程序 /boot:引导加载器

Linux根文件系统和目录结构及bash特性2

Linux系统上的文件类型:    -:常规文件,即f    d:directory,目录文件    b:block device,块设备文件,支持以“block”为单位进行随机访问    c:character device,字符设备文件,支持以“character”为单位进行线性访问        major number:主设备号,用于标识设备类型,进而确定要加载的驱动程序        minor number:次设备号,用于标识同一类型中的不同的设备            早期用8位二

Linux根文件系统和目录结构及bash特性4

文件管理工具:cp,mv,rm    cp命令:copy                cp命令主要用于复制文件或目录 语法:        单源复制        cp [OPTION]... [-T] SOURCE DEST         多源复制        cp [OPTION]... SOURCE... DIRECTORY         cp [OPTION]... -t DIRECTORY SOURCE... 单源复制:cp [OPTION]... [-T] SOURCE DE

linux10 Linux目录结构和根文件系统全面讲解

一.回顾 1.如何获取使用帮助 help,--help,man,info 官方文档,自带文档(README,CHANGELOG,INSTALL),官方文档 发行版的文档 Google Linux Kerenl:官方的Documentation manual:使用手册 whatis keyword man # KEYWORD SECTION: [],<>,|,{} 控制命令: Space,b Enter,k Ctrl+d,Ctrl + u q #G /keyword ?keyword 2.基础命

Linux的根文件系统(一)

根文件系统:包含了使Linux系统运行的主要程序和数据,当内核启动后就会到存储设备上寻找根文件系统,根文件系统会被挂载在"/"上. 根文件系统存放的位置: ******根文件系统被存储在Flash存储器中. ******Flash存储器被分为多个分区,第一分区,第二分区,第三分区等. ******第一分区:用来存储Linux内核映像文件(存放在单独的分区). ******第二分区:用来存放根文件系统 ******第三分区:存放其他的普通文件系统,(操作系统的运行不依赖第三分区) Lin

第17章- 构建Linux根文件系统

本章目标 l 了解Linux的文件系统层次标准(FHS) l 了解根文件系统下各目录的作用 l 掌握构建根文件系统的方法:移植Busybox.构造各个目录.文件等 l 掌握制作yaffs.jffs2文件系统映象文件的方法 推广: 想了解更多嵌入式知识请移步到 100ask.taobao.com 17.1  Linux文件系统概述 17.1.1  Linux文件系统的特点 类似于Windows下的C.D.E等各个盘,Linux系统也可以将磁盘.Flash等存储设备划分为若干个分区,在不同分区存放不

ubantu 文件系统的目录结构

对于每一个Linux学习者来说,了解Linux文件系统的目录结构,是学好Linux的至关重要的一步.,深入了解linux文件目录结构的标准和每个目录的详细功能,对于我们用好linux系统只管重要,下面我们就开始了解一下linux目录结构的相关知识 当在使用Linux的时候,如果您通过ls –l / 就会发现,在/下包涵很多的目录,比如etc.usr.var.bin ... ... 等目录,而在这些目录中,我们进去看看,发现也有很多的目录或文件.文件系统在Linux下看上去就象树形结构,所以我们可

Linux基础——文件系统与目录结构

文件系统 文件和目录被组织成一个单根倒置树结构 文件系统从根目录下开始,根文件系统(rootfs): root filesystem,用"/" 表示 文件名称区分大小写 以.开头的文件为隐藏文件 路径分隔符: / 文件有两类数据:元数据: metadata数据: data 文件系统分层结构: LSB(Linux Standard Base) FHS: (Filesystem Hierarchy Standard):文件系统层级标准,具体请参考:http://www.pathname.c