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/.
Cześć,
Zainstalowałem jądro z eksperimentala linux-3.8-trunk. Coś mi nie pasowało, stwierdziłem, że zrobię sobie takie, ale nie będę za dużo w nim grzebał. Tak więc config z niego dałem do źródeł 3.8.3 (troche inne, ale wydaje mi się, że to tu nie ma takiego znaczenia). No i zmiany to wkompilowanie na stałe FS, ahci, grafikę intela, odznaczenie swapu (bo nie korzystam) i to chyba tyle. Zaznaczenie, że to low-latency-desktop. A i zaznaczyłem w grafice logo linux'a żeby było ladnie :) i teraz efekt:
pablo@lena:/lib/modules$ du -ah 3.8-trunk-amd64/| wc -l 3568 pablo@lena:/lib/modules$ du -ah 3.8.3| wc -l 3537 pablo@lena:/lib/modules$ du -sh 3.8-trunk-amd64/ 111M 3.8-trunk-amd64/ pablo@lena:/lib/modules$ du -sh 3.8.3 1,9G 3.8.3
Same jądra są podobne wielkościowo tylko te moduły są ciekawe. Dla ułatwienia (tudzież utrudnienia):
pablo@lena:~$ grep XZ /boot/config-3.8.3 CONFIG_HAVE_KERNEL_XZ=y CONFIG_KERNEL_XZ=y CONFIG_RD_XZ=y CONFIG_SQUASHFS_XZ=y CONFIG_XZ_DEC=y CONFIG_XZ_DEC_X86=y CONFIG_XZ_DEC_POWERPC=y CONFIG_XZ_DEC_IA64=y CONFIG_XZ_DEC_ARM=y CONFIG_XZ_DEC_ARMTHUMB=y CONFIG_XZ_DEC_SPARC=y CONFIG_XZ_DEC_BCJ=y # CONFIG_XZ_DEC_TEST is not set CONFIG_DECOMPRESS_XZ=y
Generalnie nic świadomnie nie zorbiłem takiego, żeby efekt był aż tak znaczny.
Trochę pomocy (znajduje gdzie ile jest plików które mają klika mega tu i tu):
pablo@lena:/lib/modules$ du -sh 3.8.3/kernel/drivers/*|grep M|wc -l 50 pablo@lena:/lib/modules$ du -sh 3.8-trunk-amd64/kernel/drivers/*|grep M|wc -l 15
Tu jest źródło ciężaru... Ktoś wie dlaczego tak się dzieje? Jaka opcja za to odpowiada?
Z góry dzięki :)
Ostatnio edytowany przez P@blo (2013-04-10 15:26:35)
Offline
Ale jesteś pewien, że chodzi o te kilka plików? Tam nie są czasem podlinkowane źródła brane pod uwagę? Bez opcji -L niby nie powinny, ale to pierwsze co mi przyszło na myśl. Może coś innego ze źródłami? ;) Sprawdź jeszcze ile te katalogi kernel/drivers ważą na obu i ile rozbabrane źródła od Twojego ważą. I jeszcze jak instalujesz kernela/moduły?
Offline
1,9 G to żródła po kompilacji z symbolami debugowania wszystkich modułów.
Nie pamiętam dokładnie, która to opcja, ale poszukaj coś w stylu kernel_debug w konfigu, kernele dystrybucyjne domyślnie mają to włączone.
Poza tym domyslnie folder ze źródłami jest podlinkowany w /lib/modules/{wersja}/build i najwyraźniej policzył te źródła.
A poza tym zrób sobie porządny konfig kernela:
du -shm /lib/modules/`uname -r` 22 /lib/modules/3.8.4-gr3
Z czego:
du -shm /lib/modules/`uname -r`/video/* 12 /lib/modules/3.8.4-gr3/video/nvidia.ko
Pozdrawiam
;-)
Ostatnio edytowany przez Jacekalex (2013-03-29 05:21:01)
Offline
@ArnVaker
pablo@lena:/lib/modules$ du -sh 3.8-trunk-amd64/kernel/drivers/ 77M 3.8-trunk-amd64/kernel/drivers/ pablo@lena:/lib/modules$ du -sh 3.8.3/kernel/drivers/ 1,3G 3.8.3/kernel/drivers/
Odnośnie instalacji:
Sama kompilacja była na innym kompie na którym zrobiłem:
make deb-pkg
Potem do siebie tup tup i via dpkg. Tak więc źródeł jako (w /usr/src/) tako nie mam :)
@Jacekalex:
Więc twierdzisz, że to:
pablo@lena:~$ grep DEBUG_KERNEL /boot/config-3.8.3 CONFIG_DEBUG_KERNEL=y pablo@lena:~$ grep DEBUG_KERNEL /boot/config-3.8-trunk-amd64 CONFIG_DEBUG_KERNEL=y
Jest powodem? To nie rozumiem dlaczego w dystrybucyjnym jest to wszystko małe, a u mnie duże?
Co do reszty to chyba pudło, bo jak pisałem wyżej nie mam źródeł :) (fizycznie)
pablo@lena:~$ du -sh /lib/modules/3.8.3/build/ 61M /lib/modules/3.8.3/build/
Ostatnio edytowany przez P@blo (2013-03-29 09:55:43)
Offline
Jak dasz make modules_install to też tyle ważą moduły? Nie używałem nigdy make deb-pkg, także nie wiem jak on się zachowuje.
Offline
Wiesz, nie dam bo kompilacja jest na innym kompie na ktorym nie jestem rootem.
Offline
Jak mogłeś skopiować do siebie utworzony pakiet, to możesz też skopiować źródła których używasz.
Offline
Dziwne coś jądro budujesz. Mam:
mati75@kartofel:~$ du -shm /lib/modules/`uname -r` 3 /lib/modules/3.9.0-rc4-pineapple
robiłem make-kpkg, żadnych śmieci nie zatrzymuje.
Offline
http://forum.dug.net.pl/viewtopic.php?id=23196
Obawiam sie ze make modules_install najpierw zechce robic make... Czy myle sie?
Bys moze make deb-pkg jest winne...
Offline
make modules_install tylko instaluje skompilowane już moduły.
Offline
Okazało się że Jacekalex miał rację:
pablo@lena:/boot$ grep DEBUG_KERNEL config-3.8-trunk-amd64 CONFIG_DEBUG_KERNEL=y pablo@lena:/boot$ grep DEBUG_KERNEL config-3.8.3 # CONFIG_DEBUG_KERNEL is not set pablo@lena:/boot$ du -sh /lib/modules/* 107M /lib/modules/3.8.3 111M /lib/modules/3.8-trunk-amd64
Nie wiem, jak oni robią te jądra, bo jak widać dana opcja u nich jest włączona.
Offline
Przy zwykłym make modules_install było tak samo? W oficjalnych kernelach z repo symbole debugowania są w osobnych pakietach.
Offline
Tzn zrobiłem to jądro z wyłączoną tą opcją i wierzyć mi się nie chciało to najpierw zrobiłem make modules_install. I zaskoczyło mnie że moduły są małe. Zrobiłem paczki zainstalowałem i jest ok. Ale nie patrzyłem z włączoną tą opcją make modules_install. Może kiedyś... ;)
Offline
OK, sprawdzę u siebie w takim razie. :P
Offline
Już patrze bo mogę ;)
Offline
Sprawdziłem – tak samo jest. Dopiero przy make-kpkg pakiet z kernelem ma standardowe rozmiary, tu można utworzyć osobny pakiet z symbolami debugowania.
PS Prawie 80 minut trwała u mnie kompilacja na dystrybucyjnym konfigu. :]
Offline
O, a właśnie miałem instalować u siebie... No ja robię na i7 8-rdzeniowym w 13min ;D No ale jak takiś narwany... ;p
Offline
/me narwany?
sjp.pwn.pl/slownik/2487063/narwany napisał(-a):
narwany pot. «postępujący w sposób niezrównoważony»
e tam ;)
Offline