---
title: eBPF环境检查
description: "- 操作系统的内核版本须为4.1及其以上。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengdevps/profiler/diagnosis/kunpengoper_06_0003.html
sourcePath: /source/zh/kunpengdevps/profiler/diagnosis/kunpengoper_06_0003.html
indexId: 49fac7c15252129ac4e53c6dab9a34a74c4f2b8906fe67f40f16f16026c8ac7167
---
# eBPF环境检查

- 操作系统的内核版本须为4.1及其以上。
- 如环境配置修改后依旧不支持，可尝试使用openEuler 20.03（LTS）操作系统。
- 宿主机支持eBPF时，Docker容器中才可运行任务。


#### 检查环境配置

1. 检验内核参数。
  使用zcat /proc/config.gz或cat /boot/config-$(uname -r)查看内核参数设置，拥有eBPF能力的参数配置如下，若内核参数不一致，需重新配置后重新编译内核或重装系统。

```
CONFIG_BPF=y
CONFIG_BPF_SYSCALL=y
CONFIG_BPF_JIT=y
CONFIG_HAVE_BPF_JIT=y   #内核版本为4.1到4.6时
CONFIG_HAVE_EBPF_JIT=y  #内核版本为4.7及以上时
```


  图1 查看内核参数

2. 检验内核头文件目录。

```
ll /lib/modules/$(uname -r)/build
```


  查看build目录是否存在指向文件，存在并指向源码内核文件则满足条件，不存在则不满足任务所需条件。

  图2 build无指向文件

  图3 build存在指向文件

3. 若build无指向文件，可重新安装。
  CentOS系统：

```
yum install kernel-headers kernel-headers.aarch64
```


  Ubuntu系统可使用：

```
sudo apt-get install linux-headers-$(uname -r)
```


  若依旧没有对应指向文件，可手动链接/usr/src/kernels/$(uname -r)。

```
ln -s /usr/src/kernels/$(uname -r) /lib/modules/$(uname -r)/build
```
