信创服务器总死机原因及解决办法

哈喽,你好啊,我是雷工!

最近有个项目使用信创的服务器,总是出现死机的情况,

联系厂家检查了一下,说是沐创网卡固件较低造成的,

让移除网卡或升级固件尝试一下。

记得5月份按厂家的说法处理过一台,

处理完观察没有出现死机的情况。

现在其余3台也要使用,但距离上次处理过去3个多月了,都忘记上次咋搞的了。

看来还是有做笔记的必要,于是这次记录一下解决过程。

便于以后类似问题的快速处理。

01 服务器系统

服务器信息

02 操作步骤

要先更新驱动rnp-1.0.102.tar,再更新固件。

2.1、下载驱动固件

首先通过厂家提供的连接下载沐创网卡驱动和固件;

2.2、指定目录

将驱动压缩包解压缩,然后进入解压缩文件中的指定目录src文件夹中,

由于部分操作需要root权限,先切换到root用户;

[admin@localhost src]$ su root

密码:

[root@localhost src]#

2.3、编译驱动

在src文件夹中点击右键-点击【在终端中打开】,打开一个终端,

输入:sudo make 编译驱动

编译驱动显示完整内容如下:

[root@localhost src]# sudo makeMakefile:44: *** compile without define.mk.filtering include/linux/dev_printk.h outfiltering include/net/flow_keys.h outfiltering include/linux/device/class.h outall files (for given query) filtered outfiltering include/linux/device/class.h outfiltering include/linux/device/class.h out1 /* Autogenerated for KSRC=/lib/modules/4.19.90-89.11.v2401.ky10.aarch64/source via kcompat-generator.sh */2 #define HAVE_DEVLINK_FLASH_UPDATE_BEGIN_END_NOTIFY3 #define HAVE_DEVLINK_FLASH_UPDATE_PARAMS4 #define HAVE_DEVLINK_HEALTH5 #define HAVE_DEVLINK_INFO_DRIVER_NAME_PUT6 #define HAVE_DEVLINK_PARAMS7 #define HAVE_DEVLINK_PARAMS_PUBLISH8 #define HAVE_DEVLINK_PORT_SPLIT9 #define HAVE_DEVLINK_PORT_SPLIT_EXTACK10 #define HAVE_DEVLINK_PORT_TYPE_ETH_HAS_NETDEV11 #define HAVE_DEVLINK_REGIONS12 #define HAVE_DEVLINK_REGION_OPS_SNAPSHOT13 #define HAVE_DEVLINK_REGISTER_SETS_DEV14 #define NEED_DEVLINK_RESOURCES_UNREGISTER_NO_RESOURCE15 #define NEED_DEVLINK_TO_DEV16 #define NEED_DEVLINK_UNLOCKED_RESOURCE17 #define HAVE_NDO_FDB_ADD_VID18 #define HAVE_NDO_GET_DEVLINK_PORT19 #define HAVE_NDO_UDP_TUNNEL_CALLBACK20 #define NEED_NETIF_NAPI_ADD_NO_WEIGHT21 #define NEED_NET_PREFETCH22 #define NEED_BUS_FIND_DEVICE_CONST_DATA23 #define NEED_ETHTOOL_SPRINTF24 #define HAVE_ETHTOOL_FLOW_RSS25 #define HAVE_XDP_DO_FLUSH26 #define NEED_NO_NETDEV_PROG_XDP_WARN_ACTION27 #define HAVE_FLOW_DISSECTOR_KEY_CVLAN28 #define HAVE_CDEV_DEVICE29 #define HAVE_POLL_T30 #define HAVE_STREAM_OPEN31 #define NEED_CLASS_CREATE_WITH_MODULE_PARAM32 #define NEED_CLASS_CREATE_WITH_MODULE_PARAM33 #define HAVE_GNSS_MODULE34 #define HAVE_STRUCT_PCI_DEV_PTM_ENABLED35 #define NEED_PCIE_PTM_ENABLED36 #define NEED_MUL_U64_U64_DIV_U6437 #define HAVE_PTP_CLOCK_INFO_ADJFINE38 #define NEED_DIFF_BY_SCALED_PPM*** The target kernel has CONFIG_MODULE_SIG_ALL enabled, but*** the signing key cannot be found. Module signing has been*** disabled for this build.make[1]: 进入目录“/usr/src/kernels/4.19.90-89.11.v2401.ky10.aarch64”CC [M]  /home/admin/SCADA/001-ruanjian/服务器死机问题/沐创/rnp-1.0.102/src/rnp_main.oCC [M]  /home/admin/SCADA/001-ruanjian/服务器死机问题/沐创/rnp-1.0.102/src/rnp_common.oCC [M]  /home/admin/SCADA/001-ruanjian/服务器死机问题/沐创/rnp-1.0.102/src/rnp_debugfs.oCC [M]  /home/admin/SCADA/001-ruanjian/服务器死机问题/沐创/rnp-1.0.102/src/rnp_ethtool.oCC [M]  /home/admin/SCADA/001-ruanjian/服务器死机问题/沐创/rnp-1.0.102/src/rnp_lib.oCC [M]  /home/admin/SCADA/001-ruanjian/服务器死机问题/沐创/rnp-1.0.102/src/rnp_mbx.oCC [M]  /home/admin/SCADA/001-ruanjian/服务器死机问题/沐创/rnp-1.0.102/src/rnp_pcs.oCC [M]  /home/admin/SCADA/001-ruanjian/服务器死机问题/沐创/rnp-1.0.102/src/rnp_n10.oCC [M]  /home/admin/SCADA/001-ruanjian/服务器死机问题/沐创/rnp-1.0.102/src/rnp_phy.oCC [M]  /home/admin/SCADA/001-ruanjian/服务器死机问题/沐创/rnp-1.0.102/src/rnp_mbx_fw.oCC [M]  /home/admin/SCADA/001-ruanjian/服务器死机问题/沐创/rnp-1.0.102/src/rnp_sriov.oCC [M]  /home/admin/SCADA/001-ruanjian/服务器死机问题/沐创/rnp-1.0.102/src/rnp_param.oCC [M]  /home/admin/SCADA/001-ruanjian/服务器死机问题/沐创/rnp-1.0.102/src/rnp_compat.oCC [M]  /home/admin/SCADA/001-ruanjian/服务器死机问题/沐创/rnp-1.0.102/src/rnp_sysfs.oCC [M]  /home/admin/SCADA/001-ruanjian/服务器死机问题/沐创/rnp-1.0.102/src/rnp_dcb.oCC [M]  /home/admin/SCADA/001-ruanjian/服务器死机问题/沐创/rnp-1.0.102/src/rnp_ptp.oCC [M]  /home/admin/SCADA/001-ruanjian/服务器死机问题/沐创/rnp-1.0.102/src/rnp_mpe.oLD [M]  /home/admin/SCADA/001-ruanjian/服务器死机问题/沐创/rnp-1.0.102/src/rnp.oBuilding modules, stage 2.MODPOST 1 modulesCC      /home/admin/SCADA/001-ruanjian/服务器死机问题/沐创/rnp-1.0.102/src/rnp.mod.oLD [M]  /home/admin/SCADA/001-ruanjian/服务器死机问题/沐创/rnp-1.0.102/src/rnp.komake[1]: 离开目录“/usr/src/kernels/4.19.90-89.11.v2401.ky10.aarch64”[root@localhost src]#

