2.1 OpenEuler 24.03 目录结构

Linux 采用单一树形目录结构,所有文件、分区都以根目录 / 作为起点;Windows 每个磁盘分区拥有独立根目录。路径分隔符 Linux 用 /,Windows 用 \。OpenEuler 目录严格遵循 FHS 文件系统层次标准,每个目录分工明确。

2.1.1 核心系统目录及功能

1. /bin:存放普通用户、管理员都可执行的基础命令,已加入环境变量,任意目录直接执行,如 cpcat

2. /dev:设备目录,硬件设备全部映射到此目录,例如光驱 /dev/cdrom

3. /etc:系统配置文件目录,系统各类服务、软件配置全部存放于此,例如 dnf 源配置 /etc/dnf/dnf.conf

4. /home:普通用户家目录,每个普通用户对应一个子目录,如用户 teacher 对应 /home/teacher;服务器多用户环境建议独立分区。

5. /root:超级管理员 root 的家目录,区别于普通用户,直接放在根目录下。

6. /usr:存放系统应用程序、库文件、资源,系统体量最大目录之一,包含 /usr/lib 库文件。

7. /var:存放动态变化文件,日志、缓存、容器数据,日志默认放在 /var/log,docker 容器数据放在 /var/lib/docker

2.1.2 目录结构设计逻辑

1. 功能分类:配置放 /etc、日志放 /var/log,按功能拆分目录,方便定位维护。

2. 权限隔离:区分普通用户与管理员可执行命令目录,实现权限管控,提升系统安全。

3. 云原生适配:兼容物理机、虚拟机、云主机,适配云平台系统管理需求。

2.2 查看及检索文件内容

OpenEuler 绝大多数配置、日志都是纯文本文件,文件查看检索是故障排查、信息采集的基础技能。

2.2.1 基础文件查看命令

1. cat:适合小文件,一次性输出全部内容,支持同时查看多个文件。

  • 格式:cat 文件1 文件2
  • 缺点:文件过长直接刷屏,看不到前面内容。
  • 示例:cat /etc/openEuler-release /proc/version 查看系统和内核版本。

