Re: lug-bg: Проблем с модулите :?
- Subject: Re: lug-bg: Проблем с модулите :?
- From: Dimitar Tomow <dgt_it@xxxxxx>
- Date: Fri, 9 Jul 2004 01:19:22 +0300 (EEST)
ps: pismoto e pisano s kwrite s cp1251 i copy-paste , predi imah problem ot towa c-paste, dano sega nqma.
Това писмо е разделено на 3 части:
1.Този увод.
2.Долната - средна част, която беше писмо готвено да пратя тук.
3.И развитие на нещата , след като реших да не Ви пращам писмото ,което виждате в част 2 , а да продължа изследването на проблема ,така да го наречем... Борабта с проблема.
В крайна сметка всичко вече е ОК! Макар и все още малко неясно.
Проблема се оказа според мен сериозен.
Проблем с бинарни / компилирани програми/ -> modprobe част от module-init-tools !!!
3.1-pre5-1
Моял вижте поне 3-тата част на писмото, за да няма двусмислие ;)
---------------------------------------======================================--------------------------------------
> Doncho N. Gunchev
> Ядрото може да зарежда по доста схеми. В RH/FC, Debian а и много други се
>ползва initrd image за да се зареди някаква микро система, която да зареди основни
>модули като scsi, USB, ext2/3 и т.н. за да може да се монтира истинската root
>директория. Тук идеята е ядрото да е малко и модулно за да може да работи във
>всички случаи с коректно създаден initrd image - пести излишните вкарани в самото
>ядро модули. Оттам нататък нещата се поемат от init, а той си стартира rc
>скриптовете според стандарта (/etc/inittab).
1.Учудващо как с малко познания по процеса на стартиране / зареждане / и проследяване бях стигна до това (да го наречем) заключение. Всмисъл не толкова ясно / и добре подредено казано/, но забелязах , че модулите се зареждат от скриптове в /etc/init.d/ ;) И тъкмо щях да Ви пиша за едно мое притеснение и учудване - най-вече 1-вото , ако въобще може да го наречем притеснение (де) ;).
> Повече за тези неща можеш да намериш
>в документацията на самото ядро (как се търсят/зареждат модулите, що е то initrd
>и каква е новата концепция по темата в 2.6...) ... (разделяне)
2.ТОЧНО ТОВА МЕ ИНТЕРЕСУВА !
Прегледах ги набързо , но то е много документация , ако можеш да бъдеш по-точен ще ти бъде много благодарен ;) В интерес на истината само съм погледнал какво садържа /usr/src/linux-2.6.7/Documentation ;)
btw: Незнам защо , но снощи си инсталирах пакет-а kernel-2.6-doc , които беше някъде 15мб , аз като гледам той го има в сорс-кода на ядрото , т.е от тези 30МБ (linux-KVER.tar.bz2),които е ядрото половината се явява едва ли не документация :?
И ако може да бъдеш по-конкретен.
Вчера само мернах Kernel module loadable HOWTO.
>... и като попрегледаш rc скриптовете,
>те са чист shell/bash скрипт.
3.забелязах и в интерес на истината не бих казал , че са сложни, трябва само да се съсредоточи човек.
> ПС: това ми напомня, че в твоя случай може просто да ползваш initrd от старо
>ядро, погледни си конфигурацията на boot loader-а.
>
>--
4.Това не го разбрах.
4.1 Те скриптовете получават ... абе ето така е историята:
KVER = $(uname -n)
т.е не са статични фрази :? Променливи са .. .така че нещо не те разбирам за initrd как така да ползвам старото :?
4.2 В какъв смисъл конф. на boot loader-a ...
Аз ползвам много просто концепция
label=
image=
Невиждам какво още има смисъл да се добавя :? всмисъл задължително необходимо какво още има ;)
А имам и някакво read-only , което не знам за какво е man lilo.conf ше има усещам.
======================
5.И за това, което исках да пиша ново по-темата.
Виждам препокриване на скриптове в /etc/init.d/
НЕ СА symlinks или подобно !
5.1
/etc/init.d/etc-setserial
/etc/init.d/setserial
$ ls /etc/init.d -l | grep serial
-rwxr-xr-x 1 root root 1378 2004-04-01 09:53 etc-setserial
-rwxr-xr-x 1 root root 4308 2004-03-12 12:53 setserial
$
явно etc-setserial идва от по-нова пакет/версия на setserial :?
5.2
/etc/init.d/module-init-tools
/etc/init.d/modutils
дефакто едното е от новата концеция на kernel2.6, защото module-init-tools conflicts with modutils , но имах някакви връзки към modutils , ако не се лъжа - вече не си спомням, въобще ето защо има човек нужда от сън.!
Но вижте и разминаването в дати-те ???
$ ls -l /etc/init.d/ | grep mod
-rwxr-xr-x 1 root root 1088 2004-06-17 16:54 module-init-tools
-rwxr-xr-x 1 root root 864 2004-01-01 18:39 modutils
$ ls /etc/rcS.d/ -l | grep mod
lrwxrwxrwx 1 root root 27 2004-03-30 17:16 S20module-init-tools -> ../init.d/module-init-tools
lrwxrwxrwx 1 root root 18 2004-03-30 19:48 S20modutils -> ../init.d/modutils
А може и това , че първо module-init-tools , а после и modutils се зареждат да прави проблем , но как допреди е работело ,а сега изведнъж 'БАМ' :( Проблем ... странно наистина. Пък и ги прегледах двата скрипта - няма как да стане това объркване с KVER :??
В крайна сметка фалшива тревога конфликта е при по-ниска от определена версия на modutils ;)
5.3
Гледам че:
- Във runlevel 2 нямам връзка към module-init-tools или modutils !
- Но преди това се стартирам rcS.d , където имам връзки към дадените скриптове.
- и само във rcS.d има връзки към тях.
Просто като информация.
--------
6.Прегледах набързо скриптовете в /etc/init.d/ -> говоря за module-init-tools & modutils, и всичко си изглежда наред.
Както казах взима си KVER от uname -n (което си ми е точно - бутнал съм 2.6.7*-2 и uname -n "сочи" 2.6.7*-2 , а не -3) , след това търси modules-KVER, ако няма modules-2.6 и ако няма чете modules (in /etc of course). При мен си е стандартното /etc/modules и ги зарежда с modprobe $module $args.
След това - накрая; има едно:
# Just in case a sysadmin prefers generic symbolic links in
# /lib/modules/boot for boot time modules we will load these modules.
boot="$(modprobe --list --type boot)"
for d in $boot; do
mod="${d##*/}" # този ред не го разбирам , но ми е ясно какво прави :?
mod="${mod%.ko}"
modprobe "$mod"
done
exit 0
Тъй като нямам директория /lib/modules/boot командата modprobe --list --type boot ми връща 'нищо'.
------------------------------
7. Пробвах с махнат modutils - все тая :(
добавям и още логове или по-точно ми направи впечатление това:
dmesg (от 8 юли около 16:17 :)) ) says:
usbcore: version magic '2.6.7-scsi-ht-qos-noossemu-3 SMP PENTIUM4 gcc-2.95' should be '2.6.7-scsi-ht-qos-noossemu-2 SMP PENT
IUM4 gcc-2.95'
cat /var/log/daemon.log | grep usbkbd
Jul 8 16:17:57 PC1 modprobe: FATAL: Error inserting usbcore (/lib/modules/2.6.7-scsi-ht-qos-noossemu-2/build/drivers/usb/core/usbcore.ko): Invalid module format
забелжете къде търси модула !!! build is a symlink to /usr/src/linux-2.6.7 =>
/usr/src/linux-2.6.7/drivers/usb/core/usbcore.ko ;) сетете се що е инвалид
Това го бях забелязал и преди , но го бях оставил за после , че бях хванал друга следа , та...
Наистина странен проблем ...
А още по-учудващо е , че за някои модули пищи само за version magic :?
Писмото май стана леко объркано , но наистина доста е объркана и самата историята.
Благодаря на всички за вниманието ! И най-вече на Doncho N. Gunchev !! ;)
ps: pismoto e pisano s kwrite s cp1251 i copy-paste , predi imah problem ot towa c-paste, dano sega nqma.
---------------------------------------======================================--------------------------------------
И преди да ви пратя този ферман реших да покопая още сам , защото имах следи ;)
И така:
8.Ядрото си е ок , толкова време си е работило - 2седмици почти 24/7 не е малко ;)
9./etc/init.d/ е ок , /etc/rcS.d/ също
10.Самите пакети/програми няма конфликти, но пък гледайте какво прави modprobe / insmod / modinfo пък дава инф.
за модула и взима правилния път.
Но какво зарежда самите модули , всмисъл след като скриптовете са ми ок и от точка 8+9+10, най-вече накрая на т.10 и т.7 реших да си поиграя с малко debuging на модулите , не че пожънах голям успех дефакто с debuging , но ...
Нещо тоя modprobe не беше у ред - водейки се от ръководстовто за debug на модулите , което е 15 реда на кръст :))
Му пиша една опция , той никъв отговор - нищо не прави :?
Та накрая си викам абе v и това си е -> verbose.
Та ехх сега вече непазя изхода от modprobe usbkbd, но беше следното
insmod ......kernel....../usbkbd.ko
insmod ......build......./usbkbd.ko
FATAL: Error ......... Invalid module format
т.е веднъж така , веднъж иначе грешно :?
След това си поиграх още с modprobe & modinfo , всмисъл с различни модули и т.н..
и Гледам аз пищи ми на agpgart в dmesg, а дефакто
lsmod , а то що щото е като горе в usbkbd два пъти го зарежда по-различно му ...
Викам си пак тея скриптове ми омазаха работата , а то - Я - не били скриптове, а компилирани програми.
Викам си бре сериозно работа :D
Та като включих и търсението ми в гоогъл , копаенето ми из зареждането на модулите при нацалното зареждане (то какво ли не беше - интересно най-вече :P) + играта ми с modprobe & modinfo и техните грешки , та рабтоата ми се изясни.
Също така писах един два пъти и за това, че точно преди това имах и един apt-get upgrade т.е:
работя си цял ден
apt-get upgrade
пак си работя нещо
shut down
power on
kernel errors :(
Та така и като се насочик към
dpkg -s
-> module-init-tools
-> modutils
| grep mod | grep bin
И гледай как всичко почваше да се вижда - аз виждам счупени програми ,но защо хората не са се оплаквали :?
Явно е някакво стечение на обстоятелствата - т.е повече от 1 фактор ;) необходими неща за такъв проблем.
Та ми беше ясно , че ще downgrade-вам и сега върнал се - от приятно вечерно излизане; в 11:00пм - идеално време
за; мъчене :)
*изтормозих малко и един приятел с Дебиан също с ласт ъпдейт и мисля беше с последно ядро - т.е гледа да е => ще е 2.6.7
та дали има проблеми при него и аз го питам , а последни версии ли си , я си кажи версията на module-init-tools, погледния си dmesg | grep version , защото не всеки се заглежда в боот процеса на своето ядро , при положение че си има работещо всичко ОК , ама ето де ;) Та той ми каза аз не съм ъпдейтвал от седмица / две и версията на модуле-инит-тоолс му беше предходната 3.1-pre4-1 ;) И нямаше никави съобщения за грешки .. абе аз още преди да говоря с него бях убеден та ...
И почвам по-ред на номерата:
downgrade module-init-tools to 4-1 (просто преднат версия , не от друга гледна точка)
не същото е ... -> пак грешки ...
... викам си абе то /etc/modules.conf също е важно и /etc/modprobe.d също , та
шут на module-init-tools (всичко с purge обаче), modutils със него си заминаха и modconf , hotplug , pcmcia глупости (просто израз) и още нещо ... помня ли какво - не беше важно.
оффтопик - вече ми беше дошло до израза "е*ем ли го". Много се ядосвам от глупави проблеми (!) честно да си кажа ;) Този вече 2 дена , стига му толкова , крайно време му беше , пресуших и 4 литра кола , ае стига му толкова :DD (абе радостно си ми е ;)).
Но от modutils остана /etc/modprobe.d , та аз направих един бърз бакъп и аре rm -rf -> довиждане :D
След това с по 3 версии надолу всичко (от module щуротиите) исках и ето какво в крайна сметка направих / downgrade-нах и докъде:
module-init-tools -> 3.1-pre2-2
modutils - нямаше как - беше съвременна версия ;) -> 2.4.26-1
modconf обаче не му се размина :)) -> 0.2.43
И ребоот със нескрити надежди и обаче по-малки реални шансове , стискайки зъби , щото не е ли това няма какво да е :| & :(
И хоп ботва ядрото ... почва .. така лека по-лека, лелеее следях всеки ред като числа на тото от луд хазартен маняк пуснал фиш за 50лв ... И всичко минава ок , немога да повярвам , с треперещи ръце се логвам през kdm ,който веднъж да ми се види приятел, а не 'създавач' на проблеми , нетърпеливо konsole -> dmesg | grep version , е такава усмивка не сте виждали :))
и естествено :)) -> WHO IS THE MAN ?!. :D (:P)
Знам много спам(оффтопик) има в писмото ми , еми радостен съм , може да не е нищо кой знае какво , но ми е кеф ! Това е важното мисля ;) Толкова борба и даде резултат ...
Сега мисля да си поиграя още с modul0.2.43e-init-tools + modconf , мисля че първото е , но не съм сигурен и да разбера какво е станало ;) Може и нещо да е имало омазано в /etc/modprobe.d :? ще се разбере , ще подготвя едно свястно писмо и ще го пратя до kernel.org или по-скоро debian.org :? - всмисъл като място , не точно към; мисля май по-правилно за debian.org.
Та за гоогъл и мойте търсеня там имаше проблем с тея version magic и погрешно търсене, но това още при компилиране и то е било поради грешка в самото ядро (като код още - логично щом е компилиране). Та в тези случей проблема възниква само при SMP системи , мойте е вид таква -> P4 HT (HyperThreading) -> SMP ;)
Та незнам , може и това да е ;)
Едва ли има много сървъри на last unstable + 2.6.7 + SMP :))
Макар , че сигурно има потребители с P4 HT + 2.6.7 + SMP + unstable last,но явно не много или знам ли ...
Както и да е - важно е , че проблема е отправен и като гледам ,ако не се вълнувах толкова щях да се справя по-бързо , но.
Другото , което е сега да разбера точно къде е бил проблема и да напиша едно писмо до който трябва.
!!! БЛАГОДАРЯ НА ВСИЧКИ (всъщност само един човек се престраши да ми отговаря) И НАЙ-ВЕЧЕ НА Дончо Н. Гунчев !!!
ps: pismoto e pisano s kwrite s cp1251 i copy-paste , predi imah problem ot towa c-paste, dano sega nqma.
-----------------------------------------------------------------
http://www.elmaz.com/ - Запознанства!
============================================================================
A mail-list of Linux Users Group - Bulgaria (bulgarian linuxers).
http://www.linux-bulgaria.org - Hosted by Internet Group Ltd. - Stara Zagora
To unsubscribe: http://www.linux-bulgaria.org/public/mail_list.html
============================================================================
|