Planuję napisać kilka sterowników urządzeń i muszę pobrać źródło jądra Linux. Moja wersja jądra Linuksa to 3.2.0-23-generic-pae i pobrałem obraz z tego . W wielu artykułach, które przeczytałem, mówi mi, że muszę mieć całe drzewo jądra, aby zacząć wstawiać nowe moduły.
Czy wystarczy pobrać ten obraz i wkleić go do usr/src/
folderu, czy też muszę zrobić coś innego?
Odpowiedzi:
Spowoduje to pobranie źródła podstawowego jądra:
Możesz sprawdzić, która wersja jądra działa w następujący sposób:
Które wydrukuje coś takiego:
Możesz znaleźć listę aktualnych wersji pakietów źródłowych dostępnych w twoim systemie poprzez:
Aby pobrać wersję jądra:
W powyższym linku „zaufany” to nazwa kodowa wersji Ubuntu. Możesz znaleźć kryptonim dla wersji Ubuntu, którą zainstalowałeś:
źródło
apt-get source
nieapt-get install
. Drzewo źródłowe znajdzie się na twojej bieżącej ścieżce .jest najprostszym sposobem. Spowoduje to pobranie źródła z Twojego repozytorium - i będzie takie samo, jak uruchomiona wersja (zakładając, że jeszcze go nie dostosowałeś).
Ale jeśli chcesz dowiedzieć się, gdzie jest utrzymywane źródło, możesz uruchomić:
Poszukaj atrybutu „Vcs-” (system kontroli wersji). Zwykle będzie to repozytorium git (Vcs-Git) lub rtęciowe.
Uwaga - te polecenia działają z dowolnym pakietem. Po prostu zastąp „linux” pakietem, który Cię interesuje. Zauważ też, że „apt-get source” nie potrzebuje dostępu do sudo i zrzuci źródło w twoim bieżącym katalogu.
źródło
/usr/src
- nie pełnego źródła jądra - na Ubuntu 16.04Pobierz źródło bezpośrednio z Launchpad
O dziwo, wszyscy polecają,
apt-get source
co nie działa przez większość czasu, jeśli szukasz konkretnej wersji jądra:Powiedzmy, że potrzebujesz źródła jądra dla wersji 3.19.0-58:
apt-get source linux-image-3.19.0-58-generic
pobierze źródło najnowszego jądra z serii: 3.19.0-80 w tym przypadku, co nie jest tym, o co prosiłeś.Masz więc dwie opcje:
1) Zrezygnuj, zainstaluj jądro 3.19.0-80 i użyj
apt-get source
2) Uzyskaj źródło bezpośrednio ze startera:
Witryna Google : launchpad.net „linux-image-3.19.0-58-generic”
To powinno dać Ci stronę pakietu Launchpad dla tej wersji.
Przewiń w dół, kliknij link „Źródło:”, jesteś teraz na stronie źródła pakietu .
Przewiń w dół i do pobrania
.tar.gz
,.diff.gz
,.dsc
pliki:dpkg-source -x *.dsc
Uwagi:
źródło
Wybierz jedną z:
Jeśli pojawi się polecenie podania adresów URL „źródeł”
sources.list
, przejdź do edycji/etc/apt/sources.list
pliku i odkomentuj żądanądeb-src
linię, na przykład (jeśli korzystasz z Xenial):Usunięcie
#
tego ostatniego wiersza umożliwia pobieranie repozytoriów źródeł, w tym źródeł jądra.Uwagi:
apt-get
.4.4.0-75-generic
na przykład w moim przypadku )./usr/src/linux-source-4.4.0/
(na przykład).źródło