2.4、安装驱动

通过输入:

sudo make install

开始安装驱动;

安装过程大概需要10分钟左右时间

安装过程显示所有内容如下:

[root@localhost src]# sudo make installMakefile:44: *** compile without define.mk.filtering include/linux/dev_printk.h outfiltering include/net/flow_keys.h outfiltering include/linux/device/class.h outall files (for given query) filtered outfiltering include/linux/device/class.h outfiltering include/linux/device/class.h out*** The target kernel has CONFIG_MODULE_SIG_ALL enabled, but*** the signing key cannot be found. Module signing has been*** disabled for this build.make[1]: 进入目录“/usr/src/kernels/4.19.90-89.11.v2401.ky10.aarch64”Building modules, stage 2.MODPOST 1 modulesmake[1]: 离开目录“/usr/src/kernels/4.19.90-89.11.v2401.ky10.aarch64”Installing modules...*** The target kernel has CONFIG_MODULE_SIG_ALL enabled, but*** the signing key cannot be found. Module signing has been*** disabled for this build.make[1]: 进入目录“/usr/src/kernels/4.19.90-89.11.v2401.ky10.aarch64”INSTALL /home/admin/SCADA/001-ruanjian/服务器死机问题/沐创/rnp-1.0.102/src/rnp.koDEPMOD  4.19.90-89.11.v2401.ky10.aarch64make[1]: 离开目录“/usr/src/kernels/4.19.90-89.11.v2401.ky10.aarch64”Copying manpages...Running depmod.../sbin/depmod -e -F /lib/modules/4.19.90-89.11.v2401.ky10.aarch64/source/System.map  -a 4.19.90-89.11.v2401.ky10.aarch64Updating initramfs...[root@localhost src]#

