Linux系统目录分析
一、根目录文件
Linux 系统中执行了 ls /
命令,列出了根目录下的所有一级文件夹。下面是每个文件夹的作用简要说明:
📁 根目录文件夹说明:
文件夹 | 作用 |
---|---|
bin | 存放系统最基本的命令,如 ls , cat , cp 等 |
boot | 引导系统启动的文件,如内核镜像、设备树等 |
dev | 包含设备文件(如 /dev/sda , /dev/tty ),用于访问硬件 |
etc | 系统配置文件目录,如网络、用户、服务配置等 |
home | 普通用户的主目录,如 /home/joey |
lib | 系统运行所需的共享库文件(类似 Windows 的 DLL) |
lost+found | 文件系统修复时存放丢失文件的地方(ext 系列文件系统特有) |
media | 挂载可移动设备(如 U 盘、SD 卡)的默认目录 |
mnt | 临时挂载其他文件系统的目录 |
opt | 可选软件包安装目录,通常用于第三方应用 |
proc | 虚拟文件系统,提供系统和进程信息(如 /proc/cpuinfo ) |
run | 存放系统运行时数据(如 PID 文件、服务状态) |
sbin | 存放系统管理员使用的命令,如 reboot , ifconfig |
srv | 提供服务的数据目录(如 web 服务、FTP) |
sys | 虚拟文件系统,提供内核与设备的接口(如 /sys/class/gpio ) |
tmp | 临时文件目录,系统重启后会清空 |
usr | 用户级应用和库文件目录,如 /usr/bin , /usr/lib |
var | 存放可变数据,如日志、缓存、邮件等(如 /var/log ) |
二、根目录下的子文件夹
📁 sys/:
目录下各文件夹
/sys
目录,它是一个 虚拟文件系统,由内核提供,用于展示和控制系统硬件和内核状态。
- 它是 Linux 的 sysfs 虚拟文件系统
- 提供了一个 用户空间访问内核对象的接口
- 可以用来 查看硬件信息、修改设备参数、调试驱动
文件夹 | 作用说明 |
---|---|
block | 显示系统中的块设备(如硬盘、SD卡),对应 /dev/sdX |
bus | 显示系统中使用的总线类型(如 PCI、USB),以及挂载在这些总线上的设备 |
class | 按功能分类的设备接口,如 net (网络)、gpio (通用IO)、leds (LED控制)等 |
dev | 显示设备的主次设备号(major/minor),用于设备节点映射 |
devices | 展示系统中所有物理设备的拓扑结构,按总线和设备层级组织 |
firmware | 与设备固件相关的接口,部分设备支持动态加载固件 |
fs | 显示文件系统相关信息,如 cgroup 、ext4 、fuse 等 |
kernel | 显示内核参数和状态,如调度器、panic设置、kexec等 |
module | 显示已加载的内核模块及其参数 |
power | 提供电源管理相关接口,如休眠、唤醒、自动挂起等 |
1.power 用于系统的电源管理
:/sys/power# ls
mem_sleep pm_async pm_debug_messages pm_freeze_timeout pm_print_times pm_test pm_wakeup_irq state suspend_stats sync_on_suspend wakeup_count
可以实现SOC的suspend /sleep/freeze/wakeup
2.devices一些驱动的管理
:/sys/devices# ls
armv8_pmuv3 breakpoint iio_sysfs_trigger platform s32cc_ddr0 software system virtual
包括对CPU状态的管理:
:/sys/devices/system/cpu# ls
cpu0 cpu1 cpu2 cpu3 cpu4 cpu5 cpu6 cpu7 cpufreq hotplug isolated kernel_max modalias offline online possible power present smt uevent vulnerabilities
📁 bin/
:基本命令目录
/bin/ls
:列出目录内容/bin/cp
:复制文件/bin/mv
:移动/重命名文件/bin/sh
:标准 shell(通常是 bash 的链接)
📁 boot/
:启动相关文件
/boot/vmlinuz-*
:Linux 内核镜像/boot/dtb/
:设备树文件(Device Tree Blob)/boot/u-boot.itb
:U-Boot 启动镜像(嵌入式系统常见)
📁 dev/
:设备文件
/dev/tty*
:串口设备/dev/sdX
:磁盘设备(如/dev/sda
)/dev/null
:空设备,丢弃所有写入数据/dev/gpiochip*
:GPIO 控制器接口
📁 etc/
:配置文件
/etc/network/interfaces
:网络接口配置(Debian 系)/etc/fstab
:开机挂载点配置/etc/hostname
:主机名配置/etc/init.d/
:启动脚本目录(SysV init)
📁 home/
:用户主目录
/home/joey/
:用户 joey 的个人目录- 包含用户的桌面、下载、配置文件等
📁 lib/
:共享库
/lib/modules/
:内核模块/lib/ld-linux.so.*
:动态链接器/lib/libc.so.*
:C 标准库
📁 media/
和 mnt/
:挂载点
/media/usb0
:自动挂载的 U 盘/mnt/test
:手动挂载的临时目录
📁 opt/
:可选软件
/opt/myapp/
:第三方应用安装目录- 常用于商业软件或自定义部署
📁 proc/
:进程与内核信息(虚拟)
/proc/cpuinfo
:CPU 信息/proc/meminfo
:内存信息/proc/[PID]/
:每个进程的详细信息
📁 run/
:运行时数据
/run/lock/
:锁文件/run/systemd/
:systemd 状态信息/run/user/
:用户级运行时数据
📁 sbin/
:系统管理命令
/sbin/reboot
:重启系统/sbin/ifconfig
:网络接口配置(旧)/sbin/fsck
:文件系统检查
📁 srv/
:服务数据
/srv/ftp/
:FTP 服务目录/srv/www/
:Web 服务目录
📁 sys/
:内核与设备接口(虚拟)
/sys/class/
:按功能分类的设备(如gpio
,net
)/sys/devices/
:物理设备拓扑结构/sys/bus/
:总线信息(如 PCI、I2C)
📁 tmp/
:临时文件
- 系统或程序运行时产生的临时数据
- 重启后会清空
📁 usr/
:用户空间程序和库
/usr/bin/
:大多数用户命令/usr/lib/
:共享库/usr/share/
:文档、图标、语言包等
📁 var/
:可变数据
/var/log/
:日志文件/var/cache/
:缓存数据/var/lib/
:程序状态数据(如包管理器)