Opis jadra Linux a, jego instalacji itp Latanie jadra (patc




Opis jądra Linux-a, jego instalacji itp.: Łatanie jądra (patchowanie).


Następna
strona Poprzednia strona
Spis treści


5. Łatanie jądra (patchowanie).


5.1 Zakładanie łaty.

Pakiety, które pozwalają na odnowienie jądra to łaty. Na przykład: jeśli masz
wersję 1.1.45 i znajdziesz plik o nazwie patch46.gz to znaczy, że
możesz odnowić swoje jądro do wersji 1.1.46. Możesz zrobić kopię źródeł, które
masz (make clean a potem cd /usr/src; tar zcvf
old-kernel.tar.gz linux)
Tak więc kontynuując powyższy przykład załóżmy, że masz plik
patch46.gz w katalogu /usr/src. Bedąc w katalogu
/usr/src wydaj polecenie zcat pacth46.gz | patch -p0
albo patch -p0 < patch46 jeśli łata nie jest skompresowana.
Zobaczysz teraz trochę ścieżek i nazw plików oraz komunikatów przelatujących
przez ekran, o tym co się udało a co nie. Wszystko to przelatuje zbyt szybko,
żeby nadążyć z czytaniem, także właściwie nie wiesz czy się udało czy nie.
Możesz użyć parametru -s do polecenia patch, aby
poinformować je, żeby wyświetlało tylko komunikaty o błędach. Aby zobaczyć czy
coś poszło nie tak, poszukaj plików z rozszerzeniem .rej w katalogu
/usr/src/linux. Niektóre wersje patch (starsze wersje, które mogły
być skompilowane na gorszym systemie plików) zostawiają błędy w plikach z
rozszerzeniem #. Możesz użyć polecenia find, aby
znaleźć te pliki:
cd /usr/src/linux; find ./ -name '*.rej' -print

Polecenie to wyświetli wszystkie pliki z rozszerzeniem rej znajdujące się w
bieżącym katalogu i jego podkatalogach.
Jeśli wszystko poszło dobrze, wydaj teraz po kolei polecenia make
clean, make config i make dep tak jak opisano w sekcjach 3 i 4.
Do polecenia patch jest trochę opcji. Jak już wspomniałem, patch
-s spowoduje wyświetlenie na ekran tylko wiadomości o błędach. Jeśli
trzymasz źródła w innym katalogu niż /usr/src/linux, polecenie
patch -p1 wydane w tym katalogu, gdzie trzymasz źródła zrobi
wszystko bez błędów. Inne opcje polcenia patch są dobrze opisane w podręczniku
"man".

5.2 Jeśli coś pójdzie nie tak.

(Uwaga: ta sekcja odnosi się w głównej mierze do starszych wersji jądra.)
Najczęstszym problemem było to, że kiedy polecenie patch
modyfikowało plik config.in nie wyglądał on tak jak powinien, bo
zmodyfikowałeś go, aby pasował do twojego komputera. Zostało to już poprawione,
ale w starszych wersjach błąd ten pozostał. Aby to naprawić, przeczytaj plik
config.in.rej i zobacz co pozostało z oryginalnej łaty. Zmiany są
zwykle zaznaczane znakami + i - na początku linii. Spójrz na linie otaczające tę
zaznaczoną i przypomnij sobie, czy były one ustawione na tak, czy na nie. Teraz
w pliku config.in zmień "y" na "n" i "n" na "y" tam gdzie trzeba.
Wydaj polecenie patch -p0 < config.in.rej a jeśli poinformuje
cię, że się powiodło, wtedy możesz kontynuować konfigurację i kompilację. Plik
config.in.rej pozostanie, ale możesz go skasować.
Jeśli odkryjesz dalsze problemy, mogłeś zainstalować jakąś łatę nie w
kolejności. Jeśli na ekranie pojawi się taka wiadomość: previously applied
patch detected: Assume -R? oznacza to, że przypuszczalnie próbujesz
nałożyć łatę o wersji mniejszej niż źródła twojego jądra. Jeśli odpowiesz "y",
polecenie patch spróbuje zdegradować twoją wersję, i najprzypuszcalnie się to
nie powiedzie, przez co będziesz musiał zdobyć całkiem nowe źródła. (co w sumie
wcale nie jest takim złym pomysłem).
Aby odinstalować jakąś łatę użyj patch -R na oryginalnej.
Jak już się wszystko tak pomiesza, że nie będziesz mógł dojść do ładu, to
najlepszym sposobem jest zdobyć nowe źródła jądra i zacząć od nowa.

5.3 Pozbywanie się plików ".orig".

Po zaledwie kilku łatach pliki .orig zaczynają niebezpiecznie
rosnąć. Na przykład: usunięcie plików .orig z wersji 1.1.51, która była ostatnio
czyszczona w wersji 1.1.48 spowodowało zwolnienie ponad 500 kB dysku.
find . -name '*.orig' -exec rm -f {} ';'

Polecenie to spowoduje usunięcie wszystkich plików .orig z bieżącego katalogu
i jego podkatalogów.
Wersje patch, które używają plików .# zamiast plików .rej, używają tyldy (~)
zamiast plików .orig.
Są lepsze sposoby pozbycia się plików .orig, które zależą od polecenia GNU
xargs:
find . -name '*.orig' | xargs rm

lub metoda całkiem bezpieczna ale trochę "głośna" (dużo komunikatówna
ekranie):
find . -name '*.orig' -print0 | xargs --null rm --


5.4 Inne łaty.

Są jeszcze inne łaty (tzw. niestandardowe), niż te które dystrybuuje Linus.
Jeśli ich użyjesz łaty Linusa mogą nie działać i będziesz musiał je albo
odinstalować, dopasować źródła albo łatę, zainstalować nowe źródła, albo jakaś
kombinacja tego. Może to być trochę frustrujące, więc jeśli nie chcesz grzebać w
źródłach (z możliwością narobienia niezłego bajzlu), odinstaluj niestandardowe
wersje łat zanim zainstalujesz łatę Linusa, albo po prostu zainstaluj nowe
źródła. Wtedy możesz zobaczyć czy łaty niestandardowe wciąż działają. Jeśli nie
to albo utknąłeś ze starym jądrem i będziesz próbował zmusić jakoś źródło albo
łatę, żeby zaczęła działać, albo będziesz czekał (pewnie błagał) o nową łatę.
Jak pospolite są te niestandardowe łaty?Przypuszczalnie o nich usłyszysz.
Ja używałem łaty "noblink" na moich wirtualnych konsolach, bo nienawidzę
mrugającego kursora. Ta łata jest (a przynajmniej była) często odnawiana dla
nowszych wersji jądra. Z większością nowych sterowników jako ładowalne moduły,
chociaż częstotliwość niestandardowych łat znacznie spada.


Następna strona
Poprzednia
strona Spis
treści


Wyszukiwarka

Podobne podstrony:
Opis jadra Linux a, jego instalacji itp Jak własciwie skonf
Opis jadra Linux a, jego instalacji itp Niektore pulapki
Opis jadra Linux a, jego instalacji itp Sztuczki i wskazowk
Opis jadra Linux a, jego instalacji itp Sztuczki i wskazowk
Opis jadra Linux a, jego instalacji itp Pakiety dodatkowe
Opis jadra Linux a, jego instalacji itp Moduly
Opis jadra Linux a, jego instalacji itp Kompilacja jadra
using linux to install windows xp with network booting
opis gaznika motocykla i jego regulacja
Linux kompilacja jadra
Kerberos opis systemu i instalacja w OS Linux
Opis instalacji
Budowa jądra atomowego(1)
OPIS INSTALACJI
GAP 7 5 opis instalacji

więcej podobnych podstron