Ohjaimen kääntäminen ja asentaminen lähdekoodin avulla
Shrnutí: Linux-ohjain liittyy ytimeen. Useimmat ladattavat Linuxin RPM-ohjaimet koskevat kunkin julkaisuversion alkuperäistä ydinversiota. Jos ydin on päivitetty tiettyyn versioon, päivitettyä ydintä ei voi enää käyttää RPM-ohjaimessa. Tässä tietämyskannan artikkelissa kerrotaan, miten päivitetyn ytimen ohjain päivitetään lähdekoodista. ...
Tento článek se vztahuje na
Tento článek se nevztahuje na
Tento článek není vázán na žádný konkrétní produkt.
V tomto článku nejsou uvedeny všechny verze produktu.
Pokyny
Tässä tietämyskannan artikkelissa käytetään esimerkkinä X710-verkkokorttia. Kaikki muut Linuxin lähdekoodit ovat samankaltaisia.
Asenna tarvittavat paketit käännettäväksi.
1. Lataa ohjain Dellin tukiportaalista.
2. Pura lähdekoodi ja hae se.
3 a. Ongelma: Jos näit virheen seuraavasti suorittaessasi komentoa "make"
3b. Ongelma: Testaa ohjain ennen asennusta. Jos näyttöön tulee seuraava virheilmoitus Required key not available, palvelimessa on käytössä Secure Boot, joka ei voi ladata itse käännettyä ohjainta. Voit käynnistää BIOSiin ja poistaa suojatun käynnistyksen käytöstä.
4. Asenna ohjain tähän palvelimeen.
Lisää:
Jos haluat luoda RPM-moduulin tämän ohjaimen perusteella, jotta voit asentaa sen muihin palvelimiin (kohdepalvelimessa on oltava sama ydinversio), luo rpm seuraavalla komennolla.
Asenna tarvittavat paketit käännettäväksi.
[root@rhel87 ~]# yum groupinstall "Development Tools" [root@rhel87 ~]# yum install kernel-devel-$(uname -r)
1. Lataa ohjain Dellin tukiportaalista.
2. Pura lähdekoodi ja hae se.
[root@rhel87 i40e]# tar xf Intel_LAN_21.5.0_Linux_Source_A02.tar.gz [root@rhel87 i40e]# cd Source/base_driver/ [root@rhel87 base_driver]# tar xf i40e-2.20.12.tar.gz [root@rhel87 base_driver]# cd i40e-2.20.12/ [root@rhel87 i40e-2.20.12]# ls COPYING i40e.7 i40e.spec pci.updates README scripts src SUMS root@rhel87 i40e-2.20.12]# cd src/ [root@rhel87 src]# ls auxiliary.c i40e_client.h i40e_diag.c i40e_hmc.c i40e_ptp.c i40e_virtchnl_pf.c kcompat_impl.h linux auxiliary_compat.h i40e_common.c i40e_diag.h i40e_hmc.h i40e_register.h i40e_virtchnl_pf.h kcompat_overflow.h Makefile common.mk i40e_dcb.c i40e_ethtool.c i40e_lan_hmc.c i40e_status.h i40e_xsk.c kcompat_rhel_defs.h Module.supported i40e_adminq.c i40e_dcb.h i40e_ethtool_stats.h i40e_lan_hmc.h i40e_trace.h i40e_xsk.h kcompat_sles_defs.h virtchnl.h i40e_adminq_cmd.h i40e_dcb_nl.c i40e_filters.c i40e_main.c i40e_txrx.c kcompat.c kcompat_std_defs.h i40e_adminq.h i40e_ddp.c i40e_filters.h i40e_nvm.c i40e_txrx_common.h kcompat_defs.h kcompat_ubuntu_defs.h i40e_alloc.h i40e_debugfs.c i40e.h i40e_osdep.h i40e_txrx.h kcompat_gcc.h kcompat_vfd.c i40e_client.c i40e_devids.h i40e_helper.h i40e_prototype.h i40e_type.h kcompat.h kcompat_vfd.h3. Käännä ohjain.
[root@rhel87 src]# make *** 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]: Entering directory '/usr/src/kernels/4.18.0-80.el8.x86_64' /root/i40e/Source/base_driver/i40e-2.20.12/src/Makefile:38: 2 CC [M] /root/i40e/Source/base_driver/i40e-2.20.12/src/i40e_main.o ...skipped... LD [M] /root/i40e/Source/base_driver/i40e-2.20.12/src/i40e.o CC [M] /root/i40e/Source/base_driver/i40e-2.20.12/src/auxiliary.o Building modules, stage 2. /root/i40e/Source/base_driver/i40e-2.20.12/src/Makefile:38: 2 MODPOST 2 modules CC /root/i40e/Source/base_driver/i40e-2.20.12/src/auxiliary.mod.o LD [M] /root/i40e/Source/base_driver/i40e-2.20.12/src/auxiliary.ko CC /root/i40e/Source/base_driver/i40e-2.20.12/src/i40e.mod.o LD [M] /root/i40e/Source/base_driver/i40e-2.20.12/src/i40e.ko make[1]: Leaving directory '/usr/src/kernels/4.18.0-80.el8.x86_64' [root@rhel87 src]# echo $? 0 [root@rhel87 src]# modinfo ./i40e.ko filename: /root/i40e/Source/base_driver/i40e-2.20.12/src/./i40e.ko version: 2.20.12 license: GPL description: Intel(R) 40-10 Gigabit Ethernet Connection Network Driver author: Intel Corporation, <e1000-devel@lists.sourceforge.net> rhelversion: 8.0 srcversion: A92CB6A1AD515E14A84C283 alias: pci:v00008086d0000158Bsv*sd*bc*sc*i* ...skipped... alias: pci:v00008086d00001572sv*sd*bc*sc*i* depends: auxiliary name: i40e vermagic: 4.18.0-80.el8.x86_64 SMP mod_unload modversions parm: debug:Debug level (0=none,...,16=all) (int) parm: l4mode:L4 cloud filter mode: 0=UDP,1=TCP,2=Both,-1=Disabled(default) (int) [root@rhel87 src]#
3 a. Ongelma: Jos näit virheen seuraavasti suorittaessasi komentoa "make"
common.mk:82: *** Kernel header files not in any of the expected locations. common.mk:83: *** Install the appropriate kernel development package, e.g. common.mk:84: *** kernel-devel, for building kernel modules and try again. Stop.Varmista, että paketin kernel-devel-tiedostoon on asennettu sama ydinversio. (Ensimmäisessä vaiheessa)
[root@rhel87 ~]# yum install kernel-devel-$(uname -r)
3b. Ongelma: Testaa ohjain ennen asennusta. Jos näyttöön tulee seuraava virheilmoitus Required key not available, palvelimessa on käytössä Secure Boot, joka ei voi ladata itse käännettyä ohjainta. Voit käynnistää BIOSiin ja poistaa suojatun käynnistyksen käytöstä.
[root@rhel87 src]# modprobe -r i40e [root@rhel87 src]# insmod ./i40e.ko insmod: ERROR: could not insert module ./i40e.ko: Required key not available
4. Asenna ohjain tähän palvelimeen.
[root@rhel87 src]# make install5. Käynnistä palvelin uudelleen. Uusi ohjain latautuu automaattisesti käynnistyksen jälkeen.
Lisää:
Jos haluat luoda RPM-moduulin tämän ohjaimen perusteella, jotta voit asentaa sen muihin palvelimiin (kohdepalvelimessa on oltava sama ydinversio), luo rpm seuraavalla komennolla.
[root@rhel87 src]# cd ../.. [root@rhel87 base_driver]# ls -lh i40e-2.20.12.tar.gz -rw-r--r-- 1 5714316 1049089 673K Jul 11 2022 i40e-2.20.12.tar.gz [root@rhel87 base_driver]# rpmbuild -tb i40e-2.20.12.tar.gz ...skipped... [root@rhel87 base_driver]# ls /root/rpmbuild/RPMS/x86_64/Asenna kopioimalla RPM kohdepalvelimeen.
Dotčené produkty
Red Hat Enterprise Linux Version 6, Red Hat Enterprise Linux Version 7, Red Hat Enterprise Linux Version 9, Red Hat Enterprise Linux Version 8Vlastnosti článku
Číslo článku: 000211258
Typ článku: How To
Poslední úprava: 19 pro 2024
Verze: 3
Najděte odpovědi na své otázky od ostatních uživatelů společnosti Dell
Služby podpory
Zkontrolujte, zda se na vaše zařízení vztahují služby podpory.