一、linux文件结构
- /bin:存放可执行命令的二进制文件。
- /boot:存放启动系统所需的内核和引导文件。
- /dev:包含设备文件,用于与硬件设备交互。
- /etc:存放系统的配置文件。
- /home:每个用户的主目录都位于此处。
- /lib:存放系统库文件,供可执行程序使用。
- /media:默认挂载点,用于临时挂载可移动媒体设备,如光盘、USB驱动器等。
- /mnt:用于临时挂载其他文件系统。
- /opt:存放第三方应用程序的可选组件。
- /proc:虚拟文件系统,提供关于运行中进程的信息。
- /root:超级用户(root)的主目录。
- /sbin:存放系统管理命令的二进制文件。
- /srv:存放与特定服务相关的数据。
- /tmp:存放临时文件。
- /usr:存放可共享的只读数据,包括用户应用程序、库文件和文档等。
- /var:存放经常变化的数据,如日志文件、缓存和邮件等。
- /sys:用于存储关于系统的信息和设备驱动程序的接口。它提供了对系统内核的访问,并允许用户和应用程序与系统硬件进行交互。
2、sys目录
/sys/block
:该目录包含了块设备(例如硬盘)的信息,每个设备都以子目录的形式存在。/sys/class
:这个目录包含了各种设备的类别信息,例如网络设备、输入设备、USB设备等。/sys/devices
:这个目录包含了系统上所有设备的层次结构信息,每个设备都以子目录的形式存在。/sys/bus
:该目录包含了不同类型总线的信息,例如PCI、USB等。/sys/fs
:这个目录包含了文件系统相关的信息,例如根文件系统的参数设置等。/sys/kernel
:该目录包含了与内核相关的信息,例如内核的配置选项、调试接口等。/sys/power
:这个目录包含了与电源管理相关的信息。
3、sys/class目录
- /sys/class/net:该目录下存放了系统中所有网络设备的信息。例如,eth0、wlan0等网络接口都会在这个目录下有一个对应的子目录。
- /sys/class/block:该目录下存放了系统中所有块设备(如硬盘和闪存驱动器)的信息。每个块设备都会有一个对应的子目录,子目录的名称以字母"sd"开头,后面跟着一个字母,如sda、sdb等。
- /sys/class/gpio:该目录用于访问通用输入/输出(GPIO)引脚。每个GPIO引脚都有一个对应的子目录,子目录的名称以gpio开头,后面跟着具体的引脚号,如gpio1、gpio2等。
- /sys/class/power_supply:该目录下存放了系统中所有电源供应设备的信息。例如,AC适配器和电池都会在这个目录下有一个对应的子目录。
4、sys/class/net目录(用于存储网络设备相关的信息,会包含每个网络接口的子目录,每个子目录的名称对应一个特定的网络接口)
在每个子目录中,通常会包含以下文件和目录:
- address: 这个文件包含了网络接口的物理地址(MAC 地址)。
- carrier: 这个文件表示网络接口的链路连接状态,1表示已连接,0表示未连接。
- dev_id: 这个文件包含网络接口的设备ID。
- dev_port: 这个目录包含与网络接口相关的端口信息。
- duplex: 这个文件标识网络接口的工作模式,如全双工(full)或半双工(half)。
- ifalias: 这个文件包含对网络接口的别名设置。
- ifindex: 这个文件包含网络接口的索引号。
- mtu: 这个文件包含了网络接口的最大传输单元(MTU)大小。
- operstate: 这个文件表示网络接口的操作状态,如up(启用)或down(禁用)。
- speed: 这个文件包含了网络接口的速度信息。
例子
/sys/class/net/eth0
/sys/class/net/wlan0
/sys/class/net/loeth0
表示以太网接口,wlan0
表示无线局域网接口,lo
表示回环接口(localhost)。这些子目录中包含了与相应接口相关的文件和目录,例如配置文件、状态信息等。
5、 /sys/class/net/eth0(通常包含与网络接口"eth0"相关的信息和配置)
address
:包含以太网接口eth0的物理地址(MAC地址)。carrier
:指示以太网接口是否已连接到网络(1表示连接,0表示未连接)。device
:指向与以太网接口eth0关联的设备的符号链接。duplex
:指示以太网接口eth0的双工模式(全双工或半双工)。flags
:列出以太网接口eth0的标志和状态信息,如UP(启用)、BROADCAST(广播)等。ifalias
:以太网接口eth0的别名(如果有)。mtu
:以太网接口eth0的最大传输单元(Maximum Transmission Unit)大小。operstate
:指示以太网接口eth0的操作状态,如UP、DOWN、UNKNOWN等。speed
:以太网接口eth0的连接速度。
6、/sys/class/net/eth0/device目录(存放与eth0
网络接口设备相关的信息和设置)
driver
:此目录包含有关驱动程序的信息,例如驱动程序模块的路径、版本号等。uevent
:此文件包含有关设备的事件信息,如插入或移除设备的通知。irq
:此文件指示与设备相关的中断请求(IRQ)号。resource
:此文件包含有关设备所使用的资源(如内存地址和I/O端口)的信息。power
:该目录包含与设备电源管理相关的文件和子目录,可以控制设备的电源状态。modalias
:此文件包含一个标识符,用于标识设备的类型和供应商信息。dev
:此文件包含设备的主要和次要设备号。subsystem
:此目录包含与设备所属子系统相关的信息。