Linux文件目录
Contents
Linux文件目录
Linux文件系统层次概述
文件系统包含了很多不同的初始路径,本节对不同的路径名称进行概述,可以通过man file-hierarchy来查看详细信息
通用目录
/:根目录/boot/:存放操作系统的启动的核心文件,应考虑设置为只读。/etc/:存放系统特定的配置文件和子目录/home/:存放用户家目录,除系统用户外,每个用户应该有一个以自己用户名为名的家目录,可以通过$HOME访问/root/:root用户的家目录/srv/:存放服务启动后需要的数据/tmp/:存放小的临时文件- 通常被挂载为
tmpfs - 大的临时文件存放在
/var/tmp - 在启动时被刷新
- 文件没有确定的删除时间
- 通常被挂载为
/mnt/:用户挂载目录/lost+found/:通常为空,非正常关机时存储一些文件/bin/:存放二进制文件/sbin/:存放超级用户使用的二进制文件/lib/:存放动态共享库,类似于windows的dll文件/lib64/:同上/opt/:用户级的程序目录- 类似于
D:/Software /usr/local/类似于C:/Program Files/,自己编译的软件会安装到此/usr/local/
- 类似于
注意bin,sbin,lib,lib64需要查看兼容性符号链接章节
运行时目录
/run/:存放运行时数据,套接字文件等的临时文件系统- 在启动时被刷新
/var/run/应指向此目录
/run/log/:存放实时系统日志/run/usr/:存放每个用户的运行时目录- 通常每个都是个临时文件系统
- 当用户log out 或者重启时刷新
/run/media/:存放实时挂载的硬盘
厂商提供的资源目录
/usr/:存放厂商提供的程序和文件/usr/src/:存放所有程序的源代码,主要是Linux核心程序/usr/local/:存放本地安装的软件和其他文件,与系统无关/usr/bin/:存放系统用户使用的二进制文件- shell不可用的二进制文件应存放到
/usr/lib/
- shell不可用的二进制文件应存放到
/usr/include/:存放系统库的c/c++ api header/usr/lib/:静态的私有的厂商数据,放有内部可执行文件和shell不可用的二进制文件,动态共享库/usr/share/:在多个包之间共享的资源,例如文档,man pages,字体等/usr/share/doc/:操作系统或系统包的文档
持久性可变系统文件
/var/:存放持久性的可变的系统数据/var/cache/:持久性的系统缓存数据/var/lib/:持久性的系统数据/var/log/:持久性的系统日志/var/tmp/:更大的持久实时系统,相对于/tmp/
虚拟内核和API文件系统
/dev/:存放外部设备/proc/:存放着程序列表和功能性组件等的虚拟文件系统- 虚拟目录,是内存的映射
- 不在硬盘而在内存上,可以修改
/proc/sys/:存储内核状态/sys/:特殊的文件系统,它是内核向用户空间暴露系统信息的一种方式。它的目录结构和文件通过 sysfs 文件系统实现,是一种动态的文件系统,随着系统状态的变化而变化。
兼容性符号链接
/bin,/sbin,/usr/sbin/->/usr/bin上/lib/->/usr/lib//lib64/->/usr/lib64//var/run/->/run/