2.5、挂载驱动

挂载驱动指令如下:

sudo modprobe rnp

2.6、查看驱动

输入如下指令查看驱动是否安装成功:

lsmod | grep rnp

返回全部内容如下:

[root@localhost src]# sudo modprobe rnp[root@localhost src]# lsmod | grep rnprnp                   393216  0[root@localhost src]# modinfo rnpfilename:       /lib/modules/4.19.90-89.11.v2401.ky10.aarch64/updates/drivers/net/ethernet/mucse/rnp/rnp.koversion:        1.0.102license:        GPLdescription:    Mucse(R) 1/10/25/40 Gigabit PCI Express Network Driverauthor:         Mucse Corporation, mucse@mucse.comsrcversion:     646B68D921E239654730F07alias:          pci:v00008848d00001C00svsdbcsci*alias:          pci:v00008848d00001C03svsdbcsci*alias:          pci:v00008848d00001003svsdbcsci*alias:          pci:v00008848d00001C01svsdbcsci*alias:          pci:v00008848d00001001svsdbcsci*alias:          pci:v00008848d00001004svsdbcsci*alias:          pci:v00008848d00001002svsdbcsci*alias:          pci:v00008848d00001000svsdbcsci*depends:       name:           rnpvermagic:       4.19.90-89.11.v2401.ky10.aarch64 SMP mod_unload modversions aarch64parm:           IntMode:Change Interrupt Mode (0=Legacy, 1=MSI, 2=MSI-X), default 2 (array of int)parm:           max_vfs:Number of Virtual Functions: 0 = disable (default), 1-MAX_SRIOV_VFS = enable this many VFs (array of int)parm:           SRIOV_Mode:Change SRIOV Mode (0=MAC_MODE, 1=VLAN_MODE), default 0 (array of int)parm:           pf_msix_counts_set:Number of Max MSIX Count: (default un-limit) (array of int)parm:           rnp_loglevel:uintparm:           debug:Debug level (0=none,...,16=all) (int)parm:           fix_eth_name:set eth adapter name to rnpXX (uint)parm:           module_enable_ptp:enable ptp feature, disabled default (uint)parm:           mpe_src_port:mpe src port (uint)parm:           min_rx_pkt_len:Minumum RX packet length (uint)parm:           mpe_pkt_version:ipv4 or ipv6 src port (uint)[root@localhost src]#

驱动安装完毕后关闭此终端即可。

2.7、配置编译环境

更新驱动如果不成功,可以配置下编译环境:

yum install -y kernel-devel

yum install -y gcc

yum install -y make

03 更新固件

安装完网卡驱动以后还需要更新一下固件,

这里使用ethtool命令更新固件,更新固件后需要重启服务器才能生效。

3.1、拷贝

首先将解压后的固件拷贝到Linux系统的/lib/firmware路径下

这里我直接复制粘贴时粘贴选项为灰色,直接拖到该路径下时提示:权限不够

3.2、修改权限

通过如下命令将该路径赋予一下权限:

sudo chmod -R 777 /usr/local/lib

复制完权限再执行复制粘贴,或拖动到指定路径下;

或者也可以通过命令复制到指定路径下。

3.3、烧录命令

执行烧录命令:

ethtool -f  <ethX> xxx.img.bin 0

命令中<ethx>需要修改为实际网口名。

更新固件,用时1分钟左右;

3.4、查看版本

烧录完成后通过以下命令查看当前版本:

ethtool -i ens3f0

其中ens3f0为本服务器的实际网口名

通过上面截图可以看到当前截图还是:0.3.0-rc9

于是重启服务器。

再次查看,此时版本号为新安装的1.0.102

