ubuntu升级后网卡不可用,提示*-network UNCLAIMED
【背景】
前两天给机器人升级了固件,对应的计划用其官方提供的ROS2版本的代码,我原先的系统是Ubuntu20,新的ROS2代码是humble版本的,需要把升级操作系统到Ubuntu22。升级完之后,发现系统内核是5.15.x, 和直接安装的Ubuntu22内核版本6.8.0-50不一致,就手动安装了该版本的内核。安装完后发现无法联网,无论是有线还是Wifi,一下子觉得不对劲。经过大量搜索,得到的方法基本相似,都没有解决我的问题,直到看到这篇帖子,才真正解决了网卡驱动的安装问题。具体的操作方法和步骤如下:
一般是先通过ubuntu的系统命令查看网络适配器状态,如:
sudo lshw -c network
如果得到的信息中包含*-network UNCLAIMED字段,说明网卡驱动没有安装。这是因为升级ubuntu系统时,除了要安装基础内核组件,还需要安装和内核版本匹配的额外的组件来安装网卡驱动,如linux-modules-extra-6.8.0-50-generic。如果能且回到其它可以上网的内核版本(一般都是可以的,在bootmenu中可以切换),然后执行软件安装命令:
sudo apt-get install linux-modules-extra-6.8.0-50-generic
安装完成后,重启系统并切换到新的内核版本,就会发现网卡已经能使用了,可以正常联网。
如果还不能上网,需要查看一下系统文件/etc/NetworkManager/NetworkManager.conf中[ifupdown]节点下的managed的值是否为true,如果是false,需要改为true。保存完后需要执行命令以重启网络服务,使修改生效。
sudo service NetworkManager restart
基本上能解决很大一部分的网络不可用的问题。其它网络问题,以后遇到了再分享给大家。