Konfiguracja, budowa i instalacja jądra Linux

  1. Pobieranie źródeł jądra i przygotowanie do konfiguracji
  2. Konfiguracja
  3. Zbuduj rdzeń
  4. Instalowanie nowego jądra
  5. Podsumowanie

Miłego dnia, czytelników i gości   moja strona Miłego dnia, czytelników i gości moja strona . Kontynuując ostatni post o Jądro Linuksa , dzisiaj chcę ci powiedzieć, jak zbudować i skonfigurować własne jądro.

Z ostatniego posta wiemy już, że jądro Linuksa ma minimalne możliwości i obsługę sprzętu, ale w razie potrzeby możemy rozszerzyć możliwości jądra za pomocą modułów jądra (modułów jądra) . Czego potrzebujesz, aby zbudować lub odbudować własne jądro? Na przykład, aby włączyć / wyłączyć nowe funkcje, lub zaktualizować stare jądro do nowszego z obsługą nowych funkcji lub po prostu dla doświadczeń. Z ostatniego posta wiemy już, że jądro Linuksa ma minimalne możliwości i obsługę sprzętu, ale w razie potrzeby możemy rozszerzyć możliwości jądra za pomocą modułów jądra (modułów jądra) jak w naszym przykładzie.

Pobieranie źródeł jądra i przygotowanie do konfiguracji

Możesz uzyskać źródło na kilka sposobów:

    1. Pobierz oryginalne archiwa kodu z, w postaci archiwów gzip lub bzip2, używając polecenia:

wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.36.1.tar.bz2 cp linux-2.6.36.1.tar.bz2 / usr / src /

  1. Pobierz źródła z repozytoriów dystrybucji (na przykład: ,,) w postaci pakietu binarnego deb lub rpm (src.rpm) z łatami od producenta dystrybucji. Na przykład: kernel-server: / tmp / 123 # apt-cache źródło wyszukiwania | grep linux ketchup - narzędzie aktualizacji dla źródeł jądra linux linux-patch-grsecurity2 - jądro grsecurity patch-linux-wlan-ng-source-linux-wlan-ng sterownik linux-patch-luster - pliki łatki jądra Linuksa dla Lustre Filesystem libcorelinux-dev - klasy podstawowe, wzorce projektowe, IPC i wątki libcorelinux-doc - klasy podstawowe, wzorce projektowe, IPC i wątki libcorelinux-examples - klasy podstawowe, wzorce projektowe, IPC i Threads libcorelinuxcc2a - Klasy fundacji, wzorce projektowe, IPC i wątki linux-patch-openswan - Obsługa jądra Linux IPSEC dla Openswan, tryb użytkownika-linux-doc - Tryb użytkownika Linux (Dokumentacja) linux-patch-xenomai - łaty jądra Linuksa dla Xenomai linux-patch-debian-2.6.26 - łatki Debiana do wersji 2.6.26 jądra Linux linux-source-2.6.26 - jądro Linuksa dla wersji 2.6 .26 w z Debianem łata linux-tree-2.6.26 - jądro Linuksa dla obrazów jądra Linux Debian serwer druku: ~ # apt-get install linux-source-2.6.26 Czytanie list pakietów ... Gotowe Tworzenie drzewa zależności Czytanie informacji o stan ... Gotowy Zostaną zainstalowane następujące dodatkowe pakiety: binutils bzip2 cpp cpp-4.3 gcc gcc-4.3 libc6-dev libgmp3c2 libgomp1 libmpfr1ldbl linux-libc-dev sprawi, że pakiety będą dostępne: binutils-doc bzip2-doc cpp-doc gcc-4.3-locales gcc-multilib manpages-dev autoconf automake1.9 libtool flex bison gdb gcc-doc gcc-4.3-multilib libmudflap0-4.3-dev gcc-4.3 boc libgomp1-dbg libgomp1-dbg libmudflap0-dbg gbc-dbg libgomp1-dbg pakiet jądra libqt3-mt-dev make-doc NOWE pakiety do zainstalowania: binutils bzip2 cpp cpp-4.3 gcc gcc-4.3 libc6-dev libgmp3c2 libgomp1 libmpfr1ldbl linux-libc-dev linux-source-2.6.26 aktualizuje 0, 13 nowych pakietów zainstalowanych, 0 pakietów oznaczonych do usunięcia, a 5 pakietów nie jest aktualizowanych. Musisz pobrać archiwa 50,2 MB / 63,2 MB. Po tej operacji ilość zajmowanego miejsca na dysku wzrośnie o 89,4 MB. Chcesz kontynuować [T / N]? y Otrzymano: 1 http://ftp.debian.org lenny / main linux-libc-dev 2.6.26-26 [769kB] Otrzymano: 2 http://ftp.debian.org lenny / main linux-source-2.6. 26 2.6.26-26 [49,5MB] Otrzymano 50,2MB za 1min49s (460kB / s) Wybór wcześniej niewybranego pakietu binutils. (Odczyt bazy danych ... 16621 plików i katalogów jest obecnie zainstalowanych.) Rozpakowanie pakietu binutils (z pliku ... / binutils_2.18.1 ~ cvs20080103-7_i386.deb) ... Wybór wcześniej nie zaznaczonego pakietu bzip2. ..... Pakiet jest rozpakowany (z pliku ... / archives / make_3.81-5_i386.deb) ... Przetwarzane są wyzwalacze dla man-db ... Pakiet binutils (2.18.1 ~ cvs20080103-7) jest skonfigurowany. .. ..... Konfiguracja linux-source-2.6.26 (2.6.26-26) jest skonfigurowana ... Pakiet make (3.81-5) jest skonfigurowany ... kernel-server: ~ # ls / usr / src / linux -source-2.6.26.tar.bz2

