Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
Strony: 1
Witam mam taki problem. Nalozylem patcha na ta wersje jajka co jest w temacie. Korzystalem z tego opisu.
apt-get update
apt-get install kernel-package libncurses5-dev fakeroot wget bzip2 build-essential
Mamy już wszystko czego potrzębujemy do poprawnej kompilacji, czas zabrać sie za pobranie ze strony www.kernel.org najnowszej stabinej wersji jądra. W naszym przypadku jest to jądro 2.6.27.7.
wget -c http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.27.7.tar.bz2
Jak widzimy warto jest ściągnąć wersję w formacie .tar.bz2 z tego względu ze jest to dobrzę skompresowane archiwum i ściąganie trwa szybciej.
Gdy mamy już nasze jajeczko w najnowszej wersji przenosimy je do katalogu /usr/src , i wypakowujemy je nastepującym poleceniem.
tar xvjf linux-2.6.27.7.tar.bz2
Następnie tworzymy dowiązanie symboliczne:
ln -s linux-2.6.27.7.tar.bz2 linux
Przechodzi do katalogu /usr/src/linux i wykonujemy następująco:
make clean && make mrproper
cp /boot/config-`uname -r` ./.config
Drugie polecenie spowoduje wczytanie pliku konfugracyjnego aktualnie używanego jądra do poprawnej kompilacji nawerj wersji kernela.
Kompilację uruchamiamy poprzez dowolny program (oczywiscie do tego przeznaczony), ja posłużyłem sie tutaj narzędziem menuconfig.
make menuconfig
Zaznaczamy pole “Load an Alternate Configuration File”, spowoduje to wczytanie pliku .config
Gdy wszystko pójdzie bez najmniejszego problemu, najeżdzamy na pole Exit, zostaniemy zapytani czy chcemy zapisać nowa konfiguracje jądra “Do you wish to save your new kernel configuration?”, oczywiście zgadzamy sie na toi wybieramy pole Yes.
Do zbudowania nowej wersji jądra wydajemy jeszcze dwa polecenia:
make-kpkg clean
fakeroot make-kpkg --initrd --append-to-version=-custom kernel_image kernel_headers
Trochę to trwa w zależności od szybkości naszego komputera. Na moim sprzecie tj. procesor 2.4gHz, 1gb pamięci ramu zajeło to około 30min. Gdy wszystko pojdzie bez problemu powinniśmy w katalogu /usr/src zobaczyć dwie paczki .deb.
ls
linux-headers-2.6.27.7-custom_2.6.27.7-custom-10.00.Custom_i386.deb
linux-image-2.6.27.7-custom_2.6.27.7-custom-10.00.Custom_i386.deb
Ostatnią rzeczą jaka musimy wykonać jest instalacja nowego kernela w naszym systemie.
dpkg -i linux-image-2.6.27.7-custom_2.6.27.7-custom-10.00.Custom_i386.deb
dpkg - i linux-headers-2.6.27.7-custom_2.6.27.7-custom-10.00.Custom_i386.deb
Doszedlem do momenu :
fakeroot make-kpkg --initrd --append-to-version=-custom kernel_image kernel_headers
Po jakims czasie wysypuje mi sie z takim o to komunikatem:
make[1]: Entering directory `/usr/src/linux-2.6.32.10'
CHK include/linux/version.h
CHK include/linux/utsrelease.h
SYMLINK include/asm -> include/asm-x86
CALL scripts/checksyscalls.sh
Building modules, stage 2.
MODPOST 1848 modules
WARNING: modpost: Found 22733 section mismatch(es).
To see full details build your kernel with:
'make CONFIG_DEBUG_SECTION_MISMATCH=y'
make[1]: Leaving directory `/usr/src/linux-2.6.32.10'
/usr/bin/make EXTRAVERSION=.10-custom ARCH=i386 \
-C Documentation/lguest
make[1]: Entering directory `/usr/src/linux-2.6.32.10/Documentation/lguest'
cc -m32 -Wall -Wmissing-declarations -Wmissing-prototypes -O3 -I../../include -I../../arch/x86/include -U_FORTIFY_SOURCE lguest.c -o lguest
lguest.c:21:25: error: sys/eventfd.h: No such file or directory
lguest.c:37:18: error: zlib.h: No such file or directory
lguest.c: In function âcreate_threadâ:
lguest.c:1027: warning: implicit declaration of function âeventfdâ
make[1]: *** [lguest] Error 1
make[1]: Leaving directory `/usr/src/linux-2.6.32.10/Documentation/lguest'
make: *** [debian/stamp/build/kernel] Error 2
Moze mi ktos powiedziec o co on sie pluje i co mu sie nie podoba. Ewentualnie jak rozwiazac ten problem.
Z gory dziekuje. Pozdrawiam.
Offline
Problem:
lguest.c:21:25: error: sys/eventfd.h: No such file or directory lguest.c:37:18: error: zlib.h: No such file or directory
Solution:
aptitude install libc6-dev zlib1g-dev
Offline
Dziekuje rzeczywiscie tego nie bylo. Nie rozumiem jednej rzeczy skoro wczoraj kompilowalem i blad wyskoczyl dopiero pod koniec a dzisiaj robie dokladnie to samo tylko, ze od nowa. Config ten sam wszystko to samo i dostaje takie cholerstwo.
net/ipv4/tcp_minisocks.c: In function âtcp_check_reqâ:
net/ipv4/tcp_minisocks.c:681: error: âgrsec_enable_blackholeâ undeclared (first use in this function)
net/ipv4/tcp_minisocks.c:681: error: (Each undeclared identifier is reported only once
net/ipv4/tcp_minisocks.c:681: error: for each function it appears in.)
make[3]: *** [net/ipv4/tcp_minisocks.o] Error 1
make[2]: *** [net/ipv4] Error 2
make[1]: *** [net] Error 2
make[1]: Leaving directory `/usr/src/linux-2.6.32.10'
make: *** [debian/stamp/build/kernel] Error 2
Offline
Mam dokładnie ten sam problem, plik .config mam ten sam, jedyne co zmieniłem to patch grsec i wyskakuje mi identyczny błąd. Moim zdaniem coś zmodyfikowali ludzie z grsec i teraz nie działa.
Offline
Ja tez mam tylko patch grsecurity do tej wlasnie wersji kernela w configu nic nie ruszalem. Dziwi mnie, ze jak wczoraj kompilowalem to wywalal blad znacznie pozniej przy brakujacych bibliotekach a dzisiaj chcialem skompilowac na nowo i chwile pozniej po fakeroot make-kpkg --initrd --append-to-version=-custom kernel_image kernel_headers dostalem wlasnie ten blad. Zastanawiam sie nad jajkiem 2.6.32.10 ale jakby dociagnac z deb http://debian.cr0.org/repo/ kernel-security/ tylko, ze tam jest jajko 2.6.27.29-4. Jezeli bym zainstalowal dla jajka 2.6.32.10 to autoamtycznie by mi zrobil downgrade wersji kernela ? Czy poprostu nalozy patch na ta wersje jajka ktora mam ?
Offline
patch grsecurity nakładamy na czyste jajo z kernel.org !!!
Offline
Yampress napisał(-a):
patch grsecurity nakładamy na czyste jajo z kernel.org !!!
No a o czym ja pisze ? Chyba mnie zle zrozumiales.
Offline
MrWarum napisał(-a):
Ha, znalazłem rozwiązanie! :]
Problemem nie jest patch, tylko nie zaznaczona opcja w Grsecurity->Network Protections-> TCP/UDP blackhole...
Sam na to wpadles czy wyczytales ? A co ma TCP w grsec do prawidlowej kompilacji jajka ? Dziwni troche mnie ten blad no, ale gratulacje. Zaraz sprawdze czy u mnie tez dziala.
Offline
No sam wpadłem na to, w sumie to nic wielkiego, rozwiązanie teraz wydaje się oczywiste :)
grsec_enable_blackhole undeclared
To zwróciło moją uwagę, zacząłem się temu bardziej przyglądać i znalazłem błąd :]
Ostatnio edytowany przez MrWarum (2010-03-21 21:17:02)
Offline
To ja zaraz jeszcze sprawdze i mozemy uznac problem za rozwiazany.
Offline
Strony: 1