Linux 补充

目录

第一部分 存储管理

1 存储基础:块设备、分区与文件系统

1.1 存储设备与块设备

1.2 分区与格式化

1.3 文件系统与挂载

2 存储管理:查看、挂载与卸载

2.1 查看存储信息

2.2 挂载与卸载文件系统

[3 文件检索:locate 与 find](#3 文件检索:locate 与 find)

[3.1 locate:基于索引的快速检索](#3.1 locate:基于索引的快速检索)

[3.2 find:实时遍历的精准检索](#3.2 find:实时遍历的精准检索)

4 存储管理总结

[第二部分 RH124 其他补充重点](#第二部分 RH124 其他补充重点)

5 通过本地文档获取帮助

[5.1 man 手册页](#5.1 man 手册页)

[5.2 --help 与 /usr/share/doc](#5.2 --help 与 /usr/share/doc)

6 创建、查看和编辑文本文件(vim)

[6.1 vim 三种模式](#6.1 vim 三种模式)

[6.2 vim 常用操作](#6.2 vim 常用操作)

7 分析和存储日志

[7.1 日志架构与 /var/log](#7.1 日志架构与 /var/log)

[7.2 journalctl 查看日志](#7.2 journalctl 查看日志)

7.3 时间同步

8 归档和传输文件

[8.1 tar 归档与压缩](#8.1 tar 归档与压缩)

8.2 压缩工具

[8.3 rsync 与 scp 远程传输](#8.3 rsync 与 scp 远程传输)

9 交换空间(swap)管理

[9.1 swap 的作用与查看](#9.1 swap 的作用与查看)

[9.2 创建与启用 swap](#9.2 创建与启用 swap)


第一部分 存储管理

1 存储基础:块设备、分区与文件系统

1.1 存储设备与块设备

存储设备是计算机中用于持久化数据 的物理硬件,如机械硬盘(HDD)、固态硬盘(SSD)、U 盘等。在 Linux 中,这些设备被抽象为块设备文件 ,存放在 /dev 目录下。不同接口类型的设备命名规则如下:

|-------------------|------------------------------|---------------------|
| 存储接口类型 | 设备命名 | 说明 |
| SATA / SCSI / USB | /dev/sda、/dev/sdb... | 按检测顺序编号,字母依次递增 |
| NVMe SSD | /dev/nvme0n1、/dev/nvme1n1... | nvme 控制器编号 + 命名空间编号 |
| 虚拟机磁盘 | /dev/vda、/dev/vdb... | virtio 虚拟磁盘 |

1.2 分区与格式化

  • 分区 :将一个大的物理存储设备划分为多个独立的逻辑区域,每个分区就是一个独立的块设备(如/dev/sda1、/dev/sdb2)。不同分区可用于不同用途,如系统分区、数据分区、交换分区。
  • 格式化 :在分区上创建文件系统的过程,定义了数据在存储介质上的组织方式、命名规则和访问接口。
  • RHEL 默认使用 XFS 作为本地文件系统,同时也支持 ext4、vfat 等。

1.3 文件系统与挂载

  • 文件系统 :操作系统管理和组织存储设备上数据的方法和数据结构,让我们可以用"文件"和"目录"的抽象概念操作数据,而无需关心底层物理块。
  • 挂载(Mount) :将一个文件系统(通常是分区或设备)附加到 Linux 文件系统树的某个空目录(挂载点)上,使该文件系统的内容可被访问。
  • 挂载点 :文件系统在目录树中的入口,如 /、/boot、/mnt 等。卸载(umount) 则是挂载的逆操作。

2 存储管理:查看、挂载与卸载

2.1 查看存储信息

|-----------|---------------------------------|-------------------|
| 命令 | 作用 | 示例 |
| df -h | 查看文件系统磁盘空间,以1024 为单位的人类可读格式 | df -h |
| df -H | 查看文件系统磁盘空间,以 SI 单位(1000)显示 | df -H |
| du -sh | 估算文件或目录占用的磁盘空间 | du -sh /usr/share |
| lsblk -fp | 列出块设备及分区,显示完整路径、UUID、文件系统类型和挂载点 | lsblk -fp |

2.2 挂载与卸载文件系统

通过设备路径挂载:

  • mkdir -p /mnt/data && mount /dev/sdb1 /mnt/data

通过 UUID 挂载(推荐): UUID 是文件系统的唯一标识符,比设备路径更稳定,不会因设备检测顺序变化而改变。

  • lsblk -fp /dev/sdb1 # 先查询 UUID
  • mount UUID="efd314d0-b56e-45db-bbb3-3f32ae98f652" /mnt/data # 再挂载

卸载注意事项: 卸载前必须确保没有任何进程正在访问该挂载点下的文件,否则会卸载失败;强制卸载可能导致数据丢失或损坏。

  • umount /mnt/data # 卸载前先确认无进程占用

3 文件检索:locate 与 find

3.1 locate:基于索引的快速检索

  • 从预生成的数据库(mlocate.db )中查找文件,速度极快。
  • 数据库非实时更新 ,需手动执行 updatedb 或等待每日自动更新。
  • sudo updatedb && locate passwd # 更新数据库后搜索含 passwd 的文件

3.2 find:实时遍历的精准检索

find 通过实时遍历文件系统树查找文件,功能更强、结果更准,但速度较慢;支持按文件名、权限、大小、类型、时间等多种条件组合搜索。

|----------|----------------------------------|-----------------|
| 搜索维度 | 示例命令 | 说明 |
| 按文件名 | find / -name sshd_config | 精确查找文件名 |
| 模糊匹配 | find /etc -name '*pass*' | 通配符模糊匹配 |
| 忽略大小写 | find / -iname '*messages*' | 不区分大小写 |
| 按权限 | find /home -perm 764 | 查找权限为 764 的文件 |
| 按权限(符号) | find /home -perm u=rwx,g=rw,o=r | 按符号权限匹配 |
| 按大小 | find /usr/bin -type f -size +50k | 查找大于 50KB 的普通文件 |
| 按类型 | find /etc -type d | 查找所有目录 |

4 存储管理总结

  • 快速查找优先使用 locate :基于索引,秒级返回。
  • 复杂、精准的检索需求用 find :支持多维条件组合,实时准确。
  • 挂载设备使用 UUID :可避免因设备顺序变化导致的挂载失败。

第二部分 RH124 其他补充重点

5 通过本地文档获取帮助

5.1 man 手册页

  • man 命令名 :查看命令的手册页,是排障的第一手资料。
  • 常用手册章节:1 用户命令、5 文件格式、8 系统管理。
  • man -k 关键词 :按关键词搜索相关手册页。

5.2 --help 与 /usr/share/doc

  • 命令 --help :快速查看命令用法摘要,无需翻手册。
  • /usr/share/doc/ :软件包自带的文档目录,含示例配置与说明。

6 创建、查看和编辑文本文件(vim)

6.1 vim 三种模式

|--------|----------------|----------------|
| 模式 | 进入方式 | 主要用途 |
| 命令模式 | 启动 vim 默认进入 | 移动光标、删除、复制、粘贴 |
| 插入模式 | 按 i / a / o 进入 | 输入和修改文本 |
| 末行模式 | 按 : 进入 | 保存退出、搜索替换、行号设置 |

6.2 vim 常用操作

  • ★ 必记 :Esc 返回命令模式;:wq 保存退出;:q! 不保存强制退出。
  • 命令模式常用:dd 删除当前行、yy 复制当前行、p 粘贴、/关键词 搜索。
  • vim filename # 打开或创建文件进行编辑

7 分析和存储日志

7.1 日志架构与 /var/log

系统日志由 rsyslog 服务统一收集并写入 /var/log 目录,常见日志文件如下:

|-------------------|-------------|
| 日志文件 | 记录内容 |
| /var/log/messages | 系统消息与通用服务日志 |
| /var/log/secure | 认证与安全相关事件 |
| /var/log/maillog | 邮件服务日志 |
| /var/log/boot.log | 系统启动日志 |

7.2 journalctl 查看日志

  • journalctl :查看 systemd 统一管理的日志。
  • journalctl -u sshd # 查看指定服务日志
  • journalctl -p err # 按级别过滤(err 及以上)
  • journalctl -b # 查看本次启动以来的日志
  • journalctl -f # 实时跟踪新日志

7.3 时间同步

  • timedatectl :查看与设置系统时间、时区。
  • chronyd :RHEL 9 默认的时间同步服务(NTP 客户端/服务端)。

8 归档和传输文件

8.1 tar 归档与压缩

|--------------|----------------------|------------------------------|
| 选项 | 作用 | 示例 |
| -c / -x / -t | 创建 / 解包 / 列出归档 | tar -czvf backup.tar.gz /dir |
| -z / -j / -J | gzip / bzip2 / xz 压缩 | tar -xzvf backup.tar.gz |
| -v / -f | 显示详细信息 / 指定归档文件名 | tar -tf backup.tar.gz |

8.2 压缩工具

|--------|----------|--------------------|
| 工具 | 压缩后缀 | 解压命令 |
| gzip | .gz | gunzip 或 gzip -d |
| bzip2 | .bz2 | bunzip2 或 bzip2 -d |
| xz | .xz | unxz 或 xz -d |
| zip | .zip | unzip |

8.3 rsync 与 scp 远程传输

  • rsync :增量同步,-a 归档、-v 详细、-z 压缩;本地与远程均可。
  • rsync -avz /dir/ user@host:/dest/
  • scp :远程复制文件,基于 SSH 加密传输。
  • scp file user@host:/path/ # 本地复制到远程

9 交换空间(swap)管理

9.1 swap 的作用与查看

  • swap :内存不足时的扩展空间,可为交换分区或交换文件。
  • free -h :查看内存与 swap 使用情况。

9.2 创建与启用 swap

  • ★ 必记 :创建交换文件三步------fallocate 分配 → mkswap 格式化 → swapon 启用。
  • fallocate -l 2G /swapfile && chmod 600 /swapfile && mkswap /swapfile && swapon /swapfile
  • 持久化:将 /swapfile swap swap defaults 0 0 写入 /etc/fstab 。
  • 禁用:swapoff /swapfile
相关推荐
东城居士1 小时前
理解设备树下的platform驱动编写
linux·嵌入式系统
晴天的雨.9921 小时前
【Linux】Shell 命令以及运行原理+权限管理
linux·运维·服务器
djjjx.1 小时前
Linux工具篇 (六):GDB 调试从底层逻辑到高阶实战
linux·运维·服务器·gdb
IT大白鼠1 小时前
彭大帅的AI运维助手实战案例 5 · 新接手的服务器,先让 AI 摸底
运维·服务器·人工智能
coward912 小时前
RK3576 双千兆 GMAC 驱动加载异常问题排查与总结
linux
幼儿园蛋小黄2 小时前
从设备树到 ARM 驱动:嵌入式 Linux 驱动开发学习总结
linux·arm开发·驱动开发
dishugj2 小时前
HANA集群计划内切换与维护操作
java·linux·数据库
该逃避避2 小时前
出海广告跑不起来怎么办?动态住宅IP助力广告跑量
运维·服务器·网络
一条泥憨鱼2 小时前
【从0开始学习计算机网络】| ip协议-ttl-标识-分片偏移-ip分片与重组
运维·服务器·网络