Linux E X P R E S

Facebook

Jak na vlastní jádro v Debianu

Aneb vzali jste mi /dev/raw1394 , musím si udělat vlastní


Debian GNU/Linux už nějakou dobu neobsahuje ve svých distribučních jádrech podporu zařízení /dev/raw1394. To bylo z jádra vyškrtnuto v okamžiku, kdy bylo toto rozhraní označeno vývojáři Debianu za zastaralé a životu nebezpečné pro bezpečnost systému.

Bohužel, toto zařízení stále využívá program Kino, který využívám pro získání digitálních dat z kamery. Protože nějaké zástupné knihovny v podobě libraw1394 mi nefungovaly, tak jsem byl nucen si vytvořit jádro vlastní a jak že se v Debianu takové jádro dělá, na to se teď podíváme.

Nejprve je potřeba si stáhnout zdrojové soubory jádra. To se provede např. takto

sudo aptitude install linux-source-2.6.24

Zdrojové soubory linuxového jádra se stáhnou do adresáře /usr/src, kde je musíte rozbalit a také je dobré na ně nasměrovat adresář /usr/src/linux, např. takto

cd /usr/src
sudo tar xvjf  linux-source-2.6.24.tar.bz2 
sudo ln -sf  linux-source-2.6.24 linux

Další co musíte udělat je vzít si vhodný konfigurační soubor, z kterého je možno vyjít a ten si upravit k obrazu svému. To se udělá např. takto

cd /usr/src/linux 
sudo cp /boot/config-2.6.24-1-amd64 ./.config
sudo make menuconfig

Poslední příkaz vám otevře obrazovku, ve které se nastaví požadované volby. V případě zařízení IEE1394 je potřeba zrušit nové rozhraní používané pro přístup k zařízení a vybrat starý způsob.

Jádro pak musíte zkompilovat

sudo make-kpkg clean
sudo fakeroot make deb-pkg 

Nově vzniklé jádro se uloží do adresáře /usr/src, odtud ho nainstalujete klasicky příkazem

sudo dpkg -i linux-2.6.24_2.6.24_amd64.deb

Ještě než ho budete moci začít používat, je potřeba upravit soubor  /boot/grub/menu.lst a vytvořit initrd, jinak by nebylo možné takto vzniklé jádro zavést. Initrd vytvoříte takto

sudo update-initramfs -k 2.6.24 -c

No a soubor  upravíte např. přidáním následujících řádek. Tím je instalace jádra hotova a můžete restartovat počítač.

title        Debian GNU/Linux, kernel 2.6.24 firewire
root        (hd0,0)
kernel        /boot/vmlinuz-2.6.24 root=/dev/sda1 ro 
initrd        /boot/initrd.img-2.6.24

 

Diskuze (1) Nahoru