Nyomtatóbarát verzió Oldal küldése email-ben
Kapcsolódó linkek:
Debugolni néha kell. Hogy miért?
Biztos mindenki került már olyan helyzetbe, hogy kernelfordítás után valami nem volt teljesen OK. Vagy nem volt a monitoron kép, mert elfelejtettük valamelyik konzol komponenst belefordítani a kernelbe, vagy a rendszer nem találta a / filerendszert, mert elfelejtettük az IDE, SCSI vagy más lemezvezérlő driverét, vagy egyszerűen csak rossz filerendszert állítottunk be a kernel konfigurációs részében. Sorolhatnám még a felmerülő hibákat, de a lényeg az, ha valamilyen oknál fogva gépünket nem tudjuk legalább a ˝single˝ módig (init 1) bebootolni (ehhez ugye az kell, hogy az init-et elérjük, vagy legalább egy shell-t (bash, sh, stb.) tudjunk init-ként használni), akkor nagyon nehéz a debugolás. A boot üzenetek egy korszerű gépen gyorsan lefutnak a képernyőn, így tényleg nagyon kell figyelni, hogy az ember a megfelelő pillanatban leolvashassa a hibaüzenetet. Másik bosszantó dolog, ha kernel panic-ot kapunk mindjárt a bootolásnál, és azt szeretnénk szeretnénk debugolni. Nem hiszem, hogy bárki nekiállna egy oops üzenetet papírral és ceruzával leírni... Akkor mégis hogyan rögzítsük az ilyen félig bootolt gép üzeneteit?
Erre több lehetőségünk is van. Az egyik legrégebbi eljárás, a soros porton keresztüli debugolás. Ezzel több problémánk is lehet. Kell hozzá egy speciális soros porti kábel (azt hiszem, hogy nevezik nullmodem kábelnek is). Ez nem minden esetben áll rendelkezésünkre. A másik dolog, ami a soros porti kábeles debug ellen szól az az, hogy fizikailag közel kell lennünk a géphez, a kábel maximális hossza miatt. Viszont van egy olyan lehetőség, amely minden hálózati környezetben használható. Ez nem más, mint a Molnár Ingo által fejlesztett netconsole.
Hogy mi is ez?
Molnár Ingo 2001. szeptemberében kezdte el a fejlesztését a netconsole-nak, az akkori 2.4-es kernelhez. A netconsole egy olyan kernel modul (amelyet nyilván célszerű fixen a kernelbe fordítani), amely lehetővé teszi a kernel ``printk´´ üzeneteinek UDP protokollon, hálózaton keresztül történő továbbítását. Ezzel a módszerrel nagyszerűen lehet debugolni a diszkkel kapcsolatos hibákat akkor, ha a soros konzol használata nehézkes, vagy éppen lehetetlen. Ha a kód fixen a kernelbe van drótozva, akkor a netconsole a hálózati kártya inicializálása után azonnal aktiválódik. Mivel a hálózati kártyának működnie kell a használatához, a korai kernel panic-okat nem lehet vele debugolni, de majd az egész boot folyamatot figyelemmel kísérhetjük ezzel a módszerel. A netconsole nem csak a 2.4-es kernelhez használható, hanem mostantól Matt Mackall munkájának köszönhetően a 2.6.0-mm2 kerneltől kezdve a 2.6-os kernel sorozatban is bátran próbálkozhatunk vele.
A használata:
A kernel a bootolás folyamán a hálózati kártya és a TCP stack indítása után aktiválja a netconsole-t, amely UDP csomagokat küld a hálózati kártyán keresztül a hálózatra. Ezeket a csomagokat egy debugger munkaállomásról értelmezhetjük.
A beállítása a forrás gépen:
netconsole=[src-port]@[src-ip]/[< dev >],[tgt-port]@< tgt-ip >/[tgt-macaddr]
ahol:
src-port - az UDP csomagok forrás portja (alapértelmezetten 6666)
src-ip - a forrás IP cím (a hálózati kártya IP címe)
dev - hálózati csatoló (alapértelmezetten eth0)
tgt-port - a logoló ügynök (logging agent) portja (alapértelmezetten 514)
tgt-ip - a IP logoló ügynök IP címe
tgt-macaddr - a logoló ügynök MAC address-sze (fizikai címe) (alapértelmezetten broadcast)
Példa a használatra (boot időben):
Linux netconsole=4444@10.0.0.1/eth1,9353@10.0.0.2/12:34:56:78:9a:bc
vagy futási időben modulból betöltve:
insmod netconsole netconsole=@/,@10.0.0.2/
Ha a netconsole él, akkor egy monitorozó gépről a ˝netcat -u -l -p < port >˝ használatával értelmezhetjük az üzeneteket. Vagy használhatjuk a syslogd-ot.
FIGYELEM: az alapértelemezett beállításokkal a netconsole ˝broadcast˝ üzeneteket (amit minden egyes hálózati tag megkap abban a hálózati szegmensben) küld, amely extrém nagy hálózati terhelést okozhat abban a szegmensben.
Használatának vannak határai, amelyek szerintem érthetőek, és elfogadhatóak: csak IP alapú hálózaton működik, csak UDP csomagokkal, és csak ethernet eszközökön keresztül.
Ezzel a debug módszerrel elmenthetjük a kernel panic-okat, nyugodtan elolvashatjuk a kernel által boot időben generált üzeneteket, amelyek elengedhetetlenek, ha elemezni akarjuk a kernelünk működését, vagy csak egyszerűen segítséget szeretnénk kérni / bugreportot akarunk küldeni.
Bővebb infó a netconsole-ról a 2.6.0-mm2 kerneltől kezdve a Documentation/networking/netconsole.txt állományban lehet találni.
Eredeti cikk: http://www.hup.hu/modules.php?name=News&file=article&sid=5028
Forrás: Hungarian Unix Portal
Vissza
Kensington SP40 LITE TOP - Loader (15.4" táska)
Kensington /
Notebook
10.084,- Ft
(7.940,- Ft + ÁFA)
COMPUTERWORLD HÍREK
| Szűkítés: | OK |
STAR SM-S201 mobil nyomtató58mm papírszélesség, 80mm/sec, 203dpi, Bluetooth, mágneskártya ...
Megjelent az Acronis True Image Home 2012!
Acronis True Image Home 2012 Számítógépek ...
Epson LQ-690 mátrixnyomtató akció!
Epson mátrixnyomtató LQ-690 LQ-690, 24 pins flat-bed printer, 106 columns, 1+6 ...
XEROX PHASER 3250DN Lézernyomtató hihetetlen áron!
Kizárólag az akciós készlet erejéig mindössze 39.624 Ft-ért vásárolhat Xerox Phaser ...
Bemutatkozik a világ első 27˝-os All-In-One munkaállomása - A HP Z1 munkaállomás
A HP Z1 Workstation alapjaiban változtatja meg a munkaállomásokról alkotott képet! Egy munkaállomás üzembe helyezése alapvetően ...
Új generációs Dell PowerEdge R720 rack szerver akció!
Nagy és kiegyensúlyozott teljesítmény A következő generációs Intel® Xeon® ...
D-Link DWC-1000 wireless kontroller akció!
A DWC-1000 Vezeték nélküli kontrollerrel egyszerűbben telepíthető és menedzselhető egy üzleti vezeték ...
Acer Ultra Short Throw projektor akció!
Acer S5201 DLP 3D Ultra Short Throw projektorDLP, Ultra Short Throw lens (0,5m), natív: XGA ...
Adatmentés hatékonyan gyorsan és most különösen olcsón!
HPQ StorageWorks D2D2502i Backup System Flexibilis ...
Dell PowerEdge T410 SAS szerver akció!
Robusztus teljesítmény és rugalmasság!Olyan növekvő vállalkozások és ...
Member of IVSZ

Member of SZEK

Acer Affinity Gold partner

Dell Registered Partner
![]()
OKI System Shinrai Partner

XEROX Viszonteladó

APC megbízható szállító

EATON Authorized Partner

Cisco partner

Symantec Software Partner

ESET Partner
![]()
FUJITSU partner

LENOVO Premium Partner

IBM Business Partner

PARTNEREINK: Computerworld.hu | GameStar.hu | PCWorld.hu | SG.hu Hírmagazin | Lánchíd 19 Design Hotel | PC Guru | Hitel