至此,网卡驱动和固件更新完成。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/web/95399.shtml
繁体地址,请注明出处:http://hk.pswp.cn/web/95399.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

03_网关ip和端口映射(路由器转发)操作和原理

网关ip和端口映射&#xff08;路由器转发&#xff09;操作和原理IP 与端口映射配置全指南&#xff1a;2 种方案搞定外网访问内网一、先搞懂&#xff1a;为什么需要 IP 与端口映射&#xff1f;二、方案一&#xff1a;路由器端口映射&#xff08;适合有公网 IP&#xff0c;长期稳…

「数据获取」《安徽建设统计年鉴》(2002-2007)(2004、2006缺失)(获取方式看绑定的资源)

01、数据简介《安徽建设统计年鉴》是一部全方位反映安徽省建设事业发展变迁的重要统计资料著作。该书系统收集并精心整理了 2006 年度安徽省城乡建设领域的核心统计数据&#xff0c;涵盖城乡建设固定资产投资、建筑业发展态势、城镇建设推进情况等多个关键方面&#xff0c;为政…

Python/JS/Go/Java同步学习(第一篇)格式化/隐藏参数一锅端 四语言输出流参数宇宙(附源码/截图/参数表/避坑指南/老板沉默术)

&#x1f91d; 免骂声明&#xff1a; 本文四语言输出流参数经本蜀黎实战整理&#xff0c;旨在提供快速参考指南&#x1f4dd;因各语言版本迭代及不同系统环境差异&#xff0c;偶尔可能出现整理不全面之处&#xff0c;实属正常✅欢迎理性交流补充&#xff0c;喷子勿喷——毕竟你…

人工智能助力流感疫苗选择:MIT 团队推出 VaxSeer 系统

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗&#xff1f;订阅我们的简报&#xff0c;深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同&#xff0c;从行业内部的深度分析和实用指南中受益。不要错过这个机会&#xff0c;成为AI领…

使用 qmake 生成 Makefile,Makefile 转换为 Qt 的 .pro 文件

使用 qmake 生成 Makefile 的完整指南 qmake 是 Qt 提供的构建工具&#xff0c;用于从 .pro 项目文件生成 Makefile。以下是详细的使用方法&#xff1a; 基本使用方法 1. 从 .pro 文件生成 Makefile bash qmake -o Makefile your_project.pro2. 直接运行 qmake&#xff08;自动…

利用DeepSeek编写验证xlsx格式文件中是否启用sharedStrings.xml对读写效率影响python程序

让他分别用100*10000个单元格有100、1000、10000个不同的1-200字符长的大写英文字母字符串测试. 一开始DeepSeek没有找到启用sharedStrings.xml的写xlsx模块&#xff0c;我自己找了pyxlsbwriter的例子告诉他才改好的。 import os import time import random import string impo…

【C++框架#2】gflags 和 gtest 安装使用

spdlog 安装和使用 1. 概述 介绍&#xff1a;spdlog 是一个高性能、超快速、零配置的 C 日志库&#xff0c;它旨在提供简洁的 API 和丰富的功能&#xff0c;同时保持高性能的日志记录。它支持多种输出目标、格式化选项、线程安全以及异步日志记录。 github 链接&#xff1a;htt…

平衡掌控者-游戏数值战斗设计

一、有效生命值1、计算公式有效生命生命值/&#xff08;1-伤害减免率&#xff09;/&#xff08;1-闪避率&#xff09;2、前摇和后摇对数值来说&#xff0c;战斗由两大模块组成&#xff0c;一个是战斗公式生效前的战斗攻击流程&#xff0c;一个是战斗公式与自身流程。比如说&…

使用DataLoader加载本地数据 食物分类案例

目录 一.食物分类案例 1..整合训练集测试集文档 2.导入相关的库 3.设置图片数据的格式转换 3.数据处理 4.数据打包 5.定义卷积神经网络 6.创建模型 7.训练和测试方法定义 8.损失函数和优化器 9.训练模型&#xff0c;测试准确率 10.测试模型 之前我们DataLoader加载…

从零开始的python学习——函数(2)