Chcę zauważyć, że nazwa archiwum z kodem źródłowym lub pakietem wygląda mniej więcej tak: linux-source-2.6.26 lub kernel-source-2.6.18. Z listy drugiego przykładu widać, że instalując źródła z repozytorium, apt proponuje zainstalowanie innych powiązanych pakietów, bez których nie można złożyć jądra.

Tak Po otrzymaniu kodów źródłowych przez jedną z powyższych ścieżek (kopiowanie archiwum (w pierwszym przypadku) i zainstalowaniu pakietu (w drugim przypadku)), dostajemy się do katalogu / usr / src / - archiwum o tej samej nazwie co linux-source-2.6.26.tar. bz2 . Następnie musimy rozpakować archiwum melona za pomocą polecenia: tar -xjf linux <wersja> .tar.bz2 . W rezultacie otrzymujemy drzewo katalogów źródeł jądra znajdujące się w katalogu /usr/src/linux-2.6.36.1/. Zaleca się również utworzenie dowiązania symbolicznego / usr / src / linux do powyższego katalogu:

kernel-server: ~ # cd / usr / src / kernel-server: / usr / src # ln -s linux-2.6.36.1 linux kernel-server: / usr / src # ls -l lin * lrwxrwxrwx 1 root src 14 grudnia 3 16:31 linux -> linux-2.6.36.1 -rw-r - r-- 1 root src 70236745 3 grudnia 15:57 linux-2.6.36.1.tar.bz2

Przed próbą zbudowania i skonfigurowania należy przejrzeć plik Zmiany znajdujący się w katalogu Dokumentacja. Zawiera między innymi listę pakietów wymaganych do zbudowania jądra wraz z numerami wersji. Upewnij się, że te pakiety są zainstalowane (jeśli zainstalowałeś źródła przy użyciu menedżera pakietów, najprawdopodobniej wymagane pakiety są już zainstalowane).

Rozpakowane drzewo podkatalogów zawiera plik Makefile . Makefile zawiera różne cele budowania do konfigurowania opcji jądra, budowania jądra i jego modułów, instalowania modułów i budowania pakietów RPM lub deb. Najnowsze wersje źródła jądra umożliwiają korzystanie z pomocy, aby uzyskać szybkie odniesienie dla każdego celu. W starszych systemach konieczne było zapoznanie się z dokumentacją lub wyświetlenie pliku makefile. Poniżej znajduje się część wyników pomocy pomocy:

kernel-server: /usr/src/linux-2.6.36.1## pomoc w czyszczeniu celów: Usuń wszystkie wygenerowane pliki + config + różne pliki kopii zapasowych distclean - aktualizacja konfiguracji mrproper + - aktualizacja bieżących ścieżek, aktualizacja konfiguracji config - aktualizacja bieżącej aktualizacji, aktualizacja bieżącej konfiguracji reloadan config - aktualizacja bieżącej konfiguracji, aktualizacja bieżącej konfiguracji Wykorzystanie QC na froncie i aktualizacja gt - Aktualizacja bieżącej konfiguracji na podstawie GTK newconfig - Aktualizacja bieżącej konfiguracji wykorzystuje .config jako podstawę .......

Ponadto, jeśli z jakiegoś powodu konieczne jest nałożenie łatki na jądro, należy je pobrać wcześniej i umieścić w katalogu / usr / src . Jeśli nie musisz patchować jądra, możesz bezpiecznie przejść do konfiguracji. Jądro jest załatane w następujący sposób:

kernel-server: /usr/src/linux-2.6.36# gzip -cd ../patch-2.6.xx.gz | patch -p1 # lub serwer druku: /usr/src/linux-2.6.36# bzip2 -dc ../patch-2.6.xx.bz2 | patch -p1

Konfiguracja

Bieżąca konfiguracja jądra jest przechowywana w pliku .config . Ten plik jest tworzony przy użyciu jednego z celów konfiguracyjnych (celem jest, w uproszczeniu, polecenie to cel tworzenia ):

config

Celem konfiguracji używa interfejsu wiersza poleceń, aby uzyskać odpowiedzi na wiele pytań dotyczących tworzenia lub aktualizacji pliku .config. IMHO, w porównaniu z celami korzystania z menu - rzecz bardzo niewygodna.

klonowanie

Kopiowanie ustawień bieżącego jądra do pliku .config. Ten cel jest przestarzały i zastąpiony przez nowe jądra. oldconfig . (wygodne do dodania nowej funkcji do bieżącego jądra)

menuconfig

Cel menuconfig wykorzystuje program oparty na menu zbudowany na podstawie ncurses, aby utworzyć lub zaktualizować plik .config. Powinieneś odpowiedzieć tylko na pytania dotyczące przedmiotów, które chcesz zmienić. To podejście zastąpiło starą konfigurację docelową. Jest wykonywany zdalnie lub lokalnie w oknie terminala.

nconfig

Cel nconfig używa opartego na menu programu opartego na ncurses, aby utworzyć lub zaktualizować plik .config. Ta wersja jest oparta na menuconfig , ale ma bardziej nowoczesny wygląd. Dodano po wydaniu jądra Linux 2.6.35. Powinieneś odpowiedzieć tylko na pytania dotyczące przedmiotów, które chcesz zmienić. Jest wykonywany zdalnie lub lokalnie w oknie terminala.

xconfig

Cel xconfig używa graficznego systemu menu opartego na interfejsie QT, używanego na pulpicie KDE.

gconfig

Cel gconfig wykorzystuje graficzny system menu oparty na interfejsie GTK używanym na pulpicie GNOME.

oldconfig

Cel oldconfig umożliwia utworzenie konfiguracji przy użyciu istniejącego pliku .config utworzonego wcześniej lub pobranego z innego systemu. Na przykład, możesz skopiować plik konfiguracyjny swojego systemu z / lib / modules / $ (uname -r) /build/.config do / usr / src / linux. W ten sposób możesz użyć jednego z celów menu konfiguracyjnego, aby wprowadzić zmiany, jeśli to konieczne. Podczas wykonywania tego polecenia, jeśli do nowego jądra zostanie dodanych wiele nowych funkcji, zostanie zadanych wiele pytań dotyczących sposobu konfigurowania nowych parametrów. (wygodne do dodania nowej funkcji do bieżącego jądra)

Powtarzam, że listę wszystkich celów poleceń można zobaczyć, wpisując make help. Zacznijmy więc od konfiguracji. Najwygodniejszy dla konsoli IMHO - make menuconfig .

Po uruchomieniu polecenia dostałem straszną wiadomość:

kernel-server: /usr/src/linux-2.6.36.1## make menuconfig *** pliki nagłówkowe. *** 'make menuconfig' wymaga bibliotek ncurses. *** Zainstaluj ncurses *** (ncurses-devel) i spróbuj ponownie. *** make [1]: *** [scripts / kconfig / dochecklxdialog] Błąd 1 make: *** [menuconfig] Błąd 2

Coś brakuje, pomyślał Stirlitz (C) ... Prawdopodobnie pakiet zawierający nazwę ncurses i ponieważ są to biblioteki, najprawdopodobniej pakiet zaczyna się od lib. Dostałem się do repozytorium:

kernel-server: /usr/src/linux-2.6.36.1# apt-cache search ncurses | grep ^ lib libunit1-ncurses-dev - Biblioteka testów jednostkowych dla C (ncurses) - pliki rozwojowe libcunit1-ncurses - Biblioteka testów jednostkowych dla C (ncurses) libncurses-gst - powiązania Ncurses dla GNU Smalltalk libkaya-ncurses-dev - powiązanie Ncurses dla kaya libkaya-ncursesw-dev - powiązanie Ncurses dla kaya libcurses-perl - interfejs Curses dla Perla libcurses-widgets-perl - interfejs widgetu Curses dla Perla libruby-dodatki dla ruby ​​libruby1-dodatki-pakiet dla libyxttools-dev - librexttools-librext-librext-ruby1.8 - ruby ​​dla librexttools-ruby1.8 - ruby C biblioteka lib64ncurses5-dev - biblioteka Cube dla librendance-ruby - biblioteka Ging / profilowania biblioteki ncurses libncurses5-dev - biblioteki autora i docs dla ncurses libncursesw5-dbg - debugowania / profilowania biblioteki ncurses libncursesw5-dev - biblioteki dla programistów ncursesw libcurses-SML-dev - Wiązania SML dla ncurses bibliotecznych libcurses-ocaml - Powiązania OCaml dla biblioteki ncurses libggi-target-terminfo - Ogólny interfejs graficzny TermInfo display target libncurses5 - biblioteki współdzielone do zarządzania terminalami libncursesw5 - biblioteki do zarządzania terminalami (obsługa znaków dwubajtowych)

Ta linia: libncurses5-dev - wydawało mi się, że potrzebuję bibliotek programistycznych i dokumentów dla ncurses . Zainstalujmy:

kernel-server: /usr/src/linux-2.6.36.1# apt-get install libncurses5-dev Czytanie list pakietów ... Gotowe Budowanie drzewa zależności Odczyt informacji o statusie ... Gotowe NOWE pakiety do zainstalowania: libncurses5-dev 0 zaktualizowane, 1 nowe pakiety zainstalowane, 0 pakietów przeznaczonych do usunięcia, a 5 pakietów nie zaktualizowanych. Potrzebujesz pobrać archiwa 1546 kB. Po tej operacji ilość zajmowanego miejsca na dysku wzrośnie o 6599 kB. Otrzymano: 1 http://ftp.debian.org lenny / main libncurses5-dev 5.7 + 20081213-1 [1546kB] Otrzymano 1546 kB dla 4s (344 kB / c) Wybierając wcześniej nie wybrany pakiet libncurses5-dev. (Odczyt bazy danych ... aktualnie zainstalowano 18098 plików i katalogów.) Pakiet libncurses5-dev jest rozpakowany (z pliku ... / libncurses5-dev_5.7 + 20081213-1_i386.deb) ... wyzwalacze dla man-db są przetwarzane ... Pakiet libncurses5-dev (5.7 + 20081213-1) jest skonfigurowany ...

Gotowe, spróbuj zrobić menuconfig :

Brawo Brawo! Widzimy cenne menu konfiguracyjne jądra. Poniżej znajdują się różne opcje, które umożliwiają włączenie komponentów do jądra lub tworzenie modułów. Gdy opcja jest podświetlona, ​​możesz użyć spacji, aby przechodzić między opcjami dla tego komponentu. Aby aktywować opcję, naciśnij y , aby wyłączyć - n , aby utworzyć, jeśli to możliwe, moduł, naciśnij m . Zamknij menu: Esc Esc.

  • [*] Komponent zostanie dołączony do jądra.
  • [] Komponent nie zostanie dołączony do jądra.
  • [M] Komponent zostanie zaprojektowany jako moduł.
  • <> Komponent nie będzie zawarty w jądrze, ale może być zaprojektowany jako moduł.

Poniżej znajduje się opis głównych sekcji zmiany konfiguracji (z czasem zostanie uzupełniony):

Sekcja Parametr Opis Ustawienia ogólne Ta sekcja pozwala na dodanie łańcucha identyfikacyjnego do jądra, a także szeregu atrybutów, które nie są związane z żadnymi sekcjami, ale mimo to powinny zostać opisane. Włącz obsługę ładowalnego modułu Ta sekcja zawiera opcje określające, czy jądro będzie obsługiwać moduły i czy będą ładowane i rozładowywane automatycznie. Opcja „Włącz obsługę ładowalnego modułu” powinna być włączona. Typ i funkcje procesora Ta sekcja zawiera określone opcje konfiguracji typu procesora. Tutaj możesz wybrać procesor i rodzinę procesorów, które będą obsługiwane przez jądro. Możesz włączyć lub wyłączyć obsługę jądra dla różnych funkcji tego procesora. Upewnij się, że włączono obsługę symetrycznego przetwarzania wielokrotnego, jeśli w systemie zainstalowano więcej niż jeden procesor lub procesor obsługuje hiperwątkowość. Ponadto, aby uzyskać lepszą wydajność grafiki w systemach z kartami wideo AGP lub PCI, należy włączyć obsługę MTRR. Opcje zarządzania energią Ta sekcja zawiera opcje związane z zarządzaniem energią. Są one szczególnie ważne dla laptopów. Oprócz monitorowania stanu zasilania można znaleźć narzędzia do monitorowania i monitorowania parametrów, takich jak temperatura lub stan wentylatora chłodzącego. Opcje magistrali (PCI itp.) Ta sekcja zawiera opcje magistrali komputerowych obsługiwanych przez system, takich jak PCI, PCI Express i PC Card. Tutaj możesz włączyć obsługę systemu plików / proc / pci, która może być używana wraz z powszechnie używanym poleceniem lspci. Formaty plików wykonywalnych / Emulacje Ta sekcja zawiera opcje obsługi różnych formatów plików binarnych. Należy uwzględnić obsługę „binarnego ELF”. Ponadto możesz włączyć obsługę plików binarnych DOS w DOSEMU, a także inne pliki binarne obsługiwane przez odpowiednie opakowania, takie jak Java ™, Python, Emacs-Lisp itp. Wreszcie, w przypadku systemów 64-bitowych obsługujących emulację 32-bitową, możesz włączyć obsługę aplikacji 32-bitowych. Sekcja sieciowa dotycząca ustawień sieciowych jest dość duża. Tutaj możesz uwzględnić podstawową obsługę gniazd, sieci TCP / IP, filtrowanie, routing i mostkowanie pakietów sieciowych, a także obsługę różnych protokołów, takich jak IPV6, IPX, Appletalk i X.25. Ponadto można włączyć obsługę radia bezprzewodowego, podczerwieni i amatorskiego. Sterowniki urządzeń Ta sekcja jest również bardzo duża. Tutaj możesz włączyć obsługę dużej liczby urządzeń sprzętowych, w tym dysków IDE / ATAPI lub SCSI lub dysków flash. Włącz DMA dla urządzeń IDE; w przeciwnym razie będą pracować w wolniejszym trybie PIO. Jeśli chcesz mieć obsługę wielu urządzeń, takich jak RAID lub LVM, odpowiednie opcje muszą być również włączone. Tutaj możesz również włączyć obsługę portu równoległego do pracy z drukarką za pośrednictwem tego interfejsu. Oto konfiguracja szerokiej gamy obsługiwanych urządzeń sieciowych dla różnych protokołów sieciowych, które skonfigurowaliśmy wcześniej. Ponadto znajdziesz tutaj opcje obsługi urządzeń przechwytywania audio i wideo, urządzeń USB i urządzeń IEEE 1384 (Firewire), a także różnego rodzaju sprzętowych urządzeń monitorujących. W sekcji dotyczącej kontrolowania urządzeń znakowych (urządzeń znakowych) możesz włączyć obsługę drukowania przez port równoległy i obsługę renderowania bezpośredniego. Sterowniki oprogramowania układowego Ta sekcja zawiera kilka opcji związanych z instalowaniem i aktualizowaniem systemu BIOS, takich jak korzystanie z funkcji zarządzania systemem Dell w niektórych systemach Dell. Systemy plików Ta sekcja została zaprojektowana, aby skonfigurować systemy plików, które chcesz obsługiwać w jądrze, skompilowane jako moduły lub nie. Można tu również znaleźć systemy plików dla wymiennych urządzeń dyskowych (dyskietki, urządzenia CD i DVD), a także sieciowe systemy plików, takie jak NFS, SMB lub CIFS. W tej sekcji znajduje się również wsparcie dla różnych typów sekcji i kodowania narodowego. Hackowanie jądra Ta sekcja pozwala włączyć tryb debugowania jądra i wybrać, które dodatkowe funkcje będą włączone. Opcje bezpieczeństwa Ta sekcja ma na celu skonfigurowanie opcji bezpieczeństwa, a także włączenie i skonfigurowanie SELinux (Security Enhanced Linux). Opcje kryptograficzne W tej sekcji można skonfigurować obsługę różnych algorytmów szyfrowania, takich jak MD4, DES i SHA256. Procedury biblioteczne Tutaj możesz określić serię algorytmów obliczania CRC, które mają być włączone do jądra lub zmontowane jako moduły.

Podałem bardzo krótki opis sekcji konfiguracyjnych jądra. W szczególności, wybór ustawień, prawdopodobnie zrobię osobny post, ponieważ prąd urósł do ogromnych rozmiarów. Najlepszy opis ustawień sprawia, że ​​znalazłem tutaj menuconfig. Od siebie powiem, że logiczne będzie wykonanie make oldconfig (kopiując w ten sposób aktualną .config zainstalowanego systemu operacyjnego), a następnie uruchom make menuconfig i wyłącz wszystkie niepotrzebne funkcje (załóżmy, że wyłączyłem obsługę WiFi, pliki jfs, których nie potrzebuję). Ogólnie rzecz biorąc, jestem zwolennikiem takiej opinii, że konieczne jest zaangażowanie w optymalizację jądra w bardzo ekstremalnych przypadkach, gdy wydajność systemu operacyjnego zależy od możliwości sprzętu. Odpowiednio, zmniejszając rozmiar jądra (wyłączając zbędne moduły, włączając je w jądro + wyłączając zbędne funkcje), można dodać 1-2% wydajności. A na nowoczesnych serwerach myślę, że to (rekonfiguracja jądra) nie jest szczególnie istotne.

Zbuduj rdzeń

Teraz, gdy mamy skonfigurowane jądro, jesteśmy gotowi go zbudować. Jeśli nie wiesz, jaki ma być stan drzewa, uruchom make clean przed rozpoczęciem konfigurowania nowego jądra. Aby uzyskać bardziej kompletne czyszczenie, uruchom make mrproper (i spraw, aby mrproper usuwał plik .config, a także niektóre inne pliki używane podczas procesu kompilacji).

Podczas testu konfiguracji wskazane jest nadanie nowemu jądru specjalnej nazwy, która pozwoli ci łatwo go zidentyfikować. Aby to zrobić, musisz ustawić wartość wersji lokalnej i aktywować opcję Automatycznie dołącz opcję do ciągu wersji w odpowiednim wierszu sekcji Ustawienia ogólne.

Zasadniczo nie jest wymagane uprawnienie roota do złożenia jądra, mimo że te uprawnienia są wymagane do zainstalowania nowego jądra .

Aby rozpocząć budowanie jądra 2.6, musisz uruchomić make.

Aby rozpocząć budowanie jądra 2.4, musisz uruchomić 3 polecenia:
zrobić dep
make bzImage
tworzyć moduły
Pierwszy program do tworzenia plików. Drugi zbiera rdzeń. A ten drugi zbiera moduły.

Instalowanie nowego jądra

Po zakończeniu budowania jądra musisz go zainstalować. Przed instalacją musisz uruchomić make modules_install, aby zainstalować moduły jądra w podkatalogu new / lib / modules. Po zainstalowaniu modułów musisz uruchomić make install, aby zainstalować nowe jądro i początkowy dysk RAM w katalogu / boot i zaktualizować konfigurację programu ładującego.

Chcę zauważyć, że proces budowania automatycznie tworzy niezbędny startowy dysk RAM (początkowy dysk RAM lub initrd). Jeśli chcesz go utworzyć ręcznie, możesz to zrobić za pomocą polecenia mkinitrd.

Po wykonaniu instalacji plik konfiguracyjny programu ładującego powinien zostać zaktualizowany. Ale z jakiegoś powodu zaktualizowałem go po poleceniu update-grub.

Na tym i zakończ. Okazało się, że bardzo duży artykuł. W niedalekiej przyszłości postaram się go ścisnąć.

Co jeszcze czytać?

1. Podręcznik Gentoo: http://www.gentoo.org/doc/ru/handbook/handbook-x86.xml?full=1#book_part1_chap7
2. Umieściliśmy jądro 2.6 lub fizykę jądrową dla gospodyni domowej. Wersja 2.0: http://linux4u.jinr.ru/docs/add04/kernel-2.6-install-2.0.html
3. Przewodnik programowania modułu jądra Linux: http://linux4u.jinr.ru/docs/add04/lkmpg.html
4. Linux From Scratch: http://linux4u.jinr.ru/docs/add04/LFS-BOOK-5.0-HTML/

Podsumowanie

Podsumuj trochę napisane. Powiem od razu, że udało mi się uruchomić komputer z rekonfigurowanego jądra już po raz piąty :) Dlatego spróbuj, eksperymentuj! VirtualBox, aby ci pomóc :)

Moim zdaniem wskazane jest wykonanie procedury określonej w artykule, aby w razie potrzeby wygrać kilka megabajtów wolnej pamięci lub dodać niezbędne moduły / sterowniki (oczywiście można wymyślić inne powody, na przykład eksperymentować Moim zdaniem wskazane jest wykonanie procedury określonej w artykule, aby w razie potrzeby wygrać kilka megabajtów wolnej pamięci lub dodać niezbędne moduły / sterowniki (oczywiście można wymyślić inne powody, na przykład eksperymentować   ) ). W tym przypadku, w pierwszym przypadku, zespół jądra jest rozciągnięty na czas nieokreślony i nieokreślona liczba prób złożenia i ponownego uruchomienia w celu uzyskania „idealnie” zoptymalizowanego dla żelaza i wyostrzonego samego rdzenia. W drugim przypadku, budowanie jądra sprowadza się do kilku kroków: 1. zdobycie źródeł, 2. przygotowanie jądra do kompilacji, 2.1 uruchomienie sprawiają, że cloneconfig przed make menuconfig, aby skopiować bieżące ustawienia jądra, 3. uruchomienie make menuconfig lub inny cel, aby skonfigurować i dodać nowe parametry , 4. Kompilacja i instalacja powyższych instrukcji.

Tak więc składanie i konfiguracja pojedynczego jądra składa się z kilku etapów: 1. uzyskanie źródła jądra, 2. konfiguracja jądra, 3. składanie (kompilowanie) jądra, 4. instalacja jądra. pierwszym krokiem jest polecenie wget, drugie to make menuconfig, trzecie to make. Tak Tak więc składanie i konfiguracja pojedynczego jądra składa się z kilku etapów: 1

Będę zadowolony z twoich komentarzy.

upd 2010.01.15: dodano nowy cel - make nconfig (dzięki S_paul za komentarze)

Z poważaniem, Mc.Sim!

Inne materiały w kategorii Linux

Chcesz kontynuować [T / N]?
Co jeszcze czytać?
86.xml?