Pl:HOWTO: Aktualizacja kernela z wykorzystaniem genkernel
Poniższy tekst przedstawia dwa sposoby na przeprowadzenie kompilacji i instalacji jądra przy pomocy systemu zarządzania pakietami Portage z wykorzystaniem dostępnych narzędzi, takich jak emerge oraz genkernel.
Zanim przystąpimy do aktualizacji jądra należy zaktualizować bazę Portage oraz dostępne overlaye (m.in. overlay Sabayon).
Otwórz zatem konsole lub terminal i wykonaj:
$ su
# emerge --sync && layman -S
Jeśli z jakich przyczyn brakuje overlaya Sabayon (nie wyświetli się wśród wylistowanych zaktualizowanych overlayów) dodaj go:
$ layman -f
$ layman -a sabayon
1. Kompilacja półautomatyczna
Pierwszy z dostępnych sposobów aktualizacji jądra Sabayon, jest procesem półautomatycznym, dzięki czemu mamy większą kontrolę nad przebiegiem aktualizacji. Wszystkie czynności należy wykonać w konsoli jako root.
Wykonaj poniższe polecenie:
# emerge linux-sabayon-sources
Wykonanie tego polecenia spowoduje pobranie źródeł nowego jądra, nałożenie wymaganych patchy na jądro dla systemu Sabayon i umieszczenie tak przygotowanych źródeł w katalogu /usr/src.
Aby system wskazywał na nowe jądro (tworzy dowiązanie symboliczne do nowego pliku o nazwie /usr/src/linux, dowiązanie takie wymagane jest np. przy instalacji niektórych sterowników np. nvidia) wykonaj poniższe polecenia:
Wylistuj dostępne jądra w systemie:
# eselect kernel list
a następnie wskaż na jądro, które właśnie aktualizujesz podając x numer aktualizowanego jądra zamiast 'x':
# eselect kernel set x
Ponieważ do kompilacji jądra wymagany będzie plik konfiguracyjny możesz wykorzystać plik aktualnie zainstalowanego jądra i umieścić go w katalogu /usr/src poniższym poleceniem:
# zcat /proc/config.gz > /usr/src/config
Oczywiście będziesz miał jeszcze możliwość dodatkowego skonfigurowania jądra i ustawienia go pod swoje potrzeby w procesie kompilacji przy pomocy narzędzia genkernel. Jeżeli jesteś doświadczonym użytkownikiem linuxa i potrafisz samodzielnie konfigurować jądro możesz powyższe pominąć.
Teraz przystąp do kompilacji przy pomocy narzędzia genkernel wpisując:
a) Jeżeli ręcznie konfigurowałeś partycje w procesie instalacji systemu
# genkernel --kernel-config=/usr/src/config --menuconfig --bootloader=grub --splash=sabayon --disklabel all
b) Jeżeli wykorzystałeś automatyczną konfigurację partycji w czasie instalacji lub utworzyłeś LVM
# genkernel --kernel-config=/usr/src/config --menuconfig --bootloader=grub --splash=sabayon --disklabel --lvm all
Czas trwania kompilacji może być dosyć długi, zależy to od ilości kompilowanych modułów oraz sprzętu jaki posiadasz. Genkernel automatycznie doda odpowiedni wpis do bootloadera Grub.
Aby zaktualizować zewnętrzne moduły sterowników współpracujące z jądrem systemu, tak aby współdziałały z nowym jądrem wykonaj:
# module-rebuild rebuild
Być może trzeba będzie ręcznie skompilować moduły dla kart graficznych ręcznie, dla nowego jądra.
Dla kart NVIDIA:
# emerge nvidia-drivers
Dla kart ATI:
# emerge ati-drivers
I to właściwie wszystko, pozostaje restart systemu i nieopisana radość z nowej wersji jądra :)
2. Kompilacja automatyczna
Drugi ze sposobów kompilacji nowego jądra jest procesem w pełni automatycznym, co niestety wyklucza nas całkowicie z procesu aktualizacji (np. nie będziemy mogli zmieniać pliku konfiguracyjnego jądra). Twórcy Sabayona przygotowali ebuild, który pobierze nowe źródła jądra, skompiluje i zainstaluje.
Wykonaj następujące czynności:
# emerge linux-sabayon
Następnie należy wykonać poniższe polecenia, aby wybrać zaktualizowany kernel (tworzy link /usr/src/linux do nowego jądra co jest istotne np. przy instalacji sterowników nvidii).
Wylistuj dostępne skompilowane jądra:
# eselect kernel list
a następnie wybierz numer jądra, który chcesz wybrać jako domyślny:
# eselect kernel set x
Aby zaktualizować zewnętrzne moduły sterowników współpracujące z jądrem systemu, tak aby współdziałały z nowym jądrem wykonaj:
# module-rebuild rebuild
Być może trzeba będzie ręcznie skompilować moduły dla kart graficznych ręcznie, dla nowego jądra.
Dla kart NVIDIA:
# emerge nvidia-drivers
Dla kart ATI:
# emerge ati-drivers
I nowy kernel powinien pracować prawidłowo.
3. Rekonfiguracja jądra
Być może zachodzi konieczność modyfikacji bieżącego jądra (np. skompilować dodatkowe moduły urządzeń)
Jeśli zamierzasz dokonać jakichś zmian w bieżącym jądrze i przebudować go, możesz użyć poniższej komendy, aby skopiować plik konfiguracyjny bieżącego jądra (w celu ewentualnej modyfikacji i ponownej kompilacji):
# zcat /proc/config.gz > /usr/src/config
Teraz przystąp do kompilacji przy pomocy narzędzia genkernel wpisując (trakcie wykonywania genkernel będziesz mógł modyfikować plik konfiguracyjny jądra):
a) Jeżeli ręcznie konfigurowałeś partycje w procesie instalacji systemu
# genkernel --kernel-config=/usr/src/config --menuconfig --bootloader=grub --splash=sabayon --disklabel all
b) Jeżeli wykorzystałeś automatyczną konfigurację partycji w czasie instalacji lub utworzyłeś LVM
# genkernel --kernel-config=/usr/src/config --menuconfig --bootloader=grub --splash=sabayon --disklabel --lvm all
Aby zaktualizować zewnętrzne moduły sterowników współpracujące z jądrem systemu, tak aby współdziałały z nowym jądrem wykonaj:
# module-rebuild rebuild
Być może trzeba będzie ręcznie skompilować moduły dla kart graficznych ręcznie, dla nowego jądra.
Dla kart NVIDIA:
# emerge nvidia-drivers
Dla kart ATI:
# emerge ati-drivers
Restart i zmiany powinny być uwzględnione.
benyo 20:05, 24 lipca 2009 r.