详细介绍:Linux的目录结构
2026-01-25 21:01 tlnshuju 阅读(0) 评论(0) 收藏 举报Linux 的目录结构是理解 Linux 系统的核心基础,我会从设计原则、核心目录功能、新手易混点三个维度,用“通俗比喻+实战举例”的方式讲清楚,让你不仅知道“是什么”,还知道“为什么这么设计”“实际怎么用”。
一、Linux 目录结构的核心设计原则
首先要明确 Linux 目录的两个关键特性,这是和 Windows 最大的区别:
- 单根目录结构:Linux 只有一个根目录
/(读作“根”),所有文件/目录都挂载在/下,没有 Windows 里的 C 盘、D 盘概念(Windows 是多根结构); - FHS 标准:Linux 遵循《文件系统层次结构标准(Filesystem Hierarchy Standard)》,规定了各目录的用途,保证不同 Linux 发行版(CentOS、Ubuntu、Debian)的目录结构一致;
- 目录分类逻辑:按“文件用途”分类,而非“文件类型”——比如配置文件全在
/etc,可执行命令全在/bin//sbin,日志全在/var/log。
通俗比喻
把 Linux 系统比作一栋大楼:
/:大楼的“一楼大厅”,是所有房间(目录)的入口;- 各子目录(
/etc//var//usr等):大楼的不同功能区(比如“配置室”“数据室”“软件室”); - 文件:功能区里的具体文件(比如配置室里的“网络设置单”、数据室里的“日志本”)。
二、核心目录详解(按重要性排序)
下面是 / 下最核心的目录,每个目录都标注“功能+通俗解释+实战举例”,新手重点掌握前10个即可:
| 目录路径 | 英文全称 | 核心功能 | 通俗解释 | 实战举例 |
|---|---|---|---|---|
/ | Root | 所有目录的顶级父目录,整个文件系统的起点 | 大楼大厅 | cd / 回到根目录;ls / 查看所有核心目录 |
/bin | Binary | 存放所有用户可执行的基础命令(如 ls、cd、cp、rm) | 公共命令室(所有人都能用) | ls /bin 能看到 lscd 等命令;/bin/ls 是 ls 命令的实际路径 |
/sbin | System Binary | 存放管理员(root) 专用的系统命令(如 reboot、ifconfig、fdisk) | 管理员命令室(只有管理员能用) | reboot 实际是 /sbin/reboot;普通用户执行会提示“权限不足” |
/etc | Etcetera(等等) | 存放系统/应用的配置文件(纯文本,可编辑) | 系统配置室 | /etc/passwd(用户账号)、/etc/docker(Docker 配置)、/etc/ssh(SSH 配置) |
/home | Home | 普通用户的“家目录”(每个用户有独立子目录,如 /home/zhangsan) | 普通员工办公室 | cd ~ 直接回到当前用户的 /home 目录;/home/user1 是 user1 的专属目录 |
/root | Root User Home | 管理员(root)的家目录(普通用户无权限访问) | 老板办公室 | cd /root 只有 root 能进入;/root/.bashrc 是 root 的个性化配置 |
/var | Variable | 存放可变数据(日志、缓存、数据库、邮件)——数据会随系统运行动态变化 | 动态数据室 | /var/log/messages(系统日志)、/var/log/docker(Docker 日志)、/var/lib/mysql(MySQL 数据) |
/usr | Unix Shared Resources | 存放用户安装的软件/程序(系统预装+手动安装),相当于 Windows 的 Program Files | 软件安装室 | /usr/bin(用户安装的命令,如 docker)、/usr/lib(软件依赖库)、/usr/local(手动编译安装的软件) |
/tmp | Temporary | 存放临时文件(所有用户可读写),系统重启后会清空 | 临时文件回收站 | 程序运行时生成的临时文件;/tmp/test.txt 重启后会消失 |
/dev | Device | 存放硬件设备文件(Linux 中“一切皆文件”,硬件也以文件形式表示) | 硬件设备室 | /dev/sda(第一块硬盘)、/dev/null(空设备,相当于“回收站”)、/dev/tty(终端) |
/proc | Process | 存放进程/系统状态的虚拟文件(内存中生成,非磁盘文件) | 系统状态监控室 | /proc/cpuinfo(CPU 信息)、/proc/meminfo(内存信息)、/proc/1(PID=1 的进程信息) |
/mnt | Mount | 临时挂载外部存储设备(如 U 盘、移动硬盘、NFS 共享目录) | 临时挂载点 | mount /dev/sdb1 /mnt/usb 把 U 盘挂载到 /mnt/usb |
/media | Media | 自动挂载可移动设备(如光盘、U盘),比 /mnt 更“自动化” | 自动挂载点 | 插入 U 盘后,系统可能自动挂载到 /media/usb |
/opt | Optional | 存放大型独立软件(如 Oracle、Tomcat)——软件所有文件都在该目录下 | 大型软件专属室 | /opt/tomcat(Tomcat 完整安装目录)、/opt/mysql(MySQL 独立安装) |
/lib | Library | 存放系统/命令的依赖库文件(32位系统),64位系统是 /lib64 | 系统库文件室 | /lib64/libc.so.6(C 语言核心库)、/lib/systemd(系统启动服务库) |
/sys | System | 存放内核相关的系统信息(硬件参数、内核配置),和 /proc 类似但更聚焦硬件 | 内核硬件信息室 | /sys/class/net/eth0(网卡 eth0 信息)、/sys/fs/cgroup(容器资源限制) |
三、新手易混目录对比(避坑重点)
很多新手会混淆相似目录,这里专门对比:
1. /bin vs /sbin vs /usr/bin vs /usr/sbin
/bin:系统核心命令(所有用户可用,如 ls、cd),开机时就会加载;/sbin:系统管理命令(仅 root 可用,如 reboot、fdisk);/usr/bin:用户安装的软件命令(如 docker、python),非系统核心;/usr/sbin:用户安装的管理命令(如 docker daemon、httpd)。
2. /usr vs /usr/local vs /opt
/usr:系统预装软件(yum/apt 安装的),比如yum install docker会装到/usr/bin/docker;/usr/local:手动编译安装的软件(make && make install),比如编译安装 Nginx 会到/usr/local/nginx;/opt:独立完整的软件包,比如解压 Tomcat 压缩包到/opt/tomcat,所有文件都在该目录下。
3. /var vs /tmp
/var:长期存储的可变数据(日志、数据库),不会自动清空;/tmp:临时文件,系统重启/定期清理,不能存重要数据。
4. /mnt vs /media
/mnt:手动挂载(需要执行mount命令),适合临时挂载服务器共享目录;/media:自动挂载(系统识别设备后自动挂载),适合桌面版 Linux 的 U 盘/光盘。
四、实战小技巧(新手必学)
快速查看目录结构:
# 以树形结构显示根目录下的一级目录(需先装 tree 工具:yum install tree -y) tree -L 1 /输出示例:
/ ├── bin -> usr/bin ├── etc ├── home ├── root ├── tmp ├── usr └── var注意:很多目录(如
/bin)是软链接到/usr/bin,这是 Linux 系统的优化,无需在意。判断目录是否为虚拟目录:
虚拟目录(/proc//sys)存储在内存中,不是磁盘文件,可用df -h查看:df -h # 只显示磁盘挂载的目录,/proc/ /sys/ 不会出现在列表中核心目录权限原则:
/etc//sbin//root:只有 root 可写,普通用户只读;/home//tmp:普通用户可读写(/tmp所有用户都能写);/usr:root 可写,普通用户只读(安装软件需要 sudo)。
总结
- Linux 是单根目录结构,所有文件都在
/下,遵循 FHS 标准,不同发行版目录结构一致; - 核心目录按“用途”分类:
/etc存配置、/bin//sbin存命令、/var存动态数据、/usr存软件、/home//root存用户目录; - 新手重点掌握
/etc//var//usr//home//tmp这5个目录,能解决80%的日常操作问题。
记住:Linux 目录的设计逻辑是“让文件有固定位置”,比如无论你用 CentOS 还是 Ubuntu,Docker 的配置永远在 /etc/docker,日志永远在 /var/log/docker,这也是 Linux 易管理的核心原因。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1215766.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!相关文章
Python核心语法-(一)Python解释器、Python注释 - 努力-
Python核心语法-(一)Python解释器、Python注释Python核心语法-,Python解释器、Python注释一、python 简介
1.1 python简介
python官网:
https://www.python.org/downloads/Python的应⽤领域:1.2 Python解释器
Python解…
STM32 + FreeRTOS 长期可维护架构:写给那些不敢重构的工程师
文章目录 一、 为什么你现在就该为“三年后”焦虑?二、 架构健康的“残酷”判断标准三、 FreeRTOS 被“用坏”的三个根因1. 把 FreeRTOS 当成了“万能胶水”2. 误区:任务 (Task) 功能模块 (Feature)3. 上下文地狱:中断、回调、任务逻辑大乱炖…
人群仿真软件:SimWalk_(20).人群仿真在零售业中的应用
人群仿真在零售业中的应用
1. 零售业背景及需求
零售业是一个高度依赖顾客流量和行为预测的行业。通过人群仿真技术,零售商可以更好地理解顾客在店铺内的流动模式、购买行为和排队等候时间,进而优化店铺布局、提高顾客满意度和增加销售额。具体来说&am…
人群仿真软件:Vadere_(1).Vadere简介
Vadere简介
什么是Vadere
Vadere是一款开源的人群仿真软件,专为研究和评估人群动态行为而设计。它提供了高度可配置的仿真环境,支持多种场景设置和人群行为模型。Vadere的主要特点包括: 多尺度仿真:Vadere可以在不同尺度上进行仿…
基于PromptX创建助手角色
基于PromptX创建助手角色
背景
最近才开始深入研究学习将LLM加入工作流中,可能对比其他人已经慢了很多了。在学习过程中,也许由于我很喜欢和AI对话,首先吸引我的是创建一个AI助手角色的思路,它利用不断对话和LLM的…
初识C语言14.动态内存管理 - 实践
pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …
增量微调优化在线更新
💓 博客主页:借口的CSDN主页 ⏩ 文章专栏:《热点资讯》 智能优化:增量微调在线更新的效率革命与伦理挑战 目录 智能优化:增量微调在线更新的效率革命与伦理挑战 引言:动态AI的进化需求 现在时:成…
【Java 新手必看】比较运算符:从概念到实战,附可运行代码案例
比较运算符是 Java 中用于判断 “两个值 / 变量关系” 的核心运算符,也是实现程序逻辑判断(如 if/else)的基础。新手常混淆 “等于” 和 “赋值”、“等于” 和 “对象相等”,这篇笔记结合可直接运行的代码案例,从基础…
网络考试点下一步出错怎么办?试试这样做
场景:家中网络课学习完毕考试,遇到点下一步出错问题 解决方案:打开显示所有题号的面板,点击面板上的题号跳转 注:我这里题号面板是点击进度条打开的,各人根据实际情况找下
【保姆级教程】移动端部署本地知识库与大模型,小白也能轻松上手(建议收藏)
本文详细介绍了在移动端部署本地知识库与大模型的完整方案,包括轻量级模型选型(如Phi-2、TinyLlama)、推理引擎(llama.cpp、MLC LLM)和知识库构建方法(向量数据库或关键词匹配)。提供了Android部…
大模型学习宝典:收藏这份系统性技术框架,从零开始构建LLM
本文基于Stanford CS336课程,系统介绍大模型开发关键技术,涵盖BPE分词、网络结构设计、超参数选择、训练技巧、MoE架构、GPU优化、分布式训练及推理优化等核心内容。详细解析从LayerNorm到RMSNorm、RoPE位置编码、Flash Attention等实现方法,…
STM32F0实战:基于HAL库开发【2.1】
7.4.2 从待机模式唤醒
待机模式允许达到能耗最低,它基于Cortex-M0深度睡眠模式,电压调节器禁用,1.8V域关闭,PLL、HIS和HSE振荡器也关闭,SRAM和寄存器内容丢失。只有RTC寄存器、RTC备份寄存器和备用电路保持工作。可以使用HAL库中的HAL_PWR_EnterSTANDBYMode()函数进入待机…
大语言模型训练原理解析:ChatGPT背后的技术原理与应用价值
大语言模型训练分为三步:预训练阶段通过互联网数据训练基础预测模型;监督微调阶段通过问答数据让模型学会回答问题;强化学习阶段让模型自行探索最佳解法,产生思维链。大模型本质是统计学预测器,通过预测下一个token生成…
MCP与A2A深度解析:AI系统集成与智能体协作的未来之路
MCP与A2A是AI系统集成的两大关键协议。MCP解决AI安全调用工具与数据的问题,提供资源、工具和提示模板三大能力;A2A则规范智能体间的协作,通过任务、消息和产物等组件实现高效接力。它们共同构成AI系统的分层规范,将开发范式从&quo…
【升级版本】基于多目标粒子群算法的微电网优化调度【风光、储能、柴油、燃气、电网交互】附Matlab代码
✅作者简介:热爱科研的Matlab仿真开发者,擅长数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。
🍎 往期回顾关注个人主页:Matlab科研工作室
🍊个人信条:格物致知,完整Matlab代码及仿真…
【实时无功-有功控制器的动态性能】【带有电流控制的两级电压源变流器(VSC)】采用αβ阿尔法-贝塔转换进行电流反馈的实时无功功率控制器附Simulink仿真
✅作者简介:热爱科研的Matlab仿真开发者,擅长数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。
🍎 往期回顾关注个人主页:Matlab科研工作室
🍊个人信条:格物致知,完整Matlab代码及仿真…
【2026最新】大模型面试全攻略:23家科技公司面试经验+高频考点总结,助你轻松上岸
本文详细记录了作者对23家大模型相关公司的面试经历,包括智元机器人、面壁科技、Minimax、阿里夸克、蚂蚁等公司的面试流程与结果。作者总结了大模型面试的高频考点,如多头注意力机制、框架并行方式、BERT/GPT模型细节、大模型训练技巧等,并分…
【使用Copulas对金融时间序列进行波动率估计与预测,涵盖GARCH、EWMA和EqWMA等模型】基于件风险价值(CVaR)、极值理论(EVT)、风险因子及蒙特卡洛模拟进行市场风险管理附Matlab
✅作者简介:热爱科研的Matlab仿真开发者,擅长数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。
🍎 往期回顾关注个人主页:Matlab科研工作室
🍊个人信条:格物致知,完整Matlab代码及仿真…
个人AI产业定义、产业架构与发展趋势白皮书|附60页PDF文件下载
本报告以用户为中心,立足于产业与生态,系统阐述个人AI时代来临的产业逻辑与必然趋势,厘清个人AI的基础架构与核心特征,剖析其对产业链、价值链及竞争格局带来的结构性变革。报告亦将对个人AI主导的未来生态进行前瞻展望࿰…
企业AI开发与技术实践白皮书2025|附36页PDF文件下载
白皮书探讨了在GenAI时代,企业如何利用大模型技术实现智能化转型。白皮书指出,大模型能力的不断提升为企业带来了无限想象力,但也面临着战略规划、数据治理、算力资源、场景适配等方面的挑战。企业需要构建覆盖顶层设计、技术选型、数据治理、…