0

0

Linux目录结构怎么理解_最佳实践总结助你快速突破【教程】

舞夢輝影

舞夢輝影

发布时间:2025-12-14 09:03:07

|

872人浏览过

|

来源于php中文网

原创

必须掌握根目录下7个高频目录:/bin和/usr/bin存基础命令,/etc放配置文件,/home为用户私有空间,/var存运行时变化数据,/tmp和/var/tmp为临时文件区,/opt用于第三方大型软件。

linux目录结构怎么理解_最佳实践总结助你快速突破【教程】

Linux目录结构不是随意设计的,它遵循Filesystem Hierarchy Standard(FHS)规范,核心逻辑是“按用途分离、按权限隔离、按生命周期归类”。理解它不靠死记硬背,而要抓住三个关键视角:谁用、放什么、能不能动。

根目录下哪些目录必须掌握?

刚接触Linux时,重点盯住这7个高频目录,覆盖90%日常操作:

  • /bin/usr/bin:放所有用户都能运行的基础命令(如 ls、cp、grep)。/bin 是系统启动必需的最小集合;/usr/bin 是后续安装的绝大多数命令所在。
  • /etc:纯文本配置文件集中地。服务配置(nginx.conf)、用户账户(passwd)、网络设置(hosts)全在这里。修改前习惯性备份原文件。
  • /home:每个普通用户的私有空间。/home/username 就是你的家目录,默认 shell 启动后就在此处。别把项目代码或数据直接丢进根目录。
  • /var:存放运行时变化的数据。日志(/var/log)、数据库文件(/var/lib/mysql)、邮件队列(/var/spool/mail)都属此类。内容会持续增长,需定期清理或轮转。
  • /tmp/var/tmp:临时文件暂存区。/tmp 重启后清空;/var/tmp 可跨重启保留,适合需要稍长生命周期的临时数据。
  • /opt:第三方大型独立软件包的安装位置(如 JetBrains 全家桶、Oracle JDK)。每个软件通常自成子目录(/opt/intellij/),不混入系统路径。

哪些目录绝对不要乱删或写入?

有些目录表面看空或不起眼,但动了会导致系统无法启动或服务异常:

蕉点AI
蕉点AI

AI电商商品图生成平台 | 智能商品素材制作工具

下载
  • /proc/sys:不是真实磁盘目录,而是内核运行时暴露的虚拟文件系统。读取可查CPU、内存、设备状态;写入某些节点能动态调参(如 echo 1 > /proc/sys/net/ipv4/ip_forward),但误删无意义,也删不掉。
  • /dev:设备文件入口(硬盘sda、终端tty1、随机数生成器/dev/random)。由udev自动管理,手动创建或删除设备节点易引发硬件识别失败。
  • /boot:GRUB引导程序、内核镜像(vmlinuz)、初始内存盘(initramfs)所在地。更新内核或修复启动问题才需操作,日常应只读。

实际运维中怎么用得更顺?

光知道结构不够,结合场景才能真正内化:

  • 部署Web应用时,静态资源放 /var/www/html(符合FHS对“本地可变数据”的定义),配置文件放 /etc/nginx/conf.d/myapp.conf,日志定向到 /var/log/myapp/ —— 这样便于备份、监控和权限控制。
  • 写脚本时,用 $HOME 代替绝对路径 /home/username,用 /tmp 存中间结果,避免硬编码路径导致迁移失败。
  • 排查问题先看 /var/log/messages 或 journalctl -u servicename,而不是满系统 grep;确认配置改对了,再 systemctl daemon-reload && systemctl restart service。

基本上就这些。FHS不是铁律,但它是Linux生态协同的契约。你不需要记住全部20+个目录,只要分清“配置在哪”“数据在哪”“程序在哪”“临时东西放哪”,再配合ls -l /多看两眼,一个月就能形成直觉。

相关专题

更多
mysql修改数据表名
mysql修改数据表名

MySQL修改数据表:1、首先查看数据库中所有的表,代码为:‘SHOW TABLES;’;2、修改表名,代码为:‘ALTER TABLE 旧表名 RENAME [TO] 新表名;’。php中文网还提供MySQL的相关下载、相关课程等内容,供大家免费下载使用。

665

2023.06.20

MySQL创建存储过程
MySQL创建存储过程

存储程序可以分为存储过程和函数,MySQL中创建存储过程和函数使用的语句分别为CREATE PROCEDURE和CREATE FUNCTION。使用CALL语句调用存储过程智能用输出变量返回值。函数可以从语句外调用(通过引用函数名),也能返回标量值。存储过程也可以调用其他存储过程。php中文网还提供MySQL创建存储过程的相关下载、相关课程等内容,供大家免费下载使用。

247

2023.06.21

mongodb和mysql的区别
mongodb和mysql的区别

mongodb和mysql的区别:1、数据模型;2、查询语言;3、扩展性和性能;4、可靠性。本专题为大家提供mongodb和mysql的区别的相关的文章、下载、课程内容,供大家免费下载体验。

281

2023.07.18

mysql密码忘了怎么查看
mysql密码忘了怎么查看

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS 应用软件之一。那么mysql密码忘了怎么办呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

515

2023.07.19

mysql创建数据库
mysql创建数据库

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS 应用软件之一。那么mysql怎么创建数据库呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

256

2023.07.25

mysql默认事务隔离级别
mysql默认事务隔离级别

MySQL是一种广泛使用的关系型数据库管理系统,它支持事务处理。事务是一组数据库操作,它们作为一个逻辑单元被一起执行。为了保证事务的一致性和隔离性,MySQL提供了不同的事务隔离级别。php中文网给大家带来了相关的教程以及文章欢迎大家前来学习阅读。

386

2023.08.08

sqlserver和mysql区别
sqlserver和mysql区别

SQL Server和MySQL是两种广泛使用的关系型数据库管理系统。它们具有相似的功能和用途,但在某些方面存在一些显著的区别。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

531

2023.08.11

mysql忘记密码
mysql忘记密码

MySQL是一种关系型数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。那么忘记mysql密码我们该怎么解决呢?php中文网给大家带来了相关的教程以及其他关于mysql的文章,欢迎大家前来学习阅读。

600

2023.08.14

c++空格相关教程合集
c++空格相关教程合集

本专题整合了c++空格相关教程,阅读专题下面的文章了解更多详细内容。

0

2026.01.23

热门下载

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

精品课程

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

共48课时 | 1.9万人学习

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

共3课时 | 0.3万人学习

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

共1课时 | 808人学习

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

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