Početak › Forumi › Linuks distribucije › Mandriva › Hardver › kako da ubacim drajver u kernelu
- This topic has 9 odgovora, 5 glasova, and was last updated 16 years, 10 months ranije by
dukenukem_4d.
-
AutorČlanci
-
4. septembar 2009. u 5:34 pm #11433
paralizer
UčesnikDali neko zna ovo. Potrazicu na google al ako nego ima konkretno resenje neka pise, ako nema, ako ja nadjem resenje pisacu ga.
Znaci problem je da drajver za mreznu ga nema u samom kernelu. Nasao sam ga kao drajver skinuo i instalirao i radi. Al fora je u tome da radi samo kada ucitam drajvera kao modul, sa modprobe. Ja zelim da ga ubacim direktno u kernel, jer ovaj kernel nema modules support. To je disejblovano. Kernel je vanila.
A da i jos ovo, drajver za mreznu ima i samom kernelu, al je neka leva verzija koja ne radi, tako da isto kako da ga nema. Ne znam zasto ima neke probleme, i pokraj to kada ja iskopmajliram dali direktno u kernelu ili kao modul ne radi, pa sada dali ima neka sansa ili fora kako da je u samom vanila kernelu promenim taj drajver sa ovaj novi ili….
5. septembar 2009. u 12:03 pm #80619velial
UčesnikAko hoćeš da ga ubaciš baš u kernel moraš da ponovo iskompajliraš ceo kernel pa prilikom kompajliranja uključiš drajver.
A možeš ga jednostavno učitati kao modul (lakši način)
prekopiraš drajver u/lib/modules//kernel/drivers/(pa dalje u neki od podirektorijuma)
onda u fajl
/etc/rc.d/rc.local
dopišeš
modprobe
da bi ga učitao prilikom podizanja sistema.
Preporučio bi ovaj drugi način pošto ubacivanje drajvera treće strane u kernel i kompajliranje može biti mukotrpan posao.
Inače taj fajl “rc.local” je init skripta koja se izvršava poslednja prilikom podizanja sistema. Kod Fedore se tako zove i nalazi se na tom mestu, kod druge distribucije se možda zove drugačije ili se ne nalazi na tom mestu.
5. septembar 2009. u 2:15 pm #80620paralizer
UčesnikMoram da ga ubacim u kernelu jer kao sto sam rekao, modules support je disable-ovano u kernelu.
5. septembar 2009. u 2:16 pm #80621paralizer
UčesnikE da, nije problem, iskompajliracu ga, nije to problem, al kako da prilikom kompajliranja ukljucim drajver? Jer ima neka komanda, ili sta…. Ako imas neki tutorijal ili nesto sl. pisi mi link.
5. septembar 2009. u 7:20 pm #80622Barone
UčesnikIako instaliranje važi u 90 % sluèajeva, ostalih 10 % se instaliraju na nešto drugaèiji naèin. I
instalacija našeg drajvera spada u tih 10 %. Izdvajamo deo iz README fajla( Installation), koji
nam pokazuje na koji naèin treba izvršiti instaliranje drajvera.Building and Installation
=========================
NOTE: For the build to work properly, the currently running kernel MUST
match the version and configuration of the installed kernel sources.
If you have just recompiled the kernel reboot the system now.
RPM functionality has only been tested in Red Hat distributions.
1. Move the base driver tar file to the directory of your choice. For
example, use /home/username/e1000e or /usr/local/src/e1000e.
2. Untar/unzip archive:
tar zxf e1000e-x.x.x.tar.gz
3. Change to the driver src directory:
cd e1000e-x.x.x/src/
4. Compile the driver module:
make install
The binary will be installed as:
/lib/modules//kernel/drivers/net/e1000e/e1000e.[k]o
The install locations listed above are the default locations. They
might not be correct for certain Linux distributions.
5. Load the module using either the insmod or modprobe command:
modprobe e1000e
insmod e1000e
Note that for 2.6 kernels the insmod command can be used if the full
path to the driver module is specified. For example:
insmod /lib/modules//kernel/drivers/net/e1000e/e1000e.ko
With 2.6 based kernels also make sure that older e1000e drivers are
removed from the kernel, before loading the new module:
rmmod e1000e; modprobe e1000e
6. Assign an IP address to the interface by entering the following, where
x is the interface number:
ifconfig ethx
7. Verify that the interface works. Enter the following, where
is the IP address for another machine on the same subnet as the
interface that is being tested:
ping5. septembar 2009. u 7:22 pm #80623Barone
UčesnikMozda sam u brzini nesto lose prekopirao… To je citat, iz ovog rada.
Pa ako ti zavrsi posao super
http://www.linuxo.org/component/option,com_smf/Itemid,82/topic,9249.0/6. septembar 2009. u 8:18 am #80624velial
UčesnikPostoji i način da se drajver ubaci direktno u “initrd-.img” to možeš da uradiš bez kompajliranja celog kernela i drajver se diže praktično na početku podizanja sistema.
Uputstvo kako se to radi imaš negde na ovom forumu, pogledaj opcije komande “mkinitrd”.6. septembar 2009. u 8:32 am #80625velial
UčesnikŠta je uopšte ta “vanila”, čemu to služi, koja je razlika u odnosu na običan kernel?
Izvorni kod Fedorinog kernela sadrži odvojeno Linuks i Vanilu. Ja sam muljao sa modulima iz Linuks dela pa me zanima šta je Vanila.
6. septembar 2009. u 8:57 am #80626GoranSTX
UčesnikVanila je kernel koji Linus objavljuje.
6. septembar 2009. u 11:39 am #80627dukenukem_4d
UčesnikKoji je drajver u pitanju , za mrežnu ? 😀
da li je e1000e ili tako neštoili iskopiraš kao root u :
/lib/modules/2.6.27.XXXX/kernel/drivers/net
(standardni/default folder za net drajvere 😎 )(a za onaj prvi drajver obriši ili pomeri na neko drugo mesto )
pa udri
[code]
depmod -a
[/code]
što odradi module dependencies na osnovu kojih se automatski učitavaili obično ima make install 😉
koji ovo gore automatski odradi 😀 (ali opet mora ručno taj prvi drajver da obrišeš
ili staviš u blacklist /etc/modprobe.d/blacklist )
O0EDIT
i još nešto mi pade, ako ti je ovaj drajver neophodan za PXE boot mora da se ugradi u initrd.gz 😀kad je u modulima , nije neophodno da se stavi u initrd, oni su kao SYS na widowsu
još za neke kartice mora da se podesi DHCP jer sistemski alati ih ne prepoznaju
i ne mogu da naprave automatsku konfiguraciju mreže -
AutorČlanci
Forum ‘Hardver’ je zaključan za nove teme i odgovore.