Sziaszok!
Próbált már valaki működésre bírni olyan kernel modult, ami nem kifejezetten az adott Linux disztribúcióhoz lett lefordítva?
Egy olyan háttértár kezelő kernel modult kéne futtatnom a munkaállomásaimon, amelynek nem hozzáférhető a forráskódja, ezért nem tudok belőle másikat fordítani. Azt kéne használnom, ami csak lefordított verzióban van meg. Viszont csak SUSE Enterprise Linux 10-hez és RedHat Enterprise Server 5 disztribúciókhoz van lefordított kernel mondul.
Nekem viszont szükségem lenne arra, hogy ingyenesen hozzáférhető disztribúciókon is használni tudjam. Próbálkoztam az azonos sorozatba tartozó (és sok egyéb más) disztribúciókkal is, de egyiken sem lehet betölteni a kérdéses kernel modult. Mindegyik azt mondja, hogy wrong kernel version, és különben is, menjek a fenébe :-)
Próbálkoztam OpenSuse, Fedora, CentOS, Ubuntu kurrens verzióival, de egyikkel sem jártam sikerrel. Próbáltam utánna olvasni a dolognak, és mintha létezne is olyan opció kernel fordításkor, hogy "module versioning", ami talán pont erre lenne jó, bár nem biztos, számomra ez nem derült ki egyértelműen.
Tud valaki működő megoldást javasolni erre a problémára?
- 1159 megtekintés
Hozzászólások
CentOS en kéne mennie a RHEL verziónak. igaz egyenie kell a verziószámnak
2.6.18-92.1.18.el5 szóval ha ehhez való a modul akkor jó, ha pl nem 2.6.18-92 es akkor lehet gáz.
Core2Duo T7100, 2.5G, Ubuntu 8.04, 2.6.28.7
- A hozzászóláshoz be kell jelentkezni
Sajnos nem ment CentOS-en sem. Pedig én is abból indultam ki, hogy azonos code base, meg minden.
Meg igazándiból azt sem értem, hogy ha az ember azon a disztribúción használja a kérdéses kernel modult, amelyikre valóban való, akkor mi történik ha a Linux disztribúció kernelt frissít? Ez ugyebár nem annyira ritka esemény egy Linuxos gép életében. Ekkor meghal a korábban jól működő és valóban ehhez a disztribúcióhoz való software? A kernel modul működés képtelen lesz, hiába ahhoz a disztribúcióhoz való??? Na ne! Ki az a software gyártó, aki minden egyes disztribúció kernel update megjelenésekor azonnal küldi a két tizeddel újabb kernel verzióhoz való saját kernel mondulját??? Azt még értem, hogy egy 2.4-es kernel modul nem megy 2.6-os kernellel. Meg hogy ha kernelbe nincs belefordítva valamilyen funkció, ami feltétlen kell a modul működéséhez, akkor nem megy. De egy kisebb frissítés vagy bug javitás miatt kiadott kernel esetében is feltétlenül újra kéne fordítani az összes kernel modult A-tól Z-ig?
Nem tudom elképzelni, hogy pl egetverő különbség lenne a RedHat aktuális verizója és a CentOS között. Vagy ezek szerint mégis?
- A hozzászóláshoz be kell jelentkezni
pont erre valo a module-versioning, kisebb valtozasok eseten meg be tudod tolteni a modult, mivel a disztrok csak toldozzak foldozzak az alap kernel-t amivel az adott diszto verzio inditott, de peldaul egy nagyobb versio ugras eseten a module szerkezte mar nem felel meg:
"Usually, you have to use modules compiled with your kernel. Saying Y here makes it sometimes possible to use modules compiled for different kernels, by adding enough information
to the modules to (hopefully) spot any changes which would make them incompatible with the kernel you are running. "
- A hozzászóláshoz be kell jelentkezni
A modulhoz való eredeti kernel használata nem jöhet szóba?
Debian - Still in development (sid)
- A hozzászóláshoz be kell jelentkezni
+1
szerintem az 1etlen megoldas: kernel forras letolt pl opensuse enterprice, lefordit, majd modult betolt.
- A hozzászóláshoz be kell jelentkezni
http://linux.about.com/od/commands/l/blcmdl8_insmod.htm
"-f, --force
Attempt load the module even if the version of the running kernel and the version of the kernel for which the module was compiled do not match. This only overrides the kernel version check, it has no effect on symbol name checks. If the symbol names in the module do not match the kernel then there is no way to force insmod to load the module. "
ez nem válasz a kérdésre?
[/me nem ért hozzá egyébként, guglizott egyett]
No rainbow, no sugar
- A hozzászóláshoz be kell jelentkezni
Próbálkoztam a force-al, de ugyanaz a válasz: nem hozzá való a modul, amit be akarok tölteni :-(
- A hozzászóláshoz be kell jelentkezni
Nekem ami eddig összejött ilyen vegyesítésben:
Mandriva Linux (2.6.17-es kernel -> kidobva) + PCLinuxOS kernel (2.6.18.8) (néhány binárist cseréltem le PCLOS-osra), egész jó kis hibrid volt, bár a frissítéskor behalt ;~))
Slackware 12.0 (2.6.21-5) alatt fordított kernelmodul sorosporti lirc támogatásra, ami Debian alatt megy azóta is (2.6.24.1-etchnhalf)
SLackware 12.0 alatt fordított xmms_lirc.so ami működik Gentoo 2008.0 (2.6.25-r8) és PCLOS (2.6.22.tex1.av) alatt. Utóbbiakon egyszerűen nem akart fordulni a kód.
Talán a Slackware egy próbát megérhet.
/mazursky
Love your job but never love your company!
Because you never know when your company stops loving you!
- A hozzászóláshoz be kell jelentkezni
Slackwarekernel=vanilla kernel, nem?
---------------------------------------------------------------------------------
A Linux nem ingyenes. Meg kell fizetni a tanulópénzt.
Az emberek 66 százaléka nem tud számolni! Gondoljatok bele, ez majdnem a fele!!
- A hozzászóláshoz be kell jelentkezni