2. more / less:分页查看大文件,日志、大配置文件优先使用 less

  • more:简单分页;less 功能更强,支持向上翻页、关键词搜索。
  • 快捷键:Space 向下翻屏,Enter 逐行,/关键词 搜索,q 退出;less 独有 b 向上翻屏。
  • 可以搭配管道符 | less,把命令输出分页展示,例如 ls -lh /etc/*.conf | less

3. head / tail:查看文件首尾内容,默认输出 10 行。

  • head -n 4 文件名:查看前 4 行;
  • tail -n 10 文件名:查看末尾 10 行;
  • tail -f 文件名实时跟踪文件末尾,监控系统日志,Ctrl+C 结束跟踪,排查服务故障高频命令。

下表汇总了 cat、more、less、head、tail 五个常用文件查看命令的适用场景、常用选项与示例,方便快速选型。

命令 适用场景 常用选项 示例 优点 缺点
cat 查看小文件、合并多个文件内容 -n 显示行号 cat /etc/openEuler-release /proc/version 简单直接,一次输出全部内容,支持多文件 文件过长直接刷屏,看不到前面内容
more 分页查看大文件 Space 翻屏、Enter 逐行、q 退出 more /var/log/messages 分页展示,避免刷屏 只能向下翻页,不能向上回看
less 查看大文件、日志、大配置文件 b 向上翻屏、/关键词 搜索、q 退出 ls -lh /etc/*.conf | less 支持向上翻页、关键词搜索,功能更强 功能较多,初学者需要一定学习成本
head 查看文件开头内容 -n 行数 指定行数 head -n 4 文件名 快速查看文件头部,默认输出 10 行 只能看开头,无法查看文件中间和末尾
tail 查看文件末尾内容、实时跟踪日志 -n 行数 指定行数、-f 实时跟踪 tail -f 文件名 -f 可实时监控日志,排查故障高频命令 只能看末尾,查看开头需配合其他命令

2.2.2 高级检索与统计

1. grep 关键词检索

  • 格式:grep [选项] "匹配内容" 文件
  • -i 忽略大小写;-v 反向匹配,过滤掉匹配行。
  • 正则用法:^# 匹配 # 开头注释行,^$ 匹配空行。
  • 示例:过滤 dnf 配置注释与空行:grep -v "^#" /etc/dnf/dnf.conf | grep -v "^$",只打印有效配置。

2. wc 统计命令:统计文件行数、单词数、字节。

  • -l 统计行数,经常用来统计用户数量:wc -l /etc/passwd
  • -w 统计单词;-c 统计字节;无选项三者全部输出。
  • 可以配合管道,统计命令输出结果。

2.3 备份与恢复文档

cp 适合少量文件备份;大量文件推荐归档打包 + 压缩。归档:多个文件合并为一个包;压缩:减小磁盘占用。tar 工具可以一步完成打包压缩和解压恢复。

2.3.1 gzip & bzip2 压缩工具

注意:二者只支持单个文件压缩,不能直接压缩目录。

1. gzip:速度快,压缩比中等,后缀 .gzgzip -9 最高压缩比;解压 gzip -dgunzip

2. bzip2:压缩速度慢,压缩比更高,体积更小,后缀 .bz2;解压 bzip2 -dbunzip2

压缩后原始文件会被删除。

2.3.2 tar 归档核心工具

tar 可以直接调用 gzip、bzip2,实现打包压缩一体。选项可以省略 -。常用参数:

  • -c 创建归档包;-x 解压;-t 查看包内内容;
  • -z 调用 gzip(.tar.gz);-j 调用 bzip2(.tar.bz2);
  • -f 指定包文件名,必须写在所有选项最后
  • -C 指定解压目标目录;-p 保留原始文件权限。

备份格式:

  • tar zcvf 包名.tar.gz 目录
  • tar jcvf 包名.tar.bz2 目录

解压格式:

  • tar zxvf xxx.tar.gz -c / 目录
  • tar jxvf xxx.tar.bz2 -c / 目录

实操技巧:

1. 备份系统文件建议切换目录,使用相对路径,防止解压时破坏系统;

2. -p 保留权限,恢复后避免权限异常导致服务无法启动;

3. 解压前先用 tar -tzf 查看包内容确认,再解压;

4. 备份容器数据需要先停止容器,防止文件损坏。

2.3.3 备份恢复核心原则

1. 定期备份核心目录:/etc/boot/home/var/log

2. 异地备份,防止本机磁盘损坏丢失备份包;

3. 备份完成验证包完整性,测试可恢复;

4. 系统配置备份务必保留权限;

5. 云主机可以结合云快照 + tar 本地备份双重保障。

2.4 vi/vim 文本编辑器

vi 是字符终端默认编辑器,vim 是增强版本,支持语法高亮。核心难点:三种模式切换

2.4.1 安装与别名

OpenEuler 默认预装 vim;未安装执行 dnf install -y vim。设置别名 alias vi='/usr/bin/vim' 临时生效;写入 .bashrc 实现永久生效。

2.4.2 三种工作模式

1. 命令模式:vi 打开文件默认进入。所有模式按 Esc 回到命令模式。实现光标移动、删除复制查找。

2. 输入模式:可以输入编辑文字。命令模式按 i/a/o/I/O 进入输入模式。

3. 末行模式:命令模式输入 : 进入,实现保存、退出、批量替换。

重要:不要直接在输入模式和末行模式切换,一律先 Esc 回到命令模式中转。

2.4.3 命令模式常用操作

1. 进入输入模式按键

  • i 光标前插入;a 光标后插入;o 下新建一行;O 上新建一行;I 行首插入。

2. 光标移动

  • h j k l 替代方向键;$ 跳到行尾;gg 文件开头;G 文件末尾;5G 跳到第 5 行。

3. 删除复制粘贴

  • dd 删除一整行;5dd 删除 5 行;x 删除单个字符。
  • yy 复制一整行;3yy 复制 3 行。
  • p 粘贴到光标行下方;P 粘贴到上方。

4. 查找撤销

  • /关键词 向下搜索;n 下一个匹配;u 撤销;ZZ 大写,保存退出。

2.4.4 末行模式(冒号模式)

1. 保存退出

  • :w 保存;:q 退出;:q! 强制退出不保存;:wq / :x 保存退出。

2. 另存文件::w /root/new.conf

3. 批量替换语法::%s/旧内容/新内容/g

  • % 代表整个文件;g 本行全部匹配;替换路径可以用 # 代替 / 防止符号冲突。
  • 示例::%s#/old/path#/new/path#g
Logo

openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构

更多推荐