1,編譯環境准備,安裝好kernel-devl ,kenel-headers等; 注意: 一定要注意kernel 的內核,一定要保持被安裝的機器與編譯的內核保持一致; 下載驅動地址:https://downloadcenter.intel.com/
2,將下載好的驅動方到指定目錄進行編譯即可; [root@test55 rpmbuild]# rpmbuild -tb i40e-2.1.26.tar.gz
在執行命令的目錄會出現一個rpmbuild 的目錄,目錄下的內容: [root@test55 rpmbuild]# ll
total 24 drwxr-xr-x 3 root root 4096 Dec 20 02:52 BUILD drwxr-xr-x 2 root root 4096 Dec 20 02:52 BUILDROOT drwxr-xr-x 3 root root 4096 Dec 20 02:52 RPMS drwxr-xr-x 2 root root 4096 Dec 20 02:52 SOURCES drwxr-xr-x 2 root root 4096 Dec 20 02:52 SPECS drwxr-xr-x 2 root root 4096 Dec 20 02:52 SRPMS RPMS 里存放編譯好的rpm(i40e-2.1.26-1.x86_64.rpm); 3,將拷貝好的rpm 文件放到需要安裝驅動的目錄,進行安裝: [root@test55 rpmbuild]# rpm -ivh i40e-2.1.26-1.x86_64.rpm
4,安裝完成后需要進行加載; 建議:使用modprobe加載驅動模塊 [root@test56 rpmbuild]# modprobe i40e
如果加載不成功,再采用insmod,modprobe 會加載相關的依賴,insmod 不會; [root@test56 rpmbuild]# insmod /lib/modules/2.6.32-431.el6.x86_64/updates/drivers/net/ethernet/intel/i40e/i40e.ko
insmod: error insert /lib/modules/2.6.32-431.el6.x86_64/updates/drivers/net/ethernet/intel/i40e/i40e.ko : -1 Unknown symbol in module 出現上面的的錯誤Unknown symbol in module,就是說在模塊找未找到相關的'鏈接',所以我們查看下相關的依賴是否完全安裝; [root@test56 rpmbuild]# modinfo /lib/modules/2.6.32-431.el6.x86_64/updates/drivers/net/ethernet/intel/i40e/i40e.ko | grep depend
depends : ptp 5,可以查看是否安裝了該模塊,modinfo ptp ,如果未安裝請安裝; [root@test56 rpmbuild]# modprob ptp
6,再次加載網卡驅動: [root@test56 rpmbuild]# insmod /lib/modules/2.6.32-431.el6.x86_64/updates/drivers/net/ethernet/intel/i40e/i40e.ko
7,查看是否加載成功: [root@test56 rpmbuild]# lsmod | grep i40e
i40e 393945 0 ptp 9614 1 i40e 查看網卡是否出現: ip a 或ifconfig 等; 如果不存在,請檢查相關日志; 8,如果存在,設置IP 等相關信息,與其余計算機進行簡單的Ping 測試即可; 9,開機加載該模塊: 新增文件:i40e.i40e [root@test56 rpmbuild]# touch /etc/sysconfig/modules/i40e.i40e
並添加內容: #!/bin/sh
modprobe -b ptp >/dev/null 2>&1 insmod /lib/modules/2.6.32-431.el6.x86_64/updates/drivers/net/ethernet/intel/i40e/i40e.ko >/dev/null 2>&1 exit 0 10,文件保存好后,重啟機器即可;