Linux安装新内核后无法上网

从网上下载了Linux内核源码。版本是5.11.1。编译,安装之后。使用新内核重启显示shim无效,然后在网上查了说在bios里将secure boot设为disable就可以了。现在新内核是能进去了,但是电脑没有网了,设为enable也没网。不知道什么原因,有没有人知道想请教一下原因及解决办法

当在 BIOS 中关闭 Secure Boot 并使用自己编译的内核启动时,通常会发生无法访问网络的情况。这是因为网络驱动程序可能在 Secure Boot 保护下运行时才能正常工作。

一种解决方法是将 Secure Boot 重新启用,然后可以试试使用正确的签名对网络驱动程序进行签名,并将其添加到 Secure Boot 白名单中。这样在启动时 Secure Boot 就会信任驱动程序,并允许其加载。

另一种解决方法是在编译内核时启用网络驱动程序。这可以通过将驱动程序编译为内核模块,或者将驱动程序链接到内核中来实现。如果将驱动程序编译为内核模块,就在系统启动时可以加载驱动程序。

还有一种解决方法是使用内核命令行选项启用网络驱动程序。在系统启动时,可以在内核命令行中指定启用哪些驱动程序。例如可以使用以下命令行选项启用网络驱动程序:

modprobe driver_name

这将加载驱动程序,并允许访问网络。
望采纳。

emmm下载的不对可能?官网上其他版本试试吧,我下载的都没出现这个问题


1. 启动旧的内核进入系统

2. 安装新内核源码

3. 找出当前的网卡型号

4. 尝试卸载某个与网卡相关的内核模块,观察是否影响当前网卡的使用,如果有影响,那么便可以判断当前的网卡使用的就是这个内核模块驱动网卡的

5. 从/boot目录中找到旧内核的配置文件,查找是否有对应网卡的选项被使能

6. 从/boot目录中找到新内核的配置文件,加入对应网卡的内核模块选项

7. 重新编译安装内核及模块

  make -j4 && sudo make modules_install && sudo make install

8. 重启即可进入最新的内核正常使用网络



出现这种故障一般原因有2:

1)与NetworkManager 服务冲突;这时,我们直接关闭 NetworkManger 服务就好了, 执行service NetworkManager stop,并且禁止开机启动 chkconfig NetworkManager off 。

2)与配置文件的MAC地址不匹配,这种情况我们查看修改 /etc/udev/rules.d/70-persistent-net.rules文件的MAC地址和 /etc/sysconfig/network-scripts/ifcfg-eth0一样就好了。
执行重启网卡:
ip link set eth0 down/up
ifdown/ifup eth0

make menuconfig的时候,Networking Support里面选项检查一下,看看option里面是不是有些关键地方没有打开,或者被设置为module了

在新内核下重新安装网卡驱动试试
https://www.cxyzjd.com/article/a1367790917/113523954

题主你好,我找到篇跟你所提的问题类似,请试用一下,https://blog.csdn.net/Anne332/article/details/118788669
如果有效,还望采纳。

如果你在Linux系统中从网上下载了内核源码并进行了编译和安装,但是发现电脑没有网络连接,那么可能是内核安装后没有正确配置网络参数导致的。

为了解决这个问题,你需要在Linux系统中进行以下操作:

  1. 查看网络设备信息:在终端中输入命令"ip a",查看你的电脑上安装的网络设备信息。网络设备的名称通常是eth0、eth1等。

  2. 编辑网络配置文件:打开/etc/sysconfig/network-scripts/ifcfg-设备名称文件,如/etc/sysconfig/network-scripts/ifcfg-eth0,编辑网络参数。

  3. 设置IP地址:在网络配置文件中设置IPADDR=IP地址参数,指定网络设备的IP地址。

  4. 设置网关:在网络配置文件中设置GATEWAY=网关地址参数,指定网络设备的默认网关地址。

  5. 设置DNS服务器:在网络配置文件中设置DNS1=DNS服务器地址参数,指定网络设备的DNS服务器地址。

  6. 启动网络服务:在终端中输入命令"service network start",启动网络服务

如果安装新内核后无法上网,可能是由于内核缺少必要的网络驱动程序导致的。在安装新内核之前,需要确保把所有必要的网络驱动程序包含在内核中。

要解决这个问题,需要在编译内核时启用所有必要的网络驱动程序。具体来说,需要进入内核配置菜单(通常是通过运行 make menuconfig 或 make xconfig 来打开),然后启用所有必要的网络驱动程序。

例如,如果使用的是 Intel Ethernet 驱动程序,可以在内核配置菜单中搜索 "Intel Ethernet",然后启用相应的选项。同样,如果使用的是 Atheros Ethernet 驱动程序,可以在内核配置菜单中搜索 "Atheros Ethernet",然后启用相应的选项。

另外,还可以考虑使用 dkms 工具安装网络驱动程序。dkms 工具可以帮助在系统升级内核之后自动重新编译和安装网络驱动程序。

在使用新内核后没有网络连接可能是由于内核没有包含必要的网络驱动程序导致的。

首先,你可以在终端中使用 lsmod 命令查看已加载的内核模块,看看有没有对应的网络驱动程序。

如果没有,你可以在编译内核时使用选项 make menuconfig 手动选择并包含你的网卡驱动程序。在选项中,你可以通过搜索 "network" 来找到相关的选项,然后启用需要的驱动程序。

你也可以在安装内核时使用命令 make modules_install 来安装内核模块,然后使用 modprobe 命令加载需要的模块。

如果以上方法都无法解决问题,你可以考虑查看内核日志,看看是否有关于网络的错误信息。可以使用 dmesg 命令查看日志。

如果仍然不能解决问题,你可以尝试使用其他方法,例如:

尝试使用其他网络驱动程序
尝试在 BIOS 设置中调整网络相关的设置
尝试使用网线连接,看看是否存在无线网络的问题