Mandriva Linux s „tmb“ jádrem: VMware a další

Nedávno jsem tu vychvaloval „tmb“ jádro pro Mandriva Linux 2007.1, (konkrétně ve verzi laptop), se kterým jsem již delší dobu navýsost spokojen. Takže se podívejme, kde ho vzít, jak ho nainstalovat a jak ho používat…

Poslední verzi „tmb“ jádra pro Mandriva Linux 2007.1 najdete ve zdroji Contrib Backports. V době psaní článku tam byly balíčk s názvy kernel-tmb-*-2.6.22.6-*, nyní se to může lišit (např. se objevila novější verze). Osobně používám na notebooku variantu „laptop,“ konkrétně balíček kernel-tmb-laptop-2.6.22.6-1mdv. Pro stolní počítače je tam „desktop“ a tak podobně. Při používání tohoto jádra jsem ale narazil na dva problémy, které se zde pokusím vyřešit.

Problém s řadičem disku

Na první problém narazíte skoro určtě a proto ho doporučuji řešit ještě předtím, než si nové jádro nainstalujete! Toto jádro je plně modulární a potřebuje mít uvedeno, jaký řadič disku v počítači máte, jinak po startu nahlásí „kernel panic“ a hotovo. Nenajde totiž disk, přesněji řečeno nenajde ovladač pro řadič disku. Při instalaci pomocí urpmi se vám tato informace vypíše i na konzoli, jak je to v grafice nevím. Všechno je uvedeno i v info souborech v /usr/share/doc/kernel-tmb*.

Změnu zařídíte jednoduše. Musíte přidat jeden řádek do souboru /etc/modprobe.conf, ale předtím musíte zjistit, jaký ovladač (tedy jaderný modul) používá váš řadič. To zjistíte jednoduše, například v Ovládacím centru Mandriva Linuxu v přehledu hardwaru, kde stačí klepnout na řadič a najdete tam dole i název modulu. V dokumentaci k tmb-jádru jsou tyto tipy pro nejpoužívanější čipové sady a jejich řadiče:

  • modul atiixp použijte pro čipové sady Ati,
  • modul piix použijte pro čipové sady Intel,
  • modul amd74xx použijte pro čipové sady Amd & Nvidia,
  • modul via82cxxx použijte pro čipové sady Via.

No a pak do /etc/modprobe.conf dopište na začátek řádek „alias ide-controller váš_modul“. Domá mám Intel, měl bych tedy použít modul „piix“ – tutéž informaci mi řeklo i Ovládací centrum Mandriva Linuxu. Do /etc/modprobe.conf jsem tedy zapsal tento řádek:

alias ide-controller piix

Problém s VMware serverem

Další problém byl s VMware Serverem, protože jeho jaderné moduly ještě nikdo „nestačil připravit“ na jádro 2.6.19 a novější. Ano, správně, nemýlíte se – vyšlo teprve před rokem :). Projevuje se to tak, že nelze zkompilovat jaderné moduly pro VMware – skončí to chybou při překladu. Takže co s tím?

Pomůže nám sada oprav vmware-any-any-update: stručné info najdete na fórech VMware, poslední verze je k dostání na platan.vc.cvut.cz (v době psaní návodu to byla verze 113). Dále předpokládám, že instalaci a nastavení VMware znáte a proto se věnuji pouze krokům odlišným od těch obvyklých.

Nejdříve je třeba připravit zdroje „tmb“ jádra (bližší info o tom, proč to tak je, najdete opět v /usr/share/doc/kernel-tmb*) a to následujícím způsobem :

  • Doporučuji udělat link /usr/src/linux/ na konkrétní verzi jádra. Za prvé to tak chtějí některé aplikace, za druhé se na tento adresář budu odkazovat. U mně je to takto: /usr/src/linux/-> /usr/src/2.6.22.6-tmb-1mdv/.
  • Přejděte do adresáře se zdroji /usr/src/linux/ a spusťte make mrproper.
  • Z podadresáře arch/ a dále podle architektury zkopírujte soubor s konfigurací vašeho jádra do /usr/src/linux/.config. U mně to byl soubor /usr/src/linux/arch/i386/defconfig-laptop.
  • Upravte soubor /usr/src/linux/Makefile tak, aby odpovídal vaší verzi jádra, konkrétně jde o úpravu řádku „EXTRAVERSION = …“ Vlastní verzi jádra zjistíte pomocí příkazu uname -r a do výše uvedeného řádku doplňte všechno, co najdete za třetí tečkou. Moje verze jádra je „2.6.22.6-tmb-laptop-1mdv“ a tak výsledek v souboru Makefile vypadal takto: EXTRAVERSION = .6-tmb-laptop-1mdv.
  • Spusťte příkaz make oldconfig prepare scripts.

Tak, jádro je upraveno a nyní ještě zbývá zprovoznit VMware Server. Předpokládám, že jej již máte nainstalován a zasekli jste se při kompilaci jaderných modulů po instalaci nového jádra. Opravíme to jednoduše:

  • Stáhněte výše uvedený vmware-any-any-update ze serveru platan.vc.cvut.cz (v době psaní návodu to byla verze 113).
  • Archiv rozbalte a vejděte do vytvořeného adresáře.
  • Spusťte skript runme.pl. Ten si najde zdroje jaderných modulů VMware Serveru a nabídne vám jejich opravu. Toto potvrďte a vyčkejte na skončení skriptu.
  • Spusťte konfiguraci VMware Server skriptem vmware-config.pl. Konfigurace proběhne standardním způsobem, moduly by tentokrát měly být zkompilovány bez problémů.

No a to je vše. Ještě přidám několik detailů a postřehů:

  • Výše uvedený postup jsem zkoušel s následujícími verzemi programů a jádra: kernel-tmb-laptop-2.6.22.6-1mdv, VMware-server-1.0.3-44356 a vmware-any-any-update113.
  • Když budete auktualizovat tmb-jádro, musíte po aktualizaci znovu provést úpravu zdrojů jádra a spustit (jako vždy při aktualizaci jádra) skript vmware-config.pl.
  • Pro jiná jádra než tmb (například pro vanilla-kernel z ftp.linux.com) pravděpodobně nebude úprava zdrojů nutná.

To je vše. Snad to někomu pomůže.

pridej.cz

Komentáře

  1. lzap napsal:

    úplný Gentoo :-)

  2. bibri napsal:

    Ani nemluv. Ale to nové jádro jsem chtěl, protože už bylo na čase vyzkoušet power top.

    http://www.linuxpowertop.org/

    A patchům VMware se nevyhneš ani na Ubutnu…

  3. multi napsal:

    Takovej se vzdycky nekdo najde, pisou o tom na net jen, aby utvrdili sami seme, ze widle jsou nej.

    Jinak ta prirucka dela z uz tak dobre Mandrivy neporovnatelnou distribuci.

  4. Mistvan napsal:

    Tak jsem nainstaloval kernel-tmb-desktop-2.6.22.6-2mdv-1-1mdv2007.1.x86_64​a na začátek modprobe.conf vložil alias ide-controller amd74xx (řadič zjištěn dle návodu v ovládacím centru) a stejně mi to píše kernel panic. V čem může být chyba?

  5. bibri napsal:

    Nevím, ale bude to úravděpodobně napsané před tím řádkem „kernel panic“ – nemáte řadiče náhodou dva a různé?

  6. Mistvan napsal:

    Tak už jsem to vyřešil. Mrknul jsem se do dokumentace ke kernelu a tam našel toto: „If you added this line after you installed the kernel, you must recreate your initrd and rerun lilo to get your changes used.“ Pak jsem si všiml, že i tady píšete, že se úpravy musí udělat před instalací kernelu, já to právě udělal až po. Tak jsem odstranil staré initrd z adresáře boot a vytvořil nové pomocí příkazu „mkinitrd /boot/initrd-2.6.22.6-tmb-desktop-2mdv.img 2.6.22.6-tmb-desktop-2mdv“ a znovu nainstaloval lilo. No a pak vše naběhlo bez problému.

  7. bibri napsal:

    Aha. Pro příště: mkinitrd -f … to přemaže initrd bez nutnosti ručního mazání.

  8. bibri napsal:

    Vyšel VMware Server 1.0.4, který konečně opravuje výše uvedenou chybu. Any-any-update už není potřeba (vyzkoušeno s balíčkem VMware-server-1.0.4-56528.i386.rpm).

Vložit komentář

Váš e-mail nebude nikdy zveřejněn nebo nikomu sdělen. Požadované údaje jsou označeny *

*

*