简介
你可能听说过在linux中Everything is file,这一理念是继承自UNIX的设计原则。
文件系统层次结构
文件系统层次结构标准(Filesystem Hierarchy Standard,FHS)定义了Linux操作系统中的主要目录及目录内容。FHS由Linux基金会维护。 当前最新版本为3.0版,于2015年6月3日发布。链接。
不管你的实际物理磁盘如何,linux文件系统的所有文件和目录都出现在根目录"/"下。
我们来使用tree实际观察一下Ubuntu的文件结构。
sudo apt install tree
tree -L 1 /
1./目录,整个文件系统的根目录
2./bin目录,大多数常用命令的二进制文件,如ls,mv,cp,cat等
3./boot目录,启动系统所需的文件,如内核、引导程序等
4./cdrom目录,挂载 CD-ROM
5./dev,所有的设备文件
6./etc,存放系统的配置文件
7./home,用户的主目录
8./lib,二进制文件所需的库文件
9./lib64,64位的库文件
10./lost+found,lost+found目录的文件通常是未链接的文件(名字以及被删除),这些文件还被一些进程使用(数据没有删除),在系统突然关机时(内核panic或突然断电)出现
11./media,挂载额外的设备
12./mnt,也是一个挂载点,但是用于临时挂载
13./opt,存放额外的软件
14./proc,虚拟文件系统,当前内核运行状态的一系列特殊文件
15./root,root用户的主目录
16./run,在引导过程早期可用的tmpfs(临时文件系统),其中存储了临时运行时数据。
17./sbin,系统管理的二进制工具
18./snap,
19./srv,主要用来存储本机或本服务器提供的服务或数据
20./sys,硬件设备的驱动程序信息
21./tmp,临时文件
22./usr,用于存储只读用户数据的第二层次; 包含绝大多数的(多)用户工具和应用程序。
23./var, 变量文件——在正常运行的系统中其内容不断变化的文件,如日志,脱机文件和临时电子邮件文件