Reklama
Wraz z instalowanie Gentoo Gentoo: dystrybucja Linuksa, w której kompilujesz własne zoptymalizowane oprogramowanieSama liczba różnych sposobów uruchamiania Linuksa jest zdumiewająca, ponieważ istnieje wiele opcji do obejrzenia. Chociaż istnieje wiele dystrybucji, które opierają się albo na .deb ... Czytaj więcej , kompilowanie własnego jądra Linuksa jest jedną z tych rzeczy, które są uważane za bardzo naukowy i techniczny. Już mamy obejmował kilka powodów 3 powody, dla których możesz chcieć skompilować własne jądro [Linux]Systemy Linux są tak absurdalnie elastyczne i konfigurowalne, że wręcz szalone. Ogromna część tego, dlaczego Linux jest tak elastyczny, wynika z jego modułowej struktury. Każdy komponent systemu i program jest podzielony ... Czytaj więcej dlaczego możesz to zrobić. Zanim przeprowadzimy Cię przez kolejne kroki, oto krótki przegląd niektórych ważnych pojęć.
Co to jest jądro?
Krótko mówiąc, jest to ważna część twojego systemu operacyjnego, jeśli nie najważniejsza. System operacyjny jest odpowiedzialny za działanie programów, umożliwiając im dostęp do twojego sprzętu. Jednak to jest
jądro Co to jest jądro w systemie Linux i jak sprawdzasz swoją wersję?Linux to system operacyjny, prawda? Cóż, niezupełnie! To właściwie jądro. Ale czym jest jądro Linuksa? Czytaj więcej który faktycznie wykonuje wszystkie te zadania.Jądro Linux jest wyjątkowe, ponieważ może być dostosowane do posiadanego sprzętu. Porównaj to z jądrem systemu Windows NT, który będzie ogólnie taki sam na każdym komputerze. Aby to zrobić, jądro musi przejść proces zwany kompilacją.
Aby uzyskać więcej informacji, sprawdź nasze wprowadzenie do jąder w Linuksie Co to jest jądro w systemie Linux i jak sprawdzasz swoją wersję?Linux to system operacyjny, prawda? Cóż, niezupełnie! To właściwie jądro. Ale czym jest jądro Linuksa? Czytaj więcej .
Co to jest kompilacja?
Zasadniczo programy są pisane w formacie czytelnym dla człowieka. Ułatwia to tworzenie oprogramowania. Na przykład jądro Linuksa jest napisane głównie w języku programowania o nazwie do. Jednak komputery nie mogą tego zrozumieć. Rozpoznają tylko skomplikowany język o nazwie kod maszynowy. Aby to zrobić, linie tekstu muszą być przetłumaczony Jak skompilować i zainstalować pliki TAR GZ i TAR BZ2 w systemie Ubuntu Linux Czytaj więcej za pomocą specjalnego oprogramowania o nazwie a kompilator.
Różne kompilatory są używane do konwersji różnych języków programowania. Na przykład, GCC to kompilator, który tłumaczy kod C na kod maszynowy (między innymi). Ale to nie wszystko, co robią - kompilatory też optymalizować przetłumaczony kod dla określonych maszyn. Oprócz tego mogą również usuwać niechciane funkcje z programów.
Zwykle proces ten jest już wykonywany dla wielu programów. Zamiast tego ludzie pobierają przekonwertowane dwójkowy instrukcje, które działają od razu po wyjęciu z pudełka. Na przykład przeglądarka internetowa Czy korzystasz z najlepszej przeglądarki internetowej dla systemu Linux w 2016 roku?Korzystanie z „niewłaściwej” przeglądarki może prowadzić do wielu niepotrzebnych problemów, marnowania wydajności, a nawet utraty danych. Która przeglądarka jest najlepsza dla twojego komputera z systemem Linux? Dowiedzmy Się. Czytaj więcej działasz teraz jest już skompilowany. Wynika to z faktu, że kompilacja czegoś może być nieco skomplikowana i czasochłonna. Pomyśl o tym jak o przetłumaczeniu dużej książki na język obcy.
Krótko mówiąc, kompilacja jądra oznacza konwersję jego kodu na coś, co faktycznie uruchomi się na twoim komputerze.
Uzyskiwanie źródeł jądra
Nie możesz rozpalić ognia bez paliwa. Podobnie nie możesz kompilować programów, jeśli nie masz do tego kodu. Metoda jest ogólnie taka sama dla większości systemów operacyjnych Linux z kilkoma wyjątkami. Wiele z nich dostarcza własne niestandardowe źródła jądra. Powinieneś spróbować tego użyć, jeśli możesz. Na przykład, jeśli używasz System operacyjny oparty na Debianie takich jak Ubuntu, należy zainstalować źródła za pomocą następujących poleceń:
sudo apt-get update. sudo apt-get install linux-source.

Możesz także zainstalować różne wersje tego pakietu (np. linux-source-4.8.0) Jeśli lubisz. Zainstalowane pliki znajdziesz w /usr/src/ katalog, więc przejdź tam i przejrzyj zawartość:
cd / usr / src / ls.
Zobaczysz plik, który kończy się .tar.bz2. To będzie źródło, którego będziesz używać. Wyodrębnij to za pomocą tego polecenia:
sudo tar xjvf linux-source-4.4.0.tar.bz2.
Oczywiście pamiętaj o zastąpieniu pliku poprawną nazwą. Plik będzie dość duży, więc proces zajmie trochę czasu!
Alternatywna metoda
Jeśli chcesz, możesz uzyskać swoje źródła z oficjalna strona jądra Linux. Polecam to tylko wtedy, gdy twój system operacyjny Linux ich nie zapewnia. Wybierz żądaną wersję i pobierz ją. Jeśli przejdziesz tę trasę, pobierz ją do pustego folderu. W ten sposób, jeśli chcesz skompilować więcej jąder w przyszłości, będziesz mieć fajny folder do ich uporządkowania.

Po wykonaniu tej czynności wyodrębnij plik za pomocą tego polecenia:
tar xJvf linux-4.9.11.tar.xz

Upewnij się, że używasz nazwy pliku odpowiadającej pobranej wersji!
Dostosuj jądro
To jest krok, w którym możesz wybrać, które części jądra chcesz się pozbyć. Na przykład jądro jest dostarczane z wieloma różnymi sterownikami dla różnych urządzeń. Jeśli nie potrzebujesz tego wsparcia, pozbycie się ich może przynieść pewne korzyści prędkości, wraz z mniejszym jądrem.
Wymagania wstępne
Zanim przejdziesz dalej, musisz zainstalować niektóre programy, które pozwolą ci go dostosować i skompilować.
W systemach opartych na Debianie potrzebujesz niezbędne do budowania pakiet, między innymi:
sudo apt-get install niezbędne do kompilacji gcc libncurses5-dev libssl-dev.
The libncurses5-dev pakiet ułatwi konfigurację jądra, więc zainstaluj go. Inne systemy operacyjne Linux będą miały podobny program, ale może mieć inną nazwę. Na przykład, jeśli używasz Fedora 5 powodów, dla których warto skorzystać z Pure Open Source Distro, FedoraFedora nie jest tak znana jak Ubuntu i ma reputację trudnej w użyciu. Ale jeśli to prawda, dlaczego tak wiele osób nadal korzysta z Fedory? Czytaj więcej , to jest nazwane ncurses.
Jeśli nie jest jeszcze zainstalowany, będziesz także potrzebować Kolekcja kompilatora GNU (GCC). Jest to narzędzie odpowiedzialne za tłumaczenie surowego kodu źródłowego na coś zrozumiałego dla komputerów. To znaczy, kompilacja.
Po zainstalowaniu tych programów otwórz terminal, abyś był wewnątrz rozpakowany folder źródłowy systemu Linux. Na przykład, jeśli korzystałeś z źródło linuksa metoda, zrobiłbyś to:
cd /usr/src/linux-source-4.4.0
Plik konfiguracyjny jądra
Przed skompilowaniem jądra musisz powiedzieć GCC, jak chcesz to zrobić. Robisz to za pomocą narzędzia wiersza polecenia o nazwie robić. Wpisz to polecenie:
sudo make localmodconfig.
Spowoduje to utworzenie pliku o nazwie .config, która mówi GCC, co skompilować ze źródeł jądra. The wykonaj localmodconfig polecenie wykrywa aktualnie uruchomione komponenty jądra i oznacza je do kompilacji. Jeśli jądro znajduje się w folderze, który posiadasz, ty nie będę potrzebować sudo aby działało.
Możesz natknąć się na niektóre wiadomości, takie jak ta poniżej. Po prostu naciśnij Wchodzić klawisz, aby je pominąć - zwykle są to po prostu nowe funkcje jądra.

Jednak localmodconfig nie jest idealny! Jeśli nie korzystasz obecnie z niektórych części komputera, może nie wykryć wszystkich obsługiwanych przez siebie elementów. Dlatego musisz włączyć je ręcznie. Możesz też całkowicie pominąć ten krok i zamiast tego użyć następnego polecenia. Spowoduje to skompilowanie nowego jądra z tymi samymi opcjami, co obecnie używane.
Jeśli wolisz, ale wcześniej używałeś polecenia localmodconifg, wykonaj następujące czynności:
sudo oczyścić.
To da ci czystą wersję. Powinieneś także użyć tego polecenia, jeśli wcześniej skompilowałeś jądro z tymi źródłami.
Dalsza konfiguracja
W folderze źródłowym jądra znajduje się plik o nazwie .config. Tego użyje GCC, aby wybrać, co skompilować. Zamiast edytować go ręcznie (niezalecane), zamiast tego użyjesz kilku narzędzi terminalowych. Ułatwi to wybranie opcji kompilacji.
Po zrobieniu tego, dostrój go dalej:
sudo make nconfig.
Zobaczysz kolorowe menu. To jest menu konfiguracji jądra. Do poruszania się używaj klawiszy strzałek. Możesz nacisnąć dobrze klawisz strzałki, aby rozwinąć wpisy za pomocą —> znak obok nich. Wyjdź z tych podmenu, naciskając lewo klawisz strzałki.

