问题:安装CentOS 7.6后无法连接上无线网络

在这里插入图片描述

寻找原因

(1)查看笔记本无线网卡型号
在这里插入图片描述
(2)查看Linux对Intel网卡的支持
Linux Support for Intel® Wireless Adapters
在这里插入图片描述
发现Intel的最新网卡AX 201需要Linux内核版本在5.2及以上,并安装iwlwifi-Qu-48.13675109.0.tgz固件

(3)查看CentOS系统与Linux内核的对应关系
在这里插入图片描述
发现即使CentOS目前最新8.0版本的内核也不能满足要求,那接下来只能在没有网络的情况下手动编译内核代码、升级内核

解决方案

下载Linux内核源码 官网地址

tar -xf linux-5.10.9.tar.xz -C /usr/src/                             //将Linux代码解压到指定目录
cd /usr/src/
ln -s linux-5.10.9 linux                                             //设置软链接
cd linux-5.10.9/
cp /boot/config-3.10.0.x86_64 .config                                //这里改为自己目前的内核版本
make menuconfig                                                      //开始配置

报错:缺少nurces-devel包
解决方案:在https://pkgs.org/download/网站 下载缺失的安装包并安装
在这里插入图片描述

make -j 12     //多线程编译提高编译速度

报错:Cannot generate ORC metadata for CONFIG_UNWINDER_ORC=y, please install libelf-dev, libelf-devel or elfutils-libelf-devel
解决方案:安装elfutils-libelf-devel包,提示先安装elfutils-libelf和pkgconfig(zlib)这两个包,按顺序安装依赖

报错:致命错误:openssl/bio.h:没有那个文件或目录
解决方案:安装openssl-devel包
openssl-devel <---- zlib-devel + krb5-devel + openssl-libs
krb5-devel <---- keyutils_libs-devel + krb5-libs + libcom_err-devel + libkadm5 + libselinux-devel + libverto-devel
libcom_err-devel <---- libcom_err
libselinux-devel <---- libselinux + libsepol-devel + pkgconfig(libpcre) + pkgconfig(libsepol)

报错:-Werror=date-time:没有选项 -Wdate-time
解决方案:修改Makefile文件 /Werror命令 定位940行 将其修改为“…+=$(call cc-option, -Werror=date-time)”

报错:隐式声明函数 ‘_Generic’ [-Werror = implicit-function-declaration]
解决方案:修改Makefile文件

报错:Sorry, your version of GCC is too old, please use 4.9 or newer.
解决方案:升级GCC版本
下载GCC源码 http://ftp.gnu.org/gnu/gcc

tar -jxf gcc-5.2.0.tar.bz2 -C /usr/local/
cd /usr/local/gcc-5.2.0
./contrib/download_prerequisites //自动下载gmp、isl、mpc、mpfr包
tar -xzf mpc-0.8.1.tar.gz
tar -xjf mpfr-2.4.2.tar.bz2
tar -xjf gmp-4.3.2.tar.gz.bz2
ln -sf gmp-4.3.2 gmp             //设置软链接
ln -sf isl-0.15 isl
ln -sf mpc-0.8.1 mpc
ln -sf mpfr-2.4.2 mpfr
cd ..
mkdir gcc-build-5.2.0
cd gcc-build-5.2.0
../gcc-build-5.2.0/configure –enable-checking=release –enable-languages=c,c++ --disable-multilib
make -j 12
make install
gcc -v                          //打开一个新的终端,查看目前GCC版本
g++ -v

报错:You’re building kernel with non-relpoline compiler
解决方案:menuconfig修改配置文件,/命令查找‘Avoid spe’,将其对应选项设置为->[ ]

重新编译

make -j 12

make modules_install

make install

下载对应固件并安装

tar  -zxvf  iwlwifi-Qu-48.13675109.0.tgz
cp iwlwifi-*.ucode /lib/firmware

圆满结束

重新启动,无线网卡已经可以正常使用了!

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