Personal tools
You are here: Home Uputstva Opšte Kompajliranje kernela van izvornog stabla
yourip - portlet

ne m$-vom standardu
no tcpa

Pogledaj film!!!
Scriptum Libre
Kernel.org
Poslednja 2.6 verzija
2.6.26.2

Poslednja 2.4 verzija
2.4.36.6
Sponzori
open document format
Linux Sigurnost
Debian security

Gentoo security

Mandriva security

Red Hat security

Slackware security

Suse security

Ubuntu security

Log in


Forgot your password?
New user?
prijatelji LUGoNS-a
 
Document Actions

Kompajliranje kernela van izvornog stabla

by Goran Mekić last modified 2008-07-22 10:51

Ako poželite da Vam /usr/src/linux ostane "nezaprljan" binarnim fajlovima

Postoji više scenarija zašto ovo može biti korisno, ali jedan od njih je definitivno više različitih mašina u mreži kojima treba update kernela. Recimo da imate 2 mašine u mreži - klijent i server. Zbog jednostavnosti, razmatramo scenario sa dve mašine u mreži. Na serveru je kernel u /usr/src/linux i deljen je (NFS, Samba ili nešto treće). Na klijentu je, recimo, deljeni direktorijum servera mount-ovan na /mnt/server/kernel. Sve što treba da uradite da napravite direktorijum gde će se smeštati binarni fajlovi (potrebno je uraditi samo jednom):

# mkdir -p /var/tmp/kernel

Potom, uđite u direktorijum gde su izvorni fajlovi kernela i uradite pomalo izmenjenu standardnu proceduru kompajliranja kernela:

# cd /mnt/server/kernel
# make O=/var/tmp/kernel menuconfig
# make O=/var/tmp/kernel all
# make O=/var/tmp/kernel modules_install
# make O=/var/tmp/kernel install

Promenljiva O označava direktorijum gde će se smeštati binarni fajlovi (Output). Sve make komande koje biste inače pokrenuli, pokrenite sa O=/var/tmp/kernel i to je sva mudrost. Naravno, možete napraviti i skriptu koja odrađuje ovaj posao. Recimo, nešto ovakvo (meni radi posao):

#!/bin/bash

O=/var/tmp/kernel

cd /mnt/server/kernel
if [ "$?" != 0 ]; then
echo "No dir in /mnt/server/kernel" >&2
exit 1
fi

if [ ! -d $O ]; then
mkdir $O
fi
make O=$0 $@

Smestite ovu skriptu u /usr/bin (ili neki drugi direktorijum koji je u PATH-u) i nazovite je, recimo, make-kernel.sh. Na dalje pozivate make-kernel.sh umesto make sa apsolutno istim argumentima. Na primer:

# make-kernel.sh menuconfig all modules_install install

Powered by Plone CMS, the Open Source Content Management System

This site conforms to the following standards: