serg iakovlev

Hogyan kell kernelt fordítani a SUSE

Minden eloszlás egy sor speciális eszköz a szerelvény a mag forrás. Ebben a cikkben fogunk beszélni épület a kernel SuSE. forrás www.kernel.org (vanília kernel) fogják használni. Megmutatjuk, hogyan patch kernel forrás.

Mindez már tesztelték 10.1.

Nem ez az egyetlen módja annak, hogy e cél elérése érdekében. Nem tudom garantálni a tény, hogy ez működni fog az Ön számára

Cél a cikk - gyűjteni kernel rpm csomagot. amely lehet telepíteni a rendszert, majd a többi SUSE-rendszer.

A minimálisan szükséges építeni a kernel

Meg kell telepíteni a csomagot ncurse devel. amely szükséges a make parancs menuconfig:

yast -i ncurses-devel

Továbbá, akkor módosítani kell néhány alapok. Ha ezt nem tesszük, hogy kap egy figyelmeztetést fordításkor:

/usr/lib/rpm/find-requires.ksyms: 12-es vonal: / usr / bin / nm: Argumentum-lista túl hosszú

és mi nem lesz képes telepíteni a kernel rpm csomagot.

Kezdetnek, nézzük podstrahuemsya:

cp /usr/lib/rpm/find-provides.ksyms /usr/lib/rpm/find-provides.ksyms_orig
cp /usr/lib/rpm/find-requires.ksyms /usr/lib/rpm/find-requires.ksyms_orig
cp /usr/lib/rpm/find-supplements.ksyms /usr/lib/rpm/find-supplements.ksyms_orig

Ezután nyissa mind a 3 fent említett szkriptek és cserélje húr kernel- *) is_kernel_package = 1 ;;
a sorban
kernel *) is_kernel_package = 1 ;; :

Kivonat, és hozzon létre egy szimbolikus linux:

tar xjf linux-2.6.18.2.tar.bz2
ln -s linux-2.6.18.2 linux
cd / usr / src / linux

Foltok (opcionális)

Lehet, hogy egy vezető, hogy nincs jelen a kernel, vagy támogatásra van szüksége a virtualizáció, vagy más technológia, amely még nem szerepel a mag. Mindezekben az esetekben szükség van egy patch.

Most képzeljük el, hogy már letölthető a szükséges javítást (I obzovu azt feltételesen patch.bz2). Ez történik az alábbiak szerint. (Még mindig vannak az / usr / src / linux):

bzip2 -dc /usr/src/patch.bz2 | patch -p1 --dry-run
bzip2 -dc /usr/src/patch.bz2 | patch -p1

Az első parancs csak egy teszt, hogy nem csinál semmit. Ha nem lesz hiba, csak akkor, ha fut a második parancs.

Ha a tapasz kiterjesztése (.gz) helyett bzip2 (.bz2), kernel patch, mint ez:

gunzip -c /usr/src/patch.gz | patch -p1 --dry-run
gunzip -c /usr/src/patch.gz | patch -p1

Prepatch - valójában egy alfa kiadás. Él egy teszt archív könyvtárban.

Hogyan kell a tapaszt felhelyezni 2.6.19-rc6 patch 2.6.18:

kernel konfigurációs

Mi lesz itspolzovat rendszermag konfigurációs alapjául az új kernel. Másolása egy meglévő konfiguráció a / usr / src / Linux:

Márka mrproper
cp / boot / config-`uname -r` ./.config

Jelenik meg konfigurációs menüben. Válasszon betölteni egy alternatív konfigurációs fájl

serg iakovlev

serg iakovlev

Ezután válassza ki a General Setup --->
(-default) Helyi verzió
-alapértelmezett
A kernel rpm csomag elnevezése a kernel-2.6.18.2default-1.i386.rpm. Kiválaszthatja -Egyedi ízlés szerint.

Azért választottam -default.

Ha proinstalliruete kernel 2.6.18.2default-1.i386.rpm, majd úgy dönt, hogy egy új kernel verzió 2.6.18.2, akkor kell használni egy másik változata húr, azaz -default1. -default2. stb különben nem tudja telepíteni, mert a kernel-2.6.18.2default-1.i386.rpm már!

serg iakovlev

serg iakovlev

serg iakovlev

Végén. Ha rákattint a Kilépés. A következő kérdés (Tudni szeretné menteni az új rendszermag konfigurációs?) Meg kell a válasz igen.

serg iakovlev

A kernel

A szereléshez beírja a parancsot:

És adjátok át az akarat az idő.

Telepítése az új kernel

Miután 2 src.rpm és rpm csomagot hoz létre egy sikeres összeállítás. src.rpm a / usr / src / packages / SRPMS / könyvtárban. befejezett:

ls -l / usr / src / packages / SRPMS /

Azt nevezték kernel-2.6.18.2default-1.src.rpm.

rpm csomag a / usr / src / packages / RPMS / i386 /. / Usr / src / packages / RPMS / i586 /. / Usr / src / packages / RPMS / i686 /. / Usr / src / packages / RPMS / x86_64 /. stb attól függően, hogy az építészet. Megvan az / usr / src / packages / RPMS / i386 /. újonc

ls -l / usr / src / packages / RPMS / i386 /

Ő nevezte a kernel-2.6.18.2default-1.i386.rpm.

Most tudjuk telepíteni a rendszermag rpm csomagot.

cd / usr / src / packages / RPMS / i386 /
rpm -ivh kernel-2.6.18.2default-1.i386.rpm

Most lehet futtatni a telepítő minden SUSE gépen.

Hozzon létre egy ramdisk a kernel számára, különben a rendszer nem indul belőle:

(Tény, hogy ez a csapat szóda ramdisks az összes rendelkezésre álló magok)

GRUB konfigurációs

Meg kell beállítani a GRUB. Ahelyett, hogy a változó /boot/grub/menu.lst run

Menjen a Rendszer -> Boot Loader.

serg iakovlev

A következő képernyőn látni fogja a tartalmát a config GRUB. Válassza a Hozzáadás:

serg iakovlev

A választás Clone kijelölt szakasz másolni egy már meglévő GRUB bejegyzések:

serg iakovlev

Gyűjtjük a kernel nevét. mint például a SUSE Linux 10.1 - 2.6.18.2. válassza Kernel -> Tallózás.

serg iakovlev

Látni fogja a tartalmát a / boot könyvtárba, ahol az új kernel. Válassza ki a fájlt, amely általában kezdődik vmlinuz (típus vmlinuz-2.6.18.2-default):

serg iakovlev

A választás eredetileg RAM Disk -> Tallózás.

serg iakovlev

Látni fogja a tartalmát a / boot. Meg kell választani ennek megfelelően memórialemezre. amely általában kezdődik initrd (típus initrd-2.6.18.2-default):

serg iakovlev

serg iakovlev

Látni fogja, egy új bejegyzést a GRUB. Mi jelölje ki és kattintson a Fel.

serg iakovlev

Ezután kattintson a Beállítás alapértelmezett.

serg iakovlev

serg iakovlev

serg iakovlev

Most megnézheted /boot/grub/menu.lst