Linux目录结构

Linux目录标准

在Linux学习中,目录是至关重要的部分,他能让你更清晰的了解Linux的运行过程
同时为了避免各类Linux的目录千奇百怪,Linux 基金会发布了 FHS(Filesystem Hierarchy Standard) 标准。多数 Linux 发行版系统都遵循这一标准。

根据FHS,将目录定义为一下四种交互作用的状态:

  • 可共享: 可以共享给其他系统挂载使用的目录。
  • 不可共享: 自己机器上运行的设备文件或是与程序相关的Socket文件,不可 与其他主机共享。
  • 不变: 跟随发行版而不变动的数据,例函数库、文件说明等。
  • 可变动: 经常修改的数据,例日志文件新闻组等。
可共享(shareable)不可共享(unshareable)
不变(static)/user(软件存放处)/etc(配置文件)
/opt(第三方辅助工具)/boot(启动与内核文件)
可变动的(variable)/var/mail(用户邮箱)/var/run(程序相关)
/var/spool/news(新闻组)/var/lock(程序相关)

FHS针对目录树架构定义了一下三层目录:

  • /(root 根目录):与启动系统有关
  • /usr(unix software resource):与软件安装执行相关
  • /var:与系统运行过程相关;

根目录(/)

  • 所有的目录都是由根目录衍生出来的
  • 根目录与启动、还原、系统修复相关
  • FHS建议根目录所在的分区越小越好,且应用程序安装的软件尽量不要与根目录放在同一个分区

根目录下的部分子目录见下表:

目录功能简述
/bin放置系统执行文件的目录,且放置的是单人维护模式下还能被使用的命令,在/bin目录下的命令可以被root及一般账户使用,例如:cat、chmod、chown等
/boot主要放置与启动相关的文件,包括Linux的内核文件等
/dev任何设备与接口设备都以文件的形式存放在这个目录
/etc系统的配置文件存放区,例如人员的账户密码等文件,这个目录一般用户只有查看权限,只有root有权利修改,FHS建议不要放置可执行文件在这个目录下
/lib放置了启动时会用到的函数库,以及在/bin和/sbin下面的命令调用的函数库,且FHS要求以下目录必须存在:/lib/modules/ 这个目录主要放置可抽换式的内核相关模块(驱动程序)
/media放置可删除的设备,如软盘、光盘、DVD等
mnt暂时用来挂载一些额外的设备
/opt给第三方辅助软件放置的目录
/run放置启动后所产生的各项信息
/sbin放置了启动过程中所需要的命令,包括启动、修复、还原等系统命令
/srv网络服务启动后所需要的数据目录
/tmp放置用户或正在执行的程序暂时存放文件的目录,因此重要数据不要存放此处

/usr

usr(注意不是 user),全称为 Unix Software Resource,此目录用于存储系统软件资源,此目录下的数据属于可共享不可变动的数据。FHS 建议所有开发者,应把软件产品的数据合理的放置在 /usr 目录下的各子目录中,而不是为他们的产品创建单独的目录。

Linux 系统中,所有系统默认的软件都存储在 /usr 目录下,/usr 目录类似Windows 系统中 C:\Windows\ + C:\Program files\ 两个目录的综合体。系统建立最初,这个目录占用最多的硬盘容量。

/usr 目录下的部分子目录见下表:

目录功能描述
/usr/bin/一般用户能够使用的所有命令存放于此
/usr/lib与/lib功能相同,所以/lib链接到此目录
/usr/local/系统管理员在本机安装自行下载的软件,建议安装这个目录下
/usr/sbin/非系统正常运行所需的系统命令,如网络服务器软件的服务命令(daemon)
/sur/share/主要放置一些只读的数据文件,包括共享文件,大部分为文本文件
/usrgames/放置与游戏相关的数据
/usr/include/C/C++ 等编程语言头文件的放置目录
/usr/libexec/放置某些不被用户常用的执行文件或脚本
/usr/lib<qual>/与/lib<qual>/功能相同,所以/lib<qual>/链接到此目录
/usr/src/一般源代码放在这里

/var

/var会跟随系统运行逐渐占用硬盘容量,放置经常性变动的文件,包括缓存、日志文件以及某些软件运行产生的文件。

/var 目录下的部分子目录见下表:

目录功能描述
/var/cache/应用程序运行过程中产生的缓存
/var/lib/程序本身执行的过程中需要使用到的数据文件放置的目录
/var/log/放置日志文件的目录,相当重要
/var/mail放置个人电子邮箱的目录
/var/run/某些文件或是服务启动后,它的PID放置于此
/var/spool/放置一些队列数据,即排队等待其他应用程序使用的数据,这些数据使用完后通常会被删除

总结

了解了Linux的目录结构可以帮助更好的使用Linux系统,更合理的分配硬盘空间等,以上目录可以通过后续的与目录相关的命令操作来实践记忆。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值