检查 内核信息
确保安装的kernel-dev 和内核版本一致!!!
rpm -qa|grep kernel
kernel-tools-3.10.0-1160.92.1.el7.x86_64
kernel-devel-3.10.0-1160.92.1.el7.x86_64
kernel-headers-3.10.0-1160.92.1.el7.x86_64
kernel-3.10.0-1160.92.1.el7.x86_64
kernel-tools-libs-3.10.0-1160.92.1.el7.x86_64
kernel-debug-devel-3.10.0-1160.92.1.el7.x86_64
安装 软件
yum install bcc
设置环境变量
export PATH=$PATH://usr/share/bcc/tools
故障
如果不一致将出现对应的错误
modprobe: FATAL: Module kheaders not found.
chdir(/lib/modules/3.10.0-1160.92.1.el7.x86_64/build): No such file or directory
Traceback (most recent call last):
File "//usr/share/bcc/tools/vfsstat", line 64, in <module>
""")
File "/usr/lib/python2.7/site-packages/bcc/init.py", line 325, in init
raise Exception("Failed to compile BPF text")
Exception: Failed to compile BPF text
故障解决方案
1:获取内核版本
uname -r
2: 删除掉无效的版本,避免高低版本不齐
查看现在系统可用内核版本 rpm -qa | grep kernel
kernel-headers-3.10.0-1062.9.1.el7.x86_64
kernel-devel-3.10.0-1160.83.1.el7.x86_64
kernel-debug-devel-3.10.0-1062.12.1.el7.x86_64
kernel-tools-libs-3.10.0-1062.9.1.el7.x86_64
kernel-3.10.0-957.12.2.el7.x86_64
kernel-3.10.0-1062.9.1.el7.x86_64
kernel-tools-3.10.0-1062.9.1.el7.x86_64
3:查看内核仓库中可安装的内核包
yum list --showduplicate kernel*
能找得到kernel.x86_64 3.10.0-1160.83.1.el7。
4:安装指定版本kernel
yum -y install "kernel-uname-r == 3.10.0-1160.83.1.el7.x86_64"
等等
5:查看内核版本的启动顺序
awk -F\' '$1=="menuentry " {print $2}' /etc/grub2.cfg
找到自己新安装的版本,一般最新安装的会是第一行
6:修改内核启动顺序
sudo vim /etc/default/grub
把GRUB_DEFAULT=saved改成GRUB_0=saved
运行命令重新生成内核配置
grub2-mkconfig -o /boot/grub2/grub.cfg
7:reboot重启,当前内核uname -r
3.10.0-1160.83.1.el7.x86_64