Autor Wątek: Niedystrybucyjne kernele dostępne w repozytoriach  (Przeczytany 3436 razy)

0 użytkowników i 1 Gość przegląda ten wątek.

pavbaranov

  • Administrator
  • Ekspert
  • *****
  • Wiadomości: 848
  • Reputacja +25/-0
  • Architektura: x86_64
  • DE/WM: KF5.16+Plasma5.4.95+KDEApps 15.11.80+git na KF5
  • Distro: Arch Linux
  • GPU: Radeon free
  • Kernel: 4.3 (BFQ/CK/BLD/UKSM/+optymalizacje)
Niedystrybucyjne kernele dostępne w repozytoriach
« dnia: Październik 30, 2014, 16:09:14 »
Zarówno w Arch Linuksie, jak i w Manjaro dostępnych jest kilka kerneli. W Archu, standardowo są to ostatnie wydania
stabilne linii "zwykłej" oraz ostatnie wydania LTS. W Manjaro kerneli jest zdecydowanie więcej, albowiem oprócz
kerneli - odpowiedników, kerneli z Arch dostępne są również jeden - dwa kernele utrzymywane jeszcze przez Canonical
oraz często, wcześniejsze niż ostatnie wydania LTS. Kernele w Archu są tak bliskie upstreamowym, jak to tylko możliwe,
główne obecnie różnice w kernelach Manjaro to dodanie do nich patch BFQ i aufs3. Co jednak począć, jeśli chciałoby się
mieć taki kernel jak np. w OpenMandrivie (patrz: https://wiki.openmandriva.org/en/Kernel) a nie bardzo ma się ochotę kompilować?

Możliwości jest kilka, albowiem różni utrzymujący tzw. niezależne repozytoria, dostarczają również skompilowane
kernele, niejednokrotnie znacznie różniące się od tych dostarczanych przez rozwijających główną linię.

1. Linux-CK

To dość popularny patch, w którym upatruje się zwiększenie wydajności systemu, co sprawia, że na komputerze pracuje
się lepiej. Każdy patch CK zawiera co najmniej 2 ważne zmiany. Po pierwsze patch BFS (czyli Brian Fuck Scheduler) oraz
podniesienie Timer Frequency do 1000Hz, podczas gdy standardowy kernel np. w Archu TF ustawiony ma na 300Hz. Przyznam,
że testów nie robiłem, jednakże dla użytkowników korzystających z notebooków i w dodatku często na zasilaniu
bateryjnym, jest to wskazówka, by raczej kerneli takich nie używać podczas pracy na bateriach, zmniejszy bowiem jej
czas. Nie oznacza to, by istniało jakiekolwiek przeciwwskazanie do używania tego typu kernela na notebooku, jednakże
zalecałbym zachowanie również kernela z TF 300Hz do wykorzystywania podczas pracy na bateriach.

W postaci binarnej, kernele te przygotowywane są dla Archa i systemów pokrewnych (z powodzeniem stosowałem w Manjaro) przez graysky'ego.
Te kernele, oprócz CK zawierają również dodatkowego planistę I/O jakim jest BFQ oraz - oprócz procesora "typowego" -
są kompilowane dla kilku innych jego typów dzięki innemu patchowi, autorskiej nakładce grayskiego na gcc.
Więcej informacji: http://www.archlike.darmowefora.pl/index.php/topic,63.msg67.html

Oprócz graysky'ego, kernele zawierające patch CK (bez dodatkowych patch, jak np. pflinux) dostępne są w:
Repozytorium coderkun:
[coderkun-aur]
Server = http://arch.coderkun.de/$repo/$arch/
Koniecznym może być również dodanie klucza ID: A6BEE374. Stosowny plik: http://arch.coderkun.de/coderkun.asc

W odróżnieniu od kerneli przygotowywanych przez graysky'ego, ten kernel planistę BFQ ma włączonego domyślnie, nie trzeba zatem dopisywać elevator=bfq w przypadku chęci jego używania. Trzeba natomiast dopisać elevator=cfq, jeśli się chce pozostać przy domyślnym planiście. Ten kernel jest jednak budowany bez użycia patcha gcc graysky'ego, stąd też nie ma wersji dla poszczególnych procesorów. Paczki dostępne wyłącznie w wersji 64 bitowej.

2. pfKernel

Oleksandr "post-factum" Natalenko - co do zasady - nie jest twórcą patchy kernela. Tworzy patch PF, który zawiera w
sobie inne patche dostarczane przez niezależnych twórców. Każdy kernel-pf zawiera w sobie:
- patche dostarczane przez Twórców głównej linii kernela (patrz niżej),
- patch CK (Cona Kolivasa),
- BFQ
- TuxOnIce
- UKSM
- patch graysky'ego na gcc.
Niestety, Twórca tego kernela, nieco mija się z prawdą, twierdząc, że jego patche zawierają patche dostarczane w
głównej linii kernela. Także numeracja tych kerneli bywa myląca, albowiem niekoniecznie np. kernel 3.16.4-pf musi
zawierać wszystkie patche jakie w głównej linii zostały dodane do kernela 3.16 od czasu jego upublicznienia do
pojawienia się wersji 3.16.4 (to jedynie przykład, w dodatku nie poparty żadną analizą źródeł 3.16.4-pf). Nie możemy
również liczyć na to, by patch Natalenki pojawiał się wraz z kolejnymi wydaniami patchy z głównej linii.
Kernele te zwykle są dostępne w postaci binarnej w prywatnym repozytorium niejakiego nous. Chcąc ich używać, do /etc/pacman.conf dodajemy:
[pfkernel]
Server = http://dl.dropbox.com/u/11734958/$arch
Alternatywnie, używamy serwera chińskiej społeczności Archa:
[archlinuxcn]
SigLevel = Optional TrustAll
Server = http://repo.archlinuxcn.org/$arch
a następnie wykonujemy polecenie:
sudo pacman -Syy && sudo pacman -S archlinuxcn-keyringprzy czym tutaj kernel ten dostępny jest wyłącznie w wersji 64 bitowej.
Instalacja:
sudo pacman -S linux-pf
3. Linux-UKSM
UKSM to technologia, która ma zapobiegać duplikowaniu się w pamięci tych samych obszarów. Pomysł nie jest nowy i ma kilka implemetacji. Niemniej jednak obecnie, dla kerneli linuksowych dostępny jest w zasadzie jedynie patch UKSM. Kernele zawierające ten patch znajdują się na chińskim serwerze Archa.
Dodawanie repozytorium zostało przedstawione wyżej. Kernel dostępny jest wyłącznie w wersji 64 bitowej.
Instalacja:
sudo pacman -S linux-uksm
4. Linux-lily
W tym samym, chińskim, repozytorium znajdziemy również linux-lily, które oprócz UKSM zawiera też kilka innych, niestandardowych patch jak: x32, aufs3, latencytop, kgdb, cjktty.
Podobnie jak linuk-uksm, linux-lily przygotowywany jest wyłącznie dla architektury 64 bitowej.
Dodanie repozytorium jak w pkt 3, instalacja:
sudo pacman -S linux-lily
5. Linux-rt
Również w tym repozytorium dostępny jest także kernel z tzw. realtime preemption patch. To kernel szczególnie polecany dla osób, które zajmują się np. komputerową obróbką muzyki.
Dodawanie repozytorium, rodzaj kernela - jak wyżej.
Instalacja:
sudo pacman -S linux-rtTen kernel dostępny jest również w repozytorium coderkun (patrz Linux-ck). Jest on kompilowany z domyślnie ustawionym CPU governor na "performance".

6. Linux-beignet-fix
Repozytorium chińskiej społeczności Archa oferuje także kernel o wdzięcznej nazwie beignet. Przyznam, że niewiele mi to mówi. Rzut oka na PKGBUILD powoduje, że w odróżnieniu do "standardowego" kernela zawiera on również konfiguracje wspierające DVB oraz patch wyłączający batchbuffer-security.
Dodawanie repozytorium - jak wyżej. Kernel ten dostępny jest również w wersji 32 bitowej.
Instalacja:
sudo pacman -S linux-beignet-fix
7. Linux-bede
To w zasadzie okrojona wersja domyślnego kernela, pozbawiona rzeczy, które są - zdaniem rozwijającego go dewelopera - zbędne.
Dodajemy:
[herecura-stable]
Server = http://repo.herecura.be/herecura-stable/$arch
Instalacja:
sudo pacman -S linux-bede
8. Linux-ZEN
Oparty o patche liquorix, zawierający również BFQ, CFS i YeAH, a także dodatkowe wsparcie dla ThinkPadów oraz AUFS3, kernel jest polecany dla typowego zastosowania na desktopie. Przeglądanie stron, oglądanie plików flash, gry - teoretycznie wszystko to winno przebiegać sprawniej. Binarne wersje dostępne są w repozytorium heftig. Dodajemy:
[heftig]
Server = http://pkgbuild.com/~heftig/repo/$arch
i instalujemy:
sudo pacman -S linux-zen
9. eee-ck
Specjalnie przygotowane kernele i moduły dla netbooków Asus EeePC 700/701, zawierające patch CK znajdziemy w repozytorium eee-ck. Dodajemy:
[eee-ck]
Server = http://zembla.frozenslumber.com/repo
i instalujemy:
sudo pacman -S linux-eee-cklub
sudo pacman -S linux-eee-ck-700w zależności od posiadanego modelu.
Koniecznym może być również dodanie klucza ID: 27D4A19A. Stosowny plik: http://zembla.frozenslumber.com/repo/gruppenpest.gpg

10. Linux-rt-lts
To kernel z takimi samymi patchami jak w przypadku linux-rt omówionym w pkt 5, z tym, że budowany w oparciu o ostatnią dostępną wersję LTS kernela.
Znajdziemy go w repozytorium coderkun (patrz pkt 1 i 5). Podobnie jak linux-rt z tego repozytorium budowany jest z domyślnie ustawionym CPU governor na "performance".
Instalacja:
sudo pacman -S linux-rt-ltsTa wersja - i to w dwu, nieco mylących, odmianach dostępna jest również w repozytorium coderkun (patrz pkt 1). Otóż dostępne tu są dwa kernele linux-rt, jeden z linii 3.10, drugi z linii 3.14 (zresztą w dwu wersjach). Obie są oznaczone jako LTS przez kernel.org i będą wspierane odpowiednio do września 2015 i sierpnia 2016 r. Dostępne są wersje wyłącznie 64 bitowe. Kernele te znajdują się w repozytorium aur-audio:
[coderkun-aur]
Server = http://arch.coderkun.de/$repo/$arch
Oraz dodanie klucza:
# pacman-key -r A6BEE374 && pacman-key --lsign-key A6BEE374Instalacja linii 3.14:
sudo pacman -S linux-rt-3.14.10_rt7-1-x86_64.pkg.tar.xzlub
sudo pacman -S linux-rt-3.14.12_rt9-1-x86_64.pkg.tar.xzInstalacja linii 3.10:
sudo pacman -S linux-rt-3.10.47_rt50-1-x86_64.pkg.tar.xzKernel udostępniony jest także, również w wersjach 3.10 i 3.14 w repozytorium Archaudio.
[archaudio-production]
Server = http://repos.archaudio.org/$repo/$arch
Przy czym kernel z linii 3.10 występuje tu jako linux-rt-lts, a z linii 3.14 jako linux-rt. Zgodnie z kernel.org, obie linie kernela są obecnie LTS.
Instalacja analogiczna jak wyżej.
Uwaga podane numery paczek dostępne są na chwilę pisania tego poradnika. Ulegają zmianom, zatem polecam zapoznać się wpierw z dostępnymi w repozytorium paczkami kernela i wpisanie ich prawidłowej nazwy.

11. Linux-lts-ck
To kernele zawierające patch Cona Kolivasa, z tym, że w przeciwieństwie do udostępnianych przez graysky'ego bądź w repozytorium coderkun, oparte o ostatni dostępny kernel LTS. Dostępna jest wersja wyłącznie dla architektury 64 bitowej.
[linux-lts-ck]
Server = https://dl.dropboxusercontent.com/u/298301785/arch/linux-lts-ck/x86_64/
Konieczne może być również dodanie Key-ID: E6366A92
Dostępne są również wersje dla kerneli z linii 3.10 oraz 3.12.
[linux-lts31x-ck]
Server = https://dl.dropboxusercontent.com/u/298301785/arch/linux-lts31x/x86_64/
Instalacja:
sudo pacman -S linux-lts310-ckbądź:
sudo pacman -S linux-lts312-ckRepozytorium może wymagać dodania klucza ID:
pacman-key -r E6366A92 && pacman-key --lsign-key E6366A92
12. Linux-ck-pax
Kernele zawarte w poniższym repozytorium mają zarówno patch Cona Kolivasa, jak i poprawiający bezpieczeństwo patch PAX.
[linux-ck-pax]
Server = https://dl.dropboxusercontent.com/u/298301785/arch/linux-ck-pax/x86_64/
Repozytorium może wymagać dodania klucza ID:
pacman-key -r E6366A92 && pacman-key --lsign-key E6366A92
13. Linux-tresor
TRESOR to również jeden z patchy, które poprawić mają bezpieczeństwo użytkowania. Te kernele są budowane w oparciu o ostanie wydanie LTS, udostępnione przez Arch Linux.
[linux-tresor]
Server = https://dl.dropboxusercontent.com/u/298301785/arch/linux-tresor/x86_64/
Repozytorium może wymagać dodania klucza ID:
pacman-key -r E6366A92 && pacman-key --lsign-key E6366A92
14. Linux-PAE
Czyli kernel umożliwiający udostępnienie adresowania powyżej 4GB RAM na komputerach/systemach 32 bitowych.
[linux-pae]
Server = http://pae.archlinux.ca/

15. Linux-selinux
Kolejny patch bezpieczeństwa. Spośród tych, które udało mi się znaleźć w repozytoriach, udostępniona jest jedynie wersja dla 3.12LTS (do 2016 r.).
[siosm-selinux]
Server = http://siosm.fr/repo/$repo/
Koniecznym może być również dodanie sygnatury GPG:
# pacman-key --add siosm_gpg.pub && pacman-key --lsign-key C8D83B6AE4B8685A7290545FDB27818F78688F83Instalacja:
sudo pacman -S linux-selinux
16. Linux-mainline
W odróżnieniu od przedstawionych wyżej kerneli, linux-mainline jest kernelem "źródłowym", czyli takim, jakie udostępnia aktualnie kernel.org. W repozytorium miffe.org zawsze znajdziemy najaktualnieszy kernel, przy czym "najaktualnieszy" oznacza, że dostępny tu jest kernel w wersji kandydującej. Rozwiązanie dobre dla osób, które z jakichś przyczyn są zmuszone używać planowanych dopiero w następnym wydaniu stabilnym, funkcji i udoskonaleń.
[miffe]
Server = http://arch.miffe.org/$arch/
Być może koniecznym stanie się dodanie klucza:
# pacman-key --recv-keys 313F5ABD && pacman-key --lsign-key 313F5ABDInstalacja:
sudo pacman -S linux-mainline
17. Linux-LTS
To po prostu kernel dłużej wspierany. W zasadzie niczym innym się nie wyróżnia. W repozytoriach Archa zawsze dostępne są ostatnie stabilne kernele z linii "normalnej" oraz ostatni z dostępnych kerneli LTS. Kerneli LTS jest jednak więcej (zob.: https://www.kernel.org/category/releases.html). Możemy również używać takich kerneli w Arch. Dostępne wersje to 3.10.x i 3.12.x. Obie znajdziemy po dodaniu:
[linux-lts31x]
Server = https://dl.dropboxusercontent.com/u/298301785/arch/linux-lts31x/x86_64/
Instalacja:
sudo pacman -S linux-lts310bądź
linux pacman -S linux-lts312Repozytorium może wymagać dodania klucza ID:
pacman-key -r E6366A92 && pacman-key --lsign-key E6366A92
18. Linux-PAX
Kernele ze "zwykłej" linii wyposażone nadto w patch bezpieczeństwa PAX.
[arsch]
Server = http://arsch.orgizm.net/$arch
Instalacja:
sudo pacman -S linux-pax
19. Linux-seblu
Przyznam, że sam nie wiem co jest w tym kernelu szczególnego. PKGBUILD nie zawiera żadnych patchy, jedyne co zaobserwowałem, to usunięcie firmware'u. Wydaje się ten kernel być zatem kernelem odpowiadającym udostępnianemu przez kernel.org. W odróżnieniu od repozytorium miffe, tutaj dostępnych jest kilka wersji (obecnie od 3.10 po aktualną, rozwojową 3.18).
[seblu]
Server = http://seblu.net/a/$repo/$arch
Instalacja:
sudo pacman -S linux-seblu-wersja
20. Kernel Manjaro
Użytkownicy Manjaro oraz NetRunner Linux mają ten kernel w repozytoriach. Postanowiłem go jednak wyróżnić ze względu na kompilowanie go z patchem umożliwiającym korzystanie z planisty BFQ (jest on tu zresztą domyślnie uruchomiony); teoretycznie (czyli wg zapowiedzi) winien tu być również patch BFS jednakże zarówno przeglądnięcie PKGBUILD jak również inspekcja samego działającego kernela na to nie wskazują. Używanie jego na dystrybucjach opartych o repozytoria Archa nie powoduje żadnych problemów (sprawdzone empirycznie). W tym przypadku nie dodajemy żadnego repozytorium, a jedynie poszukujemy jakiegoś serwera źródlanego Manjaro np. http://repo.manjaro.org.uk/ i instalujemy interesujący nas kernel z odpowiedniego repozytorium (stable, testing bądź unstable) z wykorzystaniem komendy:
sudo pacman -U adres_i_nazwa_paczki
21. Paradox Computers
To kernele przygotowane głównie z myślą o dystrybucji Manjaro (jednakże działają również w Arch). Zawartość tego repozytorium się zmienia. Aktualna jego zawartość to zmienione kernele linii linux310 (czyli 3.10). Kernele te - w porównaniu z linią dostępną w oficjalnym repozytorium Manjaro - są uzupełnione o patch ck1 oraz także zawierają patch BFQ. Dostępne są także wersje dla grafiki NVidia. Linux310 to kernel LTS. Pierwotnie w repozytorium dostępne były kernele aktualnej linii stabilnej, następnie - wg słów przygotowującego je - kernele LTS. Od czasów kernela 3.10.32 repozytorium jest to wyłączone. W architekturze 32bitowej dostępne są natomiast również kernele PAE.
Repozytorium dodamy przez:
[linux-ck1bfq]
SigLevel = Optional TrustAll
Server = http://www.paradoxcomputers.com.au/manjaro/repo/$repo/$arch
Teoretycznie winno to dodać je do bazy danych pacmana oraz umożliwić instalację przez pacman -S. Niemniej jednak sam właściciel zaleca instalację bezpośrednio stosownych plików z wykorzystaniem pacman -U.

Oczywiście, z podanych wyżej lokalizacji można również pobrać pliki nagłówkowe (headers), często dokumentację (docs), a także dodatkowe pliki np. dla NVidii, czy VirtualBOX.

Oprócz wspomnianych wyżej kerneli i serwerów są jeszcze inne, udostępniające np. kernele z linii 2.6.x, bądź starsze wydania z linii 3.x (szczególnie rt). Jeśli ktoś będzie zainteresowany - uzupełnię. Prosiłbym również o zgłaszanie innych kerneli, które być może pominąłem.

UWAGA: Tam, gdzie w adresach zamiast "$arch" widnieje określona architektura kernela, ów kernel jest dostępny wyłącznie dla takiej architektury.
« Ostatnia zmiana: Listopad 18, 2014, 20:08:48 wysłana przez pavbaranov »

 

Polityka cookies
Darmowe Fora | Darmowe Forum
yelnet galaxyace moher blume-treu ppiz