Możesz przełączać pozycje menu, które mają <> lub [] zaloguj się obok nich, naciskając spację. Spowoduje to przełączanie różnych opcji menu. Jeśli widzisz a * lub M. wewnątrz ten konkretny komponent jądra zostanie skompilowany. Jedyna różnica między nimi polega na tym, że M. opcja zostanie załadowana, gdy będzie potrzebna. Może to być przydatne, jeśli na przykład kompilujesz sterownik, który nie będzie często używany.
Jeśli chcesz dowiedzieć się więcej o działaniu określonego przełącznika, naciśnij F2 ponad tym. Zobaczysz pomocny opis tego, co kompilujesz.

Po zakończeniu naciśnij F9 przycisk, aby zapisać i wyjść.

Kompilowanie i instalowanie jądra
Po utworzeniu niestandardowego pliku marki musisz to zrobić skompilować Jak skompilować i zainstalować pliki TAR GZ i TAR BZ2 w systemie Ubuntu Linux Czytaj więcej jądro. Wpisz to polecenie:
sudo make -j $ (nproc --all)
Będziesz nie potrzebuję sudo jeśli pobrałeś źródła jądra z Internetu. Druga część polecenia pomaga przyspieszyć czas kompilacji jądra, wykorzystując wszystkie twoje Rdzenie procesora Co to jest rdzeń procesora? [MakeUseOf wyjaśnia]Każdy komputer ma procesor, bez względu na to, czy jest to mały profesjonalista, czy potężny potęga, w przeciwnym razie nie byłby w stanie funkcjonować. Oczywiście procesor, zwany także CPU lub Central Processing ... Czytaj więcej . Możesz się tego pozbyć lub zmienić numer na inny (np. -j2), jeśli chcesz używać komputera do innych zadań bez zbyt wielu problemów. Spowoduje to jednak spowolnienie kompilacji!
Proces ten może i potrwa bardzo długo. Im mniej wybierzesz kompilację, tym będzie ona krótsza. Mimo to prawdopodobnie będziesz musiał uzbroić się w cierpliwość.
Następnie wpisz to polecenie, aby zakończyć kompilowanie pozostałej części jądra:
sudo make moduły_instalacyjne.
Aby faktycznie użyć tego jądra, musisz wprowadzić następujące polecenie:
sudo make install.
Spowoduje to automatyczne skopiowanie jądra do twojego /boot folder i wygeneruj odpowiednie pliki, aby to działało.
Przełączanie jądra za pomocą GRUB
Jeśli uruchomisz się ponownie po zainstalowaniu nowego jądra, twój system może nie działać! Jest to zwykle spowodowane nieprawidłowo skompilowanym jądrem (to znaczy niewystarczającym wsparciem dla twojego komputera). Właściwie mój własny laptop. Na wszelki wypadek polecam edycja GRUB Jak dostosować moduł ładujący GRUB za pomocą BURG [Ubuntu] Czytaj więcej aby mógł wrócić do starszych jąder. Aby to zrobić, użyj tego polecenia:
sudo nano / etc / default / grub.

Umieść znak # przed znakiem GRUB_HIDDEN_TIMEOUT i GRUB_HIDDEN_TIMEOUT_QUIET linie. Następnie zapisz te zmiany, uruchamiając następujące polecenie:
sudo grub-mkconfig -o /boot/grub/grub.cfg.

Teraz, jeśli uruchomisz ponownie komputer, będziesz mógł przełączyć się na starsze jądro, jeśli nowe nie działa. Po prostu przejdź do Zaawansowane opcje z menu i wybierz jądro, które chcesz uruchomić. Jeśli wszystko pójdzie dobrze, gratulacje! Będziesz używał jądra, które sam skompilowałeś.
Czy chcesz skompilować więcej jąder? Inne programy? Czy uważasz, że warto?
Kredyty obrazkowe: chombosan / Shutterstock
Austin Luong, obecnie studiujący BIT, jest zapalonym entuzjastą Linuksa, który uwielbia nawracać na temat wolnego oprogramowania. Lubi też pisać science fiction, ale tylko w zaciszu swojego twardego dysku.