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/.
[quote=Jacekalex]Jak potrzebujesz coś zmienić w konfigu kernela, przy metodzie klasycznej, wystarczy zaznaczyć co trzeba w konfigu, potem przekompilować kernel.
U mnie kompilacja trwa około 20-25 minut, przekompilowanie tego jajka po zmianie konfigu (na tych samych źródłach) najwyżej 2-3 minuty.
Pozdro
;-)[/quote]
W ponownej kompilacji wykonujesz wszystkie komendy co w pierwszej , tak ??
make make install make modules
Powrócę jeszcze do mojego pytania na które nie uzyskałem odpowiedzi z postu 69
Jak wyświetlić jakiego modułu używa sprzęt nie podłączony do pci(lspci -k) tylko np do lsusb
I jeszcze jedno, mam listę modułów z lsmod i chciałbym dodać te moduły do configa . Było by fajnie gdyby nazwy były takie same w lsmod i w configu lecz nie są. Jak znaleźć odpowiedniki nazw w configu ?? Przez przypadek uzyskałem coś w tym stylu gdy wykonałem "make localyesconfig" i wywaliło mi errory w postaci "module battery did not have configs CONFIG_ACPI_BATTERY"
Ostatnio edytowany przez Pablik (2012-01-31 00:02:30)
Offline
Nie [b]make modules[/b] tylko [b]make modules_install[/b].
Moduły do USB:
lsusb -tv
Co do modułów z lsmod, to lepiej użyj skryptu
/usr/src/linux/scripts/ver_linux
Jest w każdych źródłach kernela.
Ostatnio edytowany przez Jacekalex (2012-01-31 00:44:30)
Offline
[quote=Jacekalex]Nie [b]make modules[/b] tylko [b]make modules_install[/b].[/quote]
hehe nie wiem czego ale mi działało ;P
[quote=Jacekalex]Co do modułów z lsmod, to lepiej użyj skryptu
/usr/src/linux/scripts/ver_linux
Jest w każdych źródłach kernela.[/quote]
Mógł byś bardziej objaśnić jak tego użyć i co to robi ?/
ok ogarnełem zwraca załadowane moduły
Modules Loaded cryptd aes_i586 aes_generic acpi_cpufreq mperf cpufreq_stats cpufreq_userspace cpufreq_powersave cpufreq_conservative parport_pc ppdev lp parport bridge rfcomm stp bnep bluetooth crc16 uinput binfmt_misc fuse loop joydev snd_hda_codec_realtek snd_hda_intel snd_hda_codec snd_hwdep snd_pcm snd_seq snd_timer psmouse snd_seq_device arc4 ac battery snd power_supply acer_wmi ath9k mac80211 uvcvideo serio_raw videodev ath9k_common ath9k_hw i915 ath evdev sparse_keymap drm_kms_helper soundcore drm pcspkr i2c_algo_bit cfg80211 i2c_i801 i2c_core snd_page_alloc wmi video rfkill processor button ext3 jbd mbcache sd_mod crc_t10dif uhci_hcd ahci libahci libata ehci_hcd fan usbcore scsi_mod thermal thermal_sys usb_common
Skoro jest taki skrypt co zwraca to możne jest też taki co ustawia, liste modułów ??
Ostatnio edytowany przez Pablik (2012-01-31 00:54:28)
Offline
[quote=ArnVaker]Jakby teraz na tym konfigu zrobił metodą debianową bez initrd, to też powinno banglać. :)[/quote]
Niestety metodą debianową dalej wywala kernel panic, na tym samym configu .
Offline
Skoro jest taki skrypt co zwraca to możne jest też taki co ustawia, liste modułów ??[/quote]
To właśnie robi lacalyesconfig (wbudowanie na stałe), lub localmodconfig (zaznacza jako moduły).
Wywoływane komendą np:Kod:
make localyesconfig
W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem para bellum ;) | Pozdrawiam :)
Offline
no tak ale chodziło mi żeby wczytywało moduły z pliku .
Mam jeszcze jeden problem, zauważyłem ze ten skrypt "/scripts/ver_linux" wyświetla listę modułów tylko tych które były montowane jak M (moduł), a jak można sprawdzić jakie moduły są aktualnie załadowane na sztywno ?
Jeszcze jedno pytanko, podczas startu systemu widać co się załadowało a gdzie wyskoczył error (tylko to trwa chwilkę o nie zdążę zobaczyć co tam jest), to pewnie jest gdzieś przechowywane w jakichś logach , możecie mi powiedzieć jak to odczytać
Ostatnio edytowany przez Pablik (2012-01-31 17:30:46)
Offline
[quote=Pablik]no tak ale chodziło mi żeby wczytywało moduły z pliku .
Mam jeszcze jeden problem, zauważyłem ze ten skrypt "/scripts/ver_linux" wyświetla listę modułów tylko tych które były montowane jak M (moduł), a [b]jak można sprawdzić jakie moduły są aktualnie załadowane na sztywno[/b] ?
.........[/quote]
Czy w ogóle przeczytałeś wątek, który założyłeś?
Moduły zaznaczone na sztywno stają się integralną cześcią kernela, i wczytuję się razem z tym kernelem - wszystkie.
I wyładować ich się nie da, np:
modprobe -r snd-usb-audio
FATAL:[b] Module snd_usb_audio is builtin[/b][/quote]
Lista tych modułów zaznaczonych na sztywno?
Może:Kod:
grep '=y' /boot/config-$(uname -r)A dla konfigu w źródłach:
Kod:
grep '=y' /usr/src/linux/.configW ogóle bez grepa Linux nie jest już Linuxem ;)
RTFM:Kod:
man grepJeszcze jedno pytanko, podczas startu systemu widać co się załadowało a gdzie wyskoczył error (tylko to trwa chwilkę o nie zdążę zobaczyć co tam jest), to pewnie jest gdzieś przechowywane w jakichś logach , możecie mi powiedzieć jak to odczytać[/quote]
Jeśli system się uruchomił do poziomu konsoli, to maszKod:
dmesgnatomiast jeśli masz kernel-panic - to wisi na konsoli ostatni komunikat z tego kernel panic.
To takie 2 podstawowe i typowe przypadki.
Pozdro
;-)Ostatnio edytowany przez Jacekalex (2012-01-31 18:12:01)
W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem para bellum ;) | Pozdrawiam :)Offline
znowu nie o to mi chodziło, podam ci przykład, np jak bym zaznaczył na sztywno sterowniki których nie potrzebuje (bo np w danej chwili mam odłączony sprzęt który korzysta z tego sterownika) to rozumiem ze jak sprzęt jest odłączy to krenel nie ładuje tych sterowników (czy ładuje mimo że sprzęt jest odłączony ?) chodzi mi o to żeby wyświetlić które sterowniki załadował . ROZMAWIAMY TERA TYLKO O STEROWNIKACH ŁADOWANYCH NA SZTYWNO (*)
Offline
ROZMAWIAMY TERA TYLKO O STEROWNIKACH ŁADOWANYCH NA SZTYWNO(*)[/quote]
One nie są ładowane, one są cześcią kernela.
Jak wsiadasz do tramwaju, to nie ładujesz do niego osobno ucha a osobno lewego pułdupka, tylko wsiadasz cały, niepodzielnie.
I tak samo jest z modułami wbudowanymi na sztywno w kernel.
One nie są ładowane tylko wbudowane w kernel, są jego integralną częscią.
Linux - to jajo [b]monolityczne[/b] z ładowalnymi modułami.
Sterowników, których nie potrzebujesz, po prostu nie zaznaczasz.Kod:
make localyesconfigteż wyłacza większość modułów kernela, zaznacza natomiast te, które są używane przez podłączone urządzenia.
Ostatnio edytowany przez Jacekalex (2012-01-31 18:20:23)
W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem para bellum ;) | Pozdrawiam :)
Offline
no i o to mi chodziło , wielkie dzięki ;)
Jeszcze jedno pytano, kiedy komputer się szybciej uruchamia jak są sterowniki ładowane na sztywno czy jako moduł ???
Chyba jak są na sztywno bo wtedy nie są ładowane tylko po prostu są, tak ??
Ostatnio edytowany przez Pablik (2012-01-31 18:20:46)
Offline
[quote=Pablik][quote=ArnVaker]Jakby teraz na tym konfigu zrobił metodą debianową bez initrd, to też powinno banglać. :)[/quote]
Niestety metodą debianową dalej wywala kernel panic, na tym samym configu .[/quote]
Może initrd się automatycznie wygenerował? Nie żeby mi zależało na dociekaniu w czym problem, nigdy nie byłem zwolennikiem „metody Debiana”.
[quote=Pablik]Jeszcze jedno pytano, kiedy komputer się szybciej uruchamia jak są sterowniki ładowane na sztywno czy jako moduł ???
Chyba jak są na sztywno bo wtedy nie są ładowane tylko po prostu są, tak ??[/quote]
Generalnie tak, ale różnice są tak znikome, że nie warto sobie nimi głowy zawracać. Więcej się już zyskuje w przypadku przejścia z domyślnego initrd (~10MB) na minimalne (~2MB), a potem przy całkowitym się jego pozbyciu.
Offline
[quote=ArnVaker][quote=Pablik][quote=ArnVaker]Jakby teraz na tym konfigu zrobił metodą debianową bez initrd, to też powinno banglać. :)[/quote]
Niestety metodą debianową dalej wywala kernel panic, na tym samym configu .[/quote]
Może initrd się automatycznie wygenerował? Nie żeby mi zależało na dociekaniu w czym problem, nigdy nie byłem zwolennikiem „metody Debiana”.[/quote]
tak, automatycznie generują sie te 4 pliki do /boot/ , lecz po usunięciu initrd.img dalej wyskakuje kernel panic
Offline
Może trzeba jeszcze puścić [tt]update-grub[/tt], żeby nie próbował ładować initrd, którego nie ma?
Offline
[quote=ArnVaker]Może trzeba jeszcze puścić [tt]update-grub[/tt], żeby nie próbował ładować initrd, którego nie ma?[/quote]
tzn ja zrobiłem tak :
make-kpkg --revision=782:jajko kernel_image - wygenerował mi te 4 pliki w katalogu /boot/
update-initramfs -c -k 3.0.17 - Wygenerował mi ponownie initr
update-grub
i teraz usunąłem init'a i po przewaleniu jest kernel panic
Offline
Ale po co generujesz initrd, jak nie chcesz initrd? ;) Usuń initrd i potem dopiero daj:
update-grub
Offline
[quote=ArnVaker]Ostatecznie sam kernel powinien być przy obu sposobach taki sam, tyle że z pakietami po prostu zachodu więcej.[/quote]
może na początku teraz chwila,
pakiety się zbudowały i już jestem na tym kernelu
linux-2.6 (3.2.2-1~bpo60+2) squeeze-backports; urgency=low
* Non-maintainer upload.
* Enable PREEMPT and HZ=300
* rt: Disable
[ Ben Hutchings ]
* Rebuild for squeeze:
- Use gcc-4.4 for all architectures
- Disable building of udebs
- Monkey-patch Python collections module to add OrderedDict if necessary
— arturek <arturek@debian.domain> Tue, 31 Jan 2012 17:14:54 +0100
linux-2.6 (3.2.2-1) unstable; urgency=low[/quote]
Debian “buster” Xfce
Offline
[quote=arturek]może na początku teraz chwila,[/quote]
Za każdym razem. Nie, że to trudne, tylko że to dodatkowa strata czasu. Po prostu zabawa w pakiety dłużej trwa.
Offline
[quote=ArnVaker]Po prostu zabawa w pakiety dłużej trwa.[/quote]
Można przyśpieszyć
budować tylko jedną wersje kernela dla danej architektury
powyłączać pozostałe tak jak ja rt
budować bez linux-doc oraz linux-manual
Offline
Oj, to o czym piszesz to już w ogóle kosmos. Ja miałem na myśli proste pakiety z [tt]make-kpkg[/tt]. :) U mnie kompilacja kernela pod sprzęt, czyli na własnym dosyć minimalistycznym konfigu, trwa jakieś 4 minuty (Athlon 64 X2 5000+). Tworzenie pakietów i ich instalowanie to dodatkowe kilkanaście/kilkadziesiąt sekund i właśnie o tę różnicę mi chodziło. Kiedyś też robiłem pakiety, bo to po debianowemu i w ogóle… No ale dłużej trwa. :P
Offline
masz racje po [b]debianowemu[/b], trwa dłużej
Offline
[quote=Pablik]no i o to mi chodziło , wielkie dzięki ;)
Jeszcze jedno pytano, kiedy komputer się szybciej uruchamia jak są sterowniki ładowane na sztywno czy jako moduł ???
Chyba jak są na sztywno bo M wtedy nie są ładowane tylko po prostu są, tak ??[/quote]
Na wbudowanych w jajo korzyść jest jedna:
Każdy potrzebny moduł oznacza rozpoznanie po identyfikatorze urządzenia i zidentyfikować, o ktory moduł chodzi i który załadować.
Do tego osobne ładowanie initrd.
W praktyce to nie są jakieś istotne wartości, u mnie to zysk niecałych około sekundy, natomiast na stabilności wyraźny.
Zwlaszcza drobiazgi, jak bluetooth i karty dźwiękowe zaczeły chodzić bardziej przewidywalnie, (na dystrybucyjnym jaju w Debianie karty muz losowały sobie numerki, trzeba było gimnastyki w /etc/moules.d/alsa.conf).
Także osobiście wolę, żeby co się da, było w jaju.
Ceną jest wielkość kernela: -
U mnie: kernel domowy ma 3,8 - 3,9 M, Aptosidowy ma 2,4 M,
za to mój przy starcie ładuje 27 moduiłów, a Aptosidowy ponad 100.
To by było na tyle
;-)
Ostatnio edytowany przez Jacekalex (2012-01-31 20:29:14)
Offline
[quote=Jacekalex]Ceną jest wielkość kernela: -
U mnie: kernel domowy ma 3,8 - 3,9 M, prosidowy ma 2,4 M,[/quote]
Kwestia konfiga… Poniżej 2M nawet bez "-Os" spokojnie można zejść.
Offline
[quote=ArnVaker]......
Kwestia konfiga… Poniżej 2M nawet bez "-Os" spokojnie można zejść.[/quote]
Pewnie że można, ale tak kombinować mi się nie chce :D
A i przy 4GB RAM 1,5-2M w te czy w tamte, wielkiej różnicy nie robi.
Ostatnio edytowany przez Jacekalex (2012-01-31 20:31:57)
Offline
Time (s) | Query |
---|---|
0.00011 | SET CHARSET latin2 |
0.00004 | SET NAMES latin2 |
0.00188 | SELECT u.*, g.*, o.logged FROM punbb_users AS u INNER JOIN punbb_groups AS g ON u.group_id=g.g_id LEFT JOIN punbb_online AS o ON o.ident='3.139.67.228' WHERE u.id=1 |
0.00065 | REPLACE INTO punbb_online (user_id, ident, logged) VALUES(1, '3.139.67.228', 1732302787) |
0.00054 | SELECT * FROM punbb_online WHERE logged<1732302487 |
0.00056 | SELECT topic_id FROM punbb_posts WHERE id=192706 |
0.00006 | SELECT id FROM punbb_posts WHERE topic_id=20515 ORDER BY posted |
0.00029 | SELECT t.subject, t.closed, t.num_replies, t.sticky, f.id AS forum_id, f.forum_name, f.moderators, fp.post_replies, 0 FROM punbb_topics AS t INNER JOIN punbb_forums AS f ON f.id=t.forum_id LEFT JOIN punbb_forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id=3) WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id=20515 AND t.moved_to IS NULL |
0.00033 | SELECT search_for, replace_with FROM punbb_censoring |
0.00469 | SELECT u.email, u.title, u.url, u.location, u.use_avatar, u.signature, u.email_setting, u.num_posts, u.registered, u.admin_note, p.id, p.poster AS username, p.poster_id, p.poster_ip, p.poster_email, p.message, p.hide_smilies, p.posted, p.edited, p.edited_by, g.g_id, g.g_user_title, o.user_id AS is_online FROM punbb_posts AS p INNER JOIN punbb_users AS u ON u.id=p.poster_id INNER JOIN punbb_groups AS g ON g.g_id=u.group_id LEFT JOIN punbb_online AS o ON (o.user_id=u.id AND o.user_id!=1 AND o.idle=0) WHERE p.topic_id=20515 ORDER BY p.id LIMIT 75,25 |
0.00074 | UPDATE punbb_topics SET num_views=num_views+1 WHERE id=20515 |
Total query time: 0.00989 s |