ʕ • ᴥ • ʔ づ♡ど &#x1f389; 欢迎点赞支持&#x1f389; 个人主页&#xff1a;励志不掉头发的内向程序员&#xff1b; 专栏主页&#xff1a;python学习专栏&#xff1b; 文章目录 前言 一、变量作用域 二、函数执行过程 三、链式调用 四、嵌套调用 五、函数递归 六、…

RAG 的完整流程是怎么样的?

RAG&#xff08;检索增强生成&#xff09;的完整流程可分为5个核心阶段&#xff1a;数据准备&#xff1a;清洗文档、分块处理&#xff08;如PDF转文本切片&#xff09;&#xff1b;向量化&#xff1a;使用嵌入模型&#xff08;如BERT、BGE&#xff09;将文本转为向量&#xff1…

研发文档版本混乱的根本原因是什么,怎么办

研发文档版本混乱的根本原因通常包括缺乏统一的版本控制制度、团队协作不畅、文档管理工具使用不当以及项目需求频繁变化等因素。这些问题使得研发团队在日常工作中容易出现文档版本混乱的情况&#xff0c;导致信息的不一致性、沟通不畅以及开发进度的延误。为了解决这一问题&a…

ChartView的基本使用

Qt ChartView&#xff08;准确类名 QChartView&#xff09;是 Qt Charts 模块里最常用的图表显示控件。一句话概括&#xff1a;“它把 QChart 画出来&#xff0c;并自带缩放、平移、抗锯齿等交互能力”。QML ChartView 简介&#xff08;一句话先记住&#xff1a;ChartView 是 Q…

系统扩展策略

1、核心指导思想&#xff1a;扩展立方体 在讨论具体策略前&#xff0c;先了解著名的扩展立方体&#xff08;Scale Cube&#xff09;&#xff0c;它定义了三种扩展维度&#xff1a; X轴&#xff1a;水平复制&#xff08;克隆&#xff09; 策略&#xff1a;通过负载均衡器&#…

HBuilder X 4.76 开发微信小程序集成 uview-plus

简介 本文记录了在HBuilder中创建并配置uni-app项目的完整流程。 首先创建项目并测试运行&#xff0c;确认无报错后添加uView-Plus组件库。 随后修改了main.js、uni.scss、App.vue等核心文件&#xff0c;配置manifest.json并安装dayjs、clipboard等依赖库。 通过调整vite.c…

第4章:内存分析与堆转储

本章概述内存分析是 Java 应用性能调优的核心环节之一。本章将深入探讨如何使用 VisualVM 进行内存分析&#xff0c;包括堆内存监控、堆转储生成与分析、内存泄漏检测以及内存优化策略。通过本章的学习&#xff0c;你将掌握识别和解决内存相关问题的专业技能。学习目标理解 Jav…

面经分享一:分布式环境下的事务难题:理论边界、实现路径与选型逻辑

一、什么是分布式事务? 分布式事务是指事务的参与者、支持事务的服务器、资源服务器以及事务管理器分别位于不同的分布式系统的不同节点之上。 一个典型的例子就是跨行转账: 用户从银行A的账户向银行B的账户转账100元。 这个操作包含两个步骤: 从A账户扣减100元。 向B账户…

C++的演化历史

C是一门这样的编程语言&#xff1a; 兼顾底层计算机硬件系统和高层应用抽象机制从实际问题出发&#xff0c;注重零成本抽象、性能、可移植性、与C兼容语言特性和细节很多&#xff0c;学习成本较高&#xff0c;是一门让程序员很难敢说精通的语言 C是自由的&#xff0c;支持5种…

Qt6实现绘图工具:12种绘图工具全家桶!这个项目满足全部2D场景

项目概述 一个基于Qt框架开发的专业绘图工具,实现了完整的2D图形绘制、编辑和管理功能。该项目采用模块化设计,包含图形绘制、图层管理、命令模式撤销重做、用户界面等多个子系统,是学习现代C++和Qt框架的最佳实践。 核心功能特性 12种专业绘图工具 多图层绘制系统 完整的…

Linux驱动开发学习笔记

第1章 Linux驱动开发的方式mmap映射型设计方法。【不推荐】将芯片上的物理地址映射到用户空间的虚拟地址上&#xff0c;用户操作虚拟地址来操作硬件。使用文件操作集(file_operatiopns)设计方法。【极致推荐】platfrom总线型设置方法。【比较流行】设备树。【推荐】第2章 Linux…