0

0

Linux目录结构有什么作用_系统路径职责全面讲解【教程】

冰川箭仙

冰川箭仙

发布时间:2025-12-23 21:45:27

|

700人浏览过

|

来源于php中文网

原创

Linux目录结构遵循FHS标准,以根目录/为逻辑顶点构建树状体系;/bin、/sbin存基础命令,/usr/bin、/usr/sbin放用户及管理应用;/etc管静态配置,/var存运行时数据,/run管本次启动临时信息;/dev、/proc、/sys为内核动态生成的虚拟接口。

linux目录结构有什么作用_系统路径职责全面讲解【教程】

Linux目录结构不是随意排列的,而是遵循FHS(文件系统层次结构标准)的一套逻辑严密的组织方式。它的核心作用是让系统能稳定运行、软件可预测安装、用户与管理员各司其职、硬件资源被合理抽象——说白了,就是让整个操作系统“有章可循、各安其位”。

/ 是一切的起点,不是普通文件夹

根目录 / 不是硬盘上的一个普通目录,而是整个虚拟文件系统的逻辑顶点。所有路径都从它开始,比如 /home/user 或 /usr/bin/python。即使你挂载了多块硬盘,它们也必须“接入”到这个树状结构中的某个节点(如 /mnt/data 或 /home),否则系统看不见那些设备上的内容。

  • 挂载点本质是空目录,一旦挂载,原内容被隐藏,取而代之的是被挂载设备的文件系统
  • / 本身通常只放极少数关键子目录,不建议直接存放大文件或用户数据
  • 系统启动时,内核首先挂载根文件系统,之后才逐步挂载其他部分

/bin、/sbin、/usr/bin、/usr/sbin 各管一段命令

命令按使用角色和系统阶段分开放置,避免混乱和权限失控:

  • /bin:存放系统启动和单用户模式下必需的基础命令(如 ls、cp、bash),所有用户都能执行
  • /sbin:存放仅管理员可用的系统管理命令(如 fdisk、iptables、reboot),普通用户默认无权运行
  • /usr/bin:绝大多数用户级应用命令在此,比如 python、gcc、curl —— 它们不是启动必需,但日常离不开
  • /usr/sbin:对应 /usr/bin 的管理类命令,如 httpd(Apache)、sshd,服务部署后常用

这种分离让最小化系统(如容器或嵌入式环境)可以精简 /bin 和 /sbin,而保持功能完整;也方便包管理器区分核心与扩展组件。

造好物
造好物

一站式AI造物设计平台

下载

/etc、/var、/run 管理“变”与“不变”

配置和状态数据分开存放,是系统可维护性的关键设计:

  • /etc:纯静态配置。所有服务、网络、用户、安全策略都集中在这里(如 /etc/passwd、/etc/nginx/nginx.conf)。修改前备份是运维基本习惯
  • /var:存放运行中持续变化的数据。日志(/var/log)、数据库文件(/var/lib/mysql)、邮件队列(/var/spool/mail)都归这里。它的存在让 / 可以做成只读,提升安全性
  • /run:比 /var 更临时——只在本次启动生命周期内有效。进程ID文件(/run/nginx.pid)、套接字(/run/docker.sock)、用户登录会话信息都放这儿。重启即清空,无需手动清理

/dev、/proc、/sys 是内核与用户空间的“翻译窗口”

这些不是真实磁盘目录,而是内核动态生成的接口,把硬件和运行态变成可读可操作的文件:

  • /dev:把硬盘(sda)、串口(ttyS0)、内存(mem)等统统表现为文件,用 open/read/write 就能操作设备
  • /proc:实时映射内存中的进程与内核状态。读 /proc/cpuinfo 看CPU型号,读 /proc/1/environ 查1号进程环境变量,top 命令底层就靠它
  • /sys:专注设备驱动与内核参数控制。比如 echo 'on' > /sys/bus/usb/devices/1-1/power/level 就能唤醒USB设备,udev规则也依赖此结构

它们不需要磁盘空间,却让 shell 脚本和 C 程序能统一访问底层资源,是 Linux “一切皆文件”哲学的落地体现。

相关专题

更多
python开发工具
python开发工具

php中文网为大家提供各种python开发工具,好的开发工具,可帮助开发者攻克编程学习中的基础障碍,理解每一行源代码在程序执行时在计算机中的过程。php中文网还为大家带来python相关课程以及相关文章等内容,供大家免费下载使用。

753

2023.06.15

python打包成可执行文件
python打包成可执行文件

本专题为大家带来python打包成可执行文件相关的文章,大家可以免费的下载体验。

636

2023.07.20

python能做什么
python能做什么

python能做的有:可用于开发基于控制台的应用程序、多媒体部分开发、用于开发基于Web的应用程序、使用python处理数据、系统编程等等。本专题为大家提供python相关的各种文章、以及下载和课程。

758

2023.07.25

format在python中的用法
format在python中的用法

Python中的format是一种字符串格式化方法,用于将变量或值插入到字符串中的占位符位置。通过format方法,我们可以动态地构建字符串,使其包含不同值。php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

618

2023.07.31

python教程
python教程

Python已成为一门网红语言,即使是在非编程开发者当中,也掀起了一股学习的热潮。本专题为大家带来python教程的相关文章,大家可以免费体验学习。

1262

2023.08.03

python环境变量的配置
python环境变量的配置

Python是一种流行的编程语言,被广泛用于软件开发、数据分析和科学计算等领域。在安装Python之后,我们需要配置环境变量,以便在任何位置都能够访问Python的可执行文件。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

547

2023.08.04

python eval
python eval

eval函数是Python中一个非常强大的函数,它可以将字符串作为Python代码进行执行,实现动态编程的效果。然而,由于其潜在的安全风险和性能问题,需要谨慎使用。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

577

2023.08.04

scratch和python区别
scratch和python区别

scratch和python的区别:1、scratch是一种专为初学者设计的图形化编程语言,python是一种文本编程语言;2、scratch使用的是基于积木的编程语法,python采用更加传统的文本编程语法等等。本专题为大家提供scratch和python相关的文章、下载、课程内容,供大家免费下载体验。

707

2023.08.11

Java 桌面应用开发(JavaFX 实战)
Java 桌面应用开发(JavaFX 实战)

本专题系统讲解 Java 在桌面应用开发领域的实战应用,重点围绕 JavaFX 框架,涵盖界面布局、控件使用、事件处理、FXML、样式美化(CSS)、多线程与UI响应优化,以及桌面应用的打包与发布。通过完整示例项目,帮助学习者掌握 使用 Java 构建现代化、跨平台桌面应用程序的核心能力。

36

2026.01.14

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
MySQL 教程
MySQL 教程

共48课时 | 1.8万人学习

MySQL 初学入门(mosh老师)
MySQL 初学入门(mosh老师)

共3课时 | 0.3万人学习

简单聊聊mysql8与网络通信
简单聊聊mysql8与网络通信

共1课时 | 793人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号