Opis jądra Linux-a, jego instalacji itp.: Jak właściwie skonfigurować to jądro?
Następna strona
Poprzednia strona
Spis treści
3. Jak właściwie skonfigurować to jądro?
3.1 Zdobywanie źródła.
Źródła możesz sciągnąć np. z
ftp.kernel.org:/pub/linux/kernel - jest to główny
serwer dla jądra Linux-a, albo z jakiejś bliższej ci kopii
tego serwera. W Polsce najlepszym miejscem jest
ftp.icm.edu.pl/pub/Linux/kernel. Z reguły nazwa
jądra to linux-x.y.z.tar.gz, gdzie x.y.z jest numerem
wersji. Tak jak już wspomniałem, wersje z nieparzystą drugą liczbą
to wersje rozwojowe i mogą być niestabilne. Obok wersji
.tar.gz są jeszcze wersje .bz2, które są mniejsze i
zabierają mniej czasu do ściągnięcia.
Najlepiej używać adresu ftp.xx.kernel.org, gdzie xx to kod
twojego kraju. Np. ftp.pl.kernel.org dla Polski.
Jeśli szukasz jakichś ogólnych informacji o Linux-ie, to zajrzyj
pod adres
www.linux.org. W
Polsce także jest
Polska Grupa Użytkowników Linux-a.
3.2 Rozpakowywanie źródła.
Zaloguj się jako root albo użyj polecenia su i
zmień katalog na /usr/src cd /usr/src.
Jeśli zainstalowałeś źródła do jądra podczas instalacji Linux-a w
katalogu tym znajdziesz dołączenie symboliczne linux,
które będzie wskazywało na katalog linux-x.y.z ze
źródłami, które wtedy zainstalowałeś. Jeśli chcesz zachować stare
źródła to usuń dołączenie linux poleceniem rm linux.
Jeśli takiego dołączenia nie ma, a jest katalog linux, to (jeśli
chcesz zachować źródła starej wersji jądra) zmień nazwę linux na
linux-x.y.z, gdzie x.y.z jest wersją tych źródeł. (zajrzyj do
pliku linux/Makefile - w pierwszych trzech linijkach
znajdziesz wersję źródeł znajdujących się w tym katalogu).
Jeśli chcesz możesz skasować cały katalog linux i pozbyć się
starych źródeł.
W każdym razie upewnij się, że nie ma katlogu linux przed
rozpakowanie źródeł.
Teraz w katalogu /usr/src rozpakuj źródła poleceniem
tar zxpvf linux-x.y.z.tar.gz, jeśli na końcu nazwy pliku
ze źródłami nie ma .gz to użyj polecenia tar xpvf
linux-x.y.z. Zawartość archiwum wyświetli się na ekranie.
Kiedy rozpakowywanie się skończy pojawi się nowy katalog linux.
Dobrym pomysłem byłoby w tym momencie zmienić jego nazwę na
linux-x.y.z i zrobić symboliczne dołączenie do tego
katalogu o nazwie linux. Aby to zrobić użyj polecenia
mv linux linux-x.y.z; ln -s linux-x.y.z linux. Teraz
zmień bieżący katalog na linux i przejrzyj plik
README. Znajdziesz tam sekcję o nazwie INSTALLING the
kernel. Przeczytaj ją uważnie i wypełnij wszystkie polecenia,
o których tam mowa.
Jeśli ściągnąłeś wersję .bz2 i masz program bzip2 (na jego
temat można przeczytać pod adresem
www.muraroa.demon.co.uk/), to zrób tak:
bzcat2 linux-x.y.z.tar.bz2 | tar xvf -
3.3 Konfiguracja jądra.
UWAGA: Niektóre z uwag zawartych tutaj są podobne do tych z pliku
Linusa README.
Polecenie make config wydane w katalogu
/usr/src/linux uruchamia skrypt konfiguracyjny, który
zadaje ci wiele pytań. Wymaga on zainstalowanego shella, więc
sprawdź czy go masz. (/bin/bash, /bin/sh lub $BASH)
W wersjach 2.0.x i nowszych istnieją jeszcze dwa sposoby na
konfigurację: make menuconfig jak sama nazwa wskazuje
jest to konfiguracja za pomocą menu tekstowego. Można też wydać
polecenie make xconfig co spowoduje uruchomienie miłej
konfiguracji pod Xwindow. Pierwszy sposób wymaga zainstalowanej
biblioteki (n)curses. Ta druga wymaga zainstalowanej biblioteki
Tcl/Tk. Obie są dostarczane wraz ze standardowymi dystrybucjami.
Te sposoby mają podstawową zaletę: jeśli się pomylisz, to łatwo
jest wrócić i poprawić błąd.
Można teraz odpowiadać na kolejne pytania ukazujące się na
ekranie. Odpowiada się zwykle literami "y" - tak i "n" - nie. Przy
sterownikach jest jeszcze dodatkowa opcja "m" - oznacza
skonfigurowanie go jako ładowalny moduł. Bardziej komicznym
sposobem wyjaśnienia tej litery jest "może". Niektóre z bardziej
oczywistych czy nie-krytycznych opcji nie zostały tutaj opisane;
zobacz w sekcji "Inne opcje konfiguracji." W make menuconfig
spacją zaznacza się daną opcję.
W wersjach 2.0.x i nowszych jest polecenie "?", która umożliwia
wyświetlenie krótkiej pomocy na temat bieżącej opcji. Informacja ta
jest prawdopodobnie najświeższa. Oto lista ważniejszych opcji, do
jakiej hierarchii należą i krótki opis.
Kernel math emulation (Processor type and features)
Pytanie to dotyczy emulacji koprocesora przez jądro.
Jeśli nie masz koprocesora matematycznego (masz czysty 386 albo
486SX), musisz tu odpowiedzieć "y". Jeśli masz koprocesor a
odpowiesz "y", nie martw się -- koprocesor będzie użyty, a
emulacja ignorowana. W połowie przypadków w tej chwili odpowiedzią
będzie nie, ale nie martw się jeśli przypadkowo odpowiesz tak;
jeśli nie trzeba, to nie będzie to użyte.
Enhanced (MFM/RLL) disk and IDE disk/cdrom support (Block Devices).
Przypuszczalnie potrzebujesz tej obsługi. Opcja ta oznacza, że
jądro będzie obsługiwać standardowe dyski do komputerów PC, które są
w posiadaniu większości ludzi. Sterownik ten nie zawiera obsługi
dla dysków SCSI, pytanie o to będzie później w konfiguracji.
Zostaniesz zapytany następnie o sterowniki "old disk-only" i "new
IDE". Wybierz jeden z nich; główna różnica pomiędzy nimi to taka,
że stary sterownik obsługuje tylko dwa dyski na pojedynczym
interfejsie, a nowy obsługuje drugi interfejs i napędy IDE/ATAPI
CD-ROM. Nowy sterownik jest o około 4 kB większy od starego i ma
być lepszy. To znaczy, że pomijając mniejszą ilość błędów może
działać bardziej wydajnie, szczególnie jeśli masz dysk typu EIDE.
Networking support (General Setup).
Ogólnie powinieneś odpowiedzieć "y" jeśli twój komputer jest w
sieci takiej jak Internet, albo jeśli chcesz używać protokołów
SLIP czy PPP, aby mieć dostęp do Internetu. Aczkolwiek wiele
pakietów (np. Xwindows) wymaga obsługi sieci nawet jeśli twój
komputer nie jest podłączony do żadnej sieci; powinieneś tu
odpowiedzieć "y". Później, zostaniesz zapytany czy chcesz obsługę
protokołu TCP/IP; znowu, odpowiedz "y" jeśli nie jesteś
absolutnie pewien.
System V IPC (General Setup).
Jedną z najlepszych definicji IPC (InterProcess Communication -
Komunikacja Pomiędzy Procesami) znajduje się w glosariuszu w książce
o Perlu. Nic więc dziwnego, że niektórzy programiści piszący w
Perlu wykorzystują go do komunikacji między procesami, tak samo
jak wiele innych pakietów (DOOM - z tych najbardziej znanych ;) ),
więc odpowiedź "n" nie jest mądrym wyborem, o ile wiesz dokładnie
co robisz.
Processor family (Processor type and features).(w starszych wersjach: Use -m486 flag for 486-specific optimizations)
Tradycyjnie, to wkompilowywało pewne optymalizacje dla konkretnego
procesora; jądra działały dobrze także na inncyh procesoarch, ale
były one troche większe. W nowszych wersjach się już tego nie
stosuje i powinieneś odpowiedzieć na jaki procesor rzeczywiście
kompilujesz jądro. Jądro skompilowane na 386 będzie działać na
wszystkich procesorach.
SCSI support.
Jeśli masz urządzenia SCSI odpowiedz "y". Zostaniesz następnie
zapytany o dalsze informacje, jak np.: obsługa CD-ROM-u,
dysków i twojego adaptera. Zajrzyj do SCSI-HOWTO po więcej
szczegółów.
Network device support.
Jeśli masz kartę sieciową, albo chciałbyś używać protokołów SLIP,
PPP, albo kontrolera portu równoległego aby połączyć się z Internetem
odpowiedz "y". Konfigurator spyta cię następnie o typ karty i
rodzaj protokołu.
Filesystems.
Skrypt konfiguracyjny pyta cię następnie o to, jakie systemy
plików chcesz obsługiwać:
Standard (minix) - Nowsze dystrybucje nie tworzą tego systemu
plików, a wielu ludzi go nie używa, ale jednak użycie go mogłoby
być dobrym pomysłem, ponieważ przydaje się on do odczytu dyskietek,
dla których system ten jest mniej bolesny niż ext2.
Second extended - To jest standardowy system plików Linuxa. Prawie
na pewno masz jeden z nich i musisz odpowiedzieć y.
msdos - Jeśli chcesz używać swej partycji dos-owej, albo montować
dyskietki sformatowane pod ten system, odpowiedz "y".
Dostępne są jeszcze różne inne systemy plików z innych systemów
operacyjnych.
/proc - (Pomysł jak mniemam z laboratorium Bella). Na
dysku nie tworzy się systemu plików proc. To jest system
plików, który służy do porozumiewania się z jądrem i procesami.
Wiele programów wyświetlających procesy, jak np. ps używa
tego systemu plików. Spróbuj czasami wykonać polecenie cat
/proc/meminfo albo cat /proc/devices.
Niektóre powłoki (w szczególności rc) używają /proc/self/fd
(znane jako /dev/fd na innych systemach) do funkcji I/O.
Powinieneś prawie na pewno odpowiedzieć tutaj "y". Wiele ważnych
narzędzi do Linux-a zależy od tego systemu plików.
NFS - Jeśli twój komputer jest w sieci i chcesz używać systemów
plików, które znajdują się na innych systemach z NFS, odpowiedz "y".
ISO9660 - Ten system plików jest na przeważającej ilości
CD-ROM-ów. Jeśli więc chcesz używać CD-ROM-u odpowiedz "y".
Ale ja nie wiem jakiego systemu plików potrzebuję!
No dobra, napisz mount. Powinno się wyświetlić coś jak:
blah# mount
/dev/hda1 on / type ext2 (defaults)
/dev/hda3 on /usr type ext2 (defaults)
none on /proc type proc (defaults)
/dev/fd0 on /mnt type msdos (defaults)
Spójrz na każdą linijkę; słowo obok type jest typem
systemu plików. W tym przypadku / i /usr są typu second extended,
używany jest także proc i jest także zamontowana dyskietka
z systemem plików msdos (tfu!).
Możesz spróbować też cat /proc/filesystems jeśli masz
system proc. Wyświetli ci to systemy plików wkompilowane
w aktulanie używane jądro.
Konfiguracja rzadko używanych i nie krytycznych systemów plików
może powodować niepotrzebne powiększanie się jądra; poczytaj
sekcję o modułach jak tego uniknąć i sekcję "Pułapki", aby
dowiedzieć się dlaczego powiększające się jądro nie jest pożądane.
Character devices.
Tutaj dołączasz sterowniki dla drukarki (równoległej, znaczy się),
myszy szeregowej, myszy PS/2 (wiele Notebooków używa protokołu
PS/2 dla swoich wbudowanych myszy), niektóre sterowniki do taśm, i
inne tego typu "znakowe" urządzenia. Odpowiedz "y" kiedy znajdziesz
urządzenie, którego używasz.
UWAGA: gpm to program, który pozwala na użycie myszy poza
Xwindow i na kopiowanie tekstu pomiędzy wirtualnymi konsolami.
Jest to całkiem przyjemne jeśli masz zwykłą myszkę szeregową,
ponieważ koegzystuje ona z Xwindows, ale musisz uciekać się do
specjalnych sztuczek dla innych.
Sound.
Jeśli czujesz wielką potrzebę usłyszenia dźwięków wydobywających
się z tej maszynerii to odpowiedz "y" i napisz wszystko co wiesz
na temat szczegółów twojej karty dźwiękowej i
skompiluje sterownik. (Uwaga o konfiguracji kart dźwiękowych:
jeśli zapyta cię czy chcesz zainstalować pełną wersję sterownika,
możesz odpowiedzieć "n" i zaoszczędzić trochę pamięci wybierając
tylko to co jest ci potrzebne.)
Jeśli myślisz poważnie o karcie dźwiękowej, to zajrzyj na dwie
strony darmowych sterowników:
www.linux.org.uk/OSS/
www.opensound.com/
Inne opcje konfiguracji.
Nie wszystkie opcje konfiguracyjne są tu wymienione ponieważ
zmieniają się zbyt często lub są oczywiste (na przykład: obsługa
3Com 3C509). Jest całkiem spora lista wszystkich opcji wraz ze
sposobem umieszczenia jej w skrypcie Configure. Zajmuje się tą
listą Axel Boldt (
boldt@math.ucsb.edu). Można go także zobaczyć jako jeden
duży plik w dystrybucji jądra Documentation/Configure.help
od wersji 2.0.
[Od tłumacza] Plik ten dla chyba dwóch wersji jądra jest
przetłumaczony na język Polski. Zajrzyj pod adres
www.jtz.org.pl/inne-polskie.html
Kernel hacking.
Wzięte z pliku README napisanego przez Linusa:
opcja "kernel hacking" daje w rezultacie większe i wolniejsze
jądro, może nawet uczynić je mniej stabilnym, przez konfigurowanie
niektórych procedur, tak aby aktywnie próbowały łamać złe algorytmy i
żeby można było znaleźć problemy jądra. (kmalloc()). Tak więc powinieneś
odpowiedzieć tutaj "n" jeśli chcesz mieć normalnie działające i
stabilne jądro.
3.4 I co teraz? (Makefile)
Jak już skończysz konfigurację pojawi
się na ekranie wiadomość, że jądro zostało skonfigurowane i że
należy sprawdzić top-level Makefile dla dodatkowej
konfiguracji.
Ten top-level Makefile to plik o nazwie Makefile w katalogu
/usr/src/linux. Zajrzyj tam. Przypuszczalnie nie będziesz
tam nic zmieniał, ale spojrzeć nie boli :). Jak już zainstalujesz
nowe jądro możesz zmienić jego opcje przy pomocy narzędzia
rdev. Jeśli czujesz się zagubiony patrząc na ten plik, to
nie przejmuj się nim.
Następna strona
Poprzednia strona
Spis treści
Wyszukiwarka
Podobne podstrony:
Kernel HOWTO pl 12 (2)Kernel HOWTO pl 9 (2)Kernel HOWTO pl 6 (2)Kernel HOWTO pl 4 (2)Kernel HOWTO pl (2)Kernel HOWTO pl 7 (2)Kernel HOWTO pl 5 (2)Kernel HOWTO pl 2 (2)Kernel HOWTO plKernel HOWTO pl 11 (2)Kernel HOWTO pl 1 (2)Kernel HOWTO pl 10 (2)Kernel HOWTO pl (3)Kernel HOWTO pl 8 (2)bootdisk howto pl 8PPP HOWTO pl 6 (2)NIS HOWTO pl 1 (2)kernel howto 3 clbigwpagydoy3epnkmic3ys7wlqwsg4rlwwgvq clbigwpagydoy3epnkmic3ys7wlqwsg4rlwwgvqcdrom howto pl 1więcej podobnych podstron