wiki/运维/Linux/笔记/30.Linux内核.md
2026-04-08 19:40:00 +08:00

2.9 KiB
Raw Permalink Blame History

1、Linux 内核概览

Linux 内核是操作系统最核心的部分,负责:

  • 进程调度
  • 内存管理
  • 设备驱动
  • 文件系统
  • 网络协议栈
  • 系统调用接口

用户平时操作的大多数命令和程序,最终都需要通过内核来访问系统资源。

2、内核版本号

以一个示例版本为例:

linux-5.4.119-19-0009

可以大致理解为:

  • 5:主版本号
  • 4:次版本号
  • 119-19-0009:修订版本或发行版附加版本信息

通常主版本和次版本更偏向内核主线版本,后面的部分则常见于发行版维护补丁版本。

3、源码状态与协议

Linux 内核是开源软件,常见采用 GPL 协议发布。

4、Linux 发行版和内核的关系

Linux 内核并不等于 Linux 发行版。发行版通常是在内核基础上,加上:

  • 软件包管理器
  • 系统工具
  • 服务管理组件
  • 默认配置
  • 桌面环境或服务器工具链

常见发行版:

  • Red Hat / Rocky Linux / AlmaLinux
  • Debian
  • Ubuntu
  • Fedora
  • Alpine

4.1 简单理解

  • Fedora:相对更新、更激进
  • Ubuntu桌面和服务器都很常见LTS 版本支持周期长
  • Debian:稳定著称
  • Alpine:轻量、简洁,容器场景常见

5、用户态与内核态

5.1 用户态

用户程序运行的空间。

特点:

  • 权限受限
  • 不能直接操作底层硬件和关键系统资源
  • 需要通过系统调用进入内核态

5.2 内核态

内核运行的空间。

特点:

  • 拥有更高权限
  • 可以直接管理 CPU、内存、磁盘、网络等资源

5.3 两者关系

应用程序大多运行在用户态,但在访问文件、网络、设备等资源时,需要通过系统调用进入内核态完成相关操作。

6、/proc 与内核参数管理

Linux 通过 /proc 这个伪文件系统暴露很多内核状态、统计信息和可调参数。

例如:

  • 进程信息
  • CPU 信息
  • 内存信息
  • 网络参数
  • sysctl 内核参数

7、sysctl 命令

常见配置文件:

/etc/sysctl.conf

常见用法:

7.1 临时设置参数

sysctl -w 参数=value

7.2 重新加载配置文件

sysctl -p

7.3 查看指定参数

sysctl 参数名

7.4 查看所有生效参数

sysctl -a

8、常见运维建议

  • 先理解“内核”和“发行版”不是同一个概念
  • 调整内核参数前,先明确业务目标
  • 临时调优先用 sysctl -w
  • 永久调优再写入 /etc/sysctl.conf/etc/sysctl.d/
  • 不熟悉的内核参数不要直接在生产环境修改

9、小结

  • Linux 内核负责系统最底层的资源管理
  • 发行版是在内核之上封装出的完整操作系统环境
  • 用户态和内核态是 Linux 权限与执行模型的重要概念
  • /procsysctl 是观察和调整内核行为的常用入口