前言:
换了电脑,系统默认是win10,作为linux爱好者,怎么能容忍windows躺在我的硬盘里面,所以就果断换了linux(Centos8/RHEL8),但是换了之后问题多多:
1、没有网卡驱动
2、没有显卡驱动
安装系统这种文章太多,不值得写,但是国内我没有找到内核编译并且打包成rpm的,所以就自己动手写一下了。打包成rpm的好处就是可以使用dnf进行包管理,不用做过多的干涉。便于安装和卸载。重新编译内核安装之后,完美解决网卡和显卡驱动的问题。
1、创建用户:
创建单独的用户空间,以便于处理垃圾文件
useradd kerbuild
2、下载内核:
#切换到刚刚创建的用户环境su - kerbuild#开始下载内核,当然你可以使用wget进行下载。axel https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.9.1.tar.xz#由于国内下载比较慢,所以使用多线程下载工具axel。#解压内核文件:tar -xvf linux-5.9.1.tar.xz
cd linux-5.9.1
3、安装必须的包
dnf install ncurses-devel make gcc bc openssl-devel elfutils-libelf-dev rpm-build flex bison screen
#安装rpm开发环境
dnf groupinstall 'RPM Development Tools'
#安装开发环境
dnf groupinstall 'Development Tools'
#当然可能安装过程中你还会缺少,那就自行解决
4、拷贝当前内核配置文件
# 查看当前正在使用的内核
uname -r
#列出内核配置文件
ls /boot/config-*#找到你正在使用的那个内核配置文件#拷贝配置文件
cp -v /boot/config-4.18.0-193.28.1.el8_2.x86_64 .config
5、Make menuconfig
#打开之后直接保存即可#执行以下命令配置内核,一般来说不会有问题,如果提示有问题,那就按照提示解决就行
make menuconfig
#打开配置对话框之后,直接按方向键右,找到<Save>之后回车,保存配置文件即可,保存后找到<Exit>直接退出就行。
6、修改.config配置文件
vim .config
#1、 搜索:pem 找到CONFIG_SYSTEM_TRUSTED_KEYS 配置项将其置为空,这个是一个安全问题,需要修改回默认项。
#2、 搜索:CONFIG_DEBUG_INFO_BTF 改为n
#3、修改后为: CONFIG_SYSTEM_TRUSTED_KEYS="" CONFIG_DEBUG_INFO_BTF=n
7、编译rpm
make -j `cat /proc/cpuinfo | grep processor| wc -l` rpm-pkg
#-j 后面是你的cpu核心数
8、安装
#等待内核编译完成后会输出rpm所在的具体位置
dnf install kernel-5.9.1-1.x86_64.rpm kernel-headers-5.9.1-1.x86_64.rpm kernel-devel-5.9.1-1.x86_64.rpm
9、安装nvidia驱动
需要注意的是,下载最新的驱动,并且如果之前安装过的话,要先卸载。由于这种文章太多,大家自己找找就行。
9.1,驱动卸载
#1、切换到l3
init3
#2、卸载 root用户运行以下命令就可以卸载
nvidia-uninstall