系列文章目录
第一章 openEuler 安装指南
第二章 openEuler 网络配置
第三章 openEuler 文件系统
文章目录
- 系列文章目录
- 前言
- 一、openEuler中的文件系统
- 1.整体架构
- 2.文件系统层次结构
- 3. FHS定义的一级目录结构
- 二、常用命令
- 1. pwd 查看当前所在的目录路径
- 2. ls 查看当前目录下的所有文件
- 3. cat 对目标文件进行只读操作
前言
本章主要记录openEuler的文件系统和涉及的常用命令。
一、openEuler中的文件系统
1.整体架构
在openEuler中,文件系统架构如下图所示,进程位于文件系统架构的最上层,它只与虚拟层交互。虚拟层中一个成为虚拟文件系统(Virtual File System,VFS)的中间层充当各类物理文件系统的管理者。VFS抽象了不同文件系统的行为,为用户提供一组通用、统一的API,使用户在执行文件打开、读取、写入等命令时,不用关心底层的物理文件系统类型。在实现层,操作系统可以选择多种物理文件系统(如Ext4、NTFS等)。
openEuler默认采用Ext4文件系统作为实现层的物理文件系统。VFS是用户可见的一棵目录树。实现层的物理文件系统则作为一棵子目录树,挂载在VFS目录树的某个目录上。
2.文件系统层次结构
文件系统层次结构标准(File System Hierarchy Standard,FHS)是一种参考标准,它定义了Linux发行版中的目录结构和目录内容。大多数Linux发行版都采用此标准,某些UNIX变体也采用此标准。openEuler(22.03LTS)遵循的是FHS2.3版本。(FHS官方文档地址)
FHS标准对文件做了基本的分类,如静态的、可变的以及可共享的、非共享的,不同类的文件要组织到不同的目录中。
共享文件:保存在一台主机上,但可以被其他主机访问。
非共享文件:只能被其宿主主机访问。
静态文件:一般不需要更新但修改时必须有系统管理员介入的文件,主要包括二进制可执行文件、库、文档、手册等文件。静态文件甚至可以保存到只读介质上,而且一般也不用做备份。
非静态文件:静态文件以外的文件经常会发生变化,如数据库文件、临时文件、日志文件等,这类文件被称为可变文件。
以下为openEuler系统中几类文件的例子:
变化情况 | 共享情况 | |
---|---|---|
共享文件/目录 | 非共享文件/目录 | |
静态文件/目录 | /bin,/lib,/usr,/opt | /boot,/etc |
可变文件/目录 | /var/mail,/var/spool/cups | /tmp,/var/lock,/var/run |
3. FHS定义的一级目录结构
目录 | 描述 |
---|---|
/ | 整个VFS文件系统的根目录 |
/bin | 可执行文件目录。存放在单用户维护模式下可用的必要命令;面向所有用户,例如cat、ls、cp |
/boot | 存放引导文件的目录。这些引导文件是Linux内核和系统开机所需的配置文件,例如kernel、initrd;该目录通常对应一个单独的分区 |
/dev | 存放设备文件(如/dev/null)的目录 |
/etc | 配置文件目录 |
/home | 用户住目录,包含保存的文件、个人设置等,通常对应一个单独的分区 |
/lib | 系统库函数目录,包含目录 /bin/ 和 /sbin/ 中二进制文件所依赖的库文件 |
/media | 可移除设备(CD-ROM)的挂载目录 |
/mnt | 临时设备的挂载目录 |
/opt | 可选软件安装目录,用于安装第三方程序 |
/proc | 虚拟文件系统目录,用于在内存中保存数据。例如 uptime、network。在 Linux 中,挂载格式为 procfs |
/root | 超级用户的主目录 |
/sbin | 重要可执行文件目录,保存超级用户才能使用的命令,例如 init、ip、mount |
/srv | 互联网站点数据目录,例如保存 FTP、WWW 服务的数据 |
/tmp | 临时文件目录,在系统重启时,该目录中的文件不会被保留 |
/usr | 系统软件资源目录;包含绝大多数的用户工具和应用程序。注意,其名字不是user的缩写,而是 UNIX Software Resource 的缩写 |
/var | 变量文件目录,保存在系统正常运行过程中内容不断变化的文件,如日志、脱机文件和临时电子邮件文件。有时对应一个单独的分区 |
除此之外,openEuler(22.03 LTS)还有几个其他的目录,如下:
目录 | 描述 |
---|---|
/afs | 新出现的目录,暂时不清楚是否跟AFS系统有关,后续在调整 |
/lib64 | 系统库函数目录,包含目录 /bin/ 和 /sbin/ 中二进制文件所依赖的库文件(64位) |
/lost+found | 这个目录在使用标准的ext2/ext3文件系统格式时产生的一个目录,目的在于当文件系统发生错误时,将一些遗失的片段放置在该目录。 |
/run | 是一个临时文件系统,存储系统启动以来的信息。当系统重启时,这个目录下的文件被删除。 |
/sys | 虚拟文件系统目录,跟proc类似,用于输出当前系统上硬件设备相关信息的虚拟文件系统 |