Ubuntu/Kompilacja jądra
Informacje ogólne
edytujJądro Linuksa jest "sercem systemu" odpowiadającym za:
- uruchamianie programów
- obsługę urządzeń
- operowanie kalendarzem i czasem
- uruchamianie i wyłączanie komputera
- inne systemowe czynności
Jest idealnym przykładem jądra monolitycznego, w którym wykonywane są wszystkie zadania i można dołączać moduły wzbogacające jądro. Zaletami jądra Linuksa są:
- stabilność
- prostota
- sprawna komunikacja między modułami
System Ubuntu posiada jądro skompilowane dla procesorów "i386". Wszystkie procesory spotykane w PC obsługują tę architekturę, ale o wiele lepszym rozwiązaniem jest własnoręczne skompilowanie dla swojego procesora. Przy kompilacji możemy również wyrzucić niepotrzebne moduły i dodać te, które są potrzebne. Pozwala to na dokładne dopasowanie jądra do własnych potrzeb. Aby sprawdzić jaką wersję jądra masz zainstalowaną, wydaj polecenie w Terminalu:
uname -r
Kompilacja jądra z repozytoriów
edytuj1. Do prawidłowej kompilacji potrzebny jest libqt3-mt-dev lub libqt4-dev w zależności którą wersję QT posiadasz zainstalowaną w systemie.
- a. Uruchom Synaptic z menu System-> Administracja-> Menadżer pakietów Synaptic
- b. Wyszukaj pakiet libqt3 i zaznacz do zainstalowania libqt3-mt-dev
2. Teraz instalujemy jądro systemu.
- a. Wyszukaj pakiet linux-source.
- b. Zaznacz pakiet linux-source-[wersja jądra] (np. linux-source-3.5.2).
3. Zainstaluj zaznaczone pakiety klikając na Zastosuj.
4. Po zakończeniu instalacji kodu źródłowego jądra wyłącz Synaptic i uruchom ponownie komputer.
Kompilacja jądra z paczki
edytujMożesz skompilować i zainstalować paczkę z najnowszą wersją jądra Linux pobierając ją ze strony: http://www.kernel.org
1. Po pobraniu paczki, skopiuj ją do katalogu "/usr/src" wydając polecenie w Terminalu:
sudo cp /home/nazwa_użytkownika/katalog_pobierania/linux-3.5.2.tar.bz2 /usr/src/
W tym przykładzie załóżmy że pobraliśmy jądro w wersji linux-source-3.5.2
2. Następnie przejdź do katalogu z paczką jądra:
cd /usr/src
3. Rozpakuj archiwa:
sudo tar -xvjf linux-source-3.5.2.tar.bz2
4. Wejdź do katalogu z rozpakowanym jądrem:
cd linux-source-3.5.2
5. Dobrym sposobem, lecz nie koniecznym jest użycie obecnego pliku konfiguracyjnego dla nowej kompilacji.
Możesz go skopiować do rozpakowanego katalogu z nowym jądrem:
cp /boot/config-`uname -r` ./.config
6. Przeprowadź konfigurację pakietu:
sudo make xconfig
7. Pojawi się okno z wyborem modułów, więc należy wybrać potrzebne.
8. Zapisz konfigurację jądra (ikonka Save na pasku narzędzi).
9. Następnie zbuduj pakiet poleceniem:
sudo make
10. Wykonaj instalacje wybranych modułów:
sudo make modules_install
11. Oraz instalację samego jądra:
sudo make install
Aktualizacja GRUB
edytujAby można było uruchomić system z samodzielnie skompilowanym jądrem systemu, trzeba uaktualnić menadżera
uruchamiania systemu "GRUB" poleceniem:
sudo grub-mkconfig -o /boot/grub/grub.cfg
lub
sudo update-grub
Teraz już możesz uruchomić ponownie komputer wybierając nowe jądro.
Usuwanie jąder
edytujUsuwanie ręcznie skompilowanego jądra
edytujGdy zechcemy odinstalować skompilowane jądro, należy uruchomić linuxa używając innego jądra niż te które zamierzamy usunąć i wydać następujące komendy:
sudo su cd /boot rm vmlinuz-*WERSJA-USUWANEGO-KERNELA* rm initrd-*WERSJA-USUWANEGO-KERNELA* rm System-map-*WERSJA-USUWANEGO-KERNELA* rm config-*WERSJA-USUWANEGO-KERNELA cd /lib/modules/ rm -r *WERSJA-USUWANEGO-KERNELA* cd /var/lib/initramfs-tools/ rm *WERSJA-USUWANEGO-KERNELA* update-grub
Usuwanie starych jąder
edytujSprawdzamy jakie mamy aktualne jądro : [1]
uname -r
NIE usuwamy tego jądra.
Sprawdzamy jakie mamy jądra :
dpkg --list | grep linux-image
Zostawiamy jądro aktualne i 2 poprzednie.
Usuwamy po kolei stare jądra ( zmień przykładową nazwę jądra , czyli linux-image-x.x.x.x-generic ręcznie na odpowiednią z poprzedniej listy ) :
sudo apt-get purge linux-image-x.x.x.x-generic
Uaktualniamy grub2
sudo update-grub2
Uruchamiamy